[PATCH] D56852: [AArch64] Use LL for 64-bit arguments
Petr Hosek via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Jan 24 17:17:06 PST 2019
phosek added a comment.
This broke our kernel build which uses `PRIx64` to print the return value of `__builtin_arm_rsr64`. This is correct because according to ACLE, the return type of that builtin should be `uint64_t`. Problem is that on AArch64, `unsigned long` is equivalent to `uint64_t`, not `unsigned long long` (at least on Linux and other platforms like Fuchsia).
The reason this wasn't caught by the test is because that test isn't strict enough. I've updated the test in D57210 <https://reviews.llvm.org/D57210>. I believe this change should be reverted because it's wrong and I created revert in D57209 <https://reviews.llvm.org/D57209>. I think the correct solution might be what rnk suggested in his comment, that is to use `W` instead of `LL`. I plan on landing my revert if I don't hear back by EOD because this is currently blocking our kernel build with the latest Clang.
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D56852/new/
https://reviews.llvm.org/D56852
More information about the cfe-commits
mailing list