Re: compiling master.
From: Naveen N. Rao <hidden>
Date: 2016-11-03 10:34:22
On 2016/11/03 06:09PM, Nicholas Piggin wrote:
On Thu, 3 Nov 2016 12:23:17 +0530 "Naveen N. Rao" [off-list ref] wrote:quoted
diff --git a/arch/powerpc/include/asm/exception-64s.hb/arch/powerpc/include/asm/exception-64s.h index 2e4e7d8..9b7b302 100644--- a/arch/powerpc/include/asm/exception-64s.h +++ b/arch/powerpc/include/asm/exception-64s.h@@ -91,7 +91,7 @@ */ #define LOAD_HANDLER(reg, label) \ ld reg,PACAKBASE(r13); /* get high part of &label */ \ - ori reg,reg,(FIXED_SYMBOL_ABS_ADDR(label))@l; + ori reg,reg,((FIXED_SYMBOL_ABS_ADDR(label)) & 0xffff); /* Exception register prefixes */ #define EXC_HV HThanks for taking a look. Does this patch fix it, or just hide the build error? This would presumably hide real bugs too, so it will be good if we can make it conditional on older assemblers, or otherwise do a test for out of bounds value (you could try asm directives like .if/.error)
It does seem to fix it for me - the built kernel booted fine ;) My assembly skills are a bit lacking, but is there a specific reason you think that AND'ing with 0xffff is different from using @l? Thanks, Naveen