Skip to content

[FIRRTL][Inliner][InstChoice] Basic example doesn't work #7366

Open
@dtzSiFive

Description

@dtzSiFive

Input:

FIRRTL version 4.0.0
circuit Foo:
  option Platform:
    FPGA
    ASIC

  module DefaultTarget:
    input clock: Clock

  module FPGATarget:
    input clock: Clock

  module ASICTarget:
    input clock: Clock

  public module Foo:
    input clock: Clock

    instchoice inst of DefaultTarget, Platform :
      FPGA => FPGATarget
      ASIC => ASICTarget

    inst.clock <= clock

This errors in the inliner, which deletes the target modules as "unused".

This is related to updating the InstanceGraph to understand instance choice (and our passes accordingly), but for this specific pass. Others may also need updating.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    FIRRTLInvolving the `firrtl` dialectbugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions