Skip to content

Proc-scoped channels should not silently force codegen version 1.5 #4554

Description

@mikex-oss

Describe the bug

From #3679, when proc-scoped channels are enabled, codegen forces version 1.5.

This is still present at HEAD today:

if (p->ChannelsAreProcScoped()) {
codegen_flags_proto.set_codegen_version(CODEGEN_VERSION_ONE_DOT_FIVE);
}

This behavior is unintuitive, since the user may be attempting to pin "codegen_version": "1.0" on a target, but XLS defaults proc-scoped channels to true, which overrides the user's choice.

bool lower_to_proc_scoped_channels = true;

Expected behavior
If proc-scoped channels are not compatible with codegen 1.0, it seems less surprising to error out.

Metadata

Metadata

Assignees

No one assigned

    Labels

    codegenRelated to emitting (System)Verilog.

    Type

    Fields

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions