@@ -111,12 +111,9 @@ void nehalem(void) {
111111#endif
112112
113113#ifdef __riscv
114- // CHECK-RV64-LABEL: define dso_local signext i32 @test_riscv (
115- // CHECK-RV64-SAME: i32 noundef signext [[A:%.*]] ) #[[ATTR0:[0-9]+]] {
114+ // CHECK-RV64-LABEL: define dso_local signext i32 @test_cpu_is_veyron_v1 (
115+ // CHECK-RV64-SAME: ) #[[ATTR0:[0-9]+]] {
116116// CHECK-RV64-NEXT: [[ENTRY:.*:]]
117- // CHECK-RV64-NEXT: [[RETVAL:%.*]] = alloca i32, align 4
118- // CHECK-RV64-NEXT: [[A_ADDR:%.*]] = alloca i32, align 4
119- // CHECK-RV64-NEXT: store i32 [[A]], ptr [[A_ADDR]], align 4
120117// CHECK-RV64-NEXT: [[TMP0:%.*]] = load i32, ptr @__riscv_cpu_model, align 4
121118// CHECK-RV64-NEXT: [[TMP1:%.*]] = icmp eq i32 [[TMP0]], 1567
122119// CHECK-RV64-NEXT: [[TMP2:%.*]] = load i64, ptr getelementptr inbounds ({ i32, i64, i64 }, ptr @__riscv_cpu_model, i32 0, i32 1), align 8
@@ -125,20 +122,10 @@ void nehalem(void) {
125122// CHECK-RV64-NEXT: [[TMP5:%.*]] = load i64, ptr getelementptr inbounds ({ i32, i64, i64 }, ptr @__riscv_cpu_model, i32 0, i32 2), align 8
126123// CHECK-RV64-NEXT: [[TMP6:%.*]] = icmp eq i64 [[TMP5]], 273
127124// CHECK-RV64-NEXT: [[TMP7:%.*]] = and i1 [[TMP4]], [[TMP6]]
128- // CHECK-RV64-NEXT: br i1 [[TMP7]], label %[[IF_THEN:.*]], label %[[IF_END:.*]]
129- // CHECK-RV64: [[IF_THEN]]:
130- // CHECK-RV64-NEXT: store i32 3, ptr [[RETVAL]], align 4
131- // CHECK-RV64-NEXT: br label %[[RETURN:.*]]
132- // CHECK-RV64: [[IF_END]]:
133- // CHECK-RV64-NEXT: store i32 0, ptr [[RETVAL]], align 4
134- // CHECK-RV64-NEXT: br label %[[RETURN]]
135- // CHECK-RV64: [[RETURN]]:
136- // CHECK-RV64-NEXT: [[TMP8:%.*]] = load i32, ptr [[RETVAL]], align 4
137- // CHECK-RV64-NEXT: ret i32 [[TMP8]]
125+ // CHECK-RV64-NEXT: [[CONV:%.*]] = zext i1 [[TMP7]] to i32
126+ // CHECK-RV64-NEXT: ret i32 [[CONV]]
138127//
139- int test_riscv (int a ) {
140- if (__builtin_cpu_is ("veyron-v1" ))
141- return 3 ;
142- return 0 ;
128+ int test_cpu_is_veyron_v1 () {
129+ return __builtin_cpu_is ("veyron-v1" );
143130}
144131#endif
0 commit comments