diff options
Diffstat (limited to 'source')
| -rw-r--r-- | source/slang/core.meta.slang | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/source/slang/core.meta.slang b/source/slang/core.meta.slang index 631c09d19..a8badc05a 100644 --- a/source/slang/core.meta.slang +++ b/source/slang/core.meta.slang @@ -2255,6 +2255,51 @@ bool and(bool v0, bool v1) return __and(v0, v1); } +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +__intrinsic_op($(kIROp_And)) +vector<bool, N> and<let N : int>(vector<bool, N> v0, vector<bool, N> v1); + +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +vector<bool, N> and<let N : int>(bool b, vector<bool, N> v) +{ + return and(vector<bool, N>(b), v); +} + +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +vector<bool, N> and<let N : int>(vector<bool, N> v, bool b) +{ + return and(v, vector<bool, N>(b)); +} + +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +bool or(bool v0, bool v1) +{ + return __or(v0, v1); +} + +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +__intrinsic_op($(kIROp_Or)) +vector<bool, N> or<let N : int>(vector<bool, N> v0, vector<bool, N> v1); + +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +vector<bool, N> or<let N : int>(bool b, vector<bool, N> v) +{ + return or(vector<bool, N>(b), v); +} + +[__unsafeForceInlineEarly] +[OverloadRank(-10)] +vector<bool, N> or<let N : int>(vector<bool, N> v, bool b) +{ + return or(v, vector<bool, N>(b)); +} + __generic<T : ILogical> [__unsafeForceInlineEarly] [OverloadRank(-10)] |
