mirror of https://github.com/llvm/circt.git
[RTG] Use FlatSymbolRefAttr for SymbolDCE to pick it up as SymbolUse
This commit is contained in:
parent
dcb2d92b98
commit
c56d5659d5
|
@ -88,7 +88,7 @@ def GetSequenceOp : RTGOp<"get_sequence", [
|
|||
of the main ways to do randomization.
|
||||
}];
|
||||
|
||||
let arguments = (ins SymbolNameAttr:$sequence);
|
||||
let arguments = (ins FlatSymbolRefAttr:$sequence);
|
||||
let results = (outs SequenceType:$ref);
|
||||
|
||||
let assemblyFormat = "$sequence `:` qualified(type($ref)) attr-dict";
|
||||
|
|
|
@ -1316,7 +1316,7 @@ public:
|
|||
SmallVector<ElaboratorValue> replacements;
|
||||
state[op.getResult()] =
|
||||
sharedState.internalizer.internalize<SequenceStorage>(
|
||||
op.getSequenceAttr(), std::move(replacements));
|
||||
op.getSequenceAttr().getAttr(), std::move(replacements));
|
||||
return DeletionKind::Delete;
|
||||
}
|
||||
|
||||
|
|
|
@ -81,7 +81,7 @@ struct SequenceInliner
|
|||
}
|
||||
|
||||
FailureOr<DeletionKind> visitOp(GetSequenceOp op) {
|
||||
auto seqOp = table.lookup<SequenceOp>(op.getSequenceAttr());
|
||||
auto seqOp = table.lookup<SequenceOp>(op.getSequenceAttr().getAttr());
|
||||
if (!seqOp)
|
||||
return op->emitError() << "referenced sequence not found";
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@ rtg.get_sequence @seq0 : !rtg.sequence
|
|||
rtg.sequence @seq0(%arg0: index) { }
|
||||
|
||||
// expected-error @below {{referenced 'rtg.sequence' op's type does not match}}
|
||||
"rtg.get_sequence"() <{sequence="seq0"}> : () -> !rtg.sequence
|
||||
"rtg.get_sequence"() <{sequence=@seq0}> : () -> !rtg.sequence
|
||||
|
||||
// -----
|
||||
|
||||
|
|
Loading…
Reference in New Issue