[compiler-rt] [llvm] [Transforms][IPO] Add func suffix in ArgumentPromotion and DeadArgumentElimination (PR #109899)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 27 08:51:59 PDT 2024
================
@@ -38,16 +38,16 @@ define dso_local void @caller_4xi32(ptr noalias %src, ptr noalias %dst) #1 {
; CHECK-LABEL: define dso_local void @caller_4xi32(
; CHECK-NEXT: entry:
; CHECK-NEXT: [[SRC_VAL:%.*]] = load <4 x i32>, ptr [[SRC:%.*]], align 16
-; CHECK-NEXT: call fastcc void @callee_4xi32(<4 x i32> [[SRC_VAL]], ptr noalias [[DST:%.*]])
+; CHECK-NEXT: call fastcc void @callee_4xi32.argprom.argprom(<4 x i32> [[SRC_VAL]], ptr noalias [[DST:%.*]])
; CHECK-NEXT: ret void
;
entry:
- call fastcc void @callee_4xi32(ptr noalias %src, ptr noalias %dst)
+ call fastcc void @callee_4xi32.argprom(ptr noalias %src, ptr noalias %dst)
ret void
}
-define internal fastcc void @callee_4xi32(ptr noalias %src, ptr noalias %dst) #1 {
-; CHECK-LABEL: define internal fastcc void @callee_4xi32(
+define internal fastcc void @callee_4xi32.argprom(ptr noalias %src, ptr noalias %dst) #1 {
+; CHECK-LABEL: define internal fastcc void @callee_4xi32.argprom.argprom(
----------------
yonghong-song wrote:
I did this for two reasons. First, gcc has cascading suffixes, e.g. when I compiled llvm with gcc, I got the following:
```
_ZN5clang19RecursiveASTVisitorIN12_GLOBAL__N_119PluralMisuseChecker13MethodCrawlerEE14TraverseIfStmtEPNS_6IfStmtEPN4llvm15SmallVectorImplINS7_14PointerIntPairIPNS_4StmtELj1EbNS7_21PointerLikeTypeTraitsISB_EENS7_18PointerIntPairInfoISB_Lj1ESD_EEEEEE.part.0.constprop.0.isra.0
```
Second, cascading the suffix can give a hint what signature-changing transformation has done so it would be easier for people to find the changed func signature.
https://github.com/llvm/llvm-project/pull/109899
More information about the llvm-commits
mailing list