diff mbox

testsuite patches (12/14): Add predicates to tests that depend on integer size

Message ID 20130720024615.w7wrmrtg2sscskos-nzlynne@webmail.spamcop.net
State New
Headers show

Commit Message

Joern Rennecke July 20, 2013, 6:46 a.m. UTC
Tested for avr with --target_board=atmega128-sim and native on  
i686-pc-linuc-gnu.
2013-07-17  Joern Rennecke <joern.rennecke@embecosm.com>

	* c-c++-common/simulate-thread/bitfields-2.c: Run test only for
	target { ! int16 }.
	* gcc.dg/tree-ssa/pr54245.c: Do slsr scan only for target { ! int16 }.
	* gcc.dg/tree-ssa/slsr-1.c: Adjust multiplicators to scan for for
	target { int16 }.  Restrict existing tests to target { int32 }
	where appropriate.
	* gcc.dg/tree-ssa/slsr-2.c, gcc.dg/tree-ssa/slsr-27.c: Likewise.
	* gcc.dg/tree-ssa/slsr-28.c, gcc.dg/tree-ssa/slsr-29.c: Likewise.
	* gcc.dg/tree-ssa/slsr-3.c, gcc.dg/tree-ssa/ssa-ccp-23.c: Likewise.
	* lib/target-supports.exp (check_effective_target_int32): New proc.

Comments

Mike Stump Aug. 14, 2013, 4:33 p.m. UTC | #1
On Jul 19, 2013, at 11:46 PM, Joern Rennecke <joern.rennecke@embecosm.com> wrote:
> Tested for avr with --target_board=atmega128-sim and native on i686-pc-linuc-gnu.
> 
> 2013-07-17  Joern Rennecke <joern.rennecke@embecosm.com>
> 
> 	* c-c++-common/simulate-thread/bitfields-2.c: Run test only for
> 	target { ! int16 }.
> 	* gcc.dg/tree-ssa/pr54245.c: Do slsr scan only for target { ! int16 }.
> 	* gcc.dg/tree-ssa/slsr-1.c: Adjust multiplicators to scan for for
> 	target { int16 }.  Restrict existing tests to target { int32 }
> 	where appropriate.
> 	* gcc.dg/tree-ssa/slsr-2.c, gcc.dg/tree-ssa/slsr-27.c: Likewise.
> 	* gcc.dg/tree-ssa/slsr-28.c, gcc.dg/tree-ssa/slsr-29.c: Likewise.
> 	* gcc.dg/tree-ssa/slsr-3.c, gcc.dg/tree-ssa/ssa-ccp-23.c: Likewise.
> 	* lib/target-supports.exp (check_effective_target_int32): New proc.

Ok.

I'd recommend an Ok? in patches that seek approval or explicit review.  Sometimes people post patches that are trivial and just check them in.
diff mbox

Patch

Index: c-c++-common/simulate-thread/bitfields-2.c
===================================================================
--- c-c++-common/simulate-thread/bitfields-2.c	(revision 201032)
+++ c-c++-common/simulate-thread/bitfields-2.c	(working copy)
@@ -1,4 +1,4 @@ 
-/* { dg-do link } */
+/* { dg-do link { target { ! int16 } } } */
 /* { dg-options "--param allow-store-data-races=0" } */
 /* { dg-final { simulate-thread } } */
 
Index: gcc.dg/tree-ssa/pr54245.c
===================================================================
--- gcc.dg/tree-ssa/pr54245.c	(revision 201032)
+++ gcc.dg/tree-ssa/pr54245.c	(working copy)
@@ -45,5 +45,5 @@  int main(void)
 /* For now, disable inserting an initializer when the multiplication will
    take place in a smaller type than originally.  This test may be deleted
    in future when this case is handled more precisely.  */
-/* { dg-final { scan-tree-dump-times "Inserting initializer" 0 "slsr" } } */
+/* { dg-final { scan-tree-dump-times "Inserting initializer" 0 "slsr" { target { ! int16 } } } } */
 /* { dg-final { cleanup-tree-dump "slsr" } } */
