This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PING: PATCH: PR middle-end/37843:[4.4 Regression] unaligned stack in maindue to tail call optimizatiP


On Wed, 26 Nov 2008, Andrew Pinski wrote:

> On Wed, Nov 26, 2008 at 10:02 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> >>>
> >>> Darwin doesn't support sibcall. I am checking it to mark them Linux
> >>> only.
> >>> H.J.
> >>
> > static bool
> > ix86_function_ok_for_sibcall (tree decl, tree exp)
> > {
> >  tree func;
> >  rtx a, b;
> >
> >  /* If we are generating position-independent code, we cannot sibcall
> >     optimize any indirect call, or a direct call to a global function,
> >     as the PLT requires %ebx be live.  */
> >  if (!TARGET_64BIT && flag_pic && (!decl || !targetm.binds_local_p (decl)))
> >    return false;
> >
> > Darwin returns false.
> >
>
> Because darwin is always pic though binds_local_p should return true ...
> -- Pinski

HJ,

You should change the target selector from "*-*-linux*" to "nonpic" since
you'll get a failure on linux with "-m32 -fpic", e.g:

http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02492.html

Note: pr37843-3.c is failing on the nonpic case as well.  Even in your own
testsuite results.  E.g:

http://gcc.gnu.org/ml/gcc-testresults/2008-11/msg02491.html

		--Kaveh
--
Kaveh R. Ghazi			ghazi@caip.rutgers.edu


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]