[PATCH] D104931: [AArch64] Wire up ILP32 ABI support in Clang

2022-12-29 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu added a comment. The situation around -mabi for AArch64 is a bit awkward: Clang uses it to select the ARM64 calling convention (`-mabi=aapcs` vs `-mabi=darwinpcs`) while GCC uses it to select between LP64 and ILP32. I'm not sure how we should be handling this. Repository: rG LLVM

[PATCH] D134717: [Clang][AArch64] Fix va_arg with -mgeneral-regs-only

2022-09-29 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu added a comment. I fully agree that this likely wasn't intentional, but this is still very useful for code that can't use FP registers for whatever reason (e.g. kernels). Regarding the ABI, it doesn't need to be officially defined: it just needs to be compatible with other code

[PATCH] D134717: [Clang][AArch64] Fix va_arg with -mgeneral-regs-only

2022-09-29 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu added a comment. Currently using Clang with -mgeneral-regs-only generates perfectly fine soft-float AArch64, with the except of the va_arg() implementation which is fixed here. In fact Rust even has a aarch64-unknown-none-softfloat which relies on this behavior in LLVM. I believe this

[PATCH] D134717: [Clang][AArch64] Fix va_arg with -mgeneral-regs-only

2022-09-27 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu created this revision. Amanieu added a reviewer: MaskRay. Herald added subscribers: StephenFan, kristof.beyls. Herald added a project: All. Amanieu requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. With -mgeneral-regs-only, all

[PATCH] D127460: Rename GCCBuiltin into ClangBuiltin

2022-06-22 Thread Amanieu d'Antras via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGd0a4450ecdaf: Rename GCCBuiltin into ClangBuiltin (authored by GuillaumeGomez, committed by Amanieu). Repository: rG LLVM Github Monorepo

[PATCH] D104931: [AArch64] Wire up ILP32 ABI support in Clang

2022-02-22 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104931/new/ https://reviews.llvm.org/D104931 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D104931: [AArch64] Wire up ILP32 ABI support in Clang

2021-07-22 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu added a comment. Ping. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D104931/new/ https://reviews.llvm.org/D104931 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D104931: [AArch64] Wire up ILP32 ABI support in Clang

2021-06-25 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu created this revision. Amanieu added reviewers: t.p.northover, aemerson, kristof.beyls. Herald added a subscriber: danielkiss. Amanieu requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This is a follow-up to D94143

[PATCH] D95745: Support unwinding from inline assembly

2021-05-13 Thread Amanieu d'Antras via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG8ec9fd483949: Support unwinding from inline assembly (authored by cynecx, committed by Amanieu). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D95745: Support unwinding from inline assembly

2021-05-10 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu accepted this revision. Amanieu added a comment. This revision is now accepted and ready to land. LGTM Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D95745/new/ https://reviews.llvm.org/D95745

[PATCH] D95745: Support unwinding from inline assembly

2021-03-27 Thread Amanieu d'Antras via Phabricator via cfe-commits
Amanieu added a comment. The new operand to InlineAsm needs to be handled in llvm/lib/Transforms/Utils/ValueMapper.cpp otherwise you will end up with a bug similar to https://bugs.llvm.org/show_bug.cgi?id=45291. Some tests with other unwinding models such as SJLJ and SEH would be nice.