summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/graph-assembler.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/compiler/graph-assembler.h')
-rw-r--r--deps/v8/src/compiler/graph-assembler.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/deps/v8/src/compiler/graph-assembler.h b/deps/v8/src/compiler/graph-assembler.h
index 79eb493608..fa527a8bb0 100644
--- a/deps/v8/src/compiler/graph-assembler.h
+++ b/deps/v8/src/compiler/graph-assembler.h
@@ -21,9 +21,11 @@ namespace compiler {
#define PURE_ASSEMBLER_MACH_UNOP_LIST(V) \
V(ChangeInt32ToInt64) \
V(ChangeInt32ToFloat64) \
+ V(ChangeInt64ToFloat64) \
V(ChangeUint32ToFloat64) \
V(ChangeUint32ToUint64) \
V(ChangeFloat64ToInt32) \
+ V(ChangeFloat64ToInt64) \
V(ChangeFloat64ToUint32) \
V(TruncateInt64ToInt32) \
V(RoundFloat64ToInt32) \
@@ -57,8 +59,10 @@ namespace compiler {
V(Int32Sub) \
V(Int32Mul) \
V(Int32LessThanOrEqual) \
- V(Uint32LessThanOrEqual) \
V(Uint32LessThan) \
+ V(Uint32LessThanOrEqual) \
+ V(Uint64LessThan) \
+ V(Uint64LessThanOrEqual) \
V(Int32LessThan) \
V(Float64Add) \
V(Float64Sub) \
@@ -70,6 +74,7 @@ namespace compiler {
V(Float64InsertLowWord32) \
V(Float64InsertHighWord32) \
V(Word32Equal) \
+ V(Word64Equal) \
V(WordEqual)
#define CHECKED_ASSEMBLER_MACH_BINOP_LIST(V) \
@@ -176,7 +181,8 @@ class GraphAssembler {
Node* IntPtrConstant(intptr_t value);
Node* Uint32Constant(int32_t value);
Node* Int32Constant(int32_t value);
- Node* UniqueInt32Constant(int32_t value);
+ Node* Int64Constant(int64_t value);
+ Node* UniqueIntPtrConstant(intptr_t value);
Node* SmiConstant(int32_t value);
Node* Float64Constant(double value);
Node* Projection(int index, Node* value);
@@ -228,8 +234,10 @@ class GraphAssembler {
Node* Word32PoisonOnSpeculation(Node* value);
- Node* DeoptimizeIf(DeoptimizeReason reason, VectorSlotPair const& feedback,
- Node* condition, Node* frame_state);
+ Node* DeoptimizeIf(
+ DeoptimizeReason reason, VectorSlotPair const& feedback, Node* condition,
+ Node* frame_state,
+ IsSafetyCheck is_safety_check = IsSafetyCheck::kSafetyCheck);
Node* DeoptimizeIfNot(
DeoptimizeReason reason, VectorSlotPair const& feedback, Node* condition,
Node* frame_state,
@@ -247,7 +255,8 @@ class GraphAssembler {
void Goto(GraphAssemblerLabel<sizeof...(Vars)>* label, Vars...);
void Branch(Node* condition, GraphAssemblerLabel<0u>* if_true,
- GraphAssemblerLabel<0u>* if_false);
+ GraphAssemblerLabel<0u>* if_false,
+ IsSafetyCheck is_safety_check = IsSafetyCheck::kNoSafetyCheck);
// Control helpers.
// {GotoIf(c, l)} is equivalent to {Branch(c, l, templ);Bind(templ)}.