diff options
| author | Alex Rønne Petersen <alex@alexrp.com> | 2024-11-02 10:27:03 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-02 10:27:03 +0100 |
| commit | 8abbdb56a4fce176cb8ec24e5d4724ac16196a0b (patch) | |
| tree | 90157927058b6e273bec741d04787623b828574c /src/target.zig | |
| parent | fccf15fc9f77001c513946cd1f37e8f6a57188e1 (diff) | |
| parent | 79717740bdce162caa34936040cd774dbe4c15a2 (diff) | |
| download | zig-8abbdb56a4fce176cb8ec24e5d4724ac16196a0b.tar.gz zig-8abbdb56a4fce176cb8ec24e5d4724ac16196a0b.zip | |
Merge pull request #21729 from alexrp/target-cpu-baseline
`std.Target.Cpu.Model`: Further refinements to `generic()` and `baseline()`
Diffstat (limited to 'src/target.zig')
| -rw-r--r-- | src/target.zig | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/target.zig b/src/target.zig index 00e804d441..e4f1d28043 100644 --- a/src/target.zig +++ b/src/target.zig @@ -315,6 +315,20 @@ pub fn clangAssemblerSupportsMcpuArg(target: std.Target) bool { }; } +/// Some experimental or poorly-maintained LLVM targets do not properly process CPU models in their +/// Clang driver code. For these, we should omit the `-Xclang -target-cpu -Xclang <model>` flags. +pub fn clangSupportsTargetCpuArg(target: std.Target) bool { + return switch (target.cpu.arch) { + .arc, + .msp430, + .ve, + .xcore, + .xtensa, + => false, + else => true, + }; +} + pub fn clangSupportsFloatAbiArg(target: std.Target) bool { return switch (target.cpu.arch) { .arm, |
