[all-commits] [llvm/llvm-project] a2088a: [ARM] musttail fixes
Kiran via All-commits
all-commits at lists.llvm.org
Tue Aug 27 02:44:31 PDT 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a2088a24dad31ebe44c93751db17307fdbe1f0e2
https://github.com/llvm/llvm-project/commit/a2088a24dad31ebe44c93751db17307fdbe1f0e2
Author: Kiran <kiran.sturt at arm.com>
Date: 2024-08-27 (Tue, 27 Aug 2024)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M llvm/include/llvm/CodeGen/CallingConvLower.h
M llvm/lib/CodeGen/CallingConvLower.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/test/CodeGen/ARM/2013-05-13-AAPCS-byval-padding.ll
M llvm/test/CodeGen/ARM/2013-05-13-AAPCS-byval-padding2.ll
M llvm/test/CodeGen/ARM/fp-arg-shuffle.ll
M llvm/test/CodeGen/ARM/fp16-vector-argument.ll
M llvm/test/CodeGen/ARM/struct_byval.ll
M llvm/test/CodeGen/ARM/tail-call-float.ll
Log Message:
-----------
[ARM] musttail fixes
Backend:
- Caller and callee arguments no longer have to match, just to take up the same space, as they can be changed before the call
- Allowed tail calls if callee and callee both (or neither) use sret, wheras before it would be dissalowed if either used sret
- Allowed tail calls if byval args are used
- Added debug trace for IsEligibleForTailCallOptimisation
Frontend (clang):
- Do not generate extra alloca if sret is used with musttail, as the space for the sret is allocated already
Change-Id: Ic7f246a7eca43c06874922d642d7dc44bdfc98ec
Commit: 1a908c6be3317bbbac73e6a6fc52cabefbdebf7d
https://github.com/llvm/llvm-project/commit/1a908c6be3317bbbac73e6a6fc52cabefbdebf7d
Author: Kiran <kiran.sturt at arm.com>
Date: 2024-08-27 (Tue, 27 Aug 2024)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M llvm/include/llvm/CodeGen/CallingConvLower.h
M llvm/lib/CodeGen/CallingConvLower.cpp
M llvm/test/CodeGen/ARM/tail-call-float.ll
Log Message:
-----------
Seperate frontend changes, add debug directives, remove redundant stuff from tests
Compare: https://github.com/llvm/llvm-project/compare/ca3b9af98c0b...1a908c6be331
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list