@@ -29,8 +29,7 @@ name: merge_scaled_str_with_unscaled_8
29
29
body : |
30
30
bb.0.entry:
31
31
; CHECK-LABEL: name: merge_scaled_str_with_unscaled_8
32
- ; CHECK: STRBBui $wzr, $x0, 4 :: (store (s8))
33
- ; CHECK-NEXT: STURBBi $wzr, $x0, 5 :: (store (s8))
32
+ ; CHECK: STRHHui $wzr, $x0, 2 :: (store (s8))
34
33
; CHECK-NEXT: RET undef $lr
35
34
STRBBui $wzr, $x0, 4 :: (store (s8))
36
35
STURBBi $wzr, $x0, 5 :: (store (s8))
@@ -41,14 +40,35 @@ name: merge_unscaled_str_with_scaled_8
41
40
body : |
42
41
bb.0.entry:
43
42
; CHECK-LABEL: name: merge_unscaled_str_with_scaled_8
44
- ; CHECK: STURBBi $wzr, $x0, 4 :: (store (s8))
45
- ; CHECK-NEXT: STRBBui $wzr, $x0, 5 :: (store (s8))
43
+ ; CHECK: STURHHi $wzr, $x0, 4 :: (store (s8))
46
44
; CHECK-NEXT: RET undef $lr
47
45
STURBBi $wzr, $x0, 4 :: (store (s8))
48
46
STRBBui $wzr, $x0, 5 :: (store (s8))
49
47
RET undef $lr
50
48
...
51
49
---
50
+ name : merge_unscaled_str_with_scaled_8_lower_address_second
51
+ body : |
52
+ bb.0.entry:
53
+ ; CHECK-LABEL: name: merge_unscaled_str_with_scaled_8_lower_address_second
54
+ ; CHECK: STURHHi $wzr, $x0, 0 :: (store (s8))
55
+ ; CHECK-NEXT: RET undef $lr
56
+ STURBBi $wzr, $x0, 1 :: (store (s8))
57
+ STRBBui $wzr, $x0, 0 :: (store (s8))
58
+ RET undef $lr
59
+ ...
60
+ ---
61
+ name : merge_scaled_str_with_unscaled_8_lower_address_second
62
+ body : |
63
+ bb.0.entry:
64
+ ; CHECK-LABEL: name: merge_scaled_str_with_unscaled_8_lower_address_second
65
+ ; CHECK: STRHHui $wzr, $x0, 0 :: (store (s8))
66
+ ; CHECK-NEXT: RET undef $lr
67
+ STRBBui $wzr, $x0, 1 :: (store (s8))
68
+ STURBBi $wzr, $x0, 0 :: (store (s8))
69
+ RET undef $lr
70
+ ...
71
+ ---
52
72
name : merge_unscaled_str_with_unscaled_str_16
53
73
body : |
54
74
bb.0:
@@ -75,8 +95,7 @@ name: merge_scaled_str_with_unscaled_16
75
95
body : |
76
96
bb.0.entry:
77
97
; CHECK-LABEL: name: merge_scaled_str_with_unscaled_16
78
- ; CHECK: STRHHui $wzr, $x0, 2 :: (store (s16))
79
- ; CHECK-NEXT: STURHHi $wzr, $x0, 6 :: (store (s16))
98
+ ; CHECK: STRWui $wzr, $x0, 1 :: (store (s16))
80
99
; CHECK-NEXT: RET undef $lr
81
100
STRHHui $wzr, $x0, 2 :: (store (s16))
82
101
STURHHi $wzr, $x0, 6 :: (store (s16))
@@ -87,14 +106,35 @@ name: merge_unscaled_str_with_scaled_16
87
106
body : |
88
107
bb.0.entry:
89
108
; CHECK-LABEL: name: merge_unscaled_str_with_scaled_16
90
- ; CHECK: STURHHi $wzr, $x0, 4 :: (store (s16))
91
- ; CHECK-NEXT: STRHHui $wzr, $x0, 3 :: (store (s16))
109
+ ; CHECK: STURWi $wzr, $x0, 4 :: (store (s16))
92
110
; CHECK-NEXT: RET undef $lr
93
111
STURHHi $wzr, $x0, 4 :: (store (s16))
94
112
STRHHui $wzr, $x0, 3 :: (store (s16))
95
113
RET undef $lr
96
114
...
97
115
---
116
+ name : merge_unscaled_str_with_scaled_16_lower_address_second
117
+ body : |
118
+ bb.0.entry:
119
+ ; CHECK-LABEL: name: merge_unscaled_str_with_scaled_16_lower_address_second
120
+ ; CHECK: STURWi $wzr, $x0, 2 :: (store (s16))
121
+ ; CHECK-NEXT: RET undef $lr
122
+ STURHHi $wzr, $x0, 4 :: (store (s16))
123
+ STRHHui $wzr, $x0, 1 :: (store (s16))
124
+ RET undef $lr
125
+ ...
126
+ ---
127
+ name : merge_scaled_str_with_unscaled_16_lower_address_second
128
+ body : |
129
+ bb.0.entry:
130
+ ; CHECK-LABEL: name: merge_scaled_str_with_unscaled_16_lower_address_second
131
+ ; CHECK: STRWui $wzr, $x0, 0 :: (store (s16))
132
+ ; CHECK-NEXT: RET undef $lr
133
+ STRHHui $wzr, $x0, 1 :: (store (s16))
134
+ STURHHi $wzr, $x0, 0 :: (store (s16))
135
+ RET undef $lr
136
+ ...
137
+ ---
98
138
name : merge_unscaled_str_with_unscaled_32
99
139
body : |
100
140
bb.0.entry:
0 commit comments