IR: Opaque can be of any type
This commit is contained in:
parent
29d30bf931
commit
2eec43178a
2 changed files with 1 additions and 2 deletions
|
@ -120,7 +120,7 @@ Value Inst::GetArg(size_t index) const {
|
||||||
|
|
||||||
void Inst::SetArg(size_t index, Value value) {
|
void Inst::SetArg(size_t index, Value value) {
|
||||||
DEBUG_ASSERT(index < GetNumArgsOf(op));
|
DEBUG_ASSERT(index < GetNumArgsOf(op));
|
||||||
DEBUG_ASSERT(value.GetType() == GetArgTypeOf(op, index));
|
DEBUG_ASSERT(value.GetType() == GetArgTypeOf(op, index) || Type::Opaque == GetArgTypeOf(op, index));
|
||||||
|
|
||||||
if (!args[index].IsImmediate()) {
|
if (!args[index].IsImmediate()) {
|
||||||
UndoUse(args[index]);
|
UndoUse(args[index]);
|
||||||
|
|
|
@ -426,7 +426,6 @@ IR::Value IREmitter::Inst(IR::Opcode op, std::initializer_list<IR::Value> args)
|
||||||
DEBUG_ASSERT(args.size() == inst->NumArgs());
|
DEBUG_ASSERT(args.size() == inst->NumArgs());
|
||||||
|
|
||||||
std::for_each(args.begin(), args.end(), [&inst, op, index = size_t(0)](const auto& v) mutable {
|
std::for_each(args.begin(), args.end(), [&inst, op, index = size_t(0)](const auto& v) mutable {
|
||||||
DEBUG_ASSERT(IR::GetArgTypeOf(op, index) == v.GetType());
|
|
||||||
inst->SetArg(index, v);
|
inst->SetArg(index, v);
|
||||||
index++;
|
index++;
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue