| ... | @@ -486,7 +486,7 @@ fn _start() callconv(.naked) noreturn { | ... | @@ -486,7 +486,7 @@ fn _start() callconv(.naked) noreturn { |
| 486 | | 486 | |
| 487 | fn WinStartup() callconv(.withStackAlign(.c, 1)) noreturn { | 487 | fn WinStartup() callconv(.withStackAlign(.c, 1)) noreturn { |
| 488 | // Switch from the x87 fpu state set by windows to the state expected by the gnu abi. | 488 | // Switch from the x87 fpu state set by windows to the state expected by the gnu abi. |
| 489 | if (builtin.abi == .gnu) asm volatile ("fninit"); | 489 | if (builtin.cpu.arch.isX86() and builtin.abi == .gnu) asm volatile ("fninit"); |
| 490 | | 490 | |
| 491 | if (!builtin.single_threaded and !builtin.link_libc) { | 491 | if (!builtin.single_threaded and !builtin.link_libc) { |
| 492 | _ = @import("os/windows/tls.zig"); | 492 | _ = @import("os/windows/tls.zig"); |
| ... | @@ -499,7 +499,7 @@ fn WinStartup() callconv(.withStackAlign(.c, 1)) noreturn { | ... | @@ -499,7 +499,7 @@ fn WinStartup() callconv(.withStackAlign(.c, 1)) noreturn { |
| 499 | | 499 | |
| 500 | fn wWinMainCRTStartup() callconv(.withStackAlign(.c, 1)) noreturn { | 500 | fn wWinMainCRTStartup() callconv(.withStackAlign(.c, 1)) noreturn { |
| 501 | // Switch from the x87 fpu state set by windows to the state expected by the gnu abi. | 501 | // Switch from the x87 fpu state set by windows to the state expected by the gnu abi. |
| 502 | if (builtin.abi == .gnu) asm volatile ("fninit"); | 502 | if (builtin.cpu.arch.isX86() and builtin.abi == .gnu) asm volatile ("fninit"); |
| 503 | | 503 | |
| 504 | if (!builtin.single_threaded and !builtin.link_libc) { | 504 | if (!builtin.single_threaded and !builtin.link_libc) { |
| 505 | _ = @import("os/windows/tls.zig"); | 505 | _ = @import("os/windows/tls.zig"); |