From 360deedcf15c9e8cc0179f9e18b8562aadc8ba09 Mon Sep 17 00:00:00 2001 From: xtex Date: Sun, 21 Jun 2026 21:52:50 +0800 Subject: [PATCH] std.elf: add LoongArch e_flags definition Link: https://github.com/loongson/la-abi-specs/blob/44ef5f63e1755e1a165915ea3b2d98d35f68eed0/laelf.adoc?plain=1#L74-L93 --- lib/std/elf.zig | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/lib/std/elf.zig b/lib/std/elf.zig index d3e5bb1dd24cbd2c386db3fe9a7af73a6edb043d..d3215291852537cd82a03abf0f8b33fc1e2a6ea6 100644 --- a/lib/std/elf.zig +++ b/lib/std/elf.zig @@ -3263,3 +3263,21 @@ pub const gnu_hash = struct { try std.testing.expectEqual(0x8ae9f18e, calculate("flapenguin.me")); } }; + +pub const loongarch = struct { + /// Ehdr.e_flags bits of LoongArch + pub const EFlags = packed struct(Word) { + base_abi_modifier: BaseAbiModifier, + abi_extension: AbiExtension, + abi_version: u2, + reserved: u24 = 0, + + pub const BaseAbiModifier = enum(u3) { + s = 1, + f = 2, + d = 3, + _, + }; + pub const AbiExtension = enum(u3) { base = 0, _ }; + }; +}; -- 2.54.0