diff mbox series

[2/6,CRIS,cc0-preparations] gcc.target/cris/cris.exp (check_effective_target_cc0): New.

Message ID 202002101657.01AGvEtM012521@ignucius.se.axis.com
State New
Headers show
Series [1/6,CRIS,cc0-preparations] try to generate zero-based comparisons | expand

Commit Message

Hans-Peter Nilsson Feb. 10, 2020, 4:57 p.m. UTC
To simplify separating the cc0-specific xfails, let's have an
effective-target.

This likely fits all targets.
---
 gcc/testsuite/gcc.target/cris/cris.exp | 11 +++++++++++
 1 file changed, 11 insertions(+)
diff mbox series

Patch

diff --git a/gcc/testsuite/gcc.target/cris/cris.exp b/gcc/testsuite/gcc.target/cris/cris.exp
index c85c849e8..52164514d 100644
--- a/gcc/testsuite/gcc.target/cris/cris.exp
+++ b/gcc/testsuite/gcc.target/cris/cris.exp
@@ -25,6 +25,17 @@  if { ![istarget cris-*-*] && ![istarget crisv32-*-*] } then {
 # Load support procs.
 load_lib gcc-dg.exp
 
+# For the time being, provide a means to tell whether the target is "cc0".
+# Some targets may split cbranch and cstore late, but for a cc0-target,
+# all the fun happens at "final" time, so this should be a safe time for
+# a scan.
+proc check_effective_target_cc0 { } {
+    return [check_no_messages_and_pattern cc0 "\\(cc0\\)" rtl-final {
+	extern void g (void);
+	void f (int *p, int *q) { *q = *p == 42; if (*p == 7) g (); }
+    }]
+}
+
 # If a testcase doesn't have special options, use these.
 global DEFAULT_CFLAGS
 if ![info exists DEFAULT_CFLAGS] then {