Skip to content

x86 backend is not passing all behavior tests #17645

@andrewrk

Description

@andrewrk

Current progress relative to the LLVM backend: 1941/1972 (98%)

Once the following list gets small enough, this issue can be closed and separate issues filed for each one.

andy@ark ~/D/zig (master)> grep -RI 'stage2_x86_64.*Skip' test/behavior/ | grep -v elf
test/behavior/byteswap.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/byteswap.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/byteswap.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/floatop.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/floatop.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/floatop.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/floatop.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/shuffle.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/shuffle.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/shuffle.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/vector.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/bitreverse.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/bitreverse.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/bitreverse.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/import_c_keywords.zig:    if (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt == .coff) return error.SkipZigTest;
test/behavior/call.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/call.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/call.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/call.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/bitcast.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/asm.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/popcount.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/cast.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/cast.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest;
test/behavior/cast.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/math.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/math.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/math.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
test/behavior/struct.zig:    if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO

Related:

Metadata

Metadata

Assignees

No one assigned

    Labels

    arch-x86_6464-bit x86backend-self-hostedbugObserved behavior contradicts documented or intended behaviorenhancementSolving this issue will likely involve adding new logic or components to the codebase.

    Type

    No type

    Projects

    Status

    Ditch LLVM

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions