summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc')
-rw-r--r--deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc35
1 files changed, 35 insertions, 0 deletions
diff --git a/deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc b/deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc
index 82d6fb88a3..07d42bc614 100644
--- a/deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc
+++ b/deps/v8/src/compiler/ia32/instruction-scheduler-ia32.cc
@@ -43,6 +43,7 @@ int InstructionScheduler::GetTargetInstructionFlags(
case kIA32Lzcnt:
case kIA32Tzcnt:
case kIA32Popcnt:
+ case kIA32Bswap:
case kIA32Lea:
case kSSEFloat32Cmp:
case kSSEFloat32Add:
@@ -368,6 +369,40 @@ int InstructionScheduler::GetTargetInstructionFlags(
case kLFence:
return kHasSideEffect;
+ case kIA32Word32AtomicPairLoad:
+ return kIsLoadOperation;
+
+ case kIA32Word32AtomicPairStore:
+ case kIA32Word32AtomicPairAdd:
+ case kIA32Word32AtomicPairSub:
+ case kIA32Word32AtomicPairAnd:
+ case kIA32Word32AtomicPairOr:
+ case kIA32Word32AtomicPairXor:
+ case kIA32Word32AtomicPairExchange:
+ case kIA32Word32AtomicPairCompareExchange:
+ case kIA32Word64AtomicNarrowAddUint8:
+ case kIA32Word64AtomicNarrowAddUint16:
+ case kIA32Word64AtomicNarrowAddUint32:
+ case kIA32Word64AtomicNarrowSubUint8:
+ case kIA32Word64AtomicNarrowSubUint16:
+ case kIA32Word64AtomicNarrowSubUint32:
+ case kIA32Word64AtomicNarrowAndUint8:
+ case kIA32Word64AtomicNarrowAndUint16:
+ case kIA32Word64AtomicNarrowAndUint32:
+ case kIA32Word64AtomicNarrowOrUint8:
+ case kIA32Word64AtomicNarrowOrUint16:
+ case kIA32Word64AtomicNarrowOrUint32:
+ case kIA32Word64AtomicNarrowXorUint8:
+ case kIA32Word64AtomicNarrowXorUint16:
+ case kIA32Word64AtomicNarrowXorUint32:
+ case kIA32Word64AtomicNarrowExchangeUint8:
+ case kIA32Word64AtomicNarrowExchangeUint16:
+ case kIA32Word64AtomicNarrowExchangeUint32:
+ case kIA32Word64AtomicNarrowCompareExchangeUint8:
+ case kIA32Word64AtomicNarrowCompareExchangeUint16:
+ case kIA32Word64AtomicNarrowCompareExchangeUint32:
+ return kHasSideEffect;
+
#define CASE(Name) case k##Name:
COMMON_ARCH_OPCODE_LIST(CASE)
#undef CASE