diff options
| author | Yong He <yonghe@outlook.com> | 2020-11-10 14:55:36 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-11-10 14:55:36 -0800 |
| commit | 7bcc2b15c8be4aebc6b9b8f05af6db7a451b228b (patch) | |
| tree | 2b89d5deaa9992cdb8c6c1ff72a399a5176be802 /source/slang/slang-ir-lower-generic-call.cpp | |
| parent | 1c4d768bc1b400ab40c10715df98d0b2122bcd66 (diff) | |
Use integer RTTI/witness handles in existential tuples. (#1598)
* Use integer RTTI/witness handles in existential tuples.
* Fix clang error.
* Fix IR serialization to use 16bits for opcode.
* Undo accidental comment change.
* Use variable length encoding for opcode.
* Fix compile error.
* Fixing issues
* Fix code review issues.
Diffstat (limited to 'source/slang/slang-ir-lower-generic-call.cpp')
| -rw-r--r-- | source/slang/slang-ir-lower-generic-call.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/slang/slang-ir-lower-generic-call.cpp b/source/slang/slang-ir-lower-generic-call.cpp index 369bc712f..644757a89 100644 --- a/source/slang/slang-ir-lower-generic-call.cpp +++ b/source/slang/slang-ir-lower-generic-call.cpp @@ -192,7 +192,7 @@ namespace Slang // Generate RTTI for this type. auto rttiObject = sharedContext->maybeEmitRTTIObject(arg); arg = builder->emitGetAddress( - builder->getPtrType(builder->getRTTIType()), + builder->getRTTIHandleType(), rttiObject); } else if (arg->op == kIROp_Specialize) @@ -281,7 +281,7 @@ namespace Slang // If we see a call(lookup_interface_method(...), ...), we need to translate // all occurences of associatedtypes. auto interfaceType = cast<IRInterfaceType>( - cast<IRWitnessTableType>(lookupInst->getWitnessTable()->getDataType()) + cast<IRWitnessTableTypeBase>(lookupInst->getWitnessTable()->getDataType()) ->getConformanceType()); if (isBuiltin(interfaceType)) return; |
