This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[Patch, testsuite] Fix failing overflow-1.c for avr
- From: Senthil Kumar Selvaraj <senthilkumar dot selvaraj at microchip dot com>
- To: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 21 Mar 2017 17:37:50 +0530
- Subject: [Patch, testsuite] Fix failing overflow-1.c for avr
- Authentication-results: sourceware.org; auth=none
Hi,
The test assumes 32 bit ints, and expects a constant in the
dump that is only valid for 32 bit ints. This trivial patch
fixes that by explicitly specifying __UINT32_TYPE__ as the type.
Committed as obvious.
Regards
Senthil
gcc/testsuite/ChangeLog
2017-03-21 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
* gcc.dg/tree-ssa/overflow-1.c: Use __UINT32_TYPE__ for targets
with sizeof(int) < 4.
diff --git gcc/testsuite/gcc.dg/tree-ssa/overflow-1.c gcc/testsuite/gcc.dg/tree-ssa/overflow-1.c
index e126609c53d9..b664d0f120aa 100644
--- gcc/testsuite/gcc.dg/tree-ssa/overflow-1.c
+++ gcc/testsuite/gcc.dg/tree-ssa/overflow-1.c
@@ -1,14 +1,20 @@
/* { dg-do compile } */
/* { dg-options "-O -fdump-tree-optimized" } */
-int f(unsigned a){
- unsigned b=5;
- unsigned c=a-b;
+#if __SIZEOF_INT__ < 4
+ __extension__ typedef __UINT32_TYPE__ uint32_t;
+#else
+ typedef unsigned uint32_t;
+#endif
+
+int f(uint32_t a){
+ uint32_t b=5;
+ uint32_t c=a-b;
return c>a;
}
-int g(unsigned a){
- unsigned b=32;
- unsigned c=a+b;
+int g(uint32_t a){
+ uint32_t b=32;
+ uint32_t c=a+b;
return c<a;
}