Fix ELF flag for RISC-V targets without explicit ABI

This commit is contained in:
Gary Guo 2023-08-04 15:56:01 +01:00
parent 5ed556e84a
commit 2f68d97b64

View File

@ -283,7 +283,7 @@ pub(crate) fn create_object_file(sess: &Session) -> Option<write::Object<'static
// Set the appropriate flag based on ABI
// This needs to match LLVM `RISCVELFStreamer.cpp`
match &*sess.target.llvm_abiname {
"ilp32" | "lp64" => (),
"" | "ilp32" | "lp64" => (),
"ilp32f" | "lp64f" => e_flags |= elf::EF_RISCV_FLOAT_ABI_SINGLE,
"ilp32d" | "lp64d" => e_flags |= elf::EF_RISCV_FLOAT_ABI_DOUBLE,
"ilp32e" => e_flags |= elf::EF_RISCV_RVE,