|
95 | 95 | ; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_arbitrary_precision_integers,+SPV_INTEL_arbitrary_precision_fixed_point -o %t.spv |
96 | 96 | ; RUN: llvm-spirv %t.spv -to-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV |
97 | 97 |
|
98 | | -; RUN: llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_arbitrary_precision_integers -spirv-text -o - | FileCheck %s --check-prefix=CHECK-SPIRV-NEGATIVE |
| 98 | +; RUN: not llvm-spirv %t.bc --spirv-ext=+SPV_INTEL_arbitrary_precision_integers -spirv-text -o - 2>&1 | FileCheck %s --check-prefix=CHECK-ERROR |
| 99 | +; CHECK-ERROR: InvalidInstruction: Can't translate llvm instruction: |
| 100 | +; CHECK-ERROR: Fixed point instructions can't be translated correctly without enabled SPV_INTEL_arbitrary_precision_fixed_point extension! |
99 | 101 |
|
100 | 102 | ; RUN: llvm-spirv -r %t.spv -o %t.bc |
101 | 103 | ; RUN: llvm-dis < %t.bc | FileCheck %s --check-prefix=CHECK-LLVM |
|
106 | 108 | ; CHECK-SPIRV: 12 Extension "SPV_INTEL_arbitrary_precision_fixed_point" |
107 | 109 | ; CHECK-SPIRV: 11 Extension "SPV_INTEL_arbitrary_precision_integers" |
108 | 110 |
|
109 | | -; CHECK-SPIRV-NEGATIVE-NOT: 2 Capability ArbitraryPrecisionFixedPointINTEL |
110 | | -; CHECK-SPIRV-NEGATIVE-NOT: 12 Extension "SPV_INTEL_arbitrary_precision_fixed_point" |
111 | | - |
112 | 111 | ; CHECK-SPIRV: 4 TypeInt [[Ty_8:[0-9]+]] 8 0 |
113 | 112 | ; CHECK-SPIRV: 4 TypeInt [[Ty_13:[0-9]+]] 13 0 |
114 | 113 | ; CHECK-SPIRV: 4 TypeInt [[Ty_5:[0-9]+]] 5 0 |
|
128 | 127 |
|
129 | 128 | ; CHECK-SPIRV: 6 Load [[Ty_13]] [[Sqrt_InId:[0-9]+]] |
130 | 129 | ; CHECK-SPIRV-NEXT: 9 FixedSqrtINTEL [[Ty_5]] [[#]] [[Sqrt_InId]] 0 2 2 0 0 |
131 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSqrtINTEL |
132 | 130 | ; CHECK-SPIRV: 6 Load [[Ty_5]] [[Sqrt_InId_B:[0-9]+]] |
133 | 131 | ; CHECK-SPIRV-NEXT: 9 FixedSqrtINTEL [[Ty_13]] [[#]] [[Sqrt_InId_B]] 0 2 2 0 0 |
134 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSqrtINTEL |
135 | 132 | ; CHECK-SPIRV: 6 Load [[Ty_5]] [[Sqrt_InId_C:[0-9]+]] |
136 | 133 | ; CHECK-SPIRV-NEXT: 9 FixedSqrtINTEL [[Ty_13]] [[#]] [[Sqrt_InId_C]] 0 2 2 0 0 |
137 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSqrtINTEL |
138 | 134 |
|
139 | 135 | ; CHECK-SPIRV: 6 Load [[Ty_3]] [[Recip_InId:[0-9]+]] |
140 | 136 | ; CHECK-SPIRV-NEXT: 9 FixedRecipINTEL [[Ty_8]] [[#]] [[Recip_InId]] 1 4 4 0 0 |
141 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedRecipINTEL |
142 | 137 |
|
143 | 138 | ; CHECK-SPIRV: 6 Load [[Ty_11]] [[Rsqrt_InId:[0-9]+]] |
144 | 139 | ; CHECK-SPIRV-NEXT: 9 FixedRsqrtINTEL [[Ty_10]] [[#]] [[Rsqrt_InId]] 0 8 6 0 0 |
145 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedRsqrtINTEL |
146 | 140 |
|
147 | 141 | ; CHECK-SPIRV: 6 Load [[Ty_17]] [[Sin_InId:[0-9]+]] |
148 | 142 | ; CHECK-SPIRV-NEXT: 9 FixedSinINTEL [[Ty_11]] [[#]] [[Sin_InId]] 1 7 5 0 0 |
149 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSinINTEL |
150 | 143 |
|
151 | 144 | ; CHECK-SPIRV: 6 Load [[Ty_35]] [[Cos_InId:[0-9]+]] |
152 | 145 | ; CHECK-SPIRV-NEXT: 9 FixedCosINTEL [[Ty_28]] [[#]] [[Cos_InId]] 0 9 3 0 0 |
153 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedCosINTEL |
154 | 146 |
|
155 | 147 | ; CHECK-SPIRV: 6 Load [[Ty_31]] [[SinCos_InId:[0-9]+]] |
156 | 148 | ; CHECK-SPIRV-NEXT: 9 FixedSinCosINTEL [[Ty_40]] [[#]] [[SinCos_InId]] 1 10 12 0 0 |
157 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSinCosINTEL |
158 | 149 |
|
159 | 150 | ; CHECK-SPIRV: 6 Load [[Ty_60]] [[SinPi_InId:[0-9]+]] |
160 | 151 | ; CHECK-SPIRV-NEXT: 9 FixedSinPiINTEL [[Ty_5]] [[#]] [[SinPi_InId]] 0 2 2 0 0 |
161 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSinPiINTEL |
162 | 152 |
|
163 | 153 | ; CHECK-SPIRV: 6 Load [[Ty_28]] [[CosPi_InId:[0-9]+]] |
164 | 154 | ; CHECK-SPIRV-NEXT: 9 FixedCosPiINTEL [[Ty_16]] [[#]] [[CosPi_InId]] 0 8 5 0 0 |
165 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedCosPiINTEL |
166 | 155 |
|
167 | 156 | ; CHECK-SPIRV: 6 Load [[Ty_13]] [[SinCosPi_InId:[0-9]+]] |
168 | 157 | ; CHECK-SPIRV-NEXT: 9 FixedSinCosPiINTEL [[Ty_10]] [[#]] [[SinCosPi_InId]] 0 2 2 0 0 |
169 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedSinCosPiINTEL |
170 | 158 |
|
171 | 159 | ; CHECK-SPIRV: 6 Load [[Ty_64]] [[Log_InId:[0-9]+]] |
172 | 160 | ; CHECK-SPIRV-NEXT: 9 FixedLogINTEL [[Ty_44]] [[#]] [[Log_InId]] 1 24 22 0 0 |
173 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedLogINTEL |
174 | 161 |
|
175 | 162 | ; CHECK-SPIRV: 6 Load [[Ty_44]] [[Exp_InId:[0-9]+]] |
176 | 163 | ; CHECK-SPIRV-NEXT: 9 FixedExpINTEL [[Ty_34]] [[#]] [[Exp_InId]] 0 20 20 0 0 |
177 | | -; CHECK-SPIRV-NEGATIVE-NOT: 9 FixedExpINTEL |
178 | 164 |
|
179 | 165 | ; CHECK-LLVM: call i5 @intel_arbitrary_fixed_sqrt.i5.i13(i13 %[[#]], i1 false, i32 2, i32 2, i32 0, i32 0) |
180 | 166 | ; CHECK-LLVM: call i13 @intel_arbitrary_fixed_sqrt.i13.i5(i5 %[[#]], i1 false, i32 2, i32 2, i32 0, i32 0) |
|
0 commit comments