https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117565
Bug ID: 117565 Summary: RISC-V: Make ABI implicit for non-default march Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: rdapp at gcc dot gnu.org CC: kito.cheng at gmail dot com, law at gcc dot gnu.org, palmer at dabbelt dot com, vineetg at rivosinc dot com Target Milestone: --- Target: riscv This is not really high priority but has been discussed several times and at some point we agreed to at least open a bug. Right now e.g. -march=rv64gc mandates -mabi=lp64d (similar to how -march=rv32gc or -march=rv64e mandate ABIs). We use the default ABI for the default -march, so it's sufficient to say gcc -march=rv64gc in order to obtain the lp64d ABI. When using -march=rv32gc on an -march=rv64gc default compiler, however, -mabi=ilp32d needs to be specified even though there is not actually a choice in ABIs. Couldn't we set a default for those cases as well? Even if there were a choice I'd say selecting the first one is sensible.