]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
calls.c (emit_library_call_value_1): Fix a problem with parameter alignment for libra...
authorHariharan Sandanagobalane <hariharan@picochip.com>
Mon, 6 Apr 2009 10:54:42 +0000 (10:54 +0000)
committerHariharan Sandanagobalane <hariharans@gcc.gnu.org>
Mon, 6 Apr 2009 10:54:42 +0000 (10:54 +0000)
* calls.c (emit_library_call_value_1): Fix a problem with parameter
alignment for library calls.

From-SVN: r145586

gcc/ChangeLog
gcc/calls.c

index 660250c072f77bbd2f98cc2e9e0483c026c909e8..91ced6edd60a900912326c82dd9e5eeb52539f81 100644 (file)
@@ -1,3 +1,8 @@
+2009-04-06  Hariharan Sandanagobalane <hariharan@picochip.com>
+
+       * calls.c (emit_library_call_value_1): Fix a problem with parameter
+       alignment for library calls.
+
 2009-04-06  Danny Smith  <dannysmith@users.sourceforge.net>
 
        * config.gcc (mingw32 tm_file):  Add mingw-stdint.h.
index 7bad365b5ac72a450a0e518607c48617d23d06ef..b2d3bfa51454d1ec59c8be250c18a7c2d55e68dc 100644 (file)
@@ -3634,6 +3634,7 @@ emit_library_call_value_1 (int retval, rtx orgfun, rtx value,
       rtx val = argvec[argnum].value;
       rtx reg = argvec[argnum].reg;
       int partial = argvec[argnum].partial;
+      unsigned int parm_align = argvec[argnum].locate.boundary;
       int lower_bound = 0, upper_bound = 0, i;
 
       if (! (reg != 0 && partial == 0))
@@ -3695,7 +3696,7 @@ emit_library_call_value_1 (int retval, rtx orgfun, rtx value,
                }
            }
 
-         emit_push_insn (val, mode, NULL_TREE, NULL_RTX, PARM_BOUNDARY,
+         emit_push_insn (val, mode, NULL_TREE, NULL_RTX, parm_align,
                          partial, reg, 0, argblock,
                          GEN_INT (argvec[argnum].locate.offset.constant),
                          reg_parm_stack_space,