summaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2008-09-02 16:36:49 +0000
committerhjl <hjl@138bc75d-0d04-0410-961f-82ee72b054a4>2008-09-02 16:36:49 +0000
commit47b0fad73aeaf7be79808b71cc70f73df9fc6fcc (patch)
treeaab10967a2536b504511884a451ee6b464f8f261 /gcc/expr.c
parent255b6be72832e001a6aa896bada736ffc2735b19 (diff)
downloadgcc-47b0fad73aeaf7be79808b71cc70f73df9fc6fcc.tar.gz
2008-09-02 H.J. Lu <hongjiu.lu@intel.com>
* expr.c (emit_group_store): Don't assert stack temp mode size. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@139894 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 69b40d8af7a..f2e9c79abf2 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -2076,17 +2076,15 @@ emit_group_store (rtx orig_dst, rtx src, tree type ATTRIBUTE_UNUSED, int ssize)
{
enum machine_mode dest_mode = GET_MODE (dest);
enum machine_mode tmp_mode = GET_MODE (tmps[i]);
- int dest_size = GET_MODE_SIZE (dest_mode);
- int tmp_size = GET_MODE_SIZE (tmp_mode);
- gcc_assert (bytepos == 0
- && XVECLEN (src, 0)
- && dest_size == tmp_size);
+ gcc_assert (bytepos == 0 && XVECLEN (src, 0));
if (GET_MODE_ALIGNMENT (dest_mode)
>= GET_MODE_ALIGNMENT (tmp_mode))
{
- dest = assign_stack_temp (dest_mode, dest_size, 0);
+ dest = assign_stack_temp (dest_mode,
+ GET_MODE_SIZE (dest_mode),
+ 0);
emit_move_insn (adjust_address (dest,
tmp_mode,
bytepos),
@@ -2095,7 +2093,9 @@ emit_group_store (rtx orig_dst, rtx src, tree type ATTRIBUTE_UNUSED, int ssize)
}
else
{
- dest = assign_stack_temp (tmp_mode, tmp_size, 0);
+ dest = assign_stack_temp (tmp_mode,
+ GET_MODE_SIZE (tmp_mode),
+ 0);
emit_move_insn (dest, tmps[i]);
dst = adjust_address (dest, dest_mode, bytepos);
}