Index: gcc.dg/tree-ssa/slsr-1.c
===================================================================
--- gcc.dg/tree-ssa/slsr-1.c	(revision 201032)
+++ gcc.dg/tree-ssa/slsr-1.c	(working copy)
@@ -14,7 +14,9 @@  f (int *p, unsigned int n)
     foo (*(p + 48 + n * 4));
 }
 
-/* { dg-final { scan-tree-dump-times "\\+ 128|\\, 128>" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "\\+ 128|\\, 128>" 1 "optimized" { target { int32plus } } } } */
 /* { dg-final { scan-tree-dump-times "\\+ 64|\\, 64>" 1 "optimized" } } */
-/* { dg-final { scan-tree-dump-times "\\+ 192|\\, 192>" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "\\+ 32|\\, 32>" 1 "optimized" { target { int16 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 192|\\, 192>" 1 "optimized" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 96|\\, 96>" 1 "optimized" { target { int16 } } } } */
 /* { dg-final { cleanup-tree-dump "optimized" } } */
Index: gcc.dg/tree-ssa/slsr-2.c
===================================================================
--- gcc.dg/tree-ssa/slsr-2.c	(revision 201032)
+++ gcc.dg/tree-ssa/slsr-2.c	(working copy)
@@ -11,6 +11,8 @@  f (int *p, int n)
   foo (*(p + 16 + n * 4));
 }
 
-/* { dg-final { scan-tree-dump-times "\\+ 144|\\, 144>" 1 "optimized" } } */
-/* { dg-final { scan-tree-dump-times "\\+ 96|\\, 96>" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "\\+ 144|\\, 144>" 1 "optimized" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 72|\\, 72>" 1 "optimized" { target { int16 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 96|\\, 96>" 1 "optimized" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 48|\\, 48>" 1 "optimized" { target { int16 } } } } */
 /* { dg-final { cleanup-tree-dump "optimized" } } */
Index: gcc.dg/tree-ssa/slsr-27.c
===================================================================
--- gcc.dg/tree-ssa/slsr-27.c	(revision 201032)
+++ gcc.dg/tree-ssa/slsr-27.c	(working copy)
@@ -16,7 +16,8 @@  f (struct x *p, unsigned int n)
   foo (p->a[n], p->c[n], p->b[n]);
 }
 
-/* { dg-final { scan-tree-dump-times "\\* 4;" 1 "dom2" } } */
+/* { dg-final { scan-tree-dump-times "\\* 4;" 1 "dom2" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\* 2;" 1 "dom2" { target { int16 } } } } */
 /* { dg-final { scan-tree-dump-times "p_\\d\+\\(D\\) \\+ \[^\r\n\]*_\\d\+;" 1 "dom2" } } */
 /* { dg-final { scan-tree-dump-times "MEM\\\[\\(struct x \\*\\)\[^\r\n\]*_\\d\+" 3 "dom2" } } */
 /* { dg-final { cleanup-tree-dump "dom2" } } */
Index: gcc.dg/tree-ssa/slsr-28.c
===================================================================
--- gcc.dg/tree-ssa/slsr-28.c	(revision 201032)
+++ gcc.dg/tree-ssa/slsr-28.c	(working copy)
@@ -20,7 +20,8 @@  f (struct x *p, unsigned int n)
     foo (p->b[n], p->a[n], p->c[n]);
 }
 
-/* { dg-final { scan-tree-dump-times "\\* 4;" 1 "dom2" } } */
+/* { dg-final { scan-tree-dump-times "\\* 4;" 1 "dom2" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\* 2;" 1 "dom2" { target { int16 } } } } */
 /* { dg-final { scan-tree-dump-times "p_\\d\+\\(D\\) \\+ \[^\r\n\]*_\\d\+" 1 "dom2" } } */
 /* { dg-final { scan-tree-dump-times "MEM\\\[\\(struct x \\*\\)\[^\r\n\]*_\\d\+" 9 "dom2" } } */
 /* { dg-final { cleanup-tree-dump "dom2" } } */
