@@ -132,7 +132,7 @@ define i32 @bfe_ashr_signed_32(i32 %x) {
132132; CHECK-O0-EMPTY:
133133; CHECK-O0-NEXT: // %bb.0:
134134; CHECK-O0-NEXT: ld.param.u32 %r1, [bfe_ashr_signed_32_param_0];
135- ; CHECK-O0-NEXT: bfe.u32 %r2, %r1, 20, 12;
135+ ; CHECK-O0-NEXT: bfe.s32 %r2, %r1, 20, 12;
136136; CHECK-O0-NEXT: st.param.b32 [func_retval0], %r2;
137137; CHECK-O0-NEXT: ret;
138138 %and = and i32 %x , -65536
@@ -162,7 +162,7 @@ define i64 @bfe_ashr_signed_64(i64 %x) {
162162; CHECK-EMPTY:
163163; CHECK-NEXT: // %bb.0:
164164; CHECK-NEXT: ld.param.u64 %rd1, [bfe_ashr_signed_64_param_0];
165- ; CHECK-NEXT: bfe.u64 %rd2, %rd1, 16, 48;
165+ ; CHECK-NEXT: bfe.s64 %rd2, %rd1, 16, 48;
166166; CHECK-NEXT: st.param.b64 [func_retval0], %rd2;
167167; CHECK-NEXT: ret;
168168 %and = and i64 %x , -65536
@@ -194,7 +194,7 @@ define i32 @bfe3(i128 %a) {
194194; CHECK-NEXT: // %bb.0:
195195; CHECK-NEXT: ld.param.v2.u64 {%rd1, %rd2}, [bfe3_param_0];
196196; CHECK-NEXT: cvt.u32.u64 %r1, %rd1;
197- ; CHECK-NEXT: bfe.u32 %r2, %r1, 15, 17;
197+ ; CHECK-NEXT: bfe.s32 %r2, %r1, 15, 17;
198198; CHECK-NEXT: st.param.b32 [func_retval0], %r2;
199199; CHECK-NEXT: ret;
200200 %trunc = trunc i128 %a to i32
@@ -210,7 +210,7 @@ define i64 @bfe4(i128 %a) {
210210; CHECK-EMPTY:
211211; CHECK-NEXT: // %bb.0:
212212; CHECK-NEXT: ld.param.v2.u64 {%rd1, %rd2}, [bfe4_param_0];
213- ; CHECK-NEXT: bfe.u64 %rd3, %rd1, 17, 47;
213+ ; CHECK-NEXT: bfe.s64 %rd3, %rd1, 17, 47;
214214; CHECK-NEXT: st.param.b64 [func_retval0], %rd3;
215215; CHECK-NEXT: ret;
216216 %trunc = trunc i128 %a to i64
0 commit comments