Lines Matching refs:InstructionSelector
31 explicit Arm64OperandGenerator(InstructionSelector* selector) in Arm64OperandGenerator()
152 void VisitRR(InstructionSelector* selector, ArchOpcode opcode, Node* node) { in VisitRR()
159 void VisitRRR(InstructionSelector* selector, ArchOpcode opcode, Node* node) { in VisitRRR()
166 void VisitRRI(InstructionSelector* selector, ArchOpcode opcode, Node* node) { in VisitRRI()
173 void VisitRRO(InstructionSelector* selector, ArchOpcode opcode, Node* node, in VisitRRO()
181 void VisitRRIR(InstructionSelector* selector, ArchOpcode opcode, Node* node) { in VisitRRIR()
190 ExtendingLoadMatcher(Node* node, InstructionSelector* selector) in ExtendingLoadMatcher()
212 InstructionSelector* selector_;
238 bool TryMatchExtendingLoad(InstructionSelector* selector, Node* node) { in TryMatchExtendingLoad()
243 bool TryEmitExtendingLoad(InstructionSelector* selector, Node* node) { in TryEmitExtendingLoad()
261 bool TryMatchAnyShift(InstructionSelector* selector, Node* node, in TryMatchAnyShift()
298 bool TryMatchAnyExtend(Arm64OperandGenerator* g, InstructionSelector* selector, in TryMatchAnyExtend()
336 InstructionSelector* selector, in TryMatchLoadStoreShift()
425 void VisitBinop(InstructionSelector* selector, Node* node, in VisitBinop()
496 void VisitBinop(InstructionSelector* selector, Node* node, ArchOpcode opcode, in VisitBinop()
504 void VisitAddSub(InstructionSelector* selector, Node* node, ArchOpcode opcode, in VisitAddSub()
536 void InstructionSelector::VisitStackSlot(Node* node) { in VisitStackSlot()
545 void InstructionSelector::VisitDebugAbort(Node* node) { in VisitDebugAbort()
550 void EmitLoad(InstructionSelector* selector, Node* node, InstructionCode opcode, in EmitLoad()
603 void InstructionSelector::VisitLoad(Node* node) { in VisitLoad()
653 void InstructionSelector::VisitPoisonedLoad(Node* node) { VisitLoad(node); } in VisitPoisonedLoad()
655 void InstructionSelector::VisitProtectedLoad(Node* node) { in VisitProtectedLoad()
660 void InstructionSelector::VisitStore(Node* node) { in VisitStore()
773 void InstructionSelector::VisitProtectedStore(Node* node) { in VisitProtectedStore()
779 void InstructionSelector::VisitUnalignedLoad(Node* node) { UNREACHABLE(); } in VisitUnalignedLoad()
782 void InstructionSelector::VisitUnalignedStore(Node* node) { UNREACHABLE(); } in VisitUnalignedStore()
785 static void VisitLogical(InstructionSelector* selector, Node* node, Matcher* m, in VisitLogical()
852 void InstructionSelector::VisitWord32And(Node* node) { in VisitWord32And()
893 void InstructionSelector::VisitWord64And(Node* node) { in VisitWord64And()
934 void InstructionSelector::VisitWord32Or(Node* node) { in VisitWord32Or()
942 void InstructionSelector::VisitWord64Or(Node* node) { in VisitWord64Or()
950 void InstructionSelector::VisitWord32Xor(Node* node) { in VisitWord32Xor()
958 void InstructionSelector::VisitWord64Xor(Node* node) { in VisitWord64Xor()
966 void InstructionSelector::VisitWord32Shl(Node* node) { in VisitWord32Shl()
1003 void InstructionSelector::VisitWord64Shl(Node* node) { in VisitWord64Shl()
1021 bool TryEmitBitfieldExtract32(InstructionSelector* selector, Node* node) { in TryEmitBitfieldExtract32()
1049 void InstructionSelector::VisitWord32Shr(Node* node) { in VisitWord32Shr()
1093 void InstructionSelector::VisitWord64Shr(Node* node) { in VisitWord64Shr()
1119 void InstructionSelector::VisitWord32Sar(Node* node) { in VisitWord32Sar()
1172 void InstructionSelector::VisitWord64Sar(Node* node) { in VisitWord64Sar()
1178 void InstructionSelector::VisitWord32Ror(Node* node) { in VisitWord32Ror()
1183 void InstructionSelector::VisitWord64Ror(Node* node) { in VisitWord64Ror()
1258 void InstructionSelector::Visit##Name(Node* node) { \
1266 void InstructionSelector::Visit##Name(Node* node) { \
1273 void InstructionSelector::VisitWord32Ctz(Node* node) { UNREACHABLE(); } in RRR_OP_LIST()
1275 void InstructionSelector::VisitWord64Ctz(Node* node) { UNREACHABLE(); } in VisitWord64Ctz()
1277 void InstructionSelector::VisitWord32Popcnt(Node* node) { UNREACHABLE(); } in VisitWord32Popcnt()
1279 void InstructionSelector::VisitWord64Popcnt(Node* node) { UNREACHABLE(); } in VisitWord64Popcnt()
1281 void InstructionSelector::VisitSpeculationFence(Node* node) { in VisitSpeculationFence()
1286 void InstructionSelector::VisitInt32Add(Node* node) { in VisitInt32Add()
1317 void InstructionSelector::VisitInt64Add(Node* node) { in VisitInt64Add()
1348 void InstructionSelector::VisitInt32Sub(Node* node) { in VisitInt32Sub()
1369 void InstructionSelector::VisitInt64Sub(Node* node) { in VisitInt64Sub()
1391 void EmitInt32MulWithOverflow(InstructionSelector* selector, Node* node, in EmitInt32MulWithOverflow()
1407 void InstructionSelector::VisitInt32Mul(Node* node) { in VisitInt32Mul()
1449 void InstructionSelector::VisitInt64Mul(Node* node) { in VisitInt64Mul()
1489 void InstructionSelector::VisitInt32MulHigh(Node* node) { in VisitInt32MulHigh()
1498 void InstructionSelector::VisitUint32MulHigh(Node* node) { in VisitUint32MulHigh()
1507 void InstructionSelector::VisitTryTruncateFloat32ToInt64(Node* node) { in VisitTryTruncateFloat32ToInt64()
1524 void InstructionSelector::VisitTryTruncateFloat64ToInt64(Node* node) { in VisitTryTruncateFloat64ToInt64()
1541 void InstructionSelector::VisitTryTruncateFloat32ToUint64(Node* node) { in VisitTryTruncateFloat32ToUint64()
1558 void InstructionSelector::VisitTryTruncateFloat64ToUint64(Node* node) { in VisitTryTruncateFloat64ToUint64()
1575 void InstructionSelector::VisitChangeInt32ToInt64(Node* node) { in VisitChangeInt32ToInt64()
1608 void InstructionSelector::VisitChangeUint32ToUint64(Node* node) { in VisitChangeUint32ToUint64()
1662 void InstructionSelector::VisitTruncateInt64ToInt32(Node* node) { in VisitTruncateInt64ToInt32()
1670 void InstructionSelector::VisitFloat64Mod(Node* node) { in VisitFloat64Mod()
1677 void InstructionSelector::VisitFloat64Ieee754Binop(Node* node, in VisitFloat64Ieee754Binop()
1685 void InstructionSelector::VisitFloat64Ieee754Unop(Node* node, in VisitFloat64Ieee754Unop()
1692 void InstructionSelector::EmitPrepareArguments( in EmitPrepareArguments()
1733 void InstructionSelector::EmitPrepareResults( in EmitPrepareResults()
1757 bool InstructionSelector::IsTailCallAddressImmediate() { return false; } in IsTailCallAddressImmediate()
1759 int InstructionSelector::GetTempsCountForTailCallFromJSFunction() { return 3; } in GetTempsCountForTailCallFromJSFunction()
1764 void VisitCompare(InstructionSelector* selector, InstructionCode opcode, in VisitCompare()
1772 void VisitWordCompare(InstructionSelector* selector, Node* node, in VisitWordCompare()
1849 void MaybeReplaceCmpZeroWithFlagSettingBinop(InstructionSelector* selector, in MaybeReplaceCmpZeroWithFlagSettingBinop()
1922 void EmitBranchOrDeoptimize(InstructionSelector* selector, in EmitBranchOrDeoptimize()
1931 bool TryEmitCbzOrTbz(InstructionSelector* selector, Node* node, uint32_t value, in TryEmitCbzOrTbz()
2000 void VisitWord32Compare(InstructionSelector* selector, Node* node, in VisitWord32Compare()
2064 void VisitWordTest(InstructionSelector* selector, Node* node, in VisitWordTest()
2072 void VisitWord32Test(InstructionSelector* selector, Node* node, in VisitWord32Test()
2078 void VisitWord64Test(InstructionSelector* selector, Node* node, in VisitWord64Test()
2121 void VisitFloat32Compare(InstructionSelector* selector, Node* node, in VisitFloat32Compare()
2140 void VisitFloat64Compare(InstructionSelector* selector, Node* node, in VisitFloat64Compare()
2157 void VisitAtomicExchange(InstructionSelector* selector, Node* node, in VisitAtomicExchange()
2172 void VisitAtomicCompareExchange(InstructionSelector* selector, Node* node, in VisitAtomicCompareExchange()
2189 void VisitAtomicLoad(InstructionSelector* selector, Node* node, in VisitAtomicLoad()
2202 void VisitAtomicStore(InstructionSelector* selector, Node* node, in VisitAtomicStore()
2216 void VisitAtomicBinop(InstructionSelector* selector, Node* node, in VisitAtomicBinop()
2235 void InstructionSelector::VisitWordCompareZero(Node* user, Node* value, in VisitWordCompareZero()
2440 void InstructionSelector::VisitSwitch(Node* node, const SwitchInfo& sw) { in VisitSwitch()
2471 void InstructionSelector::VisitWord32Equal(Node* const node) { in VisitWord32Equal()
2510 void InstructionSelector::VisitInt32LessThan(Node* node) { in VisitInt32LessThan()
2516 void InstructionSelector::VisitInt32LessThanOrEqual(Node* node) { in VisitInt32LessThanOrEqual()
2523 void InstructionSelector::VisitUint32LessThan(Node* node) { in VisitUint32LessThan()
2529 void InstructionSelector::VisitUint32LessThanOrEqual(Node* node) { in VisitUint32LessThanOrEqual()
2536 void InstructionSelector::VisitWord64Equal(Node* const node) { in VisitWord64Equal()
2557 void InstructionSelector::VisitInt32AddWithOverflow(Node* node) { in VisitInt32AddWithOverflow()
2568 void InstructionSelector::VisitInt32SubWithOverflow(Node* node) { in VisitInt32SubWithOverflow()
2578 void InstructionSelector::VisitInt32MulWithOverflow(Node* node) { in VisitInt32MulWithOverflow()
2591 void InstructionSelector::VisitInt64AddWithOverflow(Node* node) { in VisitInt64AddWithOverflow()
2602 void InstructionSelector::VisitInt64SubWithOverflow(Node* node) { in VisitInt64SubWithOverflow()
2613 void InstructionSelector::VisitInt64LessThan(Node* node) { in VisitInt64LessThan()
2619 void InstructionSelector::VisitInt64LessThanOrEqual(Node* node) { in VisitInt64LessThanOrEqual()
2626 void InstructionSelector::VisitUint64LessThan(Node* node) { in VisitUint64LessThan()
2632 void InstructionSelector::VisitUint64LessThanOrEqual(Node* node) { in VisitUint64LessThanOrEqual()
2639 void InstructionSelector::VisitFloat32Equal(Node* node) { in VisitFloat32Equal()
2645 void InstructionSelector::VisitFloat32LessThan(Node* node) { in VisitFloat32LessThan()
2651 void InstructionSelector::VisitFloat32LessThanOrEqual(Node* node) { in VisitFloat32LessThanOrEqual()
2658 void InstructionSelector::VisitFloat64Equal(Node* node) { in VisitFloat64Equal()
2664 void InstructionSelector::VisitFloat64LessThan(Node* node) { in VisitFloat64LessThan()
2670 void InstructionSelector::VisitFloat64LessThanOrEqual(Node* node) { in VisitFloat64LessThanOrEqual()
2676 void InstructionSelector::VisitFloat64InsertLowWord32(Node* node) { in VisitFloat64InsertLowWord32()
2694 void InstructionSelector::VisitFloat64InsertHighWord32(Node* node) { in VisitFloat64InsertHighWord32()
2710 void InstructionSelector::VisitWord32AtomicLoad(Node* node) { in VisitWord32AtomicLoad()
2732 void InstructionSelector::VisitWord64AtomicLoad(Node* node) { in VisitWord64AtomicLoad()
2755 void InstructionSelector::VisitWord32AtomicStore(Node* node) { in VisitWord32AtomicStore()
2775 void InstructionSelector::VisitWord64AtomicStore(Node* node) { in VisitWord64AtomicStore()
2798 void InstructionSelector::VisitWord32AtomicExchange(Node* node) { in VisitWord32AtomicExchange()
2818 void InstructionSelector::VisitWord64AtomicExchange(Node* node) { in VisitWord64AtomicExchange()
2836 void InstructionSelector::VisitWord32AtomicCompareExchange(Node* node) { in VisitWord32AtomicCompareExchange()
2856 void InstructionSelector::VisitWord64AtomicCompareExchange(Node* node) { in VisitWord64AtomicCompareExchange()
2874 void InstructionSelector::VisitWord32AtomicBinaryOperation( in VisitWord32AtomicBinaryOperation()
2897 void InstructionSelector::VisitWord32Atomic##op(Node* node) { \
2910 void InstructionSelector::VisitWord64AtomicBinaryOperation( in VISIT_ATOMIC_BINOP()
2931 void InstructionSelector::VisitWord64Atomic##op(Node* node) { \
2943 void InstructionSelector::VisitInt32AbsWithOverflow(Node* node) { in VISIT_ATOMIC_BINOP()
2947 void InstructionSelector::VisitInt64AbsWithOverflow(Node* node) { in VisitInt64AbsWithOverflow()
3064 void InstructionSelector::VisitS128Zero(Node* node) { in VisitS128Zero()
3070 void InstructionSelector::Visit##Type##Splat(Node* node) { \
3077 void InstructionSelector::Visit##Type##ExtractLane(Node* node) { \
3084 void InstructionSelector::Visit##Type##ReplaceLane(Node* node) { \ in SIMD_TYPE_LIST()
3092 void InstructionSelector::Visit##Name(Node* node) { \
3100 void InstructionSelector::Visit##Name(Node* node) { \
3108 void InstructionSelector::Visit##Name(Node* node) { \
3115 void InstructionSelector::VisitS128Select(Node* node) {
3213 void InstructionSelector::VisitS8x16Shuffle(Node* node) { in VisitS8x16Shuffle()
3269 void InstructionSelector::VisitSignExtendWord8ToInt32(Node* node) { in VisitSignExtendWord8ToInt32()
3273 void InstructionSelector::VisitSignExtendWord16ToInt32(Node* node) { in VisitSignExtendWord16ToInt32()
3277 void InstructionSelector::VisitSignExtendWord8ToInt64(Node* node) { in VisitSignExtendWord8ToInt64()
3281 void InstructionSelector::VisitSignExtendWord16ToInt64(Node* node) { in VisitSignExtendWord16ToInt64()
3285 void InstructionSelector::VisitSignExtendWord32ToInt64(Node* node) { in VisitSignExtendWord32ToInt64()
3291 InstructionSelector::SupportedMachineOperatorFlags() { in SupportedMachineOperatorFlags()
3311 InstructionSelector::AlignmentRequirements() { in AlignmentRequirements()