commit 360deedcf15c9e8cc0179f9e18b8562aadc8ba09 (tree)
parent e048c90545c4f7df1377f9fcdce14ce5e5a2056f
Author: xtex <xtex@astrafall.org>
Date: Sun, 21 Jun 2026 21:52:50 +0800
std.elf: add LoongArch e_flags definition
Link: https://github.com/loongson/la-abi-specs/blob/44ef5f63e1755e1a165915ea3b2d98d35f68eed0/laelf.adoc?plain=1#L74-L93
Diffstat:
1 file changed, 18 insertions(+), 0 deletions(-)
diff --git 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, _ };
+ };
+};