about summary refs log tree commit diff
path: root/compiler/rustc_codegen_ssa/src/back
diff options
context:
space:
mode:
authorzhaixiaojuan <zhaixiaojuan@loongson.cn>2023-02-03 11:47:27 +0800
committerwangrui <wangrui@loongson.cn>2023-04-04 17:11:40 +0800
commit737e1d25692ff57699fddb379d62dd6ec1cb2006 (patch)
tree00776e6aeb8b7cc13deed1f61ac69864c49253e6 /compiler/rustc_codegen_ssa/src/back
parentb7c5323d42a661665c97e2e14223ac57068775db (diff)
downloadrust-737e1d25692ff57699fddb379d62dd6ec1cb2006.tar.gz
rust-737e1d25692ff57699fddb379d62dd6ec1cb2006.zip
loongarch64: calculate the ELF header flags
Diffstat (limited to 'compiler/rustc_codegen_ssa/src/back')
-rw-r--r--compiler/rustc_codegen_ssa/src/back/metadata.rs4
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_ssa/src/back/metadata.rs b/compiler/rustc_codegen_ssa/src/back/metadata.rs
index 19485175fd1..8ee7d8cf6d0 100644
--- a/compiler/rustc_codegen_ssa/src/back/metadata.rs
+++ b/compiler/rustc_codegen_ssa/src/back/metadata.rs
@@ -192,6 +192,10 @@ pub(crate) fn create_object_file(sess: &Session) -> Option<write::Object<'static
             }
             e_flags
         }
+        Architecture::LoongArch64 => {
+            // Source: https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_e_flags_identifies_abi_type_and_version
+            elf::EF_LARCH_OBJABI_V1 | elf::EF_LARCH_ABI_DOUBLE_FLOAT
+        }
         _ => 0,
     };
     // adapted from LLVM's `MCELFObjectTargetWriter::getOSABI`