diff options
Diffstat (limited to 'arch/powerpc/lib')
| -rw-r--r-- | arch/powerpc/lib/mem_64.S | 2 | ||||
| -rw-r--r-- | arch/powerpc/lib/sstep.c | 10 | 
2 files changed, 6 insertions, 6 deletions
| diff --git a/arch/powerpc/lib/mem_64.S b/arch/powerpc/lib/mem_64.S index 0738f96befbf..43435c6892fb 100644 --- a/arch/powerpc/lib/mem_64.S +++ b/arch/powerpc/lib/mem_64.S @@ -77,7 +77,7 @@ _GLOBAL(memset)  	stb	r4,0(r6)  	blr -_GLOBAL(memmove) +_GLOBAL_TOC(memmove)  	cmplw	0,r3,r4  	bgt	backwards_memcpy  	b	memcpy diff --git a/arch/powerpc/lib/sstep.c b/arch/powerpc/lib/sstep.c index 412dd46dd0b7..5c09f365c842 100644 --- a/arch/powerpc/lib/sstep.c +++ b/arch/powerpc/lib/sstep.c @@ -1198,7 +1198,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)  			sh = regs->gpr[rb] & 0x3f;  			ival = (signed int) regs->gpr[rd];  			regs->gpr[ra] = ival >> (sh < 32 ? sh : 31); -			if (ival < 0 && (sh >= 32 || (ival & ((1 << sh) - 1)) != 0)) +			if (ival < 0 && (sh >= 32 || (ival & ((1ul << sh) - 1)) != 0))  				regs->xer |= XER_CA;  			else  				regs->xer &= ~XER_CA; @@ -1208,7 +1208,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)  			sh = rb;  			ival = (signed int) regs->gpr[rd];  			regs->gpr[ra] = ival >> sh; -			if (ival < 0 && (ival & ((1 << sh) - 1)) != 0) +			if (ival < 0 && (ival & ((1ul << sh) - 1)) != 0)  				regs->xer |= XER_CA;  			else  				regs->xer &= ~XER_CA; @@ -1216,7 +1216,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)  #ifdef __powerpc64__  		case 27:	/* sld */ -			sh = regs->gpr[rd] & 0x7f; +			sh = regs->gpr[rb] & 0x7f;  			if (sh < 64)  				regs->gpr[ra] = regs->gpr[rd] << sh;  			else @@ -1235,7 +1235,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)  			sh = regs->gpr[rb] & 0x7f;  			ival = (signed long int) regs->gpr[rd];  			regs->gpr[ra] = ival >> (sh < 64 ? sh : 63); -			if (ival < 0 && (sh >= 64 || (ival & ((1 << sh) - 1)) != 0)) +			if (ival < 0 && (sh >= 64 || (ival & ((1ul << sh) - 1)) != 0))  				regs->xer |= XER_CA;  			else  				regs->xer &= ~XER_CA; @@ -1246,7 +1246,7 @@ int __kprobes emulate_step(struct pt_regs *regs, unsigned int instr)  			sh = rb | ((instr & 2) << 4);  			ival = (signed long int) regs->gpr[rd];  			regs->gpr[ra] = ival >> sh; -			if (ival < 0 && (ival & ((1 << sh) - 1)) != 0) +			if (ival < 0 && (ival & ((1ul << sh) - 1)) != 0)  				regs->xer |= XER_CA;  			else  				regs->xer &= ~XER_CA; |