[multiple changes]
authorRask Ingemann Lambertsen <rask@gcc.gnu.org>
Fri, 21 Dec 2007 21:53:23 +0000 (21:53 +0000)
committerRask Ingemann Lambertsen <rask@gcc.gnu.org>
Fri, 21 Dec 2007 21:53:23 +0000 (21:53 +0000)
2007-12-13  Andrew Pinski  <pinskia@gmail.com>
Rask Ingemann Lambertsen  <rask@sygehus.dk>

PR target/8835
* config/mcore/mcore.c (mcore_function_value): Call promote_mode
instead of PROMOTE_MODE.

testsuite/
2007-12-13  Kazu Hirata  <kazu@codesourcery.com>

PR target/8835
* gcc.dg/pr8835-1.c: New.

From-SVN: r131125

gcc/ChangeLog
gcc/config/mcore/mcore.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr8835-1.c [new file with mode: 0644]

index d625c0f4be2a779c9af71b7382e32ed6d272d0e8..6f257a97879516e34c5ead269c3131418f567268 100644 (file)
@@ -1,3 +1,10 @@
+2007-12-21  Andrew Pinski  <pinskia@gmail.com>
+       Rask Ingemann Lambertsen  <rask@sygehus.dk>
+
+       PR target/8835
+       * config/mcore/mcore.c (mcore_function_value): Call promote_mode
+       instead of PROMOTE_MODE.
+
 2007-12-21  Sebastian Pop  <sebastian.pop@amd.com>
 
        * lambda-code.c (lambda_loopnest_to_gcc_loopnest): Fix typo.
index cb54ee5a4f3c8d81657da658b224cfebfd8dccc8..4bf895ccd641d8ebd73b4741d01e9d122d470366 100644 (file)
@@ -2729,7 +2729,7 @@ mcore_function_value (const_tree valtype, const_tree func ATTRIBUTE_UNUSED)
   
   mode = TYPE_MODE (valtype);
 
-  PROMOTE_MODE (mode, unsigned_p, NULL);
+  mode = promote_mode (valtype, mode, &unsigned_p, 1);
   
   return handle_structs_in_regs (mode, valtype, FIRST_RET_REG);
 }
index 3e4d2db0c48aaff1ee7399fc3510ea5ff8af7b14..6d6855f75e54fb2fbfc389ffdd09ea97e66ba224 100644 (file)
@@ -1,3 +1,8 @@
+2007-12-21  Kazu Hirata  <kazu@codesourcery.com>
+
+       PR target/8835
+       * gcc.dg/pr8835-1.c: New.
+
 2007-12-21  Paul Thomas  <pault@gcc.gnu.org>
 
        PR fortran/34438
diff --git a/gcc/testsuite/gcc.dg/pr8835-1.c b/gcc/testsuite/gcc.dg/pr8835-1.c
new file mode 100644 (file)
index 0000000..6e3703b
--- /dev/null
@@ -0,0 +1,12 @@
+/* { dg-do compile } */
+
+struct s {
+  char c;
+};
+
+struct s
+foo (void)
+{
+  struct s s = { 0 };
+  return s;
+}