This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [RFA:] Fix gcc.c-torture/execute/20020720-1.x and further analysis
- From: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- To: roger at eyesopen dot com (Roger Sayle)
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Sat, 31 Aug 2002 22:35:01 -0400 (EDT)
- Subject: Re: [RFA:] Fix gcc.c-torture/execute/20020720-1.x and further analysis
> > >From the discussion, it appears that combine should know how to optimize
> > this rtl (3 insns?) but apparently there is a problem. However, the
> > problem in this case isn't the abs optimization.
>
>
> This is very interesting! Notice the REG_EQUAL note on instruction
> 27, the compiler has determined that the condition flags are always
> false (i.e. that 1.0 is not less than 0.0)! I'd be surprised that
> with this information the conditional branch survives the rest of
> compilation.
Hmmm, is the REG_EQUAL note for %r0 rather than the condition code?
It is always 0. The conditional branch does survive the rest of the
compilation.
> I've tried reproducing this problem on a cross compiler from
> i686-pc-cygwin to hppa64-hp-hpux11.00, but I've been unable to
> reproduce the behaviour as "foo" refuses to be inlined at -O3.
> Is the inliner a known deficiency of cross-compiling from 32bit
> hosts to 64bit targets?
Strange.
> One observation is that the .s files still contain references
> to ".IMPORT link_error,ENTRY" even though link_error is never
> referenced or called in the generated code. I didn't build a
> full hppa64 toolchain, so I've no idea if this is the issue.
These don't cause a link error or the test to fail at lower
optimization levels. This is a problem that's not easily fixed,
but as far as I am aware it doesn't cause any problems. This
happens often in C++ code.
> Do I have hppa64-hp-hpux11.00 correct as the target triple?
Yes, that's the correct target triple.
> Using "--target=hppa64-hpux" as described in your e-mail fails
Sorry, for abreviating the triplet.
> at configure time with an unsupported target error, but the
> test results for hppa64-hp-hpux11.00 don't show this failure
> http://gcc.gnu.org/ml/gcc-testresults/2002-08/msg00641.html
That's message was for 3.1/3.2 branch. You need to look at 3.3 results
for hppa-unknown-linux-gnu, hppa2.0w-hp-hpux11*, or hppa64-hp-hpux11*
(e.g., http://gcc.gnu.org/ml/gcc-testresults/2002-08/msg00046.html).
Dave
--
J. David Anglin dave.anglin@nrc.ca
National Research Council of Canada (613) 990-0752 (FAX: 952-6605)