Skip to content

64b mults fail silently #761

@dpetrisko

Description

@dpetrisko

Currently we deschedule mulh so that GCC avoids them:
bespoke-silicon-group/riscv-gcc#3

But if users explicitly request it, it’s a confusing error. Or the compiler could generate in performance critical loops

  1. We should put in an assertion so it fails in sim. This is non-controversial
  2. hardware we could maybe trap
  3. it’s also fairly cheap to put in an iterative mulh (Support MULH black-parrot/black-parrot#1110). Parameterization for this case seems icky because we’re technically non-compliant with M-extension, so I would vote for adding the hardware

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions