This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/86166] ICE in convert_move, at expr.c:299 on aarch64-linux-gnu
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 20 Jun 2018 08:44:15 +0000
- Subject: [Bug middle-end/86166] ICE in convert_move, at expr.c:299 on aarch64-linux-gnu
- Auto-submitted: auto-generated
- References: <bug-86166-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86166
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |DUPLICATE
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
#1 0x000000000095260a in convert_move (to=0x7ffff6a60e28,
from=0x7ffff6a60c18, unsignedp=1)
at /space/rguenther/src/svn/gcc-6-branch/gcc/expr.c:299
299 gcc_assert (GET_MODE_BITSIZE (from_mode) == GET_MODE_BITSIZE
(to_mode));
(gdb) p debug_rtx (to)
(reg:HI 79)
$1 = void
(gdb) p debug_rtx (from)
(reg:V4HI 73 [ b.0_2 ])
$2 = void
...
#7 0x0000000000baaf12 in expand_unop (mode=HImode, unoptab=bswap_optab,
op0=0x7ffff6a60c18, target=0x0, unsignedp=1)
at /space/rguenther/src/svn/gcc-6-branch/gcc/optabs.c:2705
2705 temp = expand_unop_direct (mode, unoptab, op0, target, unsignedp);
(gdb) p op0
$3 = (rtx) 0x7ffff6a60c18
(gdb) p debug_rtx (op0)
(reg:V4HI 73 [ b.0_2 ])
$4 = void
so bswap:HI on a V4HI operand.
/* Rotation of 16bit values by 8 bits is effectively equivalent to a bswaphi.
Note that this is not the case for bigger values. For instance a rotation
of 0x01020304 by 16 bits gives 0x03040102 which is different from
0x04030201 (bswapsi). */
if (rotate
&& CONST_INT_P (op1)
&& INTVAL (op1) == BITS_PER_UNIT
&& GET_MODE_SIZE (scalar_mode) == 2
&& optab_handler (bswap_optab, HImode) != CODE_FOR_nothing)
return expand_unop (HImode, bswap_optab, shifted, NULL_RTX,
unsignedp);
where trunk passes mode instead of HImode.
PR83623.
*** This bug has been marked as a duplicate of bug 83623 ***