stage2 AArch64: unify callee-preserved regs on all targets
also enables many passing behavior tests
This commit is contained in:
@@ -29,7 +29,6 @@ fn shouldBeNotEqual(a: anyerror, b: anyerror) void {
|
||||
}
|
||||
|
||||
test "error binary operator" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
const a = errBinaryOperatorG(true) catch 3;
|
||||
@@ -68,7 +67,6 @@ test "error wrapping" {
|
||||
}
|
||||
|
||||
test "unwrap simple value from error" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
const i = unwrapSimpleValueFromErrorDo() catch unreachable;
|
||||
@@ -128,7 +126,6 @@ test "debug info for optional error set" {
|
||||
}
|
||||
|
||||
test "implicit cast to optional to error union to return result loc" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
const S = struct {
|
||||
@@ -151,7 +148,6 @@ test "implicit cast to optional to error union to return result loc" {
|
||||
|
||||
test "fn returning empty error set can be passed as fn returning any error" {
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
|
||||
entry();
|
||||
comptime entry();
|
||||
@@ -159,7 +155,6 @@ test "fn returning empty error set can be passed as fn returning any error" {
|
||||
|
||||
test "fn returning empty error set can be passed as fn returning any error - pointer" {
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
|
||||
entryPtr();
|
||||
comptime entryPtr();
|
||||
@@ -228,7 +223,6 @@ fn testErrorSetType() !void {
|
||||
|
||||
test "explicit error set cast" {
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
try testExplicitErrorSetCast(Set1.A);
|
||||
@@ -248,7 +242,6 @@ fn testExplicitErrorSetCast(set1: Set1) !void {
|
||||
|
||||
test "comptime test error for empty error set" {
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
try testComptimeTestErrorEmptySet(1234);
|
||||
@@ -266,7 +259,6 @@ fn testComptimeTestErrorEmptySet(x: EmptyErrorSet!i32) !void {
|
||||
|
||||
test "comptime err to int of error set with only 1 possible value" {
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
|
||||
testErrToIntWithOnePossibleValue(error.A, @errorToInt(error.A));
|
||||
comptime testErrToIntWithOnePossibleValue(error.A, @errorToInt(error.A));
|
||||
@@ -309,7 +301,6 @@ test "error inference with an empty set" {
|
||||
}
|
||||
|
||||
test "error union peer type resolution" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
try testErrorUnionPeerTypeResolution(1);
|
||||
@@ -341,7 +332,6 @@ fn quux_1() !i32 {
|
||||
}
|
||||
|
||||
test "error: Zero sized error set returned with value payload crash" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
_ = try foo3(0);
|
||||
@@ -354,7 +344,6 @@ fn foo3(b: usize) Error!usize {
|
||||
}
|
||||
|
||||
test "error: Infer error set from literals" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest;
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
_ = nullLiteral("n") catch |err| handleErrors(err);
|
||||
@@ -501,7 +490,6 @@ test "nested catch" {
|
||||
|
||||
test "function pointer with return type that is error union with payload which is pointer of parent struct" {
|
||||
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
const S = struct {
|
||||
@@ -632,7 +620,6 @@ test "error set equality" {
|
||||
}
|
||||
|
||||
test "inferred error set equality" {
|
||||
if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
|
||||
if (builtin.zig_backend == .stage2_sparc64) return error.SkipZigTest; // TODO
|
||||
|
||||
const S = struct {
|
||||
|
||||
Reference in New Issue
Block a user