@@ -193,27 +193,26 @@ Unary Operators | !, -, + |
193193
194194| Intrinsic | DXIL OpCode | LLVM Instruction | Notes |
195195| -----------| --------------| ----------| -----------|
196- | acos | Acos | | |
197- | asin | Asin | | |
198- | atan | Atan | | |
196+ | acos | Acos | | range: -1 to 1 |
197+ | asin | Asin | | range: -pi/2 to pi/2. Floating point types only. |
198+ | atan | Atan | | range: -pi/2 to pi/2. |
199+ | cos | Cos | | no range requirements. |
200+ | cosh | Hcos | | no range requirements. |
201+ | sin | Sin | | no range requirements. |
202+ | sinh | Hsin | | no range requirements. |
203+ | tan | Tan | | no range requirements. |
204+ | tanh | Htan | | no range requirements. |
199205| atan2 | Atan | FDiv, FAdd, FSub, FCmpOLT,
200- ||| FCpmOEQ, FCmpOGE, FCmpOLT, And, Select | |
201- | cos | Cos | | |
202- | cosh | Hcos | | |
203- | degrees | | FMul ||
204- | radians | | FMul ||
205- | sin | Sin | | |
206- | sinh | Hsin | | |
207- | tan | Tan | | |
208- | tanh | Htan | | |
206+ ||| FCpmOEQ, FCmpOGE, FCmpOLT, And, Select | Not required. Covered by other ops. |
207+ | degrees | | FMul | Not needed. Covered by FMul. |
208+ | radians | | FMul | Not needed. Covered by FMul. |
209209
210210## Math
211211
212212| Intrinsic | DXIL OPCode | LLVM Instruction | Notes |
213213| -----------| --------------| ----------| -----------|
214214| abs | [ Imax] , [ Fabs] |
215215| ceil | Round_pi ||
216- | clamp | FMax, FMin, [ UMax, UMin] , [ IMax, Imin] | |
217216| exp | Exp | |
218217| exp2 | Exp | |
219218| floor | Round_ni ||
@@ -240,6 +239,7 @@ Unary Operators | !, -, + |
240239| sqrt | Sqrt | |
241240| step | | FCmpOLT, Select ||
242241| trunc | Round_z | |
242+ | clamp | FMax, FMin, [ UMax, UMin] , [ IMax, Imin] | Not required. Covered by ceil and floor. |
243243
244244## Float Ops
245245
@@ -316,20 +316,13 @@ Unary Operators | !, -, + |
316316| WavePrefixProduct | WavePrefixOp | |
317317| WaveReadLaneAt | WaveReadLaneAt | |
318318| WaveReadLaneFirst | WaveReadLaneFirst | |
319-
320- ## Wave Reductions
321-
322- | Intrinsic | DXIL OPCode | LLVM Instruction | Notes |
323- | -----------| --------------| ----------| -----------|
324319| WaveActiveAllEqual | WaveActiveAllEqual | |
325320| WaveMatch | WaveMatch | |
326321
327322## Type Casting Operations
328323
329324| Intrinsic | DXIL OPCode | LLVM Instruction | Notes |
330325| -----------| --------------| ----------| -----------|
331- | WaveActiveAllEqual | WaveActiveAllEqual | |
332- | WaveMatch | WaveMatch | |
333326| asdouble | MakeDouble | |
334327| asfloat | | BitCast |
335328| asfloat16 | | BitCast |
0 commit comments