optimization/9279: [3.2 regression] [Sparc] combine bug

Gabriel Dos_Reis gdosreis@sophia.inria.fr
Wed Jan 29 03:07:00 GMT 2003


| > As I explained to Eric, I would have been pleased to apply that
| > patch.  However it turned out that it introduces (1) a performance
| > regression; (2) possibly a wrong code generation -- David gave some
| > references.
| 
| Note that, as I said to David, I'm very skeptical about (2) for the patch 
| _alone_ because it simply pessimizes (however rightfully, they are just 
| plain wrong in the general case) the values returned by two predicate 
| functions:

Sorry, I mistranslated your agreement on David's statement:

  >       This patch and the necessary PowerPC patch exposed other bugs in
  > the compiler regarding REG_EQUAL notes in loop unrolling:
  >
  > 2002-10-04  David Edelsohn  <edelsohn@gnu.org>
  >
  >         * unroll.c (copy_loop_body): Remove REG_EQUAL note attached to
  >         copied instruction if the note is not loop invariant.
  >
  > The patches may have other co-dependencies we do not know about.

  Ok.

[...]

| > I would suggest that, right after 3.2.2 release, interested parties
| > investigate the issue and submit a complete patch which we would
| > have sufficient time to test.
| 
| I'm not very optimistic about this happening. I guess most of the developer
| resources will be focused on the 3.3 branch instead.

Well, that is just a suggestion.  I hope 3.3 will be ready in time so 
that 3.2-branch becomes obselete.

-- Gaby



More information about the Gcc-bugs mailing list