diff --git a/js/src/nanojit/Assembler.cpp b/js/src/nanojit/Assembler.cpp index 2c3d3319f05..0a3a4319bb8 100644 --- a/js/src/nanojit/Assembler.cpp +++ b/js/src/nanojit/Assembler.cpp @@ -1038,7 +1038,6 @@ namespace nanojit asm_arith(ins); break; } -#ifndef NJ_SOFTFLOAT case LIR_fneg: { countlir_fpu(); @@ -1073,7 +1072,6 @@ namespace nanojit asm_promote(ins); break; } -#endif // NJ_SOFTFLOAT case LIR_sti: { countlir_st(); @@ -1220,7 +1218,6 @@ namespace nanojit break; } -#ifndef NJ_SOFTFLOAT case LIR_feq: case LIR_fle: case LIR_flt: @@ -1231,7 +1228,6 @@ namespace nanojit asm_fcond(ins); break; } -#endif case LIR_eq: case LIR_ov: case LIR_le: @@ -1259,9 +1255,7 @@ namespace nanojit break; } - #ifndef NJ_SOFTFLOAT case LIR_fcall: - #endif #ifdef NANOJIT_64BIT case LIR_qcall: #endif @@ -1269,14 +1263,12 @@ namespace nanojit { countlir_call(); Register rr = UnknownReg; -#ifndef NJ_SOFTFLOAT - if (op == LIR_fcall) + if (ARM_VFP && op == LIR_fcall) { // fcall rr = asm_prep_fcall(getresv(ins), ins); } else -#endif { rr = retRegs[0]; prepResultReg(ins, rmask(rr)); diff --git a/js/src/nanojit/CodeAlloc.cpp b/js/src/nanojit/CodeAlloc.cpp index b01400c4ae3..d3780cc9cd6 100644 --- a/js/src/nanojit/CodeAlloc.cpp +++ b/js/src/nanojit/CodeAlloc.cpp @@ -244,7 +244,7 @@ namespace nanojit #if defined NANOJIT_ARM && defined UNDER_CE // Use a single flush for the whole CodeList, when we have no // finer-granularity flush support, as on WinCE. - void CodeAlloc::flushICache(CodeList*) { + void CodeAlloc::flushICache(CodeList* &/*blocks*/) { FlushInstructionCache(GetCurrentProcess(), NULL, NULL); } #else diff --git a/js/src/nanojit/LIR.cpp b/js/src/nanojit/LIR.cpp index f572f065471..d568df74e46 100644 --- a/js/src/nanojit/LIR.cpp +++ b/js/src/nanojit/LIR.cpp @@ -971,10 +971,8 @@ namespace nanojit ArgSize sizes[MAXARGS]; int32_t argc = ci->get_sizes(sizes); -#ifdef NJ_SOFTFLOAT if (!ARM_VFP && (op == LIR_fcall || op == LIR_qcall)) op = LIR_callh; -#endif NanoAssert(argc <= (int)MAXARGS); diff --git a/js/src/nanojit/avmplus.h b/js/src/nanojit/avmplus.h index 831352aae0b..0f5fc9db469 100644 --- a/js/src/nanojit/avmplus.h +++ b/js/src/nanojit/avmplus.h @@ -39,10 +39,12 @@ #include "VMPI.h" #ifdef AVMPLUS_ARM -#define ARM_ARCH config.arch -#define ARM_VFP config.vfp -#define ARM_THUMB2 config.thumb2 - +#define ARM_ARCH AvmCore::config.arch +#define ARM_VFP AvmCore::config.vfp +#define ARM_THUMB2 AvmCore::config.thumb2 +#else +#define ARM_VFP 1 +#define ARM_THUMB2 1 #endif #if !defined(AVMPLUS_LITTLE_ENDIAN) && !defined(AVMPLUS_BIG_ENDIAN)