summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-ir-lower-generic-function.cpp
diff options
context:
space:
mode:
authorTim Foley <tfoleyNV@users.noreply.github.com>2021-02-16 11:48:21 -0800
committerGitHub <noreply@github.com>2021-02-16 11:48:21 -0800
commite474c4e3aadc22a1b9f9b006104409f10936244f (patch)
treeb5f9567d3795fd2ea77d6c0478a58a569ea8eda9 /source/slang/slang-ir-lower-generic-function.cpp
parent5777545ab7f82b91fde8779e7375628551add955 (diff)
Add an accessor for IRInst opcode (#1707)
* Add an accessor for IRInst opcode This main changing is renaming `IRInst::op` over to `IRInst::m_op` and then adds an accessor `IRInst::getOp()` to read it. The rest of the changes are just changing use sites to `getOp` (or to `m_op` in the limited cases where we write to it). This work is in anticipation of a future change that might need to store an extra bit in the same field as the opcode. It seemed better to do this massive refactoring as a separate PR. * fixup
Diffstat (limited to 'source/slang/slang-ir-lower-generic-function.cpp')
-rw-r--r--source/slang/slang-ir-lower-generic-function.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/source/slang/slang-ir-lower-generic-function.cpp b/source/slang/slang-ir-lower-generic-function.cpp
index 185655905..6e9754744 100644
--- a/source/slang/slang-ir-lower-generic-function.cpp
+++ b/source/slang/slang-ir-lower-generic-function.cpp
@@ -54,11 +54,11 @@ namespace Slang
{
if (genericChild == func)
continue;
- if (genericChild->op == kIROp_ReturnVal)
+ if (genericChild->getOp() == kIROp_ReturnVal)
continue;
// Process all generic parameters and local type definitions.
auto clonedChild = cloneInst(&cloneEnv, &builder, genericChild);
- if (clonedChild->op == kIROp_Param)
+ if (clonedChild->getOp() == kIROp_Param)
{
auto paramType = clonedChild->getFullType();
auto loweredParamType = sharedContext->lowerType(&builder, paramType);
@@ -176,7 +176,7 @@ namespace Slang
{
loweredVal = lowerGenericFuncType(&builder, genericFuncType);
}
- else if (requirementVal->op == kIROp_AssociatedType)
+ else if (requirementVal->getOp() == kIROp_AssociatedType)
{
loweredVal = builder.getRTTIHandleType();
}
@@ -201,7 +201,7 @@ namespace Slang
{
auto type = inst->getDataType();
if (!type) return false;
- return type->op == kIROp_TypeKind;
+ return type->getOp() == kIROp_TypeKind;
}
// Lower items in a witness table. This triggers lowering of generic functions,
@@ -228,7 +228,7 @@ namespace Slang
if (auto genericVal = as<IRGeneric>(entry->getSatisfyingVal()))
{
// Lower generic functions in witness table.
- if (findGenericReturnVal(genericVal)->op == kIROp_Func)
+ if (findGenericReturnVal(genericVal)->getOp() == kIROp_Func)
{
auto loweredFunc = lowerGenericFunction(genericVal);
entry->satisfyingVal.set(loweredFunc);
@@ -270,7 +270,7 @@ namespace Slang
// translate it into call(gFunc, args, Targs).
IRInst* loweredFunc = nullptr;
auto funcToSpecialize = specializeInst->getBase();
- if (funcToSpecialize->op == kIROp_Generic)
+ if (funcToSpecialize->getOp() == kIROp_Generic)
{
loweredFunc = lowerGenericFunction(funcToSpecialize);
if (loweredFunc != funcToSpecialize)