> On 14 January 2008 11:03, Hans-Peter Nilsson wrote: > > >> Date: Sat, 12 Jan 2008 11:16:23 +0100 > >> From: Paolo Bonzini <[EMAIL PROTECTED]> > > > >>> (Yeah, new attributes "impure" and/or "nonconst" would solve > >>> this, but only for IPA and there's already the existing option > >>> and asm I mentioned. And if you say different files/compilation > >>> units, I say LTO.) > >> > >> I think the asm is your best bet. > > > > I prefer not to bet at all. ;) > > > > Let's make this: > > asm (""); > > (asms without input and output operands are volatile, and we're > > also leaving the text empty) in the called function the > > promised, documented way to stop interfunction analysis (like > > currently const/pure) making calls "as it used to be". Not all > > targets support "weak", and overloading a standard qualifier > > like "volatile" or "extern" seems on second thought too brittle. > > > > brgds, H-P > > If you wanted to stick to standard C, you could surely force it with a call > through function pointer, perhaps? (You might need to make it volatile to > fool IPA.)
My preferred variant would be probably simple increment of global variable... Honza > > > cheers, > DaveK > -- > Can't think of a witty .sigline today....