1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- 2 * vim: set ts=8 sts=4 et sw=4 tw=99: 3 * This Source Code Form is subject to the terms of the Mozilla Public 4 * License, v. 2.0. If a copy of the MPL was not distributed with this 5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 6 7 #ifndef jit_none_CodeGenerator_none_h 8 #define jit_none_CodeGenerator_none_h 9 10 #include "jit/shared/CodeGenerator-shared.h" 11 12 namespace js { 13 namespace jit { 14 15 class CodeGeneratorNone : public CodeGeneratorShared 16 { 17 public: CodeGeneratorNone(MIRGenerator * gen,LIRGraph * graph,MacroAssembler * masm)18 CodeGeneratorNone(MIRGenerator* gen, LIRGraph* graph, MacroAssembler* masm) 19 : CodeGeneratorShared(gen, graph, masm) 20 { 21 MOZ_CRASH(); 22 } 23 toMoveOperand(LAllocation)24 MoveOperand toMoveOperand(LAllocation) const { MOZ_CRASH(); } 25 template <typename T1, typename T2> bailoutCmp32(Assembler::Condition,T1,T2,LSnapshot *)26 void bailoutCmp32(Assembler::Condition, T1, T2, LSnapshot*) { MOZ_CRASH(); } 27 template<typename T> bailoutTest32(Assembler::Condition,Register,T,LSnapshot *)28 void bailoutTest32(Assembler::Condition, Register, T, LSnapshot*) { MOZ_CRASH(); } 29 template <typename T1, typename T2> bailoutCmpPtr(Assembler::Condition,T1,T2,LSnapshot *)30 void bailoutCmpPtr(Assembler::Condition, T1, T2, LSnapshot*) { MOZ_CRASH(); } bailoutTestPtr(Assembler::Condition,Register,Register,LSnapshot *)31 void bailoutTestPtr(Assembler::Condition, Register, Register, LSnapshot*) { MOZ_CRASH(); } bailoutIfFalseBool(Register,LSnapshot *)32 void bailoutIfFalseBool(Register, LSnapshot*) { MOZ_CRASH(); } bailoutFrom(Label *,LSnapshot *)33 void bailoutFrom(Label*, LSnapshot*) { MOZ_CRASH(); } bailout(LSnapshot *)34 void bailout(LSnapshot*) { MOZ_CRASH(); } bailoutIf(Assembler::Condition,LSnapshot *)35 void bailoutIf(Assembler::Condition, LSnapshot*) { MOZ_CRASH(); } generateOutOfLineCode()36 bool generateOutOfLineCode() { MOZ_CRASH(); } testNullEmitBranch(Assembler::Condition,ValueOperand,MBasicBlock *,MBasicBlock *)37 void testNullEmitBranch(Assembler::Condition, ValueOperand, MBasicBlock*, MBasicBlock*) { 38 MOZ_CRASH(); 39 } testUndefinedEmitBranch(Assembler::Condition,ValueOperand,MBasicBlock *,MBasicBlock *)40 void testUndefinedEmitBranch(Assembler::Condition, ValueOperand, MBasicBlock*, MBasicBlock*) { 41 MOZ_CRASH(); 42 } testObjectEmitBranch(Assembler::Condition,ValueOperand,MBasicBlock *,MBasicBlock *)43 void testObjectEmitBranch(Assembler::Condition, ValueOperand, MBasicBlock*, MBasicBlock*) { 44 MOZ_CRASH(); 45 } testZeroEmitBranch(Assembler::Condition,Register,MBasicBlock *,MBasicBlock *)46 void testZeroEmitBranch(Assembler::Condition, Register, MBasicBlock*, MBasicBlock*) { 47 MOZ_CRASH(); 48 } emitTableSwitchDispatch(MTableSwitch *,Register,Register)49 void emitTableSwitchDispatch(MTableSwitch*, Register, Register) { MOZ_CRASH(); } ToValue(LInstruction *,size_t)50 ValueOperand ToValue(LInstruction*, size_t) { MOZ_CRASH(); } ToOutValue(LInstruction *)51 ValueOperand ToOutValue(LInstruction*) { MOZ_CRASH(); } ToTempValue(LInstruction *,size_t)52 ValueOperand ToTempValue(LInstruction*, size_t) { MOZ_CRASH(); } generateInvalidateEpilogue()53 void generateInvalidateEpilogue() { MOZ_CRASH(); } setReturnDoubleRegs(LiveRegisterSet * regs)54 void setReturnDoubleRegs(LiveRegisterSet* regs) { MOZ_CRASH(); } 55 }; 56 57 typedef CodeGeneratorNone CodeGeneratorSpecific; 58 59 } // namespace jit 60 } // namespace js 61 62 #endif /* jit_none_CodeGenerator_none_h */ 63