This is the mail archive of the gcc-bugs@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: x86 sibling call stuff


>>>>> "Richard" == Richard Henderson <rth@twiddle.net> writes:

    >> Note that there are two calls to the destructor there (_._1A).
    >> That's all straight-line code, so it's going to be running the
    >> destructor twice.

    Richard> Yes, I'd noticed that was going to happen during the
    Richard> previous debugging session, but was getting hung up on
    Richard> the reexpansion problem.

Good; we're homing in on the problem at least.

    >> If I'm right, the sibling call stuff is going to take some
    >> extra work in order to work right with exceptions: you're going
    >> to have to unregister the cleanups registered during the
    >> proto-call, or something.

    Richard> Yes, and that appears quite trivial.  Please scrutinize
    Richard> the following.  I've started x86 and alpha bootstraps;
    Richard> I'll check back after dinner.

Your patch looks reasonable to me.  Clever trick, using
expand_start_target_temps like that.

Please let me know how your bootstrap goes, and when you check in the
patch.  Then I'll experiment more fully with the patch I sent you to
see if makes sense, passes tests, etc.

I hope dinner was tasty,

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

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