public inbox for gcc-prs@sourceware.org help / color / mirror / Atom feed
From: pbarada@mail.wm.sps.mot.com To: gcc-gnats@gcc.gnu.org Subject: c/5753: gcc-3.0.4 w/target of m68k-elf gets ICE Date: Fri, 22 Feb 2002 14:06:00 -0000 [thread overview] Message-ID: <200202222154.g1MLsP821012@hyper.wm.sps.mot.com> (raw) >Number: 5753 >Category: c >Synopsis: gcc-3.0.4 w/target of m68k-elf gets ICE >Confidential: no >Severity: critical >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Fri Feb 22 13:56:00 PST 2002 >Closed-Date: >Last-Modified: >Originator: Peter Barada >Release: 3.0.4 >Organization: >Environment: System: Linux hyper.wm.sps.mot.com 2.4.2-2 #1 Sun Apr 8 20:41:30 EDT 2001 i686 unknown Architecture: i686 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: m68k-unknown-elf configured with: /home/pbarada/work/cvs-wavemark/cross-linux-tools/gcc-3.0.4/configure --target=m68k-elf --prefix=/usr/local/wave/cross-test-304 --enable-languages=c,c++ --with-local-prefix=/usr/local/wave/cross-test-304/m68k-elf --with-newlib >Description: gcc-3.0.4 conifigured for m68k-elf generates an ICE when run with -m5200. This is cause by reload choosing an address register when the load is QImode from memory. The 5200 doesn't support loading a QImode into an address register: /usr/local/wave/cross-test-304/bin/m68k-elf-gcc -fno-exceptions -S -gstabs -malign-int -Wall -Wno-format -m5200 /tmp/cfprintf4.c -o /tmp/cfprintf4.s -da /tmp/cfprintf4.c: In function `_vformat': /tmp/cfprintf4.c:58: Insn does not satisfy its constraints: (insn 258 38 185 (set (reg:QI 8 %a0) (mem/f:QI (plus:SI (reg/f:SI 14 %a6) (const_int -1 [0xffffffff])) 0)) 37 {*m68k.md:1060} (nil) (nil)) /tmp/cfprintf4.c:58: Internal compiler error in final_scan_insn, at final.c:2876 >From the cfprintf4.c.20.greg file: Reloads for insn # 185 Reload 0: reload_out (SI) = (reg:SI 68) ADDR_REGS, RELOAD_FOR_OUTPUT (opnum = 0) reload_out_reg: (reg:SI 68) reload_reg_rtx: (reg:SI 8 %a0) Reload 1: reload_in (QI) = (mem/f:QI (plus:SI (reg/f:SI 14 %a6) (const_int -1 [0xffffffff])) 0) ADDR_REGS, RELOAD_FOR_INPUT (opnum = 1) reload_in_reg: (mem/f:QI (plus:SI (reg/f:SI 14 %a6) (const_int -1 [0xffffffff])) 0) reload_reg_rtx: (reg:QI 8 %a0) note the reload choice for QImode... It compiles w/o ICE(I don't have any idea if code is correct) for m6800, m68020, m68030, m68040, m68060. >How-To-Repeat: typedef __builtin_va_list va_list; extern char *_fmtcvt(unsigned int value, int base, char *cp); extern int strlen(const char *s); void _vformat (void (*putsub)(char c, char **p), char **putbuf, const char *fmt, va_list argp) { char c; int i; char *cp; char s[512]; cp = s+14; for (;;) { c = *fmt++; if (!c) { break; } s[14] = 0; switch (c) { case 'o': cp = _fmtcvt((unsigned int)(__builtin_va_arg(argp, unsigned int)), 8, s+14); i = (s+14) - cp; break; case 'u': cp = _fmtcvt((unsigned int)(__builtin_va_arg(argp, unsigned int)), 10, s+14); i = (s+14) - cp; break; case 'd': cp = _fmtcvt((unsigned int)(__builtin_va_arg(argp, int)), -10, s+14); i = (s+14) - cp; break; case 'p': cp = _fmtcvt((unsigned int)(__builtin_va_arg(argp, void*)), 16, s+14); i = (s+14) - cp; break; case 's': i = strlen(cp = __builtin_va_arg(argp, char *)); break; default: cp = s; s[0] = c; s[i = 1] = 0; } if (i == 0) { continue; } } } >Fix: >Release-Note: >Audit-Trail: >Unformatted:
next reply other threads:[~2002-02-22 21:56 UTC|newest] Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top 2002-02-22 14:06 pbarada [this message] 2002-03-20 10:54 jakub 2002-04-02 13:28 mmitchel
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=200202222154.g1MLsP821012@hyper.wm.sps.mot.com \ --to=pbarada@mail.wm.sps.mot.com \ --cc=gcc-gnats@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).