Skip to content

[RISCV] LLVM doesn't support B extension in march #144150

@Timmmm

Description

@Timmmm

LLVM used to support the B extension as part of the RISC-V -march ISA string, but it was dropped a few years ago in ae116f4.

I wasn't working on RISC-V then so I'm not sure what happened, but today, the B extension is ratified. Supporting B implies Zba, Zbb and Zbs which are subsets of it.

The B standard extension comprises instructions provided by the Zba, Zbb, and Zbs extensions.

Currently if you try to use a march with B it says clang: error: invalid arch name 'rv64imafdcbv_zicbom_zicboz_zicntr_zicond_zicsr_zifencei_zihpm_zimop0p1_zawrs_zfa_zfh_zca_zcb_zcd_zcmop0p2_zbc_zbkb_zbkc_zbkx_zknd_zkne_zknh_zkr_zksed_zksh_zvbb_zvbc_zvkg_zvkned_zvknha_zvknhb_zvksh', unsupported standard user-level extension 'b'

Metadata

Metadata

Assignees

No one assigned

    Labels

    backend:RISC-VobsoleteIssues with old (unsupported) versions of LLVM

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions