public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] Disable float128 tests on VxWorks, PR target/104253.
@ 2022-04-07  4:29 Michael Meissner
  2022-04-07 10:47 ` Eric Botcazou
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Michael Meissner @ 2022-04-07  4:29 UTC (permalink / raw)
  To: gcc-patches, Michael Meissner, Segher Boessenkool,
	David Edelsohn, Peter Bergner, Will Schmidt, ebotcazou

Disable float128 tests on VxWorks, PR target/104253.

In PR target/104253, it was pointed out the that test case added as part
of fixing the PR does not work on VxWorks because float128 is not
supported on that system.  I have modified the three tests for float128 so
that they are manually excluded on VxWorks systems.  In looking at the
code, I also added checks in check_effective_target_ppc_ieee128_ok to
disable the systems that will never support VSX instructions which are
required for float128 support (eabi, eabispe, darwin).

I have run the tests on my usual Linux systems (little endian power10, little
endian power9, big endian power8), but I don't have access to a VxWorks
system.  Eric does this fix the failure for you?

If it does fix the failure, can I apply the patch to the master branch and
backport it to GCC 11 and GCC 10?  Sorry about the breakage.

2022-04-07   Michael Meissner  <meissner@linux.ibm.com>

gcc/testsuite/
	PR target/104253
	* lib/target-supports.exp (check_ppc_float128_sw_available): Do
	not run float128 tests on VxWorks.
	(check_ppc_float128_hw_available): Likewise.
	(check_effective_target_ppc_ieee128_ok): Do not run float128 tests
	on VxWorks.  Also disable systems that do not support VSX
	instructions.
---
 gcc/testsuite/lib/target-supports.exp | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index ff8edbd3e17..a4142eaee27 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -2318,10 +2318,12 @@ proc check_ppc_mma_hw_available { } {
 proc check_ppc_float128_sw_available { } {
     return [check_cached_effective_target ppc_float128_sw_available {
 	# Some simulators are known to not support VSX/power8/power9
-	# instructions.	For now, disable on Darwin.
+	# instructions. For now, disable on Darwin.  Disable on VxWorks as
+	# well.
 	if { [istarget powerpc-*-eabi]
 	     || [istarget powerpc*-*-eabispe]
-	     || [istarget *-*-darwin*]} {
+	     || [istarget *-*-darwin*]
+	     || [istarget *-*-vxworks]} {
 	    expr 0
 	} else {
 	    set options "-mfloat128 -mvsx"
@@ -2344,10 +2346,11 @@ proc check_ppc_float128_sw_available { } {
 proc check_ppc_float128_hw_available { } {
     return [check_cached_effective_target ppc_float128_hw_available {
 	# Some simulators are known to not support VSX/power8/power9
-	# instructions.	For now, disable on Darwin.
+	# instructions.	For now, disable on Darwin and VxWorks.
 	if { [istarget powerpc-*-eabi]
 	     || [istarget powerpc*-*-eabispe]
-	     || [istarget *-*-darwin*]} {
+	     || [istarget *-*-darwin*]
+	     || [istarget *-*-vxworks]} {
 	    expr 0
 	} else {
 	    set options "-mfloat128 -mvsx -mfloat128-hardware -mpower9-vector"
@@ -2370,8 +2373,12 @@ proc check_ppc_float128_hw_available { } {
 # See if the __ieee128 keyword is understood.
 proc check_effective_target_ppc_ieee128_ok { } {
     return [check_cached_effective_target ppc_ieee128_ok {
-	# disable on AIX.
-	if { [istarget *-*-aix*] } {
+	# disable on AIX, Darwin, VxWorks and targets that don't support VSX.
+	if { [istarget *-*-aix*]
+	     || [istarget powerpc-*-eabi]
+	     || [istarget powerpc*-*-eabispe]
+	     || [istarget *-*-darwin*]
+	     || [istarget *-*-vxworks]} {
 	    expr 0
 	} else {
 	    set options "-mfloat128"
-- 
2.35.1


-- 
Michael Meissner, IBM
PO Box 98, Ayer, Massachusetts, USA, 01432
email: meissner@linux.ibm.com

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-04-07 22:29 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-07  4:29 [PATCH] Disable float128 tests on VxWorks, PR target/104253 Michael Meissner
2022-04-07 10:47 ` Eric Botcazou
2022-04-07 19:00   ` Michael Meissner
2022-04-07 11:00 ` Segher Boessenkool
2022-04-07 13:50   ` will schmidt
2022-04-07 15:05     ` Segher Boessenkool
2022-04-07 18:59   ` Michael Meissner
2022-04-07 20:17     ` Segher Boessenkool
2022-04-07 22:29 ` Committed: " Michael Meissner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).