5
5
# greater than 1, so we will always generate code to adjust for this alignment.
6
6
7
7
--- |
8
- define void @va_arg_i32() {
8
+ define void @va_arg_i32(ptr %0, ptr %1, ptr %2, ptr %3, ptr %4, ptr %5, ptr %6, ptr %7, ... ) {
9
9
%va = alloca ptr, align 8
10
- %1 = va_arg ptr %va, i32
10
+ %p = va_arg ptr %va, i32
11
11
ret void
12
12
}
13
- define void @va_arg_i64() {
13
+ define void @va_arg_i64(ptr %0, ptr %1, ptr %2, ptr %3, ptr %4, ptr %5, ptr %6, ptr %7, ... ) {
14
14
%va = alloca ptr, align 8
15
- %1 = va_arg ptr %va, i32
15
+ %p = va_arg ptr %va, i32
16
16
ret void
17
17
}
18
- define void @va_arg_ptr() {
18
+ define void @va_arg_ptr(ptr %0, ptr %1, ptr %2, ptr %3, ptr %4, ptr %5, ptr %6, ptr %7, ... ) {
19
19
%va = alloca ptr, align 8
20
- %1 = va_arg ptr %va, ptr
20
+ %p = va_arg ptr %va, ptr
21
21
ret void
22
22
}
23
23
...
24
24
---
25
25
name : va_arg_i32
26
26
legalized : false
27
27
tracksRegLiveness : true
28
+ fixedStack :
29
+ - { id: 0, type: default, offset: 0, size: 8, alignment: 16,
30
+ isImmutable : true, isAliased: false }
28
31
stack :
29
- - { id: 0, name: va, type: default, offset: 0, size: 8, alignment: 4,
30
- stack-id : default, callee-saved-register: '', callee-saved-restored: true,
31
- debug-info-variable : ' ' , debug-info-expression: '', debug-info-location: '' }
32
+ - { id: 0, name: va, type: default, offset: 0, size: 8, alignment: 8 }
33
+ machineFunctionInfo :
34
+ varArgsFrameIndex : -1
35
+ varArgsSaveSize : 0
32
36
body : |
33
- bb.1 (%ir-block.0 ):
37
+ bb.1 (%ir-block.8 ):
34
38
; CHECK-LABEL: name: va_arg_i32
35
39
; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %stack.0.va
36
40
; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (load (p0))
@@ -50,12 +54,16 @@ body: |
50
54
name : va_arg_i64
51
55
legalized : false
52
56
tracksRegLiveness : true
57
+ fixedStack :
58
+ - { id: 0, type: default, offset: 0, size: 8, alignment: 16,
59
+ isImmutable : true, isAliased: false }
53
60
stack :
54
- - { id: 0, name: va, type: default, offset: 0, size: 8, alignment: 4,
55
- stack-id : default, callee-saved-register: '', callee-saved-restored: true,
56
- debug-info-variable : ' ' , debug-info-expression: '', debug-info-location: '' }
61
+ - { id: 0, name: va, type: default, offset: 0, size: 8, alignment: 8 }
62
+ machineFunctionInfo :
63
+ varArgsFrameIndex : -1
64
+ varArgsSaveSize : 0
57
65
body : |
58
- bb.1 (%ir-block.0 ):
66
+ bb.1 (%ir-block.8 ):
59
67
; CHECK-LABEL: name: va_arg_i64
60
68
; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %stack.0.va
61
69
; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (load (p0))
@@ -75,12 +83,16 @@ body: |
75
83
name : va_arg_ptr
76
84
legalized : false
77
85
tracksRegLiveness : true
86
+ fixedStack :
87
+ - { id: 0, type: default, offset: 0, size: 8, alignment: 16,
88
+ isImmutable : true, isAliased: false }
78
89
stack :
79
- - { id: 0, name: va, type: default, offset: 0, size: 8, alignment: 4,
80
- stack-id : default, callee-saved-register: '', callee-saved-restored: true,
81
- debug-info-variable : ' ' , debug-info-expression: '', debug-info-location: '' }
90
+ - { id: 0, name: va, type: default, offset: 0, size: 8, alignment: 8 }
91
+ machineFunctionInfo :
92
+ varArgsFrameIndex : -1
93
+ varArgsSaveSize : 0
82
94
body : |
83
- bb.1 (%ir-block.0 ):
95
+ bb.1 (%ir-block.8 ):
84
96
; CHECK-LABEL: name: va_arg_ptr
85
97
; CHECK: [[FRAME_INDEX:%[0-9]+]]:_(p0) = G_FRAME_INDEX %stack.0.va
86
98
; CHECK-NEXT: [[LOAD:%[0-9]+]]:_(p0) = G_LOAD [[FRAME_INDEX]](p0) :: (load (p0))
0 commit comments