From 7bcc2b15c8be4aebc6b9b8f05af6db7a451b228b Mon Sep 17 00:00:00 2001 From: Yong He Date: Tue, 10 Nov 2020 14:55:36 -0800 Subject: 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. --- source/slang/slang-ir-lower-generic-function.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'source/slang/slang-ir-lower-generic-function.cpp') diff --git a/source/slang/slang-ir-lower-generic-function.cpp b/source/slang/slang-ir-lower-generic-function.cpp index f5bd469ac..75c58a2f4 100644 --- a/source/slang/slang-ir-lower-generic-function.cpp +++ b/source/slang/slang-ir-lower-generic-function.cpp @@ -170,7 +170,7 @@ namespace Slang } else if (entry->getRequirementVal()->op == kIROp_AssociatedType) { - loweredVal = builder.getPtrType(builder.getRTTIType()); + loweredVal = builder.getRTTIHandleType(); } else { @@ -231,7 +231,7 @@ namespace Slang // Translate a Type value to an RTTI object pointer. auto rttiObject = sharedContext->maybeEmitRTTIObject(entry->getSatisfyingVal()); auto rttiObjectPtr = builder->emitGetAddress( - builder->getPtrType(builder->getRTTIType()), + builder->getRTTIHandleType(), rttiObject); entry->satisfyingVal.set(rttiObjectPtr); } -- cgit v1.2.3