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