We want arm64_32 to omit leaf frame pointers. At the moment this is predicated on isAArch64 and fails because Triple::aarch64_32 doesn't count. That's logically incorrect, and fortunately that function is used infrequently enough that we can update its callers where appropriate, as here.
Details
Details
Diff Detail
Diff Detail
Event Timeline
clang/lib/Driver/ToolChain.cpp | ||
---|---|---|
1066 | Is there a short-form we'd want for this? Here are two ideas: // getTriple().isAArch64_64() and getTriple().isAArch64_32() bool Triple::isAArch64_64() { return isAArch64() && isArch64Bit(); } bool Triple::isAArch64_32() { return isAArch64() && isArch32Bit(); } // getTriple().isAArch64(64) and getTriple().isAArch64(32) bool Triple::isAArch64(int Bits) { assert(Bits == 32 || Bits == 64); if (!isAArch64()) return false; return isArch64Bit() ? Bits == 64 : Bits == 32; } Or do you think it's better as-is? | |
llvm/include/llvm/ADT/Triple.h | ||
715 | Should the comment be changed? |
clang/lib/Driver/ToolChain.cpp | ||
---|---|---|
1066 | Tricky one. The bare "64" and "32" are a bit non-descript, but having both isAArch64 and isArch64 in the same line seems just slightly worse to me so I'll update the patch. |
Comment Actions
Thanks Gerolf. Committed:
To github.com:llvm/llvm-project.git
ae9d96a656a1..152df3add156 master -> master
Is there a short-form we'd want for this?
Here are two ideas:
Or do you think it's better as-is?