diff options
Diffstat (limited to 'deps/v8/src/compiler/instruction-codes.h')
-rw-r--r-- | deps/v8/src/compiler/instruction-codes.h | 100 |
1 files changed, 54 insertions, 46 deletions
diff --git a/deps/v8/src/compiler/instruction-codes.h b/deps/v8/src/compiler/instruction-codes.h index df3078d739..035833af0f 100644 --- a/deps/v8/src/compiler/instruction-codes.h +++ b/deps/v8/src/compiler/instruction-codes.h @@ -69,49 +69,49 @@ enum class RecordWriteMode { kValueIsMap, kValueIsPointer, kValueIsAny }; V(ArchTruncateDoubleToI) \ V(ArchStoreWithWriteBarrier) \ V(ArchStackSlot) \ - V(AtomicLoadInt8) \ - V(AtomicLoadUint8) \ - V(AtomicLoadInt16) \ - V(AtomicLoadUint16) \ - V(AtomicLoadWord32) \ - V(AtomicStoreWord8) \ - V(AtomicStoreWord16) \ - V(AtomicStoreWord32) \ - V(AtomicExchangeInt8) \ - V(AtomicExchangeUint8) \ - V(AtomicExchangeInt16) \ - V(AtomicExchangeUint16) \ - V(AtomicExchangeWord32) \ - V(AtomicCompareExchangeInt8) \ - V(AtomicCompareExchangeUint8) \ - V(AtomicCompareExchangeInt16) \ - V(AtomicCompareExchangeUint16) \ - V(AtomicCompareExchangeWord32) \ - V(AtomicAddInt8) \ - V(AtomicAddUint8) \ - V(AtomicAddInt16) \ - V(AtomicAddUint16) \ - V(AtomicAddWord32) \ - V(AtomicSubInt8) \ - V(AtomicSubUint8) \ - V(AtomicSubInt16) \ - V(AtomicSubUint16) \ - V(AtomicSubWord32) \ - V(AtomicAndInt8) \ - V(AtomicAndUint8) \ - V(AtomicAndInt16) \ - V(AtomicAndUint16) \ - V(AtomicAndWord32) \ - V(AtomicOrInt8) \ - V(AtomicOrUint8) \ - V(AtomicOrInt16) \ - V(AtomicOrUint16) \ - V(AtomicOrWord32) \ - V(AtomicXorInt8) \ - V(AtomicXorUint8) \ - V(AtomicXorInt16) \ - V(AtomicXorUint16) \ - V(AtomicXorWord32) \ + V(Word32AtomicLoadInt8) \ + V(Word32AtomicLoadUint8) \ + V(Word32AtomicLoadInt16) \ + V(Word32AtomicLoadUint16) \ + V(Word32AtomicLoadWord32) \ + V(Word32AtomicStoreWord8) \ + V(Word32AtomicStoreWord16) \ + V(Word32AtomicStoreWord32) \ + V(Word32AtomicExchangeInt8) \ + V(Word32AtomicExchangeUint8) \ + V(Word32AtomicExchangeInt16) \ + V(Word32AtomicExchangeUint16) \ + V(Word32AtomicExchangeWord32) \ + V(Word32AtomicCompareExchangeInt8) \ + V(Word32AtomicCompareExchangeUint8) \ + V(Word32AtomicCompareExchangeInt16) \ + V(Word32AtomicCompareExchangeUint16) \ + V(Word32AtomicCompareExchangeWord32) \ + V(Word32AtomicAddInt8) \ + V(Word32AtomicAddUint8) \ + V(Word32AtomicAddInt16) \ + V(Word32AtomicAddUint16) \ + V(Word32AtomicAddWord32) \ + V(Word32AtomicSubInt8) \ + V(Word32AtomicSubUint8) \ + V(Word32AtomicSubInt16) \ + V(Word32AtomicSubUint16) \ + V(Word32AtomicSubWord32) \ + V(Word32AtomicAndInt8) \ + V(Word32AtomicAndUint8) \ + V(Word32AtomicAndInt16) \ + V(Word32AtomicAndUint16) \ + V(Word32AtomicAndWord32) \ + V(Word32AtomicOrInt8) \ + V(Word32AtomicOrUint8) \ + V(Word32AtomicOrInt16) \ + V(Word32AtomicOrUint16) \ + V(Word32AtomicOrWord32) \ + V(Word32AtomicXorInt8) \ + V(Word32AtomicXorUint8) \ + V(Word32AtomicXorInt16) \ + V(Word32AtomicXorUint16) \ + V(Word32AtomicXorWord32) \ V(Ieee754Float64Acos) \ V(Ieee754Float64Acosh) \ V(Ieee754Float64Asin) \ @@ -174,9 +174,11 @@ V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& os, enum FlagsMode { kFlags_none = 0, kFlags_branch = 1, - kFlags_deoptimize = 2, - kFlags_set = 3, - kFlags_trap = 4 + kFlags_branch_and_poison = 2, + kFlags_deoptimize = 3, + kFlags_deoptimize_and_poison = 4, + kFlags_set = 5, + kFlags_trap = 6 }; V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& os, @@ -219,6 +221,12 @@ FlagsCondition CommuteFlagsCondition(FlagsCondition condition); V8_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& os, const FlagsCondition& fc); +enum MemoryAccessMode { + kMemoryAccessDirect = 0, + kMemoryAccessProtected = 1, + kMemoryAccessPoisoned = 2 +}; + // The InstructionCode is an opaque, target-specific integer that encodes // what code to emit for an instruction in the code generator. It is not // interesting to the register allocator, as the inputs and flags on the |