Skip to content

Commit dc5f2ee

Browse files
committed
[AArch64][MachineOutliner][NFC] Re-enable some tests
Part of the tests did not run and some checks were missing due to incorrect prefixes. The patch also updates the check lines to catch up with recent changes. The problematic revisions were: * [D70635](https://reviews.llvm.org/D70635) * [D71658](https://reviews.llvm.org/D71658) * [D111780](https://reviews.llvm.org/D111780)
1 parent 8742477 commit dc5f2ee

10 files changed

+74
-79
lines changed

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-cfi.ll

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
1-
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
2-
; RUN: aarch64 %s -o - | FileCheck %s --check-prefixes CHECK,V8A
3-
; RUN-V83A: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
4-
; RUN-V83A: aarch64 -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
1+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \
2+
; RUN: FileCheck %s --check-prefixes CHECK,V8A
3+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \
4+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
65

7-
; Function a's outlining candidate contains a sp modifying add without a
8-
; corresponsing sub, so we shouldn't outline it.
6+
;; Function a's outlining candidate contains a sp modifying add without a
7+
;; corresponsing sub, so we shouldn't outline it.
98
define void @a() "sign-return-address"="all" "sign-return-address-key"="b_key" {
109
; CHECK-LABEL: a: // @a
1110
; CHECK: // %bb.0:
1211
; CHECK-NEXT: .cfi_b_key_frame
1312
; V8A-NEXT: hint #27
1413
; V83A-NEXT: pacibsp
15-
; V8A-NEXT, V83A-NEXT: .cfi_negate_ra_state
14+
; CHECK-NEXT: .cfi_negate_ra_state
1615
%1 = alloca i32, align 4
1716
%2 = alloca i32, align 4
1817
%3 = alloca i32, align 4
@@ -27,9 +26,8 @@ define void @a() "sign-return-address"="all" "sign-return-address-key"="b_key" {
2726
store i32 6, ptr %6, align 4
2827
; CHECK-NOT: bl OUTLINED_FUNCTION_{{[0-9]+}}
2928
; V8A: hint #31
30-
; V83A: autibsp
31-
; V8A-NEXT, V83A-NEXT: .cfi_negate_ra_state
32-
; V8A-NEXT, V83A-NEXT: ret
29+
; V8A-NEXT: ret
30+
; V83A: retab
3331
ret void
3432
}
3533

@@ -52,8 +50,8 @@ define void @b() "sign-return-address"="all" "sign-return-address-key"="b_key" n
5250
store i32 6, ptr %6, align 4
5351
; CHECK: bl [[OUTLINED_FUNC:OUTLINED_FUNCTION_[0-9]+]]
5452
; V8A: hint #31
55-
; V83A: autibsp
56-
; V8A-NEXT, V83A-NEXT: ret
53+
; V8A-NEXT: ret
54+
; V83A: retab
5755
ret void
5856
}
5957

@@ -76,8 +74,8 @@ define void @c() "sign-return-address"="all" "sign-return-address-key"="b_key" n
7674
store i32 6, ptr %6, align 4
7775
; CHECK: bl [[OUTLINED_FUNC]]
7876
; V8A: hint #31
79-
; V83A: autibsp
80-
; V8A-NEXT, V83A-NEXT: ret
77+
; V8A-NEXT: ret
78+
; V83A: retab
8179
ret void
8280
}
8381

@@ -86,5 +84,5 @@ define void @c() "sign-return-address"="all" "sign-return-address-key"="b_key" n
8684
; V8A-NEXT: hint #27
8785
; V83A-NEXT: pacibsp
8886
; V8A: hint #31
89-
; V83A: autibsp
90-
; V8A-NEXT, V83A-NEXT: ret
87+
; V8A-NEXT: ret
88+
; V83A: retab

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-diff-scope-same-key.ll

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
2-
; RUN: aarch64 %s -o - | FileCheck %s --check-prefixes CHECK,V8A
3-
; RUN-V83A: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
4-
; RUN-V83A: aarch64 -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
1+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \
2+
; RUN: FileCheck %s --check-prefixes CHECK,V8A
3+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \
4+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
65

