This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: cc1 chokes on x86
- To: "Kevin P. Neal" <kpneal at pobox dot com>
- Subject: Re: cc1 chokes on x86
- From: Geoff Keating <geoffk at cygnus dot com>
- Date: 28 Jul 2000 14:45:39 -0700
- CC: gcc-bugs at gcc dot gnu dot org
- References: <20000728162540.A23031@tome.neutralgood.org>
"Kevin P. Neal" <kpneal@pobox.com> writes:
> (insn 10 8 11 (set (reg:QI 22)
> (plus:QI (const_int 48 [0x30])
> (const_int -64 [0xffffffc0]))) -1 (nil)
> (nil))
I reproduced this with various gcc versions, including the one
shipped with Red Hat Linux 6.2.
> Is gcc sign extending 0xf0 when it shouldn't be?
No, the problem is that it's not properly folding the constants.
The current development compiler builds your code OK, so the problem
seems to be fixed.
You might try, as a workaround, switching on optimisation, with -O1 or
-O2. GCC should then fold the constants properly. This worked for me.
--
- Geoffrey Keating <geoffk@cygnus.com>