[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / AArch64 / stack-id-pei-alloc.mir
blob56a3d280e009871372652a107edac73e255ce42d
1 # RUN: llc -mtriple=aarch64-none-linux-gnu -run-pass=prologepilog %s -o - | FileCheck %s
2 ...
3 # Ensure that objects with StackID > 0 are not allocated on the default stack
4 # (will not be allocated an offset) and are not considered in the calculation of
5 # the StackSize.
6 # CHECK:      name: test_allocate
7 # CHECK:      stackSize: 16
8 # CHECK:      stack:
9 # CHECK:        id: 0, name: '', type: default, offset: -8, size: 8, alignment: 8,
10 # CHECK-NEXT:   stack-id: default
11 # CHECK:        id: 1, name: '', type: default, offset: -16, size: 8, alignment: 8,
12 # CHECK-NEXT:   stack-id: default
13 # CHECK:        id: 2, name: '', type: default, offset: 0, size: 8, alignment: 8,
14 # CHECK-NEXT:   stack-id: noalloc
15 name:            test_allocate
16 frameInfo:
17   maxAlignment:  16
18 stack:
19   - { id: 0, stack-id: default, size: 8, alignment: 8, offset: 0 }
20   - { id: 1, stack-id: default, size: 8, alignment: 8, offset: 0 }
21   - { id: 2, stack-id: noalloc, size: 8, alignment: 8, offset: 0 }
22 body:             |
23   bb.0.entry:
24     RET_ReallyLR
25 ---
26 ...
27 # Ensure MaxAlignment becomes '32' even though we also have an object
28 # with alignment of 64. MaxAlignment only pertains to the default stack
29 # (StackID 0), so objects associated with a different StackID should
30 # not be considered.
32 # CHECK: name: test_maxalign
33 # CHECK: maxAlignment: 32
34 name:            test_maxalign
35 frameInfo:
36   maxAlignment:  16
37 stack:
38   - { id: 0, stack-id: default, size: 16, alignment: 32 }
39   - { id: 1, stack-id: noalloc, size: 16, alignment: 64 }
40 body:             |
41   bb.0.entry:
42     RET_ReallyLR
43 ---
44 ...
45 # CHECK: name: test_maxalign_fixedstack
46 # CHECK: maxAlignment: 32
47 name:            test_maxalign_fixedstack
48 frameInfo:
49   maxAlignment:  16
50 fixedStack:
51   - { id: 0, stack-id: default, size: 16, alignment: 32 }
52   - { id: 1, stack-id: noalloc, size: 16, alignment: 64 }
53 body:             |
54   bb.0.entry:
55     RET_ReallyLR
56 ---