1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- 2 * vim: set ts=8 sts=2 et sw=2 tw=80: 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_Lowering_none_h 8 #define jit_none_Lowering_none_h 9 10 #include "jit/shared/Lowering-shared.h" 11 12 namespace js { 13 namespace jit { 14 15 class LIRGeneratorNone : public LIRGeneratorShared { 16 protected: LIRGeneratorNone(MIRGenerator * gen,MIRGraph & graph,LIRGraph & lirGraph)17 LIRGeneratorNone(MIRGenerator* gen, MIRGraph& graph, LIRGraph& lirGraph) 18 : LIRGeneratorShared(gen, graph, lirGraph) { 19 MOZ_CRASH(); 20 } 21 22 LBoxAllocation useBoxFixed(MDefinition*, Register, Register, 23 bool useAtStart = false) { 24 MOZ_CRASH(); 25 } 26 useByteOpRegister(MDefinition *)27 LAllocation useByteOpRegister(MDefinition*) { MOZ_CRASH(); } useByteOpRegisterAtStart(MDefinition *)28 LAllocation useByteOpRegisterAtStart(MDefinition*) { MOZ_CRASH(); } useByteOpRegisterOrNonDoubleConstant(MDefinition *)29 LAllocation useByteOpRegisterOrNonDoubleConstant(MDefinition*) { 30 MOZ_CRASH(); 31 } tempByteOpRegister()32 LDefinition tempByteOpRegister() { MOZ_CRASH(); } tempToUnbox()33 LDefinition tempToUnbox() { MOZ_CRASH(); } needTempForPostBarrier()34 bool needTempForPostBarrier() { MOZ_CRASH(); } lowerUntypedPhiInput(MPhi *,uint32_t,LBlock *,size_t)35 void lowerUntypedPhiInput(MPhi*, uint32_t, LBlock*, size_t) { MOZ_CRASH(); } lowerInt64PhiInput(MPhi *,uint32_t,LBlock *,size_t)36 void lowerInt64PhiInput(MPhi*, uint32_t, LBlock*, size_t) { MOZ_CRASH(); } defineInt64Phi(MPhi *,size_t)37 void defineInt64Phi(MPhi*, size_t) { MOZ_CRASH(); } lowerForShift(LInstructionHelper<1,2,0> *,MDefinition *,MDefinition *,MDefinition *)38 void lowerForShift(LInstructionHelper<1, 2, 0>*, MDefinition*, MDefinition*, 39 MDefinition*) { 40 MOZ_CRASH(); 41 } lowerUrshD(MUrsh *)42 void lowerUrshD(MUrsh*) { MOZ_CRASH(); } 43 template <typename T> 44 void lowerForALU(T, MDefinition*, MDefinition*, MDefinition* v = nullptr) { 45 MOZ_CRASH(); 46 } 47 template <typename T> 48 void lowerForFPU(T, MDefinition*, MDefinition*, MDefinition* v = nullptr) { 49 MOZ_CRASH(); 50 } 51 template <typename T> 52 void lowerForALUInt64(T, MDefinition*, MDefinition*, 53 MDefinition* v = nullptr) { 54 MOZ_CRASH(); 55 } 56 void lowerForMulInt64(LMulI64*, MMul*, MDefinition*, 57 MDefinition* v = nullptr) { 58 MOZ_CRASH(); 59 } 60 template <typename T> 61 void lowerForShiftInt64(T, MDefinition*, MDefinition*, 62 MDefinition* v = nullptr) { 63 MOZ_CRASH(); 64 } lowerForBitAndAndBranch(LBitAndAndBranch *,MInstruction *,MDefinition *,MDefinition *)65 void lowerForBitAndAndBranch(LBitAndAndBranch*, MInstruction*, MDefinition*, 66 MDefinition*) { 67 MOZ_CRASH(); 68 } 69 lowerConstantDouble(double,MInstruction *)70 void lowerConstantDouble(double, MInstruction*) { MOZ_CRASH(); } lowerConstantFloat32(float,MInstruction *)71 void lowerConstantFloat32(float, MInstruction*) { MOZ_CRASH(); } lowerTruncateDToInt32(MTruncateToInt32 *)72 void lowerTruncateDToInt32(MTruncateToInt32*) { MOZ_CRASH(); } lowerTruncateFToInt32(MTruncateToInt32 *)73 void lowerTruncateFToInt32(MTruncateToInt32*) { MOZ_CRASH(); } lowerDivI(MDiv *)74 void lowerDivI(MDiv*) { MOZ_CRASH(); } lowerModI(MMod *)75 void lowerModI(MMod*) { MOZ_CRASH(); } lowerDivI64(MDiv *)76 void lowerDivI64(MDiv*) { MOZ_CRASH(); } lowerModI64(MMod *)77 void lowerModI64(MMod*) { MOZ_CRASH(); } lowerMulI(MMul *,MDefinition *,MDefinition *)78 void lowerMulI(MMul*, MDefinition*, MDefinition*) { MOZ_CRASH(); } lowerUDiv(MDiv *)79 void lowerUDiv(MDiv*) { MOZ_CRASH(); } lowerUMod(MMod *)80 void lowerUMod(MMod*) { MOZ_CRASH(); } 81 newLTableSwitch(LAllocation,LDefinition,MTableSwitch *)82 LTableSwitch* newLTableSwitch(LAllocation, LDefinition, MTableSwitch*) { 83 MOZ_CRASH(); 84 } newLTableSwitchV(MTableSwitch *)85 LTableSwitchV* newLTableSwitchV(MTableSwitch*) { MOZ_CRASH(); } 86 }; 87 88 typedef LIRGeneratorNone LIRGeneratorSpecific; 89 90 } // namespace jit 91 } // namespace js 92 93 #endif /* jit_none_Lowering_none_h */ 94