On Mon, Mar 14, 2005 at 04:49:41PM -0800, Eric Christopher wrote: > > > > Now, I wouldn't object to hacking GCC to avoid cross-jumping calls to > > > abort. It's just that I don't think that the common GNU use of abort > > > serves the users. > > Agreed. And as someone suggested, rather than treating abort > > specially within GCC, I think we'd be better off with a function > > attribute which prevented cross jumping to any function with > > the attribute set. > > I think it makes sense to just not crossjump noreturn attribute > functions if we're going to do this.
I'm inclined to agree. I also think that we should be making this change, at least at -O2. I talked to Mark Mitchell about this briefly this evening. He pointed out that __cxa_throw is a noreturn function where crossjumping is often useful. So perhaps we do need an attribute, but I'm not sure which way the default should go. -- Daniel Jacobowitz CodeSourcery, LLC