mirror of
https://github.com/verilator/verilator.git
synced 2026-10-07 10:33:13 +02:00
Fix --hierarchical with order-based pin connections (#3583).
This commit is contained in:
+10
-9
@@ -156,15 +156,16 @@ class VariableOrder final {
|
||||
auto& attributes = m_attributes(varp);
|
||||
// Stratum
|
||||
const int sigbytes = varp->dtypeSkipRefp()->widthAlignBytes();
|
||||
attributes.stratum = (varp->isUsedClock() && varp->widthMin() == 1) ? 0
|
||||
: VN_IS(varp->dtypeSkipRefp(), UnpackArrayDType) ? 8
|
||||
: (varp->basicp() && varp->basicp()->isOpaque()) ? 7
|
||||
: (varp->isScBv() || varp->isScBigUint()) ? 6
|
||||
: (sigbytes == 8) ? 5
|
||||
: (sigbytes == 4) ? 4
|
||||
: (sigbytes == 2) ? 2
|
||||
: (sigbytes == 1) ? 1
|
||||
: 9;
|
||||
attributes.stratum = (v3Global.opt.hierChild() && varp->isPrimaryIO()) ? 0
|
||||
: (varp->isUsedClock() && varp->widthMin() == 1) ? 1
|
||||
: VN_IS(varp->dtypeSkipRefp(), UnpackArrayDType) ? 9
|
||||
: (varp->basicp() && varp->basicp()->isOpaque()) ? 8
|
||||
: (varp->isScBv() || varp->isScBigUint()) ? 7
|
||||
: (sigbytes == 8) ? 6
|
||||
: (sigbytes == 4) ? 5
|
||||
: (sigbytes == 2) ? 3
|
||||
: (sigbytes == 1) ? 2
|
||||
: 10;
|
||||
// Anonymous structure ok
|
||||
attributes.anonOk = EmitCBaseVisitor::isAnonOk(varp);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user