Skip to content

Conversation

@dtzSiFive
Copy link
Contributor

Reverts #3891, until have better fix for #3968 .

Conflicts in this way are not quite invalid FIRRTL per spec ($ vs _) and it seems to be expected to "work" in some designs. FWIW SFC has tests for handling this sort of lowering conflict specifically. Neither compiler does what the spec says re:"$" however which would avoid the conflict here.

These duplicate names will be resolved/legalized before verilog emission.

They should not be trusted until that point (similarly wires and regs and other namable things), and the way the conflicts are resolved should not be relied upon (at best implementation-defined behavior).

This sort of conflict is likely a problem if occurs on public/top module or extmodule-- that is, where used in contexts where the lowered names need to be reliably referenced from the outside.

Anyway until have better story for all this let's not error out.

@dtzSiFive
Copy link
Contributor Author

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants