This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: rs6000 extzvsi pattern breakage
- From: Alan Modra <amodra at bigpond dot net dot au>
- To: gcc-patches at gcc dot gnu dot org, David Edelsohn <dje at watson dot ibm dot com>
- Date: Fri, 6 Sep 2002 00:13:57 +0930
- Subject: Re: rs6000 extzvsi pattern breakage
- References: <20020905221119.U8357@bubble.sa.bigpond.net.au>
On Thu, Sep 05, 2002 at 10:11:20PM +0930, Alan Modra wrote:
> * config/rs6000/rs6000.md (extzvsi_internal2): Revert most of
> 2002-07-26 change. Comment.
Here's a testcase, which fails on current gcc-3.2 powerpc-linux.
I'd like to commit the patch and testcase everywhere.
/* Failed on powerpc due to bad extzvsi pattern. */
struct ieee
{
unsigned int negative:1;
unsigned int exponent:11;
unsigned int mantissa0:20;
unsigned int mantissa1:32;
} x;
unsigned int
foo (void)
{
unsigned int exponent;
exponent = x.exponent;
if (exponent == 0)
return 1;
else if (exponent > 1)
return 2;
return 0;
}
int
main (void)
{
x.exponent = 1;
if (foo () != 0)
abort ();
return 0;
}
--
Alan Modra
IBM OzLabs - Linux Technology Centre