diff options
| author | Yong He <yonghe@outlook.com> | 2022-09-01 10:01:36 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-09-01 10:01:36 -0700 |
| commit | 1f3130055956dbe441f7fc6849b189624a05f7df (patch) | |
| tree | 8b07682fbae53b0cf17af7ad76812111719e76f4 /source/slang/slang-stdlib.cpp | |
| parent | 4a94473eb34376dd8474f8ca3f2834b5c1daac14 (diff) | |
Public interface for arithmetic types in stdlib. (#2389)
Diffstat (limited to 'source/slang/slang-stdlib.cpp')
| -rw-r--r-- | source/slang/slang-stdlib.cpp | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/source/slang/slang-stdlib.cpp b/source/slang/slang-stdlib.cpp index 1ead48cb8..ac952d2eb 100644 --- a/source/slang/slang-stdlib.cpp +++ b/source/slang/slang-stdlib.cpp @@ -189,32 +189,32 @@ namespace Slang } } - struct IntrinsicOpInfo { IROp opCode; char const* opName; char const* interface; unsigned flags; }; + struct IntrinsicOpInfo { IROp opCode; char const* funcName; char const* opName; char const* interface; unsigned flags; }; static const IntrinsicOpInfo intrinsicUnaryOps[] = { - { kIROp_Neg, "-", "__BuiltinArithmeticType", ARITHMETIC_MASK }, - { kIROp_Not, "!", nullptr, BOOL_MASK | BOOL_RESULT }, - { kIROp_BitNot, "~", "__BuiltinIntegerType", INT_MASK }, + { kIROp_Neg, "neg", "-", "__BuiltinArithmeticType", ARITHMETIC_MASK }, + { kIROp_Not, "logicalNot", "!", nullptr, BOOL_MASK | BOOL_RESULT }, + { kIROp_BitNot, "not", "~", "__BuiltinIntegerType", INT_MASK }, }; static const IntrinsicOpInfo intrinsicBinaryOps[] = { - { kIROp_Add, "+", "__BuiltinArithmeticType", ARITHMETIC_MASK }, - { kIROp_Sub, "-", "__BuiltinArithmeticType", ARITHMETIC_MASK }, - { kIROp_Mul, "*", "__BuiltinArithmeticType", ARITHMETIC_MASK }, - { kIROp_Div, "/", "__BuiltinArithmeticType", ARITHMETIC_MASK }, - { kIROp_IRem, "%", "__BuiltinIntegerType", INT_MASK }, - { kIROp_FRem, "%", "__BuiltinFloatingPointType", FLOAT_MASK }, - { kIROp_And, "&&", nullptr, BOOL_MASK | BOOL_RESULT}, - { kIROp_Or, "||", nullptr, BOOL_MASK | BOOL_RESULT }, - { kIROp_BitAnd, "&", "__BuiltinLogicalType", LOGICAL_MASK }, - { kIROp_BitOr, "|", "__BuiltinLogicalType", LOGICAL_MASK }, - { kIROp_BitXor, "^", "__BuiltinLogicalType", LOGICAL_MASK }, - { kIROp_Eql, "==", "__BuiltinType", ANY_MASK | BOOL_RESULT }, - { kIROp_Neq, "!=", "__BuiltinType", ANY_MASK | BOOL_RESULT }, - { kIROp_Greater, ">", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT }, - { kIROp_Less, "<", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT }, - { kIROp_Geq, ">=", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT }, - { kIROp_Leq, "<=", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT }, + {kIROp_Add, "add", "+", "__BuiltinArithmeticType", ARITHMETIC_MASK}, + {kIROp_Sub, "sub", "-", "__BuiltinArithmeticType", ARITHMETIC_MASK}, + {kIROp_Mul, "mul", "*", "__BuiltinArithmeticType", ARITHMETIC_MASK}, + {kIROp_Div, "div", "/", "__BuiltinArithmeticType", ARITHMETIC_MASK}, + {kIROp_IRem, "irem", "%", "__BuiltinIntegerType", INT_MASK}, + {kIROp_FRem, "frem", "%", "__BuiltinFloatingPointType", FLOAT_MASK}, + {kIROp_And, "logicalAnd", "&&", nullptr, BOOL_MASK | BOOL_RESULT}, + {kIROp_Or, "logicalOr", "||", nullptr, BOOL_MASK | BOOL_RESULT}, + {kIROp_BitAnd, "and", "&", "__BuiltinLogicalType", LOGICAL_MASK}, + {kIROp_BitOr, "or", "|", "__BuiltinLogicalType", LOGICAL_MASK}, + {kIROp_BitXor, "xor", "^", "__BuiltinLogicalType", LOGICAL_MASK}, + {kIROp_Eql, "eql", "==", "__BuiltinType", ANY_MASK | BOOL_RESULT}, + {kIROp_Neq, "neq", "!=", "__BuiltinType", ANY_MASK | BOOL_RESULT}, + {kIROp_Greater, "greater", ">", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT}, + {kIROp_Less, "less", "<", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT}, + {kIROp_Geq, "geq", ">=", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT}, + {kIROp_Leq, "leq", "<=", "__BuiltinArithmeticType", ARITHMETIC_MASK | BOOL_RESULT}, }; // Both the following functions use these macros. |