Index: gcc.dg/tree-ssa/slsr-29.c
===================================================================
--- gcc.dg/tree-ssa/slsr-29.c	(revision 201032)
+++ gcc.dg/tree-ssa/slsr-29.c	(working copy)
@@ -22,7 +22,8 @@  f (struct x *p, unsigned int n)
     }
 }
 
-/* { dg-final { scan-tree-dump-times "\\* 4;" 1 "dom2" } } */
+/* { dg-final { scan-tree-dump-times "\\* 4;" 1 "dom2" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\* 2;" 1 "dom2" { target { int16 } } } } */
 /* { dg-final { scan-tree-dump-times "p_\\d\+\\(D\\) \\+ \[^\r\n\]*_\\d\+" 1 "dom2" } } */
 /* { dg-final { scan-tree-dump-times "MEM\\\[\\(struct x \\*\\)\[^\r\n\]*_\\d\+" 9 "dom2" } } */
 /* { dg-final { cleanup-tree-dump "dom2" } } */
Index: gcc.dg/tree-ssa/slsr-3.c
===================================================================
--- gcc.dg/tree-ssa/slsr-3.c	(revision 201032)
+++ gcc.dg/tree-ssa/slsr-3.c	(working copy)
@@ -15,8 +15,11 @@  foo (int a[], int b[], int i)
   return i;
 }
 
-/* { dg-final { scan-tree-dump-times "\\* 4" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "\\* 4" 1 "optimized" { target { int32 } } } } */
+/* { dg-final { scan-tree-dump-times "\\* 2" 1 "optimized" { target { int16 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 2|\\, 2>" 5 "optimized" { target { int16 } } } } */
 /* { dg-final { scan-tree-dump-times "\\+ 4|\\, 4>" 2 "optimized" } } */
-/* { dg-final { scan-tree-dump-times "\\+ 8|\\, 8>" 1 "optimized" } } */
-/* { dg-final { scan-tree-dump-times "\\+ 12|\\, 12>" 1 "optimized" } } */
+/* { dg-final { scan-tree-dump-times "\\+ 8|\\, 8>" 1 "optimized" { target { int32plus } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 6|\\, 6>" 1 "optimized" { target { int16 } } } } */
+/* { dg-final { scan-tree-dump-times "\\+ 12|\\, 12>" 1 "optimized" { target { int32 } } } } */
 /* { dg-final { cleanup-tree-dump "optimized" } } */
Index: gcc.dg/tree-ssa/ssa-ccp-23.c
===================================================================
--- gcc.dg/tree-ssa/ssa-ccp-23.c	(revision 201032)
+++ gcc.dg/tree-ssa/ssa-ccp-23.c	(working copy)
@@ -15,5 +15,6 @@  int foo (void)
   return *x;
 }
 
-/* { dg-final { scan-tree-dump "MEM\\\[\\\(int \\\*\\\)&a \\\+ 4B\\\]" "ccp1" } } */
+/* { dg-final { scan-tree-dump "MEM\\\[\\\(int \\\*\\\)&a \\\+ 2B\\\]" "ccp1" { target { int16 } } } } */
+/* { dg-final { scan-tree-dump "MEM\\\[\\\(int \\\*\\\)&a \\\+ 4B\\\]" "ccp1" { target { int32 } } } } */
 /* { dg-final { cleanup-tree-dump "ccp1" } } */
Index: lib/target-supports.exp
===================================================================
--- lib/target-supports.exp	(revision 201032)
+++ lib/target-supports.exp	(working copy)
@@ -1705,6 +1705,15 @@ 
     }]
 }
 
+# Return 1 if we're generating 32-bit integers using default
+# options, 0 otherwise.
+
+proc check_effective_target_int32 { } {
+    return [check_no_compiler_messages int32 object {
+	int dummy[sizeof (int) == 4 ? 1 : -1];
+    }]
+}
+
 # Return 1 if we're generating 32-bit or larger integers using default
 # options, 0 otherwise.