authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-04-27 22:57:12-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-04-27 22:57:12-07:00
log9d098657a069b36e3eed9bc63c3421c031be7348
tree1c987144e62c7b97a93513887a6a3b4ad1c5a1ad
parentf7f03c699d2dee4c3eec2108e159bbe300e24c6f

stage1: fix i386-windows f80 sizeof/alignof


2 files changed, 5 insertions(+), 8 deletions(-)

src/stage1/codegen.cpp+5-2
......@@ -9586,10 +9586,13 @@ static void define_builtin_types(CodeGen *g) {
95869586 switch (g->zig_target->arch) {
95879587 case ZigLLVM_x86:
95889588 case ZigLLVM_x86_64:
9589 if (g->zig_target->abi != ZigLLVM_MSVC)
9589 if (g->zig_target->abi != ZigLLVM_MSVC) {
95909590 add_fp_entry(g, "c_longdouble", 80, LLVMX86FP80Type(), &g->builtin_types.entry_c_longdouble);
9591 else
9591 g->builtin_types.entry_c_longdouble->abi_size = g->builtin_types.entry_f80->abi_size;
9592 g->builtin_types.entry_c_longdouble->abi_align = g->builtin_types.entry_f80->abi_align;
9593 } else {
95929594 add_fp_entry(g, "c_longdouble", 64, LLVMDoubleType(), &g->builtin_types.entry_c_longdouble);
9595 }
95939596 break;
95949597 case ZigLLVM_arm:
95959598 case ZigLLVM_armeb:
test/behavior/math.zig-6
......@@ -1416,12 +1416,6 @@ test "fabs" {
14161416 if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
14171417 if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
14181418
1419 if (builtin.zig_backend == .stage1 and builtin.os.tag == .windows and
1420 builtin.cpu.arch == .i386)
1421 {
1422 return error.SkipZigTest;
1423 }
1424
14251419 inline for ([_]type{ f16, f32, f64, f80, f128, c_longdouble }) |T| {
14261420 // normals
14271421 try expect(@fabs(@as(T, 1.0)) == 1.0);