168 lines · c
1// RUN: %clang_cc1 -triple riscv64 -target-feature +v \2// RUN: -target-feature +zvfh -target-feature +zvfbfmin -ast-print %s | FileCheck %s3 4void bar(void) {5 // CHECK: __rvv_int64m1_t x0;6 __rvv_int64m1_t x0;7 8 // CHECK: __rvv_float64m1_t x1;9 __rvv_float64m1_t x1;10 11 // CHECK: __rvv_int64m2_t x2;12 __rvv_int64m2_t x2;13 14 // CHECK: __rvv_float64m2_t x3;15 __rvv_float64m2_t x3;16 17 // CHECK: __rvv_int64m4_t x4;18 __rvv_int64m4_t x4;19 20 // CHECK: __rvv_float64m4_t x5;21 __rvv_float64m4_t x5;22 23 // CHECK: __rvv_int64m8_t x6;24 __rvv_int64m8_t x6;25 26 // CHECK: __rvv_float64m8_t x7;27 __rvv_float64m8_t x7;28 29 // CHECK: __rvv_int32m1_t x8;30 __rvv_int32m1_t x8;31 32 // CHECK: __rvv_float32m1_t x9;33 __rvv_float32m1_t x9;34 35 // CHECK: __rvv_int32m2_t x10;36 __rvv_int32m2_t x10;37 38 // CHECK: __rvv_float32m2_t x11;39 __rvv_float32m2_t x11;40 41 // CHECK: __rvv_int32m4_t x12;42 __rvv_int32m4_t x12;43 44 // CHECK: __rvv_float32m4_t x13;45 __rvv_float32m4_t x13;46 47 // CHECK: __rvv_int32m8_t x14;48 __rvv_int32m8_t x14;49 50 // CHECK: __rvv_float32m8_t x15;51 __rvv_float32m8_t x15;52 53 // CHECK: __rvv_int16m1_t x16;54 __rvv_int16m1_t x16;55 56 // CHECK: __rvv_float16m1_t x17;57 __rvv_float16m1_t x17;58 59 // CHECK: __rvv_int16m2_t x18;60 __rvv_int16m2_t x18;61 62 // CHECK: __rvv_float16m2_t x19;63 __rvv_float16m2_t x19;64 65 // CHECK: __rvv_int16m4_t x20;66 __rvv_int16m4_t x20;67 68 // CHECK: __rvv_float16m4_t x21;69 __rvv_float16m4_t x21;70 71 // CHECK: __rvv_int16m8_t x22;72 __rvv_int16m8_t x22;73 74 // CHECK: __rvv_float16m8_t x23;75 __rvv_float16m8_t x23;76 77 // CHECK: __rvv_int8m1_t x24;78 __rvv_int8m1_t x24;79 80 // CHECK: __rvv_int8m2_t x25;81 __rvv_int8m2_t x25;82 83 // CHECK: __rvv_int8m4_t x26;84 __rvv_int8m4_t x26;85 86 // CHECK: __rvv_int8m8_t x27;87 __rvv_int8m8_t x27;88 89 // CHECK: __rvv_bool64_t x28;90 __rvv_bool64_t x28;91 92 // CHECK: __rvv_bool32_t x29;93 __rvv_bool32_t x29;94 95 // CHECK: __rvv_bool16_t x30;96 __rvv_bool16_t x30;97 98 // CHECK: __rvv_bool8_t x31;99 __rvv_bool8_t x31;100 101 // CHECK: __rvv_bool8_t x32;102 __rvv_bool8_t x32;103 104 // CHECK: __rvv_bool8_t x33;105 __rvv_bool8_t x33;106 107 // CHECK: __rvv_bool8_t x34;108 __rvv_bool8_t x34;109 110 // CHECK: __rvv_int32mf2_t x35;111 __rvv_int32mf2_t x35;112 113 // CHECK: __rvv_float32mf2_t x36;114 __rvv_float32mf2_t x36;115 116 // CHECK: __rvv_int16mf4_t x37;117 __rvv_int16mf4_t x37;118 119 // CHECK: __rvv_float16mf4_t x38;120 __rvv_float16mf4_t x38;121 122 // CHECK: __rvv_int16mf2_t x39;123 __rvv_int16mf2_t x39;124 125 // CHECK: __rvv_float16mf2_t x40;126 __rvv_float16mf2_t x40;127 128 // CHECK: __rvv_int8mf8_t x41;129 __rvv_int8mf8_t x41;130 131 // CHECK: __rvv_int8mf4_t x42;132 __rvv_int8mf4_t x42;133 134 // CHECK: __rvv_int8mf2_t x43;135 __rvv_int8mf2_t x43;136 137 // CHECK: __rvv_int32m1x2_t x44;138 __rvv_int32m1x2_t x44;139 140 // CHECK: __rvv_bfloat16m1_t x45;141 __rvv_bfloat16m1_t x45;142 143 // CHECK: __rvv_bfloat16m2_t x46;144 __rvv_bfloat16m2_t x46;145 146 // CHECK: __rvv_bfloat16m4_t x47;147 __rvv_bfloat16m4_t x47;148 149 // CHECK: __rvv_bfloat16m8_t x48;150 __rvv_bfloat16m8_t x48;151 152 // CHECK: __rvv_bfloat16mf4_t x49;153 __rvv_bfloat16mf4_t x49;154 155 // CHECK: __rvv_bfloat16mf2_t x50;156 __rvv_bfloat16mf2_t x50;157 158}159 160typedef __rvv_bool4_t vbool4_t;161__rvv_bool4_t get_rvv_bool4(void);162vbool4_t get_vbool4_t(void);163 164void func1(int sel) {165 // CHECK: vbool4_t t0 = sel ? get_rvv_bool4() : get_vbool4_t();166 vbool4_t t0 = sel ? get_rvv_bool4() : get_vbool4_t();167}168