Skip to content

Commit da334d3

Browse files
committed
Add test showing bug
1 parent 408659c commit da334d3

File tree

1 file changed

+71
-0
lines changed

1 file changed

+71
-0
lines changed
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 5
2+
# RUN: llc -mtriple=aarch64 -mattr=+mte -run-pass=prologepilog %s -o - | FileCheck %s
3+
4+
--- |
5+
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32"
6+
target triple = "aarch64-arm-none-eabi"
7+
8+
define void @F76(i32 %0, ...) #0 {
9+
ret void
10+
}
11+
12+
...
13+
---
14+
name: F76
15+
fixedStack:
16+
- { id: 0, type: default, offset: 0, size: 4, alignment: 16, stack-id: default,
17+
isImmutable: true, isAliased: false, callee-saved-register: '', callee-saved-restored: true,
18+
debug-info-variable: '', debug-info-expression: '', debug-info-location: '' }
19+
stack:
20+
- { id: 0, name: '', type: default, offset: 0, size: 4080, alignment: 16,
21+
stack-id: default, callee-saved-register: '', callee-saved-restored: true,
22+
local-offset: -4080, debug-info-variable: '', debug-info-expression: '',
23+
debug-info-location: '' }
24+
- { id: 1, name: '', type: default, offset: 0, size: 32, alignment: 16,
25+
stack-id: default, callee-saved-register: '', callee-saved-restored: true,
26+
local-offset: -4112, debug-info-variable: '', debug-info-expression: '',
27+
debug-info-location: '' }
28+
- { id: 2, name: '', type: default, offset: 0, size: 3888, alignment: 4,
29+
stack-id: default, callee-saved-register: '', callee-saved-restored: true,
30+
local-offset: -8000, debug-info-variable: '', debug-info-expression: '',
31+
debug-info-location: '' }
32+
- { id: 3, name: '', type: default, offset: 0, size: 56, alignment: 8,
33+
stack-id: default, callee-saved-register: '', callee-saved-restored: true,
34+
local-offset: -8056, debug-info-variable: '', debug-info-expression: '',
35+
debug-info-location: '' }
36+
- { id: 4, name: '', type: default, offset: 0, size: 128, alignment: 16,
37+
stack-id: default, callee-saved-register: '', callee-saved-restored: true,
38+
local-offset: -8192, debug-info-variable: '', debug-info-expression: '',
39+
debug-info-location: '' }
40+
body: |
41+
bb.0 (%ir-block.1):
42+
liveins: $q0, $q1, $q2, $q3, $q4, $q5, $q6, $q7, $x1, $x2, $x3, $x4, $x5, $x6, $x7
43+
44+
; CHECK-LABEL: name: F76
45+
; CHECK: liveins: $q0, $q1, $q2, $q3, $q4, $q5, $q6, $q7, $x1, $x2, $x3, $x4, $x5, $x6, $x7, $fp
46+
; CHECK-NEXT: {{ $}}
47+
; CHECK-NEXT: early-clobber $sp = frame-setup STRXpre killed $fp, $sp, -16 :: (store (s64) into %stack.5)
48+
; CHECK-NEXT: $sp = frame-setup SUBXri $sp, 2, 12
49+
; CHECK-NEXT: frame-setup CFI_INSTRUCTION def_cfa_offset 8208
50+
; CHECK-NEXT: frame-setup CFI_INSTRUCTION offset $w29, -16
51+
; CHECK-NEXT: renamable $x8 = IRGstack $sp, $xzr
52+
; CHECK-NEXT: renamable $x9 = TAGPstack $x8, 2, renamable $x8, 1
53+
; CHECK-NEXT: renamable $x10 = COPY renamable $x9
54+
; CHECK-NEXT: dead early-clobber renamable $x11, dead early-clobber renamable $x10 = STGloop_wback 4080, killed renamable $x10, implicit-def dead $nzcv
55+
; CHECK-NEXT: ST2Gi renamable $x8, renamable $x8, 0
56+
; CHECK-NEXT: dead early-clobber $x8, early-clobber $sp = frame-destroy STGloop_wback 4096, $sp, implicit-def $nzcv
57+
; CHECK-NEXT: $sp = frame-destroy STGPostIndex $sp, $sp, 256
58+
; CHECK-NEXT: early-clobber $sp, $fp = frame-destroy LDRXpost $sp, 16 :: (load (s64) from %stack.5)
59+
; CHECK-NEXT: RET_ReallyLR
60+
/* Prologue */
61+
renamable $x8 = IRGstack $sp, $xzr
62+
renamable $x9 = TAGPstack %stack.0, 0, renamable $x8, 1
63+
renamable $x10 = COPY renamable $x9
64+
dead early-clobber renamable $x11, dead early-clobber renamable $x10 = STGloop_wback 4080, killed renamable $x10, implicit-def dead $nzcv
65+
ST2Gi renamable $x8, renamable $x8, 0
66+
67+
/* Epilogue */
68+
dead early-clobber renamable $x8, dead early-clobber renamable $x9 = STGloop 4080, %stack.0, implicit-def dead $nzcv
69+
ST2Gi $sp, %stack.1, 0
70+
RET_ReallyLR
71+
...

0 commit comments

Comments
 (0)