diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1.c
index 67a76c9..58109d5 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1.c
@@ -5,6 +5,7 @@
 int a;
 extern void (*p[2])(int n);
 void abort (void);
+int
 main()
 { int i;
 
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1a.c gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1a.c
index a94195c..568cfa9 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1a.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/crossmodule-indircall-1a.c
@@ -33,6 +33,7 @@ sub(int i)
 __attribute__ ((externally_visible))
 void (*p[2])(int)={add, sub};
 #else
+int
 main()
 {
   return 0;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c
index e44887b..d95ff6b 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/inliner-1.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2 -fdump-tree-optimized" } */
+/* { dg-options "-O2 -fdump-tree-optimized -fgnu89-inline" } */
 int a;
 int b[100];
 void abort (void);
@@ -21,6 +21,7 @@ hot_function ()
       abort ();
 }
 
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/merge_block.c gcc/gcc/testsuite/gcc.dg/tree-prof/merge_block.c
index 62f7f22..d8cfb21 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/merge_block.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/merge_block.c
@@ -9,6 +9,7 @@ int t()
 			break;
 	return i;
 }
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/peel-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/peel-1.c
index 65f0c56..eb19966 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/peel-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/peel-1.c
@@ -12,6 +12,7 @@ t()
       return 1;
   abort ();
 }
+int
 main()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-1.c
index f730613..7fcefb7 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-1.c
@@ -3,6 +3,7 @@ int a[1000];
 int b[1000];
 int size=1;
 int max=10000;
+int
 main()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-2.c gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-2.c
index 47ebfb0..0489aee 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/stringop-2.c
@@ -7,6 +7,7 @@ int max=10000;
 /* We allow short memcpy()s for MIPS16.  */
 int __attribute__((nomips16))
 #endif
+int
 main()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/unroll-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/unroll-1.c
index 0663b12..c5fcad3 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/unroll-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/unroll-1.c
@@ -12,6 +12,7 @@ t()
       return 1;
   abort ();
 }
+int
 main()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/update-cunroll-2.c gcc/gcc/testsuite/gcc.dg/tree-prof/update-cunroll-2.c
index d559b92..dc481c7 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/update-cunroll-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/update-cunroll-2.c
@@ -10,6 +10,7 @@ int t()
 			break;
 	return i;
 }
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-1.c
index d6f603e..e3e15a8 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-1.c
@@ -2,6 +2,7 @@
 int a[1000];
 int b = 256;
 int c = 257;
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-2.c gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-2.c
index 1683961..6920cbc 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-2.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-2.c
@@ -3,6 +3,7 @@ unsigned int a[1000];
 unsigned int b = 256;
 unsigned int c = 1024;
 unsigned int d = 17;
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-3.c gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-3.c
index d7b3914..fc5a7cd 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-3.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-3.c
@@ -3,6 +3,7 @@ unsigned int a[1000];
 unsigned int b = 257;
 unsigned int c = 1023;
 unsigned int d = 19;
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-4.c gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-4.c
index 239bf59..a1927d1 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-4.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-4.c
@@ -3,6 +3,7 @@ unsigned int a[1000];
 unsigned int b = 999;
 unsigned int c = 1002;
 unsigned int d = 1003;
+int
 main ()
 {
   int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-5.c gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-5.c
index 1a804a7..8cb17b0 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-5.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-5.c
@@ -1,6 +1,7 @@
 /* { dg-options "-O2 -fdump-tree-optimized -fdump-ipa-profile" } */
 int a[1000];
 int b=997;
+int
 main()
 {
 	int i;
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-6.c gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-6.c
index c439fcf..4ac9b75 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-6.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/val-prof-6.c
@@ -2,7 +2,7 @@
 char a[1000];
 char b[1000];
 int size=1000;
-__attribute__ ((noinline))
+__attribute__ ((noinline)) void
 t(int size)
 {
   __builtin_memcpy(a,b,size);
diff --git gcc/gcc/testsuite/gcc.dg/tree-prof/cmpsf-1.c gcc/gcc/testsuite/gcc.dg/tree-prof/cmpsf-1.c
index 02af854..565dd1c 100644
--- gcc/gcc/testsuite/gcc.dg/tree-prof/cmpsf-1.c
+++ gcc/gcc/testsuite/gcc.dg/tree-prof/cmpsf-1.c
@@ -10,6 +10,7 @@ extern void exit (int);
 #define F 140
 #define T 13
 
+int
 feq (float x, float y)
 {
   if (x == y)
@@ -18,6 +19,7 @@ feq (float x, float y)
     return F;
 }
 
+int
 fne (float x, float y)
 {
   if (x != y)
@@ -26,6 +28,7 @@ fne (float x, float y)
     return F;
 }
 
+int
 flt (float x, float y)
 {
   if (x < y)
@@ -34,6 +37,7 @@ flt (float x, float y)
     return F;
 }
 
+int
 fge (float x, float y)
 {
   if (x >= y)
@@ -42,6 +46,7 @@ fge (float x, float y)
     return F;
 }
 
+int
 fgt (float x, float y)
 {
   if (x > y)
@@ -50,6 +55,7 @@ fgt (float x, float y)
     return F;
 }
 
+int
 fle (float x, float y)
 {
   if (x <= y)
