aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2003-06-21 13:51:36 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2003-06-21 11:51:36 +0000
commit70642ee3e637e58b0d90a0608dfcceecce1f4cb8 (patch)
tree9ee5d2896de4d45c605fb112f6c78555584e7d93
parent025299027b1d32d373ae211fde61ef891a4425b2 (diff)
downloadgcc-70642ee3e637e58b0d90a0608dfcceecce1f4cb8.zip
gcc-70642ee3e637e58b0d90a0608dfcceecce1f4cb8.tar.gz
gcc-70642ee3e637e58b0d90a0608dfcceecce1f4cb8.tar.bz2
* i386.c (ix86_va_arg): Fix allocation of temporary slot.
From-SVN: r68298
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.c6
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 640677a..3233db4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Sat Jun 21 13:41:00 CEST 2003 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (ix86_va_arg): Fix allocation of temporary slot.
+
2003-06-20 Kazu Hirata <kazu@cs.umass.edu>
* config/h8300/h8300-protos.h: Add a prototype for
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 8409def..479c4c9 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -3157,10 +3157,12 @@ ix86_va_arg (valist, type)
{
int i;
rtx mem;
+ rtx x;
/* Never use the memory itself, as it has the alias set. */
- addr_rtx = XEXP (assign_temp (type, 0, 1, 0), 0);
- mem = gen_rtx_MEM (BLKmode, addr_rtx);
+ x = XEXP (assign_temp (type, 0, 1, 0), 0);
+ mem = gen_rtx_MEM (BLKmode, x);
+ force_operand (x, addr_rtx);
set_mem_alias_set (mem, get_varargs_alias_set ());
set_mem_align (mem, BITS_PER_UNIT);