tech-kern archive

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

Re: KNF and the C preprocessor



On Mon, Dec 10, 2012 at 07:12:36PM -0500, Mouse wrote:
> 
> > I want func() inlined twice so that there are only 2 conditional
> > branches and usually a conditional branch in cmd() back to the loop
> > top in each path.
> 
> Why?  (s/func/cmd/ I assume.)
> 
> > So I need to stop the compiler tail merging the two parts of the
> > inside 'if'
> > There is nothing I can put inside an inline function version of cmd()
> > that will stop this happening.
> 
> There's nothing you can put in a macro that will prevent it, either.
> Or, rather, as far as I can think of, anything you can do in a macro to
> prevent it you can also do in an inline function.  If you have an
> example of something that'll work one way but not the other I'd be
> interested.

An assembler comment - from something like:
asm volatile("; " STR(__LINE__))

        David

-- 
David Laight: david%l8s.co.uk@localhost


Home | Main Index | Thread Index | Old Index