| ... | @@ -12472,21 +12472,21 @@ fn backendSupportsF80(target: std.Target) bool { | ... | @@ -12472,21 +12472,21 @@ fn backendSupportsF80(target: std.Target) bool { |
| 12472 | /// or if it produces miscompilations. | 12472 | /// or if it produces miscompilations. |
| 12473 | fn backendSupportsF16(target: std.Target) bool { | 12473 | fn backendSupportsF16(target: std.Target) bool { |
| 12474 | return switch (target.cpu.arch) { | 12474 | return switch (target.cpu.arch) { |
| 12475 | // LoongArch can be removed from this list with LLVM 20. | 12475 | // https://github.com/llvm/llvm-project/issues/97981 |
| 12476 | .loongarch32, | 12476 | .csky, |
| 12477 | .loongarch64, | 12477 | // https://github.com/llvm/llvm-project/issues/97981 |
| 12478 | .hexagon, | 12478 | .hexagon, |
| | 12479 | // https://github.com/llvm/llvm-project/issues/97981 |
| 12479 | .powerpc, | 12480 | .powerpc, |
| 12480 | .powerpcle, | 12481 | .powerpcle, |
| 12481 | .powerpc64, | 12482 | .powerpc64, |
| 12482 | .powerpc64le, | 12483 | .powerpc64le, |
| | 12484 | // https://github.com/llvm/llvm-project/issues/97981 |
| 12483 | .wasm32, | 12485 | .wasm32, |
| 12484 | .wasm64, | 12486 | .wasm64, |
| 12485 | .mips, | 12487 | // https://github.com/llvm/llvm-project/issues/50374 |
| 12486 | .mipsel, | | |
| 12487 | .mips64, | | |
| 12488 | .mips64el, | | |
| 12489 | .s390x, | 12488 | .s390x, |
| | 12489 | // https://github.com/llvm/llvm-project/issues/97981 |
| 12490 | .sparc, | 12490 | .sparc, |
| 12491 | .sparc64, | 12491 | .sparc64, |
| 12492 | => false, | 12492 | => false, |
| ... | @@ -12494,7 +12494,8 @@ fn backendSupportsF16(target: std.Target) bool { | ... | @@ -12494,7 +12494,8 @@ fn backendSupportsF16(target: std.Target) bool { |
| 12494 | .armeb, | 12494 | .armeb, |
| 12495 | .thumb, | 12495 | .thumb, |
| 12496 | .thumbeb, | 12496 | .thumbeb, |
| 12497 | => target.abi.float() == .soft or std.Target.arm.featureSetHas(target.cpu.features, .fp_armv8), | 12497 | => target.abi.float() == .soft or std.Target.arm.featureSetHas(target.cpu.features, .fullfp16), |
| | 12498 | // https://github.com/llvm/llvm-project/issues/129394 |
| 12498 | .aarch64, | 12499 | .aarch64, |
| 12499 | .aarch64_be, | 12500 | .aarch64_be, |
| 12500 | => std.Target.aarch64.featureSetHas(target.cpu.features, .fp_armv8), | 12501 | => std.Target.aarch64.featureSetHas(target.cpu.features, .fp_armv8), |
| ... | @@ -12507,11 +12508,18 @@ fn backendSupportsF16(target: std.Target) bool { | ... | @@ -12507,11 +12508,18 @@ fn backendSupportsF16(target: std.Target) bool { |
| 12507 | /// or if it produces miscompilations. | 12508 | /// or if it produces miscompilations. |
| 12508 | fn backendSupportsF128(target: std.Target) bool { | 12509 | fn backendSupportsF128(target: std.Target) bool { |
| 12509 | return switch (target.cpu.arch) { | 12510 | return switch (target.cpu.arch) { |
| | 12511 | // https://github.com/llvm/llvm-project/issues/121122 |
| 12510 | .amdgcn, | 12512 | .amdgcn, |
| | 12513 | // Test failures all over the place. |
| 12511 | .mips64, | 12514 | .mips64, |
| 12512 | .mips64el, | 12515 | .mips64el, |
| | 12516 | // https://github.com/llvm/llvm-project/issues/95471 |
| | 12517 | .nvptx, |
| | 12518 | .nvptx64, |
| | 12519 | // https://github.com/llvm/llvm-project/issues/41838 |
| 12513 | .sparc, | 12520 | .sparc, |
| 12514 | => false, | 12521 | => false, |
| | 12522 | // https://github.com/llvm/llvm-project/issues/101545 |
| 12515 | .powerpc, | 12523 | .powerpc, |
| 12516 | .powerpcle, | 12524 | .powerpcle, |
| 12517 | .powerpc64, | 12525 | .powerpc64, |
| ... | @@ -12522,9 +12530,6 @@ fn backendSupportsF128(target: std.Target) bool { | ... | @@ -12522,9 +12530,6 @@ fn backendSupportsF128(target: std.Target) bool { |
| 12522 | .thumb, | 12530 | .thumb, |
| 12523 | .thumbeb, | 12531 | .thumbeb, |
| 12524 | => target.abi.float() == .soft or std.Target.arm.featureSetHas(target.cpu.features, .fp_armv8), | 12532 | => target.abi.float() == .soft or std.Target.arm.featureSetHas(target.cpu.features, .fp_armv8), |
| 12525 | .aarch64, | | |
| 12526 | .aarch64_be, | | |
| 12527 | => std.Target.aarch64.featureSetHas(target.cpu.features, .fp_armv8), | | |
| 12528 | else => true, | 12533 | else => true, |
| 12529 | }; | 12534 | }; |
| 12530 | } | 12535 | } |