76
define void @a() "sign-return-address"="all" {
87
; CHECK-LABEL: a: // @a
@@ -22,13 +21,13 @@ define void @a() "sign-return-address"="all" {
2221
store i32 5, ptr %5, align 4
2322
store i32 6, ptr %6, align 4
2423
; V8A: hint #29
25-
; V83A: autiasp
24+
; V83A: retaa
2625
ret void
2726
; CHECK: .cfi_endproc
2827
}
2928

3029
define void @b() "sign-return-address"="non-leaf" {
31-
; CHECK-LABE: b: // @b
30+
; CHECK-LABEL: b: // @b
3231
; V8A-NOT: hint #25
3332
; V83A-NOT: paciasp
3433
; CHECK-NOT: .cfi_negate_ra_state
@@ -46,6 +45,7 @@ define void @b() "sign-return-address"="non-leaf" {
4645
store i32 6, ptr %6, align 4
4746
; V8A-NOT: hint #29
4847
; V83A-NOT: autiasp
48+
; V83A-NOT: retaa
4949
ret void
5050
; CHECK: .cfi_endproc
5151
}
@@ -54,7 +54,7 @@ define void @c() "sign-return-address"="all" {
5454
; CHECK-LABEL: c: // @c
5555
; V8A: hint #25
5656
; V83A: paciasp
57-
; V8A-NEXT, V83A-NEXT: .cfi_negate_ra_state
57+
; CHECK-NEXT: .cfi_negate_ra_state
5858
%1 = alloca i32, align 4
5959
%2 = alloca i32, align 4
6060
%3 = alloca i32, align 4
@@ -68,7 +68,7 @@ define void @c() "sign-return-address"="all" {
6868
store i32 5, ptr %5, align 4
6969
store i32 6, ptr %6, align 4
7070
; V8A: hint #29
71-
; V83A: autiasp
71+
; V83A: retaa
7272
ret void
7373
; CHECK: .cfi_endproc
7474
}

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-non-leaf.ll

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
2-
; RUN: aarch64 %s -o - | FileCheck %s --check-prefixes CHECK,V8A
3-
; RUN-V83A: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
4-
; RUN-V83A: aarch64 -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
1+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \
2+
; RUN: FileCheck %s --check-prefixes CHECK,V8A
3+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \
4+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
65

76
define i64 @a(i64 %x) "sign-return-address"="non-leaf" "sign-return-address-key"="b_key" {
87
; CHECK-LABEL: a: // @a
@@ -70,7 +69,7 @@ define i64 @c(i64 %x) "sign-return-address"="non-leaf" "sign-return-address-key"
7069
ret i64 %x
7170
}
7271

73-
; Outlined function is leaf-function => don't sign it
72+
;; Outlined function is leaf-function => don't sign it
7473
; CHECK-LABEL: OUTLINED_FUNCTION_0:
7574
; CHECK-NOT: .cfi_b_key_frame
7675
; CHECK-NOT: paci{{[a,b]}}sp

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-regsave.mir

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,6 @@ body: |
126126
# CHECK: body:
127127
# CHECK-NEXT: bb.0:
128128
# CHECK-NOT: frame-setup EMITBKEY
129-
# CHECK-NOT: frame-setup PACI{{[A,B]]}}SP
129+
# CHECK-NOT: frame-setup PACI{{[A,B]}}SP
130130
# CHECK-NOT: frame-setup CFI_INSTRUCTION negate_ra_sign_state
131-
# CHECK-NOT: frame-destroy AUTI{{[A,B]]}}SP
131+
# CHECK-NOT: frame-destroy AUTI{{[A,B]}}SP

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-same-scope-diff-key.ll

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
2-
; RUN: aarch64 %s -o - | FileCheck %s --check-prefixes CHECK,V8A
3-
; RUN-V83A: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
4-
; RUN-V83A: aarch64 -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
1+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \
2+
; RUN: FileCheck %s --check-prefixes CHECK,V8A
3+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \
4+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
65

76
define void @a() "sign-return-address"="all" {
87
; CHECK-LABEL: a: // @a
@@ -22,7 +21,7 @@ define void @a() "sign-return-address"="all" {
2221
store i32 5, ptr %5, align 4
2322
store i32 6, ptr %6, align 4
2423
; V8A: hint #29
25-
; V83A: autiasp
24+
; V83A: retaa
2625
ret void
2726
; CHECK: .cfi_endproc
2827
}
@@ -47,6 +46,7 @@ define void @b() "sign-return-address"="all" "sign-return-address-key"="b_key" {
4746
store i32 6, ptr %6, align 4
4847
; V8A-NOT: hint #29
4948
; V83A-NOT: autiasp
49+
; V83A-NOT: retaa
5050
ret void
5151
; CHECK: .cfi_endproc
5252
}
@@ -69,7 +69,7 @@ define void @c() "sign-return-address"="all" {
6969
store i32 5, ptr %5, align 4
7070
store i32 6, ptr %6, align 4
7171
; V8A: hint #29
72-
; V83A: autiasp
72+
; V83A: retaa
7373
ret void
7474
; CHECK: .cfi_endproc
7575
}

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-same-scope-same-key-a.ll

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
2-
; RUN: aarch64 %s -o - | FileCheck %s --check-prefixes CHECK,V8A
3-
; RUN-V83A: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
4-
; RUN-V83A: aarch64 -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
1+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \
2+
; RUN: FileCheck %s --check-prefixes CHECK,V8A
3+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \
4+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
65

76
define void @a() "sign-return-address"="all" "sign-return-address-key"="a_key" nounwind {
87
; CHECK-LABEL: a: // @a
@@ -21,7 +20,7 @@ define void @a() "sign-return-address"="all" "sign-return-address-key"="a_key" n
2120
store i32 5, ptr %5, align 4
2221
store i32 6, ptr %6, align 4
2322
; V8A: hint #29
24-
; V83A: autiasp
23+
; V83A: retaa
2524
ret void
2625
}
2726

@@ -42,7 +41,7 @@ define void @b() "sign-return-address"="all" nounwind {
4241
store i32 5, ptr %5, align 4
4342
store i32 6, ptr %6, align 4
4443
; V8A: hint #29
45-
; V83A: autiasp
44+
; V83A: retaa
4645
ret void
4746
}
4847

@@ -63,13 +62,13 @@ define void @c() "sign-return-address"="all" nounwind {
6362
store i32 5, ptr %5, align 4
6463
store i32 6, ptr %6, align 4
6564
; V8A: hint #29
66-
; V83A: autiasp
65+
; V83A: retaa
6766
ret void
6867
}
6968

7069
; CHECK-LABEL: OUTLINED_FUNCTION_0:
7170
; V8A: hint #25
7271
; V83A: paciasp
7372
; V8A: hint #29
74-
; V83A: autiasp
75-
; CHECK-NEXT: ret
73+
; V8A-NEXT: ret
74+
; V83A: retaa

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-same-scope-same-key-b.ll

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
2-
; RUN: aarch64 %s -o - | FileCheck %s --check-prefixes CHECK,V8A
3-
; RUN-V83A: llc -verify-machineinstrs -enable-machine-outliner -mtriple \
4-
; RUN-V83A: aarch64 -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
1+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 %s -o - | \
2+
; RUN: FileCheck %s --check-prefixes CHECK,V8A
3+
; RUN: llc -verify-machineinstrs -enable-machine-outliner -mtriple aarch64 -mattr=+v8.3a %s -o - | \
4+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
65

76
define void @a() "sign-return-address"="all" "sign-return-address-key"="b_key" nounwind {
87
; CHECK-LABEL: a: // @a
@@ -22,7 +21,7 @@ define void @a() "sign-return-address"="all" "sign-return-address-key"="b_key" n
2221
store i32 5, ptr %5, align 4
2322
store i32 6, ptr %6, align 4
2423
; V8A: hint #31
25-
; V83A: autibsp
24+
; V83A: retab
2625
ret void
2726
}
2827

@@ -44,7 +43,7 @@ define void @b() "sign-return-address"="all" "sign-return-address-key"="b_key" n
4443
store i32 5, ptr %5, align 4
4544
store i32 6, ptr %6, align 4
4645
; V8A: hint #31
47-
; V83A: autibsp
46+
; V83A: retab
4847
ret void
4948
}
5049

@@ -66,7 +65,7 @@ define void @c() "sign-return-address"="all" "sign-return-address-key"="b_key" n
6665
store i32 5, ptr %5, align 4
6766
store i32 6, ptr %6, align 4
6867
; V8A: hint #31
69-
; V83A: autibsp
68+
; V83A: retab
7069
ret void
7170
}
7271

@@ -75,5 +74,5 @@ define void @c() "sign-return-address"="all" "sign-return-address-key"="b_key" n
7574
; V8A-NEXT: hint #27
7675
; V83A-NEXT: pacibsp
7776
; V8A: hint #31
78-
; V83A: autibsp
79-
; CHECK-NEXT: ret
77+
; V8A-NEXT: ret
78+
; V83A: retab

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-subtarget.ll

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ define void @a() #0 {
2424
store i32 4, ptr %4, align 4
2525
store i32 5, ptr %5, align 4
2626
store i32 6, ptr %6, align 4
27+
; CHECK-NOT: auti{{[a,b]}}sp
2728
; CHECK: retab
28-
; CHECK-NOT: auti[a,b]sp
2929
ret void
3030
}
3131

@@ -48,8 +48,8 @@ define void @b() #0 {
4848
store i32 4, ptr %4, align 4
4949
store i32 5, ptr %5, align 4
5050
store i32 6, ptr %6, align 4
51+
; CHECK-NOT: auti{{[a,b]}}sp
5152
; CHECK: retab
52-
; CHECK-NOT: auti[a,b]sp
5353
ret void
5454
}
5555

llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-thunk.ll

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
; RUN: llc -mtriple aarch64-arm-linux-gnu --enable-machine-outliner -outliner-leaf-descendants=false \
2-
; RUN: -verify-machineinstrs %s -o - | FileCheck --check-prefixes CHECK,V8A %s
3-
; RUN-V83A: llc -mtriple aarch64 -enable-machine-outliner -outliner-leaf-descendants=false \
4-
; RUN-V83A: -verify-machineinstrs -mattr=+v8.3a %s -o - > %t
5-
; RUN-V83A: FileCheck --check-prefixes CHECK,V83A < %t %s
2+
; RUN: -verify-machineinstrs %s -o - | FileCheck --check-prefixes CHECK,V8A %s
3+
; RUN: llc -mtriple aarch64 -enable-machine-outliner -outliner-leaf-descendants=false \
4+
; RUN: -verify-machineinstrs -mattr=+v8.3a %s -o - | \
5+
; RUN: FileCheck %s --check-prefixes CHECK,V83A
66

77
declare i32 @thunk_called_fn(i32, i32, i32, i32)
88

@@ -13,8 +13,8 @@ define i32 @a() #0 {
1313
; V83A-NEXT: paciasp
1414
; CHECK-NEXT: .cfi_negate_ra_state
1515
; V8A: hint #29
16-
; V83A: autiasp
17-
; CHECK-NEXT: ret
16+
; V8A-NEXT: ret
17+
; V83A: retaa
1818
entry:
1919
%call = tail call i32 @thunk_called_fn(i32 1, i32 2, i32 3, i32 4)
2020
%cx = add i32 %call, 8
@@ -28,8 +28,8 @@ define i32 @b() #0 {
2828
; V83A-NEXT: paciasp
2929
; CHECK-NEXT: .cfi_negate_ra_state
3030
; V8A: hint #29
31-
; V83A: autiasp
32-
; CHECK-NEXT: ret
31+
; V8A-NEXT: ret
32+
; V83A: retaa
3333
entry:
3434
%call = tail call i32 @thunk_called_fn(i32 1, i32 2, i32 3, i32 4)
3535
%cx = add i32 %call, 88
@@ -43,8 +43,8 @@ define hidden i32 @c(ptr %fptr) #0 {
4343
; V83A-NEXT: paciasp
4444
; CHECK-NEXT: .cfi_negate_ra_state
4545
; V8A: hint #29
46-
; V83A: autiasp
47-
; CHECK-NEXT: ret
46+
; V8A-NEXT: ret
47+
; V83A: retaa
4848
entry:
4949
%call = tail call i32 %fptr(i32 1, i32 2, i32 3, i32 4)
5050
%add = add nsw i32 %call, 8
@@ -58,8 +58,8 @@ define hidden i32 @d(ptr %fptr) #0 {
5858
; V83A-NEXT: paciasp
5959
; CHECK-NEXT: .cfi_negate_ra_state
6060
; V8A: hint #29
61-
; V83A: autiasp
62-
; CHECK-NEXT: ret
61+
; V8A-NEXT: ret
62+
; V83A: retaa
6363
entry:
6464
%call = tail call i32 %fptr(i32 1, i32 2, i32 3, i32 4)
6565
%add = add nsw i32 %call, 88

0 commit comments

Comments
 (0)