http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48727
--- Comment #4 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-07-06 19:15:49 UTC --- > This also fails on 32-bit Solaris/SPARC with Sun as, which has: > > sethi %hi(_ZN1S5xyzzyEv), %g1 > jmp %g1 + %lo(_ZN1S5xyzzyEv) > sethi %hi(_ZN1S5xyzzyEv), %g1 > jmp %g1 + %lo(_ZN1S5xyzzyEv) > > On the other hand, both 64-bit with Sun as and 32-bit with gas have > > call _ZN1S5xyzzyEv, 0 > call _ZN1S5xyzzyEv, 0 This is OK, these are the 2 forms of a direct tail call on the SPARC: sethi/jmp or call, depending on the capability of the assembler (HAVE_AS_RELAX_OPTION).