[Bug target/63435] Bad code with weak vs localalias on AIX

2021-07-18 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63435

Andrew Pinski  changed:

   What|Removed |Added

 CC||streibel.2003 at gmx dot net

--- Comment #7 from Andrew Pinski  ---
*** Bug 67950 has been marked as a duplicate of this bug. ***

[Bug target/63435] Bad code with weak vs localalias on AIX

2018-02-12 Thread egallager at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63435

Eric Gallager  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||egallager at gcc dot gnu.org
 Resolution|--- |FIXED

--- Comment #6 from Eric Gallager  ---
So, if this is only a problem in 4.9 and earlier, I'm assuming I can close this
as FIXED, since GCC 5 branch is now closed

[Bug target/63435] Bad code with weak vs localalias on AIX

2014-10-06 Thread hubicka at ucw dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63435

--- Comment #5 from Jan Hubicka hubicka at ucw dot cz ---
There are three problems in 4.9 and earlier
  - the aliases are produced incorrectly because AIX's as alias keyword does
not do what is expected
(it does kind of syntactic replacement combined with something else)
  - MAKE_ONE_ONLY is not defined making compiler to believe that linker does
not perfrom garbage collection
  - Linker's garbage collection was disabled, so in particular all duplicated
comdats stays
in the code.

Lack of MAKE_ONE_ONLY makes GCC to produce a lot more local aliases, because it
makes sense to refer to a function by local relocation instead of lgobal when
we know it is going to stay. Together with the as issue this leads to wrong
code.

You can work around by forcing local alias to return NULL for AIX to disable
some
of local aliases.  There are other two cases where GCC produce such symbols (in
addition of user declaring it by hand in source code via the alias attribute).
It
is the thunk generation (I suppose this one works as it is there for ages)
and the new comdat local code in C++ (that is used only by -Os codegen path at
4.9).


[Bug target/63435] Bad code with weak vs localalias on AIX

2014-10-05 Thread gcc at dixie dot net.nz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63435

--- Comment #4 from Andrew Dixie gcc at dixie dot net.nz ---
I tried gcc-5-20140928 snapshot

This snapshot doesn't generate a localalias for the testcase, and it generates
very few localalias symbols in general.

There was only one localalias symbol produced in the entire gcc build tree:
[1228]  m   0x041c 1 10x6b 0x
._ZNKSt14error_category23default_error_conditionEi.localalias.7
[1492]  m   0x0b30 2 10x6b 0x
_ZNKSt14error_category23default_error_conditionEi.localalias.7
[1578]  m   0x0c6c 2 10x6b 0x
_ZNKSt14error_category23default_error_conditionEi.localalias.7

Maybe there is something else wrong with gcc-4.9 that is causing it to generate
localalias symbols too aggressively?

We forced symtab_node::noninterposable_alias to return NULL on AIX.  This
resolved all the failures we were seeing in our application testsuite.


[Bug target/63435] Bad code with weak vs localalias on AIX

2014-10-03 Thread dje at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63435

David Edelsohn dje at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2014-10-03
 Ever confirmed|0   |1

--- Comment #3 from David Edelsohn dje at gcc dot gnu.org ---
I have not seen any problems, although the coverage is limited.


[Bug target/63435] Bad code with weak vs localalias on AIX

2014-10-02 Thread hubicka at ucw dot cz
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63435

--- Comment #2 from Jan Hubicka hubicka at ucw dot cz ---
Yes,
good to remind me.  The aliases are quite broken on AIX pre 4.9
and becasue some of them are now auto generated, we probably ought
to fix it.  One solution would be to disable generation of aliases, other
would be to backport this patch.
David, I think we did not encounter any issues with the new code?

Honza