Zig 0.17.0-dev (Split by item)

Shortcut keys
?
Show these tips
S
Focus search field
Esc
Clear focus & close tips
U
Jump to source code
↑
Move up in search results
↓
Move down in search results
↵
Go to active search result
This is an example of documentation generated by ZigDoc, an alternative to Zig's built-in Auto Doc feature. See also examples in other modes/formats. The project being documented here (as the example) is the Zig standard library. Public Union

EhdrFlags

Public Union
std.elf.EhdrFlags
pub const EhdrFlags = packed union(Word)

Fields

int: u32
loongarch: Loongarch
sparc: Sparc

Structs

File

elf.zig:3355
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
pub const EhdrFlags = packed union(Word) {
    int: u32,
    loongarch: Loongarch,
    sparc: Sparc,

    pub const Loongarch = packed struct(u32) {
        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, _ };
    };

    pub const Sparc = packed struct(u32) {
        mm: MemoryModel,
        _reserved1: u6 = 0,
        ext: Extensions,
        _reserved2: u8 = 0,

        pub const MemoryModel = enum(u2) {
            /// Total Store Ordering
            tso = 0,
            /// Partial Store Ordering
            pso = 1,
            /// Relaxed Memory Ordering
            rmo = 2,
        };

        pub const Extensions = packed struct(u16) {
            /// Uses SPARC v8 ABI (w/ 32-bit pointers) on SPARC v9. Also known as v8+.
            @"32plus": bool,
            /// Uses Sun UltraSPARC extensions.
            sun_us1: bool,
            /// Uses HaL R1 extensions.
            hal_r1: bool,
            /// Uses Sun UltraSPARC III extensions.
            sun_us3: bool,
            _reserved: u11 = 0,
            /// Uses little endian data (SPARC v9+).
            le_data: bool,
        };
    };
}