From f93f52474f75a0994079198416c6d1d6ae55844e Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Fri, 4 Jul 2014 04:53:59 +0100 Subject: [PATCH] fix encoding of CMN in ARM JIT It looks like bits 12 through 15 of the ARM encoding for CMN should be 0s, not 1s, although many processors don't care. --- racket/src/racket/src/lightning/arm/asm.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/racket/src/racket/src/lightning/arm/asm.h b/racket/src/racket/src/lightning/arm/asm.h index 600eabb00c..81e4b78212 100644 --- a/racket/src/racket/src/lightning/arm/asm.h +++ b/racket/src/racket/src/lightning/arm/asm.h @@ -1665,7 +1665,7 @@ _arm_cc_pkh(jit_state_t _jitp, int cc, int o, int rn, int rd, int rm, int im) #define _CMN(rn,rm) _CC_CMN(ARM_CC_AL,rn,rm) #define T1_CMN(rn,rm) _jit_W(THUMB_CMN|(_u3(rm)<<3)|_u3(rm)) #define T2_CMN(rn,rm) torrr(THUMB2_CMN,rn,_R15,rm) -#define _CC_CMNI(cc,rn,im) corri(cc,ARM_CMN|ARM_I,rn,_R15,im) +#define _CC_CMNI(cc,rn,im) corri(cc,ARM_CMN|ARM_I,rn,0,im) #define _CMNI(rn,im) _CC_CMNI(ARM_CC_AL,rn,im) #define T2_CMNI(rn,im) torri(THUMB2_CMNI,rn,_R15,im) #define _CC_TST(cc,rn,rm) corrr(cc,ARM_TST,rn,r0,rm)