mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Fix nomethodjit build (bug 723767, r=cdleary).
--HG-- extra : rebase_source : 98b13d09160b3cafac2088b3cec832c847395dbd
This commit is contained in:
parent
c45339fb26
commit
bc7bf36b01
@ -1095,7 +1095,7 @@ MarkRangeConservativelyAndSkipIon(JSTracer *trc, JSRuntime *rt, const uintptr_t
|
||||
{
|
||||
const uintptr_t *i = begin;
|
||||
|
||||
#if JS_STACK_GROWTH_DIRECTION < 0
|
||||
#if JS_STACK_GROWTH_DIRECTION < 0 && defined(JS_ION)
|
||||
// Walk only regions in between Ion activations. Note that non-volatile
|
||||
// registers are spilled to the stack before the entry Ion frame, ensuring
|
||||
// that the conservative scanner will still see them.
|
||||
|
@ -2226,11 +2226,9 @@ TypeCompartment::nukeTypes(JSContext *cx)
|
||||
void
|
||||
TypeCompartment::addPendingRecompile(JSContext *cx, const RecompileInfo &info)
|
||||
{
|
||||
bool hasJITCode = false;
|
||||
|
||||
#if defined(JS_METHODJIT)
|
||||
mjit::JITScript *jit = info.script->getJIT(info.constructing);
|
||||
hasJITCode |= jit && jit->chunkDescriptor(info.chunkIndex).chunk;
|
||||
bool hasJITCode = jit && jit->chunkDescriptor(info.chunkIndex).chunk;
|
||||
|
||||
# if defined(JS_ION)
|
||||
hasJITCode |= !!info.script->hasIonScript();
|
||||
|
@ -599,12 +599,14 @@ TypeScript::MonitorUnknown(JSContext *cx, JSScript *script, jsbytecode *pc)
|
||||
/* static */ inline void
|
||||
TypeScript::GetPcScript(JSContext *cx, JSScript **script, jsbytecode **pc)
|
||||
{
|
||||
#ifdef JS_ION
|
||||
if (cx->fp()->runningInIon()) {
|
||||
ion::GetPcScript(cx, script, pc);
|
||||
} else {
|
||||
*script = cx->fp()->script();
|
||||
*pc = cx->regs().pc;
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
*script = cx->fp()->script();
|
||||
*pc = cx->regs().pc;
|
||||
}
|
||||
|
||||
/* static */ inline void
|
||||
|
@ -53,10 +53,8 @@
|
||||
|
||||
#include "gc/Barrier.h"
|
||||
|
||||
#ifdef JS_ION
|
||||
namespace js { namespace ion { struct IonScript; }}
|
||||
# define ION_DISABLED_SCRIPT ((js::ion::IonScript *)0x1)
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Type of try note associated with each catch or finally block, and also with
|
||||
@ -339,13 +337,11 @@ namespace js { namespace mjit { struct JITScript; } }
|
||||
namespace js { namespace ion { struct IonScript; } }
|
||||
#endif
|
||||
|
||||
#ifdef JS_ION
|
||||
namespace js {
|
||||
namespace ion {
|
||||
struct IonScript;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
namespace js {
|
||||
|
||||
@ -542,15 +538,11 @@ struct JSScript : public js::gc::Cell {
|
||||
/* Execution and profiling information for JIT code in the script. */
|
||||
js::ScriptOpcodeCounts pcCounters;
|
||||
|
||||
#ifdef JS_ION
|
||||
js::ion::IonScript *ion; /* Information attached by Ion */
|
||||
|
||||
bool hasIonScript() const {
|
||||
return ion && ion != ION_DISABLED_SCRIPT;
|
||||
}
|
||||
#elif JS_BITS_PER_WORD == 32
|
||||
void *padding_;
|
||||
#endif
|
||||
|
||||
private:
|
||||
js::DebugScript *debug;
|
||||
|
Loading…
Reference in New Issue
Block a user