Bug 17093

Summary: [m32r-*-gcc] ICE with -msdata=use -O0
Product: gcc Reporter: inaoka.kazuhiro
Component: targetAssignee: Not yet assigned to anyone <unassigned>
Status: RESOLVED FIXED    
Severity: normal CC: gcc-bugs
Priority: P2 Keywords: ice-on-valid-code
Version: 3.4.2   
Target Milestone: 3.4.2   
Host: Target: m32r
Build: Known to work:
Known to fail: Last reconfirmed:

Description inaoka.kazuhiro 2004-08-19 06:18:24 UTC
-- sdata.c --
extern char *name;
main()
{
        printf("%s\n",name);
}

 m32r-elf-gcc -c -msdata=use -O0 sdata.c

sdata.c: In function `main':
sdata.c:5: error: unrecognizable insn:
(insn 8 21 9 0 (set (reg:SI 27)
        (unspec [
                (const_int 0 [0x0])
            ] 2)) -1 (nil)
    (nil))
sdata.c:5: internal compiler error: in extract_insn, at recog.c:2083
Comment 1 Andrew Pinski 2004-08-19 06:25:40 UTC
The insn looks right at least one the mainline and the 3.4 branch:
(define_insn "*load_sda_base"
  [(set (match_operand:SI 0 "register_operand" "=r")
        (unspec:SI [(const_int 0)] UNSPEC_LOAD_SDA_BASE))]
  ""
  "ld24 %0,#_SDA_BASE_"
  [(set_attr "type" "int4")
   (set_attr "length" "4")])
Comment 2 inaoka.kazuhiro 2004-08-19 07:13:53 UTC
(In reply to comment #1)
> The insn looks right at least one the mainline and the 3.4 branch:

I think so. But It has happened.

Reading specs from /usr/local/m32r-elf/lib/gcc/m32r-elf/3.4.2/specs
Configured with: /home3/FSF/org_src/gcc-3.4/gcc/configure --target=m32r-elf
--prefix=/usr/local/m32r-elf --srcdir=/home3/FSF/org_src/gcc-3.4/gcc
--enable-languages=c,c++ --with-newlib
Thread model: single
gcc version 3.4.2 20040819 (prerelease)
Comment 3 Andrew Pinski 2004-08-19 18:58:32 UTC
*** Bug 17094 has been marked as a duplicate of this bug. ***
Comment 4 GCC Commits 2004-08-24 09:34:08 UTC
Subject: Bug 17093

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	nickc@gcc.gnu.org	2004-08-24 09:34:00

Modified files:
	gcc            : ChangeLog 
	gcc/config/m32r: m32r.md 

Log message:
	PR target/17093
	* config/m32r.md (movsi_sda): Add SI mode specification to UNSPEC.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.5053&r2=2.5054
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/m32r/m32r.md.diff?cvsroot=gcc&r1=1.47&r2=1.48

Comment 5 GCC Commits 2004-08-24 09:37:52 UTC
Subject: Bug 17093

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-3_4-branch
Changes by:	nickc@gcc.gnu.org	2004-08-24 09:37:44

Modified files:
	gcc            : ChangeLog 
	gcc/config/m32r: m32r.md 

Log message:
	PR target/17093
	* config/m32r.md (movsi_sda): Add SI mode specification to UNSPEC.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=2.2326.2.591&r2=2.2326.2.592
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/m32r/m32r.md.diff?cvsroot=gcc&only_with_tag=gcc-3_4-branch&r1=1.41.2.1&r2=1.41.2.2

Comment 6 Andrew Pinski 2004-08-24 14:13:49 UTC
Fixed for 3.4.2.
Comment 7 Andrew Pinski 2004-08-24 14:56:18 UTC
Woops closed the wrong one.
Comment 8 Andrew Pinski 2004-08-24 15:04:10 UTC
Woops I should look closer at what I was doing, this is fixed now.