mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 931732 - Remove #if 0 code from jit/arm/*. r=jandem
This commit is contained in:
parent
91aa8c050a
commit
776f19badf
@ -1807,11 +1807,6 @@ Assembler::placeConstantPoolBarrier(int offset)
|
||||
// this is still an active path, however, we do not hit it in the test
|
||||
// suite at all.
|
||||
MOZ_ASSUME_UNREACHABLE("ARMAssembler holdover");
|
||||
#if 0
|
||||
offset = (offset - sizeof(ARMWord)) >> 2;
|
||||
ASSERT((offset <= BOFFSET_MAX && offset >= BOFFSET_MIN));
|
||||
return AL | B | (offset & BRANCH_MASK);
|
||||
#endif
|
||||
}
|
||||
|
||||
// Control flow stuff:
|
||||
|
@ -13,54 +13,6 @@
|
||||
using namespace js;
|
||||
using namespace js::jit;
|
||||
|
||||
#if 0
|
||||
// no clue what these asserts should be.
|
||||
JS_STATIC_ASSERT(sizeof(BailoutStack) ==
|
||||
sizeof(uintptr_t) +
|
||||
sizeof(double) * 8 +
|
||||
sizeof(uintptr_t) * 8 +
|
||||
sizeof(uintptr_t));
|
||||
|
||||
JS_STATIC_ASSERT(sizeof(ExtendedBailoutStack) ==
|
||||
sizeof(BailoutStack) +
|
||||
sizeof(uintptr_t));
|
||||
|
||||
#endif
|
||||
#if 0
|
||||
BailoutEnvironment::BailoutEnvironment(JitCompartment *ion, void **sp)
|
||||
: sp_(sp)
|
||||
{
|
||||
bailout_ = reinterpret_cast<ExtendedBailoutStack *>(sp);
|
||||
|
||||
if (bailout_->frameClass() != FrameSizeClass::None()) {
|
||||
frameSize_ = bailout_->frameSize();
|
||||
frame_ = &sp_[sizeof(BailoutStack) / sizeof(void *)];
|
||||
|
||||
// Compute the bailout ID.
|
||||
JitCode *code = ion->getBailoutTable(bailout_->frameClass());
|
||||
uintptr_t tableOffset = bailout_->tableOffset();
|
||||
uintptr_t tableStart = reinterpret_cast<uintptr_t>(code->raw());
|
||||
|
||||
JS_ASSERT(tableOffset >= tableStart &&
|
||||
tableOffset < tableStart + code->instructionsSize());
|
||||
JS_ASSERT((tableOffset - tableStart) % BAILOUT_TABLE_ENTRY_SIZE == 0);
|
||||
|
||||
bailoutId_ = ((tableOffset - tableStart) / BAILOUT_TABLE_ENTRY_SIZE) - 1;
|
||||
JS_ASSERT(bailoutId_ < BAILOUT_TABLE_SIZE);
|
||||
} else {
|
||||
frameSize_ = bailout_->frameSize();
|
||||
frame_ = &sp_[sizeof(ExtendedBailoutStack) / sizeof(void *)];
|
||||
}
|
||||
}
|
||||
|
||||
IonFramePrefix *
|
||||
BailoutEnvironment::top() const
|
||||
{
|
||||
return (IonFramePrefix *)&frame_[frameSize_ / sizeof(void *)];
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
namespace js {
|
||||
namespace jit {
|
||||
|
||||
|
@ -242,23 +242,8 @@ CodeGeneratorARM::bailoutFrom(Label *label, LSnapshot *snapshot)
|
||||
// isn't properly aligned to the static frame size.
|
||||
JS_ASSERT_IF(frameClass_ != FrameSizeClass::None(),
|
||||
frameClass_.frameSize() == masm.framePushed());
|
||||
// This involves retargeting a label, which I've declared is always going
|
||||
// to be a pc-relative branch to an absolute address!
|
||||
// With no assurance that this is going to be a local branch, I am wary to
|
||||
// implement this. Moreover, If it isn't a local branch, it will be large
|
||||
// and possibly slow. I believe that the correct way to handle this is to
|
||||
// subclass label into a fatlabel, where we generate enough room for a load
|
||||
// before the branch
|
||||
#if 0
|
||||
if (assignBailoutId(snapshot)) {
|
||||
uint8_t *code = deoptTable_->raw() + snapshot->bailoutId() * BAILOUT_TABLE_ENTRY_SIZE;
|
||||
masm.retarget(label, code, Relocation::HARDCODED);
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
// We could not use a jump table, either because all bailout IDs were
|
||||
// reserved, or a jump table is not optimal for this frame size or
|
||||
// platform. Whatever, we will generate a lazy bailout.
|
||||
|
||||
// On ARM we don't use a bailout table.
|
||||
OutOfLineBailout *ool = new(alloc()) OutOfLineBailout(snapshot, masm.framePushed());
|
||||
if (!addOutOfLineCode(ool)) {
|
||||
return false;
|
||||
@ -1661,14 +1646,6 @@ CodeGeneratorARM::visitNotD(LNotD *ins)
|
||||
masm.ma_mov(Imm32(0), dest);
|
||||
masm.ma_mov(Imm32(1), dest, NoSetCond, Assembler::Equal);
|
||||
masm.ma_mov(Imm32(1), dest, NoSetCond, Assembler::Overflow);
|
||||
#if 0
|
||||
masm.as_vmrs(ToRegister(dest));
|
||||
// Mask out just the two bits we care about. If neither bit is set,
|
||||
// the dest is already zero
|
||||
masm.ma_and(Imm32(0x50000000), dest, dest, Assembler::SetCond);
|
||||
// If it is non-zero, then force it to be 1.
|
||||
masm.ma_mov(Imm32(1), dest, NoSetCond, Assembler::NotEqual);
|
||||
#endif
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@ -1698,14 +1675,6 @@ CodeGeneratorARM::visitNotF(LNotF *ins)
|
||||
masm.ma_mov(Imm32(0), dest);
|
||||
masm.ma_mov(Imm32(1), dest, NoSetCond, Assembler::Equal);
|
||||
masm.ma_mov(Imm32(1), dest, NoSetCond, Assembler::Overflow);
|
||||
#if 0
|
||||
masm.as_vmrs(ToRegister(dest));
|
||||
// Mask out just the two bits we care about. If neither bit is set,
|
||||
// the dest is already zero
|
||||
masm.ma_and(Imm32(0x50000000), dest, dest, Assembler::SetCond);
|
||||
// If it is non-zero, then force it to be 1.
|
||||
masm.ma_mov(Imm32(1), dest, NoSetCond, Assembler::NotEqual);
|
||||
#endif
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@ -148,18 +148,6 @@ JitRuntime::generateEnterJIT(JSContext *cx, EnterJitType type)
|
||||
masm.loadPtr(slot_vp, r10);
|
||||
masm.unboxInt32(Address(r10, 0), r10);
|
||||
|
||||
#if 0
|
||||
// This is in case we want to go back to using frames that
|
||||
// aren't 8 byte alinged
|
||||
// there are r1 2-word arguments to the js code
|
||||
// we want 2 word alignment, so this shouldn't matter.
|
||||
// After the arguments have been pushed, we want to push an additional 3 words of
|
||||
// data, so in all, we want to decrease sp by 4 if it is currently aligned to
|
||||
// 8, and not touch it otherwise
|
||||
aasm->as_sub(sp, sp, Imm8(4));
|
||||
aasm->as_orr(sp, sp, Imm8(4));
|
||||
#endif
|
||||
|
||||
// Subtract off the size of the arguments from the stack pointer, store elsewhere
|
||||
aasm->as_sub(r4, sp, O2RegImmShift(r1, LSL, 3)); //r4 = sp - argc*8
|
||||
// Get the final position of the stack pointer into the stack pointer
|
||||
|
Loading…
Reference in New Issue
Block a user