x86, bitops: make constant-bit set/clear_bit ops faster, gcc workaround
authorIngo Molnar <mingo@elte.hu>
Fri, 20 Jun 2008 19:50:20 +0000 (21:50 +0200)
committerIngo Molnar <mingo@elte.hu>
Sat, 21 Jun 2008 05:57:24 +0000 (07:57 +0200)
commit437a0a54eea7b101e8a5b70688009956f6522ed0
treea0a2b59e4fc40f01d8ad9b5702698f216e79ff49
parent7dbceaf9bb68919651901b101f44edd5391ee489
x86, bitops: make constant-bit set/clear_bit ops faster, gcc workaround

Jeremy Fitzhardinge reported this compiler bug:

Suggestion from Linus: add "r" to the input constraint of the
set_bit()/clear_bit()'s constant 'nr' branch:

Blows up on "gcc version 3.4.4 20050314 (prerelease) (Debian 3.4.3-13)":

CC init/main.o
include2/asm/bitops.h: In function `start_kernel':
include2/asm/bitops.h:59: warning: asm operand 1 probably doesn't match constraints
include2/asm/bitops.h:59: warning: asm operand 1 probably doesn't match constraints
include2/asm/bitops.h:59: warning: asm operand 1 probably doesn't match constraints
include2/asm/bitops.h:59: error: impossible constraint in `asm'
include2/asm/bitops.h:59: error: impossible constraint in `asm'
include2/asm/bitops.h:59: error: impossible constraint in `asm'

Reported-by: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/asm-x86/bitops.h