mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 524587 - remove softfloat guards, restore CodeAlloc ref-ptr, r=gal.
--HG-- extra : rebase_source : b7bca87acdd97bf8f0598c6069f7094a16488eb8
This commit is contained in:
parent
7a8d396e51
commit
a87bf773fa
@ -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));
|
||||
|
@ -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
|
||||
|
@ -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);
|
||||
|
||||
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user