From e0978eba9fbb6b124f8f3b5eeb2f16ccff0ca7cf Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Tue, 2 Sep 2008 16:36:49 +0000 Subject: [PATCH] expr.c (emit_group_store): Don't assert stack temp mode size. 2008-09-02 H.J. Lu * expr.c (emit_group_store): Don't assert stack temp mode size. From-SVN: r139894 --- gcc/ChangeLog | 5 ++++- gcc/expr.c | 14 +++++++------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d3d045586ac7..3051b0df736e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2008-09-02 H.J. Lu + + * expr.c (emit_group_store): Don't assert stack temp mode size. + 2008-09-02 Samuel Tardieu PR target/37283 @@ -34,7 +38,6 @@ 2008-09-02 Victor Kaplansky * gcc/config/spu/spu.md (divdf3): Removed. - 2008-09-02 Jakub Jelinek diff --git a/gcc/expr.c b/gcc/expr.c index 69b40d8af7a4..f2e9c79abf2d 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); } -- 2.47.3