Details
Diff Detail
Event Timeline
Sorry I missed this earlier.
I'm all for removing unnecessary builtins. Does the backend lower these shuffles to the same instruction the builtin does? Do we have tests for that in the llvm side?
Do you plan to remove the intrinsics from llvm in favor of the shuffles?
The casts inside the diagnostic pragmas seem inconsistent between the two macros. Was that intentional.
Is there already an emmintrin test file this could be added to? Maybe just put them in sse-builtins.c
Sorry about the noise. This one additionaly removes a test that used the __builtin_ function.
Can you put the '__extension' back on the same line as the macro name? Other than that LGTM.
Alex: Thanks for reminding me! He prepared this patch with me and I forgot
to include that in the commit message. Adding it.
Craig: I just want to double-check: clang-format formatted it that way.
Still want me to format it closer to what it was? (since it's an installed
header, you might prefer not strictly following llvm's format)
Thanks,
Filipe