Triple.cpp still returns "arm64" as prefix for arm64 triple, causing Clang not being able to select the correct GCCBuiltin IR.
This patch changes the value to correct prefix "aarch64". Regression test will be added in the coming patch.
Differential D4516
Fix the prefix for arm64 triple kongyi on Jul 15 2014, 3:38 AM. Authored by
Details Triple.cpp still returns "arm64" as prefix for arm64 triple, causing Clang not being able to select the correct GCCBuiltin IR. This patch changes the value to correct prefix "aarch64". Regression test will be added in the coming patch.
Diff Detail
Event TimelineComment Actions It looks like it's only used by that part of Clang. We probably want a test though (even if it's in Clang rather than LLVM), since this is clearly causing problems for someone. Also, are you planning to do the more thorough triple merge, Yi? Cheers. Tim. Comment Actions I have written a test case in Clang, however due to the limitation of Phabricator, I can't post it in the same post. I will take another look to see whether it is possible to test in LLVM.
Although the merge should be trivial, but I think it would be best for you guys to do it to avoid breaking your internal Apple clients. Comment Actions Actually, it's part of D4520. The test makes sure that GCCBuiltin works when the triple supplied is ARM64, indicating LLVM returned the correct prefix.
I can't find a way to do that. It seems we can only test this indirectly from Clang. Comment Actions
No need to do that. I suspect it's very strongly linked to the C++ Cheers. Tim. Comment Actions My plan to implement this is by D4521, where GCCBuiltin __builtin_arm_[dmb, dsb, isb] are tested to be correctly selected by Clang when arm64 triple is supplied. It's an indirect test, but that's the only test I can think of. Do you have any suggestion? Otherwise ok to commit? Comment Actions Hi Yi,
OK, I see. There aren't actually any AArch64 builtins yet so it can't be tested. That sounds reasonable. Go for it! Tim. |