[RFC PATCH v2 1/2] cpuidle: Add common init interface and idle functionality

Russell King - ARM Linux linux at arm.linux.org.uk
Thu Jan 5 04:32:40 EST 2012


On Wed, Dec 14, 2011 at 01:02:05AM -0600, Robert Lee wrote:
> +	asm("b 1f; .align 5; 1:");
> +	asm("mcr p15, 0, r0, c7, c10, 4");	/* drain write buffer */

Err, no.  The compiler is free to add whatever instructions it sees
fit between these two asm() statements.

If you want to ask the compiler to issue a set of assembly instructions
as a block, you have to use just one asm() statement.



More information about the linux-arm-kernel mailing list