Now that C default is C23, so we can no longer use LSX/LASX instructions for these operations as the standard disallows raising INEXACT exceptions. So LoongArch is no longer suitable for these effective targets.
Fix the test failures on gcc.dg/vect/vect-rounding-*.c. For the old standards or -ffp-int-builtin-inexact we already provide test coverage with gcc.target/loongarch/vect-ftint.c. gcc/testsuite/ChangeLog: * lib/target-supports.exp (check_effective_target_vect_call_btrunc): Drop LoongArch. (check_effective_target_vect_call_btruncf): Likewise. (check_effective_target_vect_call_ceil): Likewise. (check_effective_target_vect_call_ceilf): Likewise. (check_effective_target_vect_call_floor): Likewise. (check_effective_target_vect_call_floorf): Likewise. (check_effective_target_vect_call_lfloor): Likewise. (check_effective_target_vect_call_lfloorf): Likewise. --- Bootstrapped and regtested on loongarch64-linux-gnu. The test failures on gcc.dg/vect/vect-rounding-*.c are fixed. Ok for trunk? gcc/testsuite/lib/target-supports.exp | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 60e24129bd5..432e1862c7e 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -9708,8 +9708,7 @@ proc check_effective_target_vect_call_lrint { } { proc check_effective_target_vect_call_btrunc { } { return [check_cached_effective_target_indexed vect_call_btrunc { expr { [istarget aarch64*-*-*] - || [istarget amdgcn-*-*] - || [istarget loongarch*-*-*] }}] + || [istarget amdgcn-*-*] }}] } # Return 1 if the target supports vector btruncf calls. @@ -9717,8 +9716,7 @@ proc check_effective_target_vect_call_btrunc { } { proc check_effective_target_vect_call_btruncf { } { return [check_cached_effective_target_indexed vect_call_btruncf { expr { [istarget aarch64*-*-*] - || [istarget amdgcn-*-*] - || [istarget loongarch*-*-*] }}] + || [istarget amdgcn-*-*] }}] } # Return 1 if the target supports vector ceil calls. @@ -9726,8 +9724,7 @@ proc check_effective_target_vect_call_btruncf { } { proc check_effective_target_vect_call_ceil { } { return [check_cached_effective_target_indexed vect_call_ceil { expr { [istarget aarch64*-*-*] - || [istarget amdgcn-*-*] - || [istarget loongarch*-*-*] }}] + || [istarget amdgcn-*-*] }}] } # Return 1 if the target supports vector ceilf calls. @@ -9735,8 +9732,7 @@ proc check_effective_target_vect_call_ceil { } { proc check_effective_target_vect_call_ceilf { } { return [check_cached_effective_target_indexed vect_call_ceilf { expr { [istarget aarch64*-*-*] - || [istarget amdgcn-*-*] - || [istarget loongarch*-*-*] }}] + || [istarget amdgcn-*-*] }}] } # Return 1 if the target supports vector floor calls. @@ -9744,8 +9740,7 @@ proc check_effective_target_vect_call_ceilf { } { proc check_effective_target_vect_call_floor { } { return [check_cached_effective_target_indexed vect_call_floor { expr { [istarget aarch64*-*-*] - || [istarget amdgcn-*-*] - || [istarget loongarch*-*-*] }}] + || [istarget amdgcn-*-*] }}] } # Return 1 if the target supports vector floorf calls. @@ -9753,24 +9748,21 @@ proc check_effective_target_vect_call_floor { } { proc check_effective_target_vect_call_floorf { } { return [check_cached_effective_target_indexed vect_call_floorf { expr { [istarget aarch64*-*-*] - || [istarget amdgcn-*-*] - || [istarget loongarch*-*-*] }}] + || [istarget amdgcn-*-*] }}] } # Return 1 if the target supports vector lceil calls. proc check_effective_target_vect_call_lceil { } { return [check_cached_effective_target_indexed vect_call_lceil { - expr { [istarget aarch64*-*-*] - || [istarget loongarch*-*-*] }}] + expr { [istarget aarch64*-*-*] }}] } # Return 1 if the target supports vector lfloor calls. proc check_effective_target_vect_call_lfloor { } { return [check_cached_effective_target_indexed vect_call_lfloor { - expr { [istarget aarch64*-*-*] - || [istarget loongarch*-*-*] }}] + expr { [istarget aarch64*-*-*] }}] } # Return 1 if the target supports vector nearbyint calls. -- 2.48.1