This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/16357] New: ICE copying 7 bytes between extern char[]s
- From: "rsandifo at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 4 Jul 2004 07:50:12 -0000
- Subject: [Bug target/16357] New: ICE copying 7 bytes between extern char[]s
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
Compiling the following:
-----------------------------------------------------------
extern char foo[], bar[];
void f (void) { memcpy (foo, bar, 7); }
-----------------------------------------------------------
with mipsisa64-elf causes an ICE:
-----------------------------------------------------------
/tmp/foo.c: In function `f':
/tmp/foo.c:2: error: PRINT_OPERAND, invalid operand for relocation
(const:DI (plus:DI (symbol_ref:DI ("bar") [flags 0x40] <var_decl 0x401c2e80 bar>)
(const_int 6 [0x6])))
/tmp/foo.c:2: internal compiler error: in print_operand_reloc, at
config/mips/mips.c:5624
-----------------------------------------------------------
The problem is due to incorrect mode usage in mips_block_move_straight.
Testing a fix now.
--
Summary: ICE copying 7 bytes between extern char[]s
Product: gcc
Version: 3.4.1
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P2
Component: target
AssignedTo: rsandifo at gcc dot gnu dot org
ReportedBy: rsandifo at gcc dot gnu dot org
CC: echristo at redhat dot com,gcc-bugs at gcc dot gnu dot
org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: mipsisa64-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16357