authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-28 14:37:32-04:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-10-28 14:37:32-04:00
logf2d0d9820d9b20ddc61866d5fe2575cf80f4d9be
treea73ff874ab89ed74f3941444e3da0436791eab52
parent6fdeaac338f3a4a1f3455653ce29bf6ce4bbe335
signaturelock-open Commit is signed but in an unrecognized format.

synchronize the target features for compiling C code

d91fc0fdd8f42dc8c38347e1a0ec87fd583c1d3d changed zig's behavior to disable the SSE feature when cross compiling for i386-freestanding. This commit does the same when compiling C Code.

1 files changed, 6 insertions(+), 6 deletions(-)

src/codegen.cpp+6-6
...@@ -8469,12 +8469,7 @@ static void init(CodeGen *g) {...@@ -8469,12 +8469,7 @@ static void init(CodeGen *g) {
8469 // uses as base cpu.8469 // uses as base cpu.
8470 // TODO https://github.com/ziglang/zig/issues/28838470 // TODO https://github.com/ziglang/zig/issues/2883
8471 target_specific_cpu_args = "pentium4";8471 target_specific_cpu_args = "pentium4";
8472 if (g->zig_target->os == OsFreestanding) {8472 target_specific_features = (g->zig_target->os == OsFreestanding) ? "-sse": "";
8473 target_specific_features = "-sse";
8474 }
8475 else {
8476 target_specific_features = "";
8477 }
8478 } else {8473 } else {
8479 target_specific_cpu_args = "";8474 target_specific_cpu_args = "";
8480 target_specific_features = "";8475 target_specific_features = "";
...@@ -8779,6 +8774,11 @@ void add_cc_args(CodeGen *g, ZigList<const char *> &args, const char *out_dep_pa...@@ -8779,6 +8774,11 @@ void add_cc_args(CodeGen *g, ZigList<const char *> &args, const char *out_dep_pa
8779 args.append("-target-feature");8774 args.append("-target-feature");
8780 args.append("-Xclang");8775 args.append("-Xclang");
8781 args.append(riscv_default_features);8776 args.append(riscv_default_features);
8777 } else if (g->zig_target->os == OsFreestanding && g->zig_target->arch == ZigLLVM_x86) {
8778 args.append("-Xclang");
8779 args.append("-target-feature");
8780 args.append("-Xclang");
8781 args.append("-sse");
8782 }8782 }
8783 }8783 }
8784 if (g->zig_target->os == OsFreestanding) {8784 if (g->zig_target->os == OsFreestanding) {