public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: optimization/7339: ICE on simple code with GCC 3.1
@ 2002-07-17 10:56 Graham Stott
  0 siblings, 0 replies; 3+ messages in thread
From: Graham Stott @ 2002-07-17 10:56 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

The following reply was made to PR optimization/7339; it has been noted by GNATS.

From: Graham Stott <graham.stott@btinternet.com>
To: lloyd@acm.jhu.edu
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: optimization/7339: ICE on simple code with GCC 3.1
Date: Wed, 17 Jul 2002 18:51:31 +0100

 > I'm compiling with g++ but I don't think there is anything C++-centric about the ICE.
 All that's needed to trigger the abort is to (>> 32) a 32 bit var as in the following C sample.
 
 --------------------------------------------------------
 typedef unsigned long valueT;
 
 valueT
 md_apply_fix3 (valueT *valP)
 {
    valueT value = * valP;
 
    return (((value) >> 32) & 0xffff);
 }
 ----------------------------------------------------------
 
 


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: optimization/7339: ICE on simple code with GCC 3.1
@ 2002-09-19 12:01 dalej
  0 siblings, 0 replies; 3+ messages in thread
From: dalej @ 2002-09-19 12:01 UTC (permalink / raw)
  To: dalej, gcc-bugs, gcc-prs, lloyd, nobody

Synopsis: ICE on simple code with GCC 3.1

Responsible-Changed-From-To: unassigned->dalej
Responsible-Changed-By: dalej
Responsible-Changed-When: Thu Sep 19 12:01:52 2002
Responsible-Changed-Why:
    fixed bug
State-Changed-From-To: open->closed
State-Changed-By: dalej
State-Changed-When: Thu Sep 19 12:01:52 2002
State-Changed-Why:
    fixed bug

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=7339


^ permalink raw reply	[flat|nested] 3+ messages in thread

* optimization/7339: ICE on simple code with GCC 3.1
@ 2002-07-17  7:36 lloyd
  0 siblings, 0 replies; 3+ messages in thread
From: lloyd @ 2002-07-17  7:36 UTC (permalink / raw)
  To: gcc-gnats


>Number:         7339
>Category:       optimization
>Synopsis:       ICE on simple code with GCC 3.1
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    unassigned
>State:          open
>Class:          ice-on-illegal-code
>Submitter-Id:   net
>Arrival-Date:   Wed Jul 17 07:36:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Jack Lloyd
>Release:        GCC 3.1
>Organization:
>Environment:
RedHat Linux 7.3 on an Athlon.

$ g++ -v
Reading specs from /usr/local/gcc-3.1/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs
Configured with: ../gcc-3.1/configure --prefix=/usr/local/gcc-3.1 --enable-threads
Thread model: posix
gcc version 3.1
>Description:
ICE on illegal code (it shifts 16 bit values >> 32). It only occurs with optimization. I haven't checked with 3.1.1 snapshots or HEAD.

The attached code will compile with GCC 3.0.4 (with and without optimization).

I'm compiling with g++ but I don't think there is anything C++-centric about the ICE.
>How-To-Repeat:
Compile the attached file with -O (or higher) with GCC 3.1

Here is what I get:

$ g++ -O x.cpp
x.cpp: In function `bool bigint_divcore(short unsigned int, short unsigned int, 
   short unsigned int, short unsigned int, short unsigned int, short unsigned 
   int)':
x.cpp:26: warning: right shift count >= width of type
x.cpp:28: warning: right shift count >= width of type
x.cpp:37: Internal compiler error in simplify_subreg, at simplify-rtx.c:2452
Please submit a full bug report [...]
>Fix:
None known (except the obvious of compiling without optimization, or fixing the code).
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="x.cpp"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="x.cpp"

LyoKICBXaXRoIEdDQyAzLjEgYW5kIC1PLCB0aGlzIGNvZGUgd2lsbCBkaWUgd2l0aCBhbiBpbnRl
cm5hbCBjb21waWxlciBlcnJvciBvbgogIExpbnV4L3g4Ni4gV29ya3Mgd2l0aCBHQ0MgMy4wLjQg
YW5kIGFsc28gUmVkSGF0IDcuMydzIDIuOTYtMTEwLiBXaWxsIGFsc28KICB3b3JrIHdpdGggR0ND
IDMuMSwgYnV0IG9ubHkgd2l0aG91dCBhbnkgb3B0aW1pemF0aW9uCgogIEhpbnQ6IGlmIHlvdSBj
aGFuZ2UgU0hJRlQgdG8gMzEsIDMuMSB3b24ndCBJQ0UuIEkgZG9uJ3QgaGF2ZSBhbnkKICBpbmZv
cm1hdGlvbiBiZXlvbmQgdGhpcy4KCiAgWWVzLCBJJ20gYXdhcmUgdGhlIGNvZGUgaXNuJ3QgbGVn
YWwuIEkgd2FzIGluZm9ybWVkIGJ5IHNvbWUgcGVvcGxlIG9uCiAgZ2NjQGdjYy5nbnUub3JnIHRo
YXQgR0NDIHNob3VsZCBuZXZlciBJQ0Ugb24gYW55IGlucHV0IGFuZCBJIHNob3VsZCByZXBvcnQK
ICB0aGlzLgoqLwoKdHlwZWRlZiB1bnNpZ25lZCBzaG9ydCB3b3JkOwp0eXBlZGVmIHVuc2lnbmVk
IGludCBkd29yZDsKCmNvbnN0IGR3b3JkIE1QX1dPUkRfTUFYID0gMHhGRkZGOwpjb25zdCBkd29y
ZCBTSElGVCA9IDMyOwoKYm9vbCBiaWdpbnRfZGl2Y29yZSh3b3JkIHEsIHdvcmQgeV8xLCB3b3Jk
IHlfMiwKICAgICAgICAgICAgICAgICAgICB3b3JkIHgxLCB3b3JkIHgyLCB3b3JkIHgzKQogICB7
CiAgIGR3b3JkIHByb2R1Y3QgPSAoZHdvcmQpcSAqIHlfMjsKICAgeV8yID0gKHByb2R1Y3QgJiBN
UF9XT1JEX01BWCk7CgogICBwcm9kdWN0ID0gKGR3b3JkKXEgKiB5XzEgKyAoKHByb2R1Y3QgPj4g
U0hJRlQpICYgTVBfV09SRF9NQVgpOwogICB5XzEgPSAocHJvZHVjdCAmIE1QX1dPUkRfTUFYKTsK
ICAgd29yZCBsYXN0ID0gKHByb2R1Y3QgPj4gU0hJRlQpICYgTVBfV09SRF9NQVg7CgogICBpZihs
YXN0ID4geDEpIHJldHVybiB0cnVlOwogICBpZihsYXN0IDwgeDEpIHJldHVybiBmYWxzZTsKICAg
aWYoeV8xID4geDIpIHJldHVybiB0cnVlOwogICBpZih5XzEgPCB4MikgcmV0dXJuIGZhbHNlOwog
ICBpZih5XzIgPiB4MykgcmV0dXJuIHRydWU7CiAgIGlmKHlfMiA8IHgzKSByZXR1cm4gZmFsc2U7
CiAgIHJldHVybiBmYWxzZTsKICAgfQo=


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-09-19 19:01 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-17 10:56 optimization/7339: ICE on simple code with GCC 3.1 Graham Stott
  -- strict thread matches above, loose matches on Subject: below --
2002-09-19 12:01 dalej
2002-07-17  7:36 lloyd

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).