Lowering-none.h (4541B)
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: 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 27 LAllocation useByteOpRegister(MDefinition*) { MOZ_CRASH(); } 28 LAllocation useByteOpRegisterAtStart(MDefinition*) { MOZ_CRASH(); } 29 LAllocation useByteOpRegisterOrNonDoubleConstant(MDefinition*) { 30 MOZ_CRASH(); 31 } 32 LDefinition tempByteOpRegister() { MOZ_CRASH(); } 33 LDefinition tempToUnbox() { MOZ_CRASH(); } 34 bool needTempForPostBarrier() { MOZ_CRASH(); } 35 void lowerUntypedPhiInput(MPhi*, uint32_t, LBlock*, size_t) { MOZ_CRASH(); } 36 void lowerInt64PhiInput(MPhi*, uint32_t, LBlock*, size_t) { MOZ_CRASH(); } 37 void defineInt64Phi(MPhi*, size_t) { MOZ_CRASH(); } 38 void lowerForShift(LInstructionHelper<1, 2, 0>*, MDefinition*, MDefinition*, 39 MDefinition*) { 40 MOZ_CRASH(); 41 } 42 void lowerUrshD(MUrsh*) { MOZ_CRASH(); } 43 void lowerPowOfTwoI(MPow*) { MOZ_CRASH(); } 44 template <typename T> 45 void lowerForALU(T, MDefinition*, MDefinition*, MDefinition* v = nullptr) { 46 MOZ_CRASH(); 47 } 48 template <typename T> 49 void lowerForFPU(T, MDefinition*, MDefinition*, MDefinition* v = nullptr) { 50 MOZ_CRASH(); 51 } 52 template <typename T> 53 void lowerForALUInt64(T, MDefinition*, MDefinition*, 54 MDefinition* v = nullptr) { 55 MOZ_CRASH(); 56 } 57 void lowerForMulInt64(LMulI64*, MMul*, MDefinition*, 58 MDefinition* v = nullptr) { 59 MOZ_CRASH(); 60 } 61 template <typename T> 62 void lowerForShiftInt64(T, MDefinition*, MDefinition*, 63 MDefinition* v = nullptr) { 64 MOZ_CRASH(); 65 } 66 67 void lowerConstantDouble(double, MInstruction*) { MOZ_CRASH(); } 68 void lowerConstantFloat32(float, MInstruction*) { MOZ_CRASH(); } 69 void lowerTruncateDToInt32(MTruncateToInt32*) { MOZ_CRASH(); } 70 void lowerTruncateFToInt32(MTruncateToInt32*) { MOZ_CRASH(); } 71 void lowerBuiltinInt64ToFloatingPoint(MBuiltinInt64ToFloatingPoint* ins) { 72 MOZ_CRASH(); 73 } 74 void lowerWasmBuiltinTruncateToInt64(MWasmBuiltinTruncateToInt64* ins) { 75 MOZ_CRASH(); 76 } 77 void lowerWasmBuiltinTruncateToInt32(MWasmBuiltinTruncateToInt32* ins) { 78 MOZ_CRASH(); 79 } 80 void lowerDivI(MDiv*) { MOZ_CRASH(); } 81 void lowerModI(MMod*) { MOZ_CRASH(); } 82 void lowerDivI64(MDiv*) { MOZ_CRASH(); } 83 void lowerWasmBuiltinDivI64(MWasmBuiltinDivI64* div) { MOZ_CRASH(); } 84 void lowerModI64(MMod*) { MOZ_CRASH(); } 85 void lowerWasmBuiltinModI64(MWasmBuiltinModI64* mod) { MOZ_CRASH(); } 86 void lowerMulI(MMul*, MDefinition*, MDefinition*) { MOZ_CRASH(); } 87 void lowerUDiv(MDiv*) { MOZ_CRASH(); } 88 void lowerUMod(MMod*) { MOZ_CRASH(); } 89 void lowerUDivI64(MDiv*) { MOZ_CRASH(); } 90 void lowerUModI64(MMod*) { MOZ_CRASH(); } 91 void lowerWasmSelectI(MWasmSelect* select) { MOZ_CRASH(); } 92 void lowerWasmSelectI64(MWasmSelect* select) { MOZ_CRASH(); } 93 void lowerWasmCompareAndSelect(MWasmSelect* ins, MDefinition* lhs, 94 MDefinition* rhs, MCompare::CompareType compTy, 95 JSOp jsop) { 96 MOZ_CRASH(); 97 } 98 bool canSpecializeWasmCompareAndSelect(MCompare::CompareType compTy, 99 MIRType insTy) { 100 MOZ_CRASH(); 101 } 102 103 void lowerBigIntPtrLsh(MBigIntPtrLsh*) { MOZ_CRASH(); } 104 void lowerBigIntPtrRsh(MBigIntPtrRsh*) { MOZ_CRASH(); } 105 void lowerBigIntPtrDiv(MBigIntPtrDiv*) { MOZ_CRASH(); } 106 void lowerBigIntPtrMod(MBigIntPtrMod*) { MOZ_CRASH(); } 107 108 void lowerAtomicLoad64(MLoadUnboxedScalar*) { MOZ_CRASH(); } 109 void lowerAtomicStore64(MStoreUnboxedScalar*) { MOZ_CRASH(); } 110 111 LTableSwitch* newLTableSwitch(LAllocation, LDefinition) { MOZ_CRASH(); } 112 LTableSwitchV* newLTableSwitchV(const LBoxAllocation&) { MOZ_CRASH(); } 113 }; 114 115 using LIRGeneratorSpecific = LIRGeneratorNone; 116 117 } // namespace jit 118 } // namespace js 119 120 #endif /* jit_none_Lowering_none_h */