Commit 9d098657a0
Changed files (2)
src
stage1
test
behavior
src/stage1/codegen.cpp
@@ -9586,10 +9586,13 @@ static void define_builtin_types(CodeGen *g) {
switch (g->zig_target->arch) {
case ZigLLVM_x86:
case ZigLLVM_x86_64:
- if (g->zig_target->abi != ZigLLVM_MSVC)
+ if (g->zig_target->abi != ZigLLVM_MSVC) {
add_fp_entry(g, "c_longdouble", 80, LLVMX86FP80Type(), &g->builtin_types.entry_c_longdouble);
- else
+ g->builtin_types.entry_c_longdouble->abi_size = g->builtin_types.entry_f80->abi_size;
+ g->builtin_types.entry_c_longdouble->abi_align = g->builtin_types.entry_f80->abi_align;
+ } else {
add_fp_entry(g, "c_longdouble", 64, LLVMDoubleType(), &g->builtin_types.entry_c_longdouble);
+ }
break;
case ZigLLVM_arm:
case ZigLLVM_armeb:
test/behavior/math.zig
@@ -1416,12 +1416,6 @@ test "fabs" {
if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO
- if (builtin.zig_backend == .stage1 and builtin.os.tag == .windows and
- builtin.cpu.arch == .i386)
- {
- return error.SkipZigTest;
- }
-
inline for ([_]type{ f16, f32, f64, f80, f128, c_longdouble }) |T| {
// normals
try expect(@fabs(@as(T, 1.0)) == 1.0);