• Home
  • Raw
  • Download

Lines Matching full:machine

17 #include "src/compiler/machine-operator.h"
64 MachineOperatorBuilder* machine() { return &machine_; } in machine() function
100 return AddNode(machine()->StackSlot(rep, alignment));
136 const Operator* op = machine()->Load(type); in Load()
144 const Operator* op = machine()->LoadImmutable(type); in LoadImmutable()
180 return AddNode(machine()->Store(StoreRepresentation(rep, write_barrier)), in Store()
217 if (machine()->UnalignedLoadSupported(rep)) { in UnalignedLoad()
218 return AddNode(machine()->Load(type), base, index); in UnalignedLoad()
220 return AddNode(machine()->UnalignedLoad(type), base, index); in UnalignedLoad()
230 if (machine()->UnalignedStoreSupported(rep)) { in UnalignedStore()
231 return AddNode(machine()->Store(StoreRepresentation( in UnalignedStore()
236 machine()->UnalignedStore(UnalignedStoreRepresentation(rep)), base, in UnalignedStore()
245 return AddNode(machine()->Word32AtomicLoad(rep), base, index); in AtomicLoad()
249 if (machine()->Is64()) { in AtomicLoad64()
251 // Int64(), which is fine because the machine instruction only cares in AtomicLoad64()
253 return AddNode(machine()->Word64AtomicLoad(rep), base, index); in AtomicLoad64()
255 return AddNode(machine()->Word32AtomicPairLoad(rep.order()), base, index); in AtomicLoad64()
269 return AddNode(machine()->Word32AtomicStore(params), base, index, value); in AtomicStore()
274 if (machine()->Is64()) { in AtomicStore64()
276 return AddNode(machine()->Word64AtomicStore(params), base, index, value); in AtomicStore64()
281 return AddNode(machine()->Word32AtomicPairStore(params.order()), base, in AtomicStore64()
289 return AddNode(machine()->Word32Atomic##name(type), base, index, value); \
293 if (machine()->Is64()) { \
296 /* implemented for Int64(), which is fine because the machine */ \
298 return AddNode(machine()->Word64Atomic##name(MachineType::Uint64()), \
301 return AddNode(machine()->Word32AtomicPair##name(), base, index, \
317 return AddNode(machine()->Word32AtomicCompareExchange(type), base, index, in ATOMIC_FUNCTION()
324 if (machine()->Is64()) { in AtomicCompareExchange64()
328 // implemented for Int64(), which is fine because the machine instruction in AtomicCompareExchange64()
331 machine()->Word64AtomicCompareExchange(MachineType::Uint64()), base, in AtomicCompareExchange64()
334 return AddNode(machine()->Word32AtomicPairCompareExchange(), base, index, in AtomicCompareExchange64()
341 return AddNode(machine()->WordAnd(), a, b); in WordAnd()
343 Node* WordOr(Node* a, Node* b) { return AddNode(machine()->WordOr(), a, b); } in WordOr()
345 return AddNode(machine()->WordXor(), a, b); in WordXor()
348 return AddNode(machine()->WordShl(), a, b); in WordShl()
351 return AddNode(machine()->WordShr(), a, b); in WordShr()
354 return AddNode(machine()->WordSar(), a, b); in WordSar()
357 return AddNode(machine()->WordSarShiftOutZeros(), a, b); in WordSarShiftOutZeros()
360 return AddNode(machine()->WordRor(), a, b); in WordRor()
363 return AddNode(machine()->WordEqual(), a, b); in WordEqual()
369 if (machine()->Is32()) { in WordNot()
377 return AddNode(machine()->Word32And(), a, b); in Word32And()
380 return AddNode(machine()->Word32Or(), a, b); in Word32Or()
383 return AddNode(machine()->Word32Xor(), a, b); in Word32Xor()
386 return AddNode(machine()->Word32Shl(), a, b); in Word32Shl()
389 return AddNode(machine()->Word32Shr(), a, b); in Word32Shr()
392 return AddNode(machine()->Word32Sar(), a, b); in Word32Sar()
395 return AddNode(machine()->Word32SarShiftOutZeros(), a, b); in Word32SarShiftOutZeros()
398 return AddNode(machine()->Word32Ror(), a, b); in Word32Ror()
400 Node* Word32Clz(Node* a) { return AddNode(machine()->Word32Clz(), a); } in Word32Clz()
402 return AddNode(machine()->Word32Equal(), a, b); in Word32Equal()
411 return AddNode(machine()->Word64And(), a, b); in Word64And()
414 return AddNode(machine()->Word64Or(), a, b); in Word64Or()
417 return AddNode(machine()->Word64Xor(), a, b); in Word64Xor()
420 return AddNode(machine()->Word64Shl(), a, b); in Word64Shl()
423 return AddNode(machine()->Word64Shr(), a, b); in Word64Shr()
426 return AddNode(machine()->Word64Sar(), a, b); in Word64Sar()
429 return AddNode(machine()->Word64Ror(), a, b); in Word64Ror()
431 Node* Word64Clz(Node* a) { return AddNode(machine()->Word64Clz(), a); } in Word64Clz()
433 return AddNode(machine()->Word64Equal(), a, b); in Word64Equal()
441 return AddNode(machine()->Int32Add(), a, b); in Int32Add()
444 return AddNode(machine()->Int32AddWithOverflow(), a, b); in Int32AddWithOverflow()
447 return AddNode(machine()->Int32Sub(), a, b); in Int32Sub()
450 return AddNode(machine()->Int32SubWithOverflow(), a, b); in Int32SubWithOverflow()
453 return AddNode(machine()->Int32Mul(), a, b); in Int32Mul()
456 return AddNode(machine()->Int32MulHigh(), a, b); in Int32MulHigh()
459 return AddNode(machine()->Int32MulWithOverflow(), a, b); in Int32MulWithOverflow()
462 return AddNode(machine()->Int32Div(), a, b); in Int32Div()
465 return AddNode(machine()->Int32Mod(), a, b); in Int32Mod()
468 return AddNode(machine()->Int32LessThan(), a, b); in Int32LessThan()
471 return AddNode(machine()->Int32LessThanOrEqual(), a, b); in Int32LessThanOrEqual()
474 return AddNode(machine()->Uint32Div(), a, b); in Uint32Div()
477 return AddNode(machine()->Uint32LessThan(), a, b); in Uint32LessThan()
480 return AddNode(machine()->Uint32LessThanOrEqual(), a, b); in Uint32LessThanOrEqual()
483 return AddNode(machine()->Uint32Mod(), a, b); in Uint32Mod()
486 return AddNode(machine()->Uint32MulHigh(), a, b); in Uint32MulHigh()
499 return AddNode(machine()->Int64Add(), a, b); in Int64Add()
502 return AddNode(machine()->Int64AddWithOverflow(), a, b); in Int64AddWithOverflow()
505 return AddNode(machine()->Int64Sub(), a, b); in Int64Sub()
508 return AddNode(machine()->Int64SubWithOverflow(), a, b); in Int64SubWithOverflow()
511 return AddNode(machine()->Int64Mul(), a, b); in Int64Mul()
514 return AddNode(machine()->Int64Div(), a, b); in Int64Div()
517 return AddNode(machine()->Int64Mod(), a, b); in Int64Mod()
521 return AddNode(machine()->Int64LessThan(), a, b); in Int64LessThan()
524 return AddNode(machine()->Int64LessThanOrEqual(), a, b); in Int64LessThanOrEqual()
527 return AddNode(machine()->Uint64LessThan(), a, b); in Uint64LessThan()
530 return AddNode(machine()->Uint64LessThanOrEqual(), a, b); in Uint64LessThanOrEqual()
541 return AddNode(machine()->Uint64Div(), a, b); in Uint64Div()
544 return AddNode(machine()->Uint64Mod(), a, b); in Uint64Mod()
547 return AddNode(machine()->Int32PairAdd(), a_low, a_high, b_low, b_high); in Int32PairAdd()
550 return AddNode(machine()->Int32PairSub(), a_low, a_high, b_low, b_high); in Int32PairSub()
553 return AddNode(machine()->Int32PairMul(), a_low, a_high, b_low, b_high); in Int32PairMul()
556 return AddNode(machine()->Word32PairShl(), low_word, high_word, shift); in Word32PairShl()
559 return AddNode(machine()->Word32PairShr(), low_word, high_word, shift); in Word32PairShr()
562 return AddNode(machine()->Word32PairSar(), low_word, high_word, shift); in Word32PairSar()
565 return AddNode(machine()->Word32Popcnt().op(), a); in Word32Popcnt()
568 return AddNode(machine()->Word64Popcnt().op(), a); in Word64Popcnt()
570 Node* Word32Ctz(Node* a) { return AddNode(machine()->Word32Ctz().op(), a); } in Word32Ctz()
571 Node* Word64Ctz(Node* a) { return AddNode(machine()->Word64Ctz().op(), a); } in Word64Ctz()
574 return AddNode(machine()->Word32Select().op(), condition, b, c); in Word32Select()
578 return AddNode(machine()->Word64Select().op(), condition, b, c); in Word64Select()
583 machine()->StackPointerGreaterThan(StackCheckKind::kCodeStubAssembler), in StackPointerGreaterThan()
622 return AddNode(machine()->Int32AbsWithOverflow().op(), a);
626 return AddNode(machine()->Int64AbsWithOverflow().op(), a); in Int64AbsWithOverflow()
635 return AddNode(machine()->Float32Add(), a, b); in Float32Add()
638 return AddNode(machine()->Float32Sub(), a, b); in Float32Sub()
641 return AddNode(machine()->Float32Mul(), a, b); in Float32Mul()
644 return AddNode(machine()->Float32Div(), a, b); in Float32Div()
646 Node* Float32Abs(Node* a) { return AddNode(machine()->Float32Abs(), a); } in Float32Abs()
647 Node* Float32Neg(Node* a) { return AddNode(machine()->Float32Neg(), a); } in Float32Neg()
648 Node* Float32Sqrt(Node* a) { return AddNode(machine()->Float32Sqrt(), a); } in Float32Sqrt()
650 return AddNode(machine()->Float32Equal(), a, b); in Float32Equal()
656 return AddNode(machine()->Float32LessThan(), a, b); in Float32LessThan()
659 return AddNode(machine()->Float32LessThanOrEqual(), a, b); in Float32LessThanOrEqual()
666 return AddNode(machine()->Float32Max(), a, b); in Float32Max()
669 return AddNode(machine()->Float32Min(), a, b); in Float32Min()
672 return AddNode(machine()->Float64Add(), a, b); in Float64Add()
675 return AddNode(machine()->Float64Sub(), a, b); in Float64Sub()
678 return AddNode(machine()->Float64Mul(), a, b); in Float64Mul()
681 return AddNode(machine()->Float64Div(), a, b); in Float64Div()
684 return AddNode(machine()->Float64Mod(), a, b); in Float64Mod()
687 return AddNode(machine()->Float64Max(), a, b); in Float64Max()
690 return AddNode(machine()->Float64Min(), a, b); in Float64Min()
692 Node* Float64Abs(Node* a) { return AddNode(machine()->Float64Abs(), a); } in Float64Abs()
693 Node* Float64Neg(Node* a) { return AddNode(machine()->Float64Neg(), a); } in Float64Neg()
694 Node* Float64Acos(Node* a) { return AddNode(machine()->Float64Acos(), a); } in Float64Acos()
695 Node* Float64Acosh(Node* a) { return AddNode(machine()->Float64Acosh(), a); } in Float64Acosh()
696 Node* Float64Asin(Node* a) { return AddNode(machine()->Float64Asin(), a); } in Float64Asin()
697 Node* Float64Asinh(Node* a) { return AddNode(machine()->Float64Asinh(), a); } in Float64Asinh()
698 Node* Float64Atan(Node* a) { return AddNode(machine()->Float64Atan(), a); } in Float64Atan()
699 Node* Float64Atanh(Node* a) { return AddNode(machine()->Float64Atanh(), a); } in Float64Atanh()
701 return AddNode(machine()->Float64Atan2(), a, b); in Float64Atan2()
703 Node* Float64Cbrt(Node* a) { return AddNode(machine()->Float64Cbrt(), a); } in Float64Cbrt()
704 Node* Float64Cos(Node* a) { return AddNode(machine()->Float64Cos(), a); } in Float64Cos()
705 Node* Float64Cosh(Node* a) { return AddNode(machine()->Float64Cosh(), a); } in Float64Cosh()
706 Node* Float64Exp(Node* a) { return AddNode(machine()->Float64Exp(), a); } in Float64Exp()
707 Node* Float64Expm1(Node* a) { return AddNode(machine()->Float64Expm1(), a); } in Float64Expm1()
708 Node* Float64Log(Node* a) { return AddNode(machine()->Float64Log(), a); } in Float64Log()
709 Node* Float64Log1p(Node* a) { return AddNode(machine()->Float64Log1p(), a); } in Float64Log1p()
710 Node* Float64Log10(Node* a) { return AddNode(machine()->Float64Log10(), a); } in Float64Log10()
711 Node* Float64Log2(Node* a) { return AddNode(machine()->Float64Log2(), a); } in Float64Log2()
713 return AddNode(machine()->Float64Pow(), a, b); in Float64Pow()
715 Node* Float64Sin(Node* a) { return AddNode(machine()->Float64Sin(), a); } in Float64Sin()
716 Node* Float64Sinh(Node* a) { return AddNode(machine()->Float64Sinh(), a); } in Float64Sinh()
717 Node* Float64Sqrt(Node* a) { return AddNode(machine()->Float64Sqrt(), a); } in Float64Sqrt()
718 Node* Float64Tan(Node* a) { return AddNode(machine()->Float64Tan(), a); } in Float64Tan()
719 Node* Float64Tanh(Node* a) { return AddNode(machine()->Float64Tanh(), a); } in Float64Tanh()
721 return AddNode(machine()->Float64Equal(), a, b); in Float64Equal()
727 return AddNode(machine()->Float64LessThan(), a, b); in Float64LessThan()
730 return AddNode(machine()->Float64LessThanOrEqual(), a, b); in Float64LessThanOrEqual()
737 return AddNode(machine()->Float32Select().op(), condition, b, c); in Float32Select()
740 return AddNode(machine()->Float64Select().op(), condition, b, c); in Float64Select()
745 return AddNode(machine()->BitcastTaggedToWord(), a); in BitcastTaggedToWord()
748 return AddNode(machine()->BitcastTaggedToWordForTagAndSmiBits(), a); in BitcastTaggedToWordForTagAndSmiBits()
751 return AddNode(machine()->BitcastMaybeObjectToWord(), a); in BitcastMaybeObjectToWord()
754 return AddNode(machine()->BitcastWordToTagged(), a); in BitcastWordToTagged()
757 return AddNode(machine()->BitcastWordToTaggedSigned(), a); in BitcastWordToTaggedSigned()
760 return AddNode(machine()->TruncateFloat64ToWord32(), a); in TruncateFloat64ToWord32()
763 return AddNode(machine()->ChangeFloat32ToFloat64(), a); in ChangeFloat32ToFloat64()
766 return AddNode(machine()->ChangeInt32ToFloat64(), a); in ChangeInt32ToFloat64()
769 return AddNode(machine()->ChangeInt64ToFloat64(), a); in ChangeInt64ToFloat64()
772 return AddNode(machine()->ChangeUint32ToFloat64(), a); in ChangeUint32ToFloat64()
775 return AddNode(machine()->ChangeFloat64ToInt32(), a); in ChangeFloat64ToInt32()
778 return AddNode(machine()->ChangeFloat64ToInt64(), a); in ChangeFloat64ToInt64()
781 return AddNode(machine()->ChangeFloat64ToUint32(), a); in ChangeFloat64ToUint32()
784 return AddNode(machine()->ChangeFloat64ToUint64(), a); in ChangeFloat64ToUint64()
787 return AddNode(machine()->TruncateFloat64ToUint32(), a); in TruncateFloat64ToUint32()
790 return AddNode(machine()->TruncateFloat32ToInt32(kind), a); in TruncateFloat32ToInt32()
793 return AddNode(machine()->TruncateFloat32ToUint32(kind), a); in TruncateFloat32ToUint32()
796 return AddNode(machine()->TryTruncateFloat32ToInt64(), a); in TryTruncateFloat32ToInt64()
799 return AddNode(machine()->TryTruncateFloat64ToInt64(), a); in TryTruncateFloat64ToInt64()
802 return AddNode(machine()->TryTruncateFloat32ToUint64(), a); in TryTruncateFloat32ToUint64()
805 return AddNode(machine()->TryTruncateFloat64ToUint64(), a); in TryTruncateFloat64ToUint64()
808 return AddNode(machine()->ChangeInt32ToInt64(), a); in ChangeInt32ToInt64()
811 return AddNode(machine()->ChangeUint32ToUint64(), a); in ChangeUint32ToUint64()
814 return AddNode(machine()->TruncateFloat64ToFloat32(), a); in TruncateFloat64ToFloat32()
817 return AddNode(machine()->TruncateInt64ToInt32(), a); in TruncateInt64ToInt32()
820 return AddNode(machine()->RoundFloat64ToInt32(), a); in RoundFloat64ToInt32()
823 return AddNode(machine()->RoundInt32ToFloat32(), a); in RoundInt32ToFloat32()
826 return AddNode(machine()->RoundInt64ToFloat32(), a); in RoundInt64ToFloat32()
829 return AddNode(machine()->RoundInt64ToFloat64(), a); in RoundInt64ToFloat64()
832 return AddNode(machine()->RoundUint32ToFloat32(), a); in RoundUint32ToFloat32()
835 return AddNode(machine()->RoundUint64ToFloat32(), a); in RoundUint64ToFloat32()
838 return AddNode(machine()->RoundUint64ToFloat64(), a); in RoundUint64ToFloat64()
841 return AddNode(machine()->BitcastFloat32ToInt32(), a); in BitcastFloat32ToInt32()
844 return AddNode(machine()->BitcastFloat64ToInt64(), a); in BitcastFloat64ToInt64()
847 return AddNode(machine()->BitcastInt32ToFloat32(), a); in BitcastInt32ToFloat32()
850 return AddNode(machine()->BitcastInt64ToFloat64(), a); in BitcastInt64ToFloat64()
853 return AddNode(machine()->Float32RoundDown().op(), a); in Float32RoundDown()
856 return AddNode(machine()->Float64RoundDown().op(), a); in Float64RoundDown()
859 return AddNode(machine()->Float32RoundUp().op(), a); in Float32RoundUp()
862 return AddNode(machine()->Float64RoundUp().op(), a); in Float64RoundUp()
865 return AddNode(machine()->Float32RoundTruncate().op(), a); in Float32RoundTruncate()
868 return AddNode(machine()->Float64RoundTruncate().op(), a); in Float64RoundTruncate()
871 return AddNode(machine()->Float64RoundTiesAway().op(), a); in Float64RoundTiesAway()
874 return AddNode(machine()->Float32RoundTiesEven().op(), a); in Float32RoundTiesEven()
877 return AddNode(machine()->Float64RoundTiesEven().op(), a); in Float64RoundTiesEven()
880 return AddNode(machine()->Word32ReverseBytes(), a); in Word32ReverseBytes()
883 return AddNode(machine()->Word64ReverseBytes(), a); in Word64ReverseBytes()
888 return AddNode(machine()->Float64ExtractLowWord32(), a); in Float64ExtractLowWord32()
891 return AddNode(machine()->Float64ExtractHighWord32(), a); in Float64ExtractHighWord32()
894 return AddNode(machine()->Float64InsertLowWord32(), a, b); in Float64InsertLowWord32()
897 return AddNode(machine()->Float64InsertHighWord32(), a, b); in Float64InsertHighWord32()
900 return AddNode(machine()->Float64SilenceNaN(), a); in Float64SilenceNaN()
905 return AddNode(machine()->S128Const(value)); in S128Const()
907 Node* I64x2Splat(Node* a) { return AddNode(machine()->I64x2Splat(), a); } in I64x2Splat()
909 return AddNode(machine()->I64x2SplatI32Pair(), a, b); in I64x2SplatI32Pair()
911 Node* I32x4Splat(Node* a) { return AddNode(machine()->I32x4Splat(), a); } in I32x4Splat()
912 Node* I16x8Splat(Node* a) { return AddNode(machine()->I16x8Splat(), a); } in I16x8Splat()
913 Node* I8x16Splat(Node* a) { return AddNode(machine()->I8x16Splat(), a); } in I8x16Splat()
915 Node* I8x16BitMask(Node* a) { return AddNode(machine()->I8x16BitMask(), a); } in I8x16BitMask()
918 return AddNode(machine()->I8x16Eq(), a, b); in I8x16Eq()
922 Node* LoadFramePointer() { return AddNode(machine()->LoadFramePointer()); } in LoadFramePointer()
924 return AddNode(machine()->LoadParentFramePointer()); in LoadParentFramePointer()