Skip to content

Commit

Permalink
Fix and/or intrinsics with non-int parameters (cp to 1.8.2502) (micro…
Browse files Browse the repository at this point in the history
…soft#7091)

Cherry-pick of microsoft#7060 to release-1.8.2502
    
And/or intrinsics were set to allow any parameters, which is consistent
with the behavior of the && and || operators they were meant to replace,
however this meant that if they were passed floating point values, those
values would be applied to the binary and/or operands, which isn't
allowed. Instead, they should be converted to booleans to be consistent
with the behavior of && and ||. This can be done simply by restricting
the parameters to booleans which forces the appropriate conversions.
Adds tests for for using bools, ints, and floats in scalars, different
sized vectors, and matrices as parameters to or and and.
    
Fixes: microsoft#7057
Fixes: microsoft#6995
(cherry picked from commit 25faa88)
  • Loading branch information
pow2clk authored Jan 27, 2025
1 parent 1fdebc4 commit ef1472a
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions docs/ReleaseNotes.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ Place release notes for the upcoming release below this line and remove this lin
- The incomplete WaveMatrix implementation has been removed.
- DXIL Validator Hash is open sourced.
- DXIL container validation for PSV0 part allows any content ordering inside string and semantic index tables.
- The and() and or() intrinsics will now accept non-integer parameters by casting them to bools.

### Version 1.8.2407

Expand Down

0 comments on commit ef1472a

Please sign in to comment.