emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CVS emacs on Windows still crashes loading bongo.el


From: David Kastrup
Subject: Re: CVS emacs on Windows still crashes loading bongo.el
Date: Wed, 28 May 2008 18:09:56 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)

Jason Rumney <address@hidden> writes:

> David Kastrup wrote:
>> I have entered a bug report in the libgcc bug tracker asking to have the
>> "noreturn" attribute removed from abort's definition
>
> I don't think this is the full solution, as there are similar problems
> debugging any inline function with cross-jumping enabled - the inline
> function gets inlined into one function that uses it, and other uses
> often jump into the same inlined instance, so the instruction pointer
> points inside a function that has nothing to do with the call stack.

That's only a problem when the function (inline or not) is at the
ultimate end of the function and all the register usage and stack frame
cleanup is identical.  That's not so very common.  Note that for
"noreturn" functions (inline or not), the stack frame cleanup is
disregarded, and we are by definition at "the ultimate end".  So what is
a rare occurence in other circumstances becomes pretty much the
default.

I don't see that inlining functions would make cross-jumping more of a
problem.  Actually, it would seem to me that inlining would make
crossjumping _less_ likely since the call arguments are not placed into
a standardized stack frame, but are substituted into the inline function
depending on where it is used.  So there should be less chance of code
recycling rather than more.

-- 
David Kastrup




reply via email to

[Prev in Thread] Current Thread [Next in Thread]