const std = @import("std");
/// Zig version. When writing code that supports multiple versions of Zig, prefer
/// feature detection (i.e. with `@hasDecl` or `@hasField`) over version checks.
pub const zig_version = std.SemanticVersion.parse(zig_version_string) catch unreachable;
pub const zig_version_string = "0.11.0-dev.2892+fd6200eda";
pub const zig_backend = std.builtin.CompilerBackend.stage2_llvm;

pub const output_mode = std.builtin.OutputMode.Exe;
pub const link_mode = std.builtin.LinkMode.Static;
pub const is_test = true;
pub const single_threaded = false;
pub const abi = std.Target.Abi.musl;
pub const cpu: std.Target.Cpu = .{
    .arch = .powerpc64le,
    .model = &std.Target.powerpc.cpu.ppc64le,
    .features = std.Target.powerpc.featureSet(&[_]std.Target.powerpc.Feature{
        .@"64bit",
        .allow_unaligned_fp_access,
        .altivec,
        .bpermd,
        .cmpb,
        .crbits,
        .crypto,
        .direct_move,
        .extdiv,
        .fcpsgn,
        .fpcvt,
        .fprnd,
        .fpu,
        .fre,
        .fres,
        .frsqrte,
        .frsqrtes,
        .fsqrt,
        .fuse_addi_load,
        .fuse_addis_load,
        .fusion,
        .hard_float,
        .htm,
        .icbt,
        .isa_v206_instructions,
        .isa_v207_instructions,
        .isel,
        .ldbrx,
        .lfiwax,
        .mfocrf,
        .partword_atomics,
        .popcntd,
        .power8_altivec,
        .power8_vector,
        .predictable_select_expensive,
        .quadword_atomics,
        .recipprec,
        .stfiwx,
        .two_const_nr,
        .vsx,
    }),
};
pub const os = std.Target.Os{
    .tag = .linux,
    .version_range = .{ .linux = .{
        .range = .{
            .min = .{
                .major = 3,
                .minor = 16,
                .patch = 0,
            },
            .max = .{
                .major = 5,
                .minor = 10,
                .patch = 81,
            },
        },
        .glibc = .{
            .major = 2,
            .minor = 19,
            .patch = 0,
        },
    }},
};
pub const target = std.Target{
    .cpu = cpu,
    .os = os,
    .abi = abi,
    .ofmt = object_format,
};
pub const object_format = std.Target.ObjectFormat.elf;
pub const mode = std.builtin.Mode.Debug;
pub const link_libc = false;
pub const link_libcpp = false;
pub const have_error_return_tracing = true;
pub const valgrind_support = false;
pub const sanitize_thread = false;
pub const position_independent_code = false;
pub const position_independent_executable = false;
pub const strip_debug_info = false;
pub const code_model = std.builtin.CodeModel.default;
pub var test_functions: []const std.builtin.TestFn = undefined; // overwritten later

pub const test_io_mode = .blocking;