llvm: switch to native f16 IR type for all hexagon targets

This was fixed in LLVM 21, in particular for targets older than v68.
This commit is contained in:
Alex Rønne Petersen 2025-08-02 21:17:38 +02:00
parent 1c858ba7e3
commit e4f38a611f
No known key found for this signature in database
2 changed files with 1 additions and 3 deletions

View File

@ -123,6 +123,7 @@ pub fn F16T(comptime OtherType: type) type {
.thumbeb,
.aarch64,
.aarch64_be,
.hexagon,
.loongarch32,
.loongarch64,
.nvptx,
@ -135,7 +136,6 @@ pub fn F16T(comptime OtherType: type) type {
.spirv32,
.spirv64,
=> f16,
.hexagon => if (builtin.target.cpu.has(.hexagon, .v68)) f16 else u16,
.x86, .x86_64 => if (builtin.target.os.tag.isDarwin()) switch (OtherType) {
// Starting with LLVM 16, Darwin uses different abi for f16
// depending on the type of the other return/argument..???

View File

@ -12852,8 +12852,6 @@ fn backendSupportsF16(target: *const std.Target) bool {
// https://github.com/llvm/llvm-project/issues/97981
.csky,
// https://github.com/llvm/llvm-project/issues/97981
.hexagon,
// https://github.com/llvm/llvm-project/issues/97981
.powerpc,
.powerpcle,
.powerpc64,