The "mov" instruction to get the error code shouldn't move into a memory location. Don't allow the compiler to make this decision. Instead specify that only a register is appropriate here. Signed-off-by: Bill Wendling <morbo@xxxxxxxxxx> --- lib/x86/desc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/x86/desc.c b/lib/x86/desc.c index 5f37cef..451f504 100644 --- a/lib/x86/desc.c +++ b/lib/x86/desc.c @@ -263,7 +263,7 @@ unsigned exception_error_code(void) { unsigned short error_code; - asm("mov %%gs:6, %0" : "=rm"(error_code)); + asm("mov %%gs:6, %0" : "=r"(error_code)); return error_code; }