This is the mail archive of the gcc@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]

Re: Best ABI for stdarg/varargs ??


<<  If you can assume the existence of a decent MMU in the ABI, it's also
worth marking the stack non-executable.  I suppose this must require some
alternative way of dealing with thunks / trampolines.
>>

Indeed it does reqiure that, and you should carefully consider the costs
of the decision to make the stack non-executable, they can be quite
considerable, and cause a distributed overhead for all procedure calls
via a pointer, including those not using trampolines. This is because
there is no way statically to know if a trampoline is used for a given call.

So the "it's worth ..." needs to be quantified to make sure that you are
gaining more than you are losing by such a restriction.


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