Index: runtime/vm/intermediate_language.h |
diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h |
index 60e25a9c6fbaab92f121309c3fb37850a69d3956..2a97f0aa9b72089a0904b4a852696b57dbd45ea9 100644 |
--- a/runtime/vm/intermediate_language.h |
+++ b/runtime/vm/intermediate_language.h |
@@ -13,6 +13,7 @@ |
#include "vm/method_recognizer.h" |
#include "vm/object.h" |
#include "vm/parser.h" |
+#include "vm/token_descriptor.h" |
namespace dart { |
@@ -627,7 +628,9 @@ class Instruction : public ZoneAllocated { |
const ICData* GetICData( |
const ZoneGrowableArray<const ICData*>& ic_data_array) const; |
- virtual intptr_t token_pos() const { return Token::kNoSourcePos; } |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kNoSource; |
+ } |
virtual intptr_t InputCount() const = 0; |
virtual Value* InputAt(intptr_t i) const = 0; |
@@ -1053,8 +1056,8 @@ class ParallelMoveInstr : public TemplateInstruction<0, NoThrow> { |
virtual void PrintTo(BufferFormatter* f) const; |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kParallelMove; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kParallelMove; |
} |
private: |
@@ -1189,8 +1192,8 @@ class BlockEntryInstr : public Instruction { |
return this; |
} |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kControlFlow; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kControlFlow; |
} |
// Helper to mutate the graph during inlining. This block should be |
@@ -2042,8 +2045,8 @@ class PushArgumentInstr : public TemplateDefinition<1, NoThrow> { |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kPushArgument; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kPushArgument; |
} |
private: |
@@ -2058,7 +2061,7 @@ inline Definition* Instruction::ArgumentAt(intptr_t index) const { |
class ReturnInstr : public TemplateInstruction<1, NoThrow> { |
public: |
- ReturnInstr(intptr_t token_pos, Value* value) |
+ ReturnInstr(TokenDescriptor token_pos, Value* value) |
: TemplateInstruction(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos) { |
SetInputAt(0, value); |
@@ -2066,7 +2069,7 @@ class ReturnInstr : public TemplateInstruction<1, NoThrow> { |
DECLARE_INSTRUCTION(Return) |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
Value* value() const { return inputs_[0]; } |
virtual bool CanBecomeDeoptimizationTarget() const { |
@@ -2080,7 +2083,7 @@ class ReturnInstr : public TemplateInstruction<1, NoThrow> { |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(ReturnInstr); |
}; |
@@ -2088,7 +2091,7 @@ class ReturnInstr : public TemplateInstruction<1, NoThrow> { |
class ThrowInstr : public TemplateInstruction<0, Throws> { |
public: |
- explicit ThrowInstr(intptr_t token_pos) |
+ explicit ThrowInstr(TokenDescriptor token_pos) |
: TemplateInstruction(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos) { |
} |
@@ -2097,14 +2100,14 @@ class ThrowInstr : public TemplateInstruction<0, Throws> { |
virtual intptr_t ArgumentCount() const { return 1; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual bool CanDeoptimize() const { return true; } |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(ThrowInstr); |
}; |
@@ -2114,7 +2117,7 @@ class ReThrowInstr : public TemplateInstruction<0, Throws> { |
public: |
// 'catch_try_index' can be CatchClauseNode::kInvalidTryIndex if the |
// rethrow has been artifically generated by the parser. |
- ReThrowInstr(intptr_t token_pos, intptr_t catch_try_index) |
+ ReThrowInstr(TokenDescriptor token_pos, intptr_t catch_try_index) |
: TemplateInstruction(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos), |
catch_try_index_(catch_try_index) { |
@@ -2124,7 +2127,7 @@ class ReThrowInstr : public TemplateInstruction<0, Throws> { |
virtual intptr_t ArgumentCount() const { return 2; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
intptr_t catch_try_index() const { return catch_try_index_; } |
virtual bool CanDeoptimize() const { return true; } |
@@ -2132,7 +2135,7 @@ class ReThrowInstr : public TemplateInstruction<0, Throws> { |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const intptr_t catch_try_index_; |
DISALLOW_COPY_AND_ASSIGN(ReThrowInstr); |
@@ -2220,8 +2223,8 @@ class GotoInstr : public TemplateInstruction<0, NoThrow> { |
virtual void PrintTo(BufferFormatter* f) const; |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kControlFlow; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kControlFlow; |
} |
private: |
@@ -2297,7 +2300,7 @@ class ComparisonInstr : public TemplateDefinition<2, NoThrow, Pure> { |
Value* left() const { return inputs_[0]; } |
Value* right() const { return inputs_[1]; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
Token::Kind kind() const { return kind_; } |
virtual ComparisonInstr* CopyWithNewOperands(Value* left, Value* right) = 0; |
@@ -2332,7 +2335,7 @@ class ComparisonInstr : public TemplateDefinition<2, NoThrow, Pure> { |
DEFINE_INSTRUCTION_TYPE_CHECK(Comparison) |
protected: |
- ComparisonInstr(intptr_t token_pos, |
+ ComparisonInstr(TokenDescriptor token_pos, |
Token::Kind kind, |
Value* left, |
Value* right, |
@@ -2348,7 +2351,7 @@ class ComparisonInstr : public TemplateDefinition<2, NoThrow, Pure> { |
} |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
Token::Kind kind_; |
intptr_t operation_cid_; // Set by optimizer. |
@@ -2380,7 +2383,7 @@ class BranchInstr : public Instruction { |
Value* InputAt(intptr_t i) const { return comparison()->InputAt(i); } |
- virtual intptr_t token_pos() const { return comparison_->token_pos(); } |
+ virtual TokenDescriptor token_pos() const { return comparison_->token_pos(); } |
virtual bool CanDeoptimize() const { |
// Branches need a deoptimization info in checked mode if they |
@@ -2558,7 +2561,7 @@ class ConstraintInstr : public TemplateDefinition<1, NoThrow> { |
class ConstantInstr : public TemplateDefinition<0, NoThrow, Pure> { |
public: |
ConstantInstr(const Object& value, |
- intptr_t token_pos = ClassifyingTokenPositions::kConstant); |
+ TokenDescriptor token_pos = TokenDescriptor::kConstant); |
DECLARE_INSTRUCTION(Constant) |
virtual CompileType ComputeType() const; |
@@ -2575,11 +2578,11 @@ class ConstantInstr : public TemplateDefinition<0, NoThrow, Pure> { |
virtual bool AttributesEqual(Instruction* other) const; |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
private: |
const Object& value_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(ConstantInstr); |
}; |
@@ -2612,7 +2615,7 @@ class UnboxedConstantInstr : public ConstantInstr { |
class AssertAssignableInstr : public TemplateDefinition<2, Throws, Pure> { |
public: |
- AssertAssignableInstr(intptr_t token_pos, |
+ AssertAssignableInstr(TokenDescriptor token_pos, |
Value* value, |
Value* instantiator_type_arguments, |
const AbstractType& dst_type, |
@@ -2635,7 +2638,7 @@ class AssertAssignableInstr : public TemplateDefinition<2, Throws, Pure> { |
Value* value() const { return inputs_[0]; } |
Value* instantiator_type_arguments() const { return inputs_[1]; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
const AbstractType& dst_type() const { return dst_type_; } |
void set_dst_type(const AbstractType& dst_type) { |
dst_type_ = dst_type.raw(); |
@@ -2657,7 +2660,7 @@ class AssertAssignableInstr : public TemplateDefinition<2, Throws, Pure> { |
virtual bool AttributesEqual(Instruction* other) const; |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
AbstractType& dst_type_; |
const String& dst_name_; |
@@ -2667,7 +2670,7 @@ class AssertAssignableInstr : public TemplateDefinition<2, Throws, Pure> { |
class AssertBooleanInstr : public TemplateDefinition<1, Throws, Pure> { |
public: |
- AssertBooleanInstr(intptr_t token_pos, Value* value) |
+ AssertBooleanInstr(TokenDescriptor token_pos, Value* value) |
: TemplateDefinition(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos) { |
SetInputAt(0, value); |
@@ -2676,7 +2679,7 @@ class AssertBooleanInstr : public TemplateDefinition<1, Throws, Pure> { |
DECLARE_INSTRUCTION(AssertBoolean) |
virtual CompileType ComputeType() const; |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
Value* value() const { return inputs_[0]; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -2688,7 +2691,7 @@ class AssertBooleanInstr : public TemplateDefinition<1, Throws, Pure> { |
virtual bool AttributesEqual(Instruction* other) const { return true; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(AssertBooleanInstr); |
}; |
@@ -2730,7 +2733,9 @@ class ClosureCallInstr : public TemplateDefinition<1, Throws> { |
DECLARE_INSTRUCTION(ClosureCall) |
const Array& argument_names() const { return ast_node_.arguments()->names(); } |
- virtual intptr_t token_pos() const { return ast_node_.token_pos(); } |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor(ast_node_.token_pos()); |
+ } |
virtual intptr_t ArgumentCount() const { return arguments_->length(); } |
virtual PushArgumentInstr* PushArgumentAt(intptr_t index) const { |
@@ -2756,7 +2761,7 @@ class ClosureCallInstr : public TemplateDefinition<1, Throws> { |
class InstanceCallInstr : public TemplateDefinition<0, Throws> { |
public: |
- InstanceCallInstr(intptr_t token_pos, |
+ InstanceCallInstr(TokenDescriptor token_pos, |
const String& function_name, |
Token::Kind token_kind, |
ZoneGrowableArray<PushArgumentInstr*>* arguments, |
@@ -2797,7 +2802,7 @@ class InstanceCallInstr : public TemplateDefinition<0, Throws> { |
// ICData can be replaced by optimizer. |
void set_ic_data(const ICData* value) { ic_data_ = value; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
const String& function_name() const { return function_name_; } |
Token::Kind token_kind() const { return token_kind_; } |
virtual intptr_t ArgumentCount() const { return arguments_->length(); } |
@@ -2825,7 +2830,7 @@ class InstanceCallInstr : public TemplateDefinition<0, Throws> { |
private: |
const ICData* ic_data_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const String& function_name_; |
const Token::Kind token_kind_; // Binary op, unary op, kGET or kILLEGAL. |
ZoneGrowableArray<PushArgumentInstr*>* const arguments_; |
@@ -2851,7 +2856,9 @@ class PolymorphicInstanceCallInstr : public TemplateDefinition<0, Throws> { |
InstanceCallInstr* instance_call() const { return instance_call_; } |
bool with_checks() const { return with_checks_; } |
- virtual intptr_t token_pos() const { return instance_call_->token_pos(); } |
+ virtual TokenDescriptor token_pos() const { |
+ return instance_call_->token_pos(); |
+ } |
virtual intptr_t ArgumentCount() const { |
return instance_call()->ArgumentCount(); |
@@ -2887,7 +2894,7 @@ class PolymorphicInstanceCallInstr : public TemplateDefinition<0, Throws> { |
class StrictCompareInstr : public ComparisonInstr { |
public: |
- StrictCompareInstr(intptr_t token_pos, |
+ StrictCompareInstr(TokenDescriptor token_pos, |
Token::Kind kind, |
Value* left, |
Value* right, |
@@ -2929,7 +2936,10 @@ class StrictCompareInstr : public ComparisonInstr { |
// comparison pattern. |
class TestSmiInstr : public ComparisonInstr { |
public: |
- TestSmiInstr(intptr_t token_pos, Token::Kind kind, Value* left, Value* right) |
+ TestSmiInstr(TokenDescriptor token_pos, |
+ Token::Kind kind, |
+ Value* left, |
+ Value* right) |
: ComparisonInstr(token_pos, kind, left, right) { |
ASSERT(kind == Token::kEQ || kind == Token::kNE); |
} |
@@ -2963,7 +2973,7 @@ class TestSmiInstr : public ComparisonInstr { |
// TestCidInstr needs only one argument |
class TestCidsInstr : public ComparisonInstr { |
public: |
- TestCidsInstr(intptr_t token_pos, |
+ TestCidsInstr(TokenDescriptor token_pos, |
Token::Kind kind, |
Value* value, |
const ZoneGrowableArray<intptr_t>& cid_results, |
@@ -3012,7 +3022,7 @@ class TestCidsInstr : public ComparisonInstr { |
class EqualityCompareInstr : public ComparisonInstr { |
public: |
- EqualityCompareInstr(intptr_t token_pos, |
+ EqualityCompareInstr(TokenDescriptor token_pos, |
Token::Kind kind, |
Value* left, |
Value* right, |
@@ -3053,7 +3063,7 @@ class EqualityCompareInstr : public ComparisonInstr { |
class RelationalOpInstr : public ComparisonInstr { |
public: |
- RelationalOpInstr(intptr_t token_pos, |
+ RelationalOpInstr(TokenDescriptor token_pos, |
Token::Kind kind, |
Value* left, |
Value* right, |
@@ -3176,7 +3186,7 @@ class IfThenElseInstr : public Definition { |
class StaticCallInstr : public TemplateDefinition<0, Throws> { |
public: |
- StaticCallInstr(intptr_t token_pos, |
+ StaticCallInstr(TokenDescriptor token_pos, |
const Function& function, |
const Array& argument_names, |
ZoneGrowableArray<PushArgumentInstr*>* arguments, |
@@ -3208,7 +3218,7 @@ class StaticCallInstr : public TemplateDefinition<0, Throws> { |
// Accessors forwarded to the AST node. |
const Function& function() const { return function_; } |
const Array& argument_names() const { return argument_names_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual intptr_t ArgumentCount() const { return arguments_->length(); } |
virtual PushArgumentInstr* PushArgumentAt(intptr_t index) const { |
@@ -3252,7 +3262,7 @@ class StaticCallInstr : public TemplateDefinition<0, Throws> { |
private: |
const ICData* ic_data_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const Function& function_; |
const Array& argument_names_; |
ZoneGrowableArray<PushArgumentInstr*>* arguments_; |
@@ -3271,7 +3281,7 @@ class StaticCallInstr : public TemplateDefinition<0, Throws> { |
class LoadLocalInstr : public TemplateDefinition<0, NoThrow> { |
public: |
LoadLocalInstr(const LocalVariable& local, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: local_(local), is_last_(false), token_pos_(token_pos) { } |
DECLARE_INSTRUCTION(LoadLocal) |
@@ -3291,12 +3301,12 @@ class LoadLocalInstr : public TemplateDefinition<0, NoThrow> { |
void mark_last() { is_last_ = true; } |
bool is_last() const { return is_last_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
private: |
const LocalVariable& local_; |
bool is_last_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(LoadLocalInstr); |
}; |
@@ -3321,8 +3331,8 @@ class PushTempInstr : public TemplateDefinition<1, NoThrow> { |
return EffectSet::None(); |
} |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kTempMove; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kTempMove; |
} |
private: |
@@ -3367,8 +3377,8 @@ class DropTempsInstr : public Definition { |
return false; |
} |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kTempMove; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kTempMove; |
} |
private: |
@@ -3387,7 +3397,7 @@ class StoreLocalInstr : public TemplateDefinition<1, NoThrow> { |
public: |
StoreLocalInstr(const LocalVariable& local, |
Value* value, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: local_(local), is_dead_(false), is_last_(false), token_pos_(token_pos) { |
SetInputAt(0, value); |
} |
@@ -3413,13 +3423,13 @@ class StoreLocalInstr : public TemplateDefinition<1, NoThrow> { |
return EffectSet::None(); |
} |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
private: |
const LocalVariable& local_; |
bool is_dead_; |
bool is_last_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(StoreLocalInstr); |
}; |
@@ -3434,7 +3444,9 @@ class NativeCallInstr : public TemplateDefinition<0, Throws> { |
DECLARE_INSTRUCTION(NativeCall) |
- virtual intptr_t token_pos() const { return ast_node_.token_pos(); } |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor(ast_node_.token_pos()); |
+ } |
const Function& function() const { return ast_node_.function(); } |
@@ -3479,7 +3491,7 @@ class NativeCallInstr : public TemplateDefinition<0, Throws> { |
class DebugStepCheckInstr : public TemplateInstruction<0, NoThrow> { |
public: |
- DebugStepCheckInstr(intptr_t token_pos, |
+ DebugStepCheckInstr(TokenDescriptor token_pos, |
RawPcDescriptors::Kind stub_kind) |
: token_pos_(token_pos), |
stub_kind_(stub_kind) { |
@@ -3487,13 +3499,13 @@ class DebugStepCheckInstr : public TemplateInstruction<0, NoThrow> { |
DECLARE_INSTRUCTION(DebugStepCheck) |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual bool CanDeoptimize() const { return false; } |
virtual EffectSet Effects() const { return EffectSet::All(); } |
virtual Instruction* Canonicalize(FlowGraph* flow_graph); |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const RawPcDescriptors::Kind stub_kind_; |
DISALLOW_COPY_AND_ASSIGN(DebugStepCheckInstr); |
@@ -3512,7 +3524,7 @@ class StoreInstanceFieldInstr : public TemplateDefinition<2, NoThrow> { |
Value* instance, |
Value* value, |
StoreBarrierType emit_store_barrier, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: field_(field), |
offset_in_bytes_(field.Offset()), |
emit_store_barrier_(emit_store_barrier), |
@@ -3527,7 +3539,7 @@ class StoreInstanceFieldInstr : public TemplateDefinition<2, NoThrow> { |
Value* instance, |
Value* value, |
StoreBarrierType emit_store_barrier, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: field_(Field::ZoneHandle()), |
offset_in_bytes_(offset_in_bytes), |
emit_store_barrier_(emit_store_barrier), |
@@ -3560,7 +3572,7 @@ class StoreInstanceFieldInstr : public TemplateDefinition<2, NoThrow> { |
bool is_object_reference_initialization() const { |
return is_object_reference_initialization_; |
} |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
const Field& field() const { return field_; } |
intptr_t offset_in_bytes() const { return offset_in_bytes_; } |
@@ -3603,7 +3615,7 @@ class StoreInstanceFieldInstr : public TemplateDefinition<2, NoThrow> { |
const Field& field_; |
intptr_t offset_in_bytes_; |
const StoreBarrierType emit_store_barrier_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
// This may be the first store to an unboxed field. |
bool is_potential_unboxed_initialization_; |
// True if this store initializes an object reference field of an object that |
@@ -3681,7 +3693,7 @@ class GuardFieldLengthInstr : public GuardFieldInstr { |
class LoadStaticFieldInstr : public TemplateDefinition<1, NoThrow> { |
public: |
- LoadStaticFieldInstr(Value* field_value, intptr_t token_pos) |
+ LoadStaticFieldInstr(Value* field_value, TokenDescriptor token_pos) |
: token_pos_(token_pos) { |
ASSERT(field_value->BindsToConstant()); |
SetInputAt(0, field_value); |
@@ -3703,10 +3715,10 @@ class LoadStaticFieldInstr : public TemplateDefinition<1, NoThrow> { |
virtual EffectSet Dependencies() const; |
virtual bool AttributesEqual(Instruction* other) const; |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(LoadStaticFieldInstr); |
}; |
@@ -3716,7 +3728,7 @@ class StoreStaticFieldInstr : public TemplateDefinition<1, NoThrow> { |
public: |
StoreStaticFieldInstr(const Field& field, |
Value* value, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: field_(field), |
token_pos_(token_pos) { |
ASSERT(field.IsZoneHandle()); |
@@ -3741,7 +3753,7 @@ class StoreStaticFieldInstr : public TemplateDefinition<1, NoThrow> { |
// are marked as having no side-effects. |
virtual EffectSet Effects() const { return EffectSet::None(); } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
private: |
bool CanValueBeSmi() const { |
@@ -3752,7 +3764,7 @@ class StoreStaticFieldInstr : public TemplateDefinition<1, NoThrow> { |
} |
const Field& field_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(StoreStaticFieldInstr); |
}; |
@@ -3765,7 +3777,7 @@ class LoadIndexedInstr : public TemplateDefinition<2, NoThrow> { |
intptr_t index_scale, |
intptr_t class_id, |
intptr_t deopt_id, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: TemplateDefinition(deopt_id), |
index_scale_(index_scale), |
class_id_(class_id), |
@@ -3774,7 +3786,7 @@ class LoadIndexedInstr : public TemplateDefinition<2, NoThrow> { |
SetInputAt(1, index); |
} |
- intptr_t token_pos() const { return token_pos_; } |
+ TokenDescriptor token_pos() const { return token_pos_; } |
DECLARE_INSTRUCTION(LoadIndexed) |
virtual CompileType ComputeType() const; |
@@ -3807,7 +3819,7 @@ class LoadIndexedInstr : public TemplateDefinition<2, NoThrow> { |
private: |
const intptr_t index_scale_; |
const intptr_t class_id_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(LoadIndexedInstr); |
}; |
@@ -3826,7 +3838,7 @@ class LoadCodeUnitsInstr : public TemplateDefinition<2, NoThrow> { |
Value* index, |
intptr_t element_count, |
intptr_t class_id, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: class_id_(class_id), |
token_pos_(token_pos), |
element_count_(element_count), |
@@ -3837,7 +3849,7 @@ class LoadCodeUnitsInstr : public TemplateDefinition<2, NoThrow> { |
SetInputAt(1, index); |
} |
- intptr_t token_pos() const { return token_pos_; } |
+ TokenDescriptor token_pos() const { return token_pos_; } |
DECLARE_INSTRUCTION(LoadCodeUnits) |
virtual CompileType ComputeType() const; |
@@ -3875,7 +3887,7 @@ class LoadCodeUnitsInstr : public TemplateDefinition<2, NoThrow> { |
private: |
const intptr_t class_id_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const intptr_t element_count_; |
Representation representation_; |
@@ -3938,7 +3950,7 @@ class StringToCharCodeInstr : public TemplateDefinition<1, NoThrow, Pure> { |
class StringInterpolateInstr : public TemplateDefinition<1, Throws> { |
public: |
- StringInterpolateInstr(Value* value, intptr_t token_pos) |
+ StringInterpolateInstr(Value* value, TokenDescriptor token_pos) |
: TemplateDefinition(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos), |
function_(Function::ZoneHandle()) { |
@@ -3946,7 +3958,7 @@ class StringInterpolateInstr : public TemplateDefinition<1, Throws> { |
} |
Value* value() const { return inputs_[0]; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual CompileType ComputeType() const; |
// Issues a static call to Dart code which calls toString on objects. |
@@ -3960,7 +3972,7 @@ class StringInterpolateInstr : public TemplateDefinition<1, Throws> { |
DECLARE_INSTRUCTION(StringInterpolate) |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
Function& function_; |
DISALLOW_COPY_AND_ASSIGN(StringInterpolateInstr); |
@@ -3976,7 +3988,7 @@ class StoreIndexedInstr : public TemplateDefinition<3, NoThrow> { |
intptr_t index_scale, |
intptr_t class_id, |
intptr_t deopt_id, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: TemplateDefinition(deopt_id), |
emit_store_barrier_(emit_store_barrier), |
index_scale_(index_scale), |
@@ -4027,7 +4039,7 @@ class StoreIndexedInstr : public TemplateDefinition<3, NoThrow> { |
const StoreBarrierType emit_store_barrier_; |
const intptr_t index_scale_; |
const intptr_t class_id_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(StoreIndexedInstr); |
}; |
@@ -4058,7 +4070,7 @@ class BooleanNegateInstr : public TemplateDefinition<1, NoThrow> { |
class InstanceOfInstr : public TemplateDefinition<2, Throws> { |
public: |
- InstanceOfInstr(intptr_t token_pos, |
+ InstanceOfInstr(TokenDescriptor token_pos, |
Value* value, |
Value* instantiator_type_arguments, |
const AbstractType& type, |
@@ -4081,7 +4093,7 @@ class InstanceOfInstr : public TemplateDefinition<2, Throws> { |
bool negate_result() const { return negate_result_; } |
const AbstractType& type() const { return type_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -4090,7 +4102,7 @@ class InstanceOfInstr : public TemplateDefinition<2, Throws> { |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
Value* value_; |
Value* type_arguments_; |
const AbstractType& type_; |
@@ -4102,7 +4114,7 @@ class InstanceOfInstr : public TemplateDefinition<2, Throws> { |
class AllocateObjectInstr : public TemplateDefinition<0, NoThrow> { |
public: |
- AllocateObjectInstr(intptr_t token_pos, |
+ AllocateObjectInstr(TokenDescriptor token_pos, |
const Class& cls, |
ZoneGrowableArray<PushArgumentInstr*>* arguments) |
: token_pos_(token_pos), |
@@ -4123,7 +4135,7 @@ class AllocateObjectInstr : public TemplateDefinition<0, NoThrow> { |
} |
const Class& cls() const { return cls_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
const Function& closure_function() const { return closure_function_; } |
void set_closure_function(const Function& function) { |
@@ -4140,7 +4152,7 @@ class AllocateObjectInstr : public TemplateDefinition<0, NoThrow> { |
virtual void SetIdentity(AliasIdentity identity) { identity_ = identity; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const Class& cls_; |
ZoneGrowableArray<PushArgumentInstr*>* const arguments_; |
AliasIdentity identity_; |
@@ -4153,7 +4165,7 @@ class AllocateObjectInstr : public TemplateDefinition<0, NoThrow> { |
class AllocateUninitializedContextInstr |
: public TemplateDefinition<0, NoThrow> { |
public: |
- AllocateUninitializedContextInstr(intptr_t token_pos, |
+ AllocateUninitializedContextInstr(TokenDescriptor token_pos, |
intptr_t num_context_variables) |
: token_pos_(token_pos), |
num_context_variables_(num_context_variables), |
@@ -4162,7 +4174,7 @@ class AllocateUninitializedContextInstr |
DECLARE_INSTRUCTION(AllocateUninitializedContext) |
virtual CompileType ComputeType() const; |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
intptr_t num_context_variables() const { return num_context_variables_; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -4175,7 +4187,7 @@ class AllocateUninitializedContextInstr |
virtual void SetIdentity(AliasIdentity identity) { identity_ = identity; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const intptr_t num_context_variables_; |
AliasIdentity identity_; |
@@ -4299,7 +4311,7 @@ class MaterializeObjectInstr : public Definition { |
class CreateArrayInstr : public TemplateDefinition<2, Throws> { |
public: |
- CreateArrayInstr(intptr_t token_pos, |
+ CreateArrayInstr(TokenDescriptor token_pos, |
Value* element_type, |
Value* num_elements) |
: TemplateDefinition(Thread::Current()->GetNextDeoptId()), |
@@ -4317,7 +4329,7 @@ class CreateArrayInstr : public TemplateDefinition<2, Throws> { |
DECLARE_INSTRUCTION(CreateArray) |
virtual CompileType ComputeType() const; |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
Value* element_type() const { return inputs_[kElementTypePos]; } |
Value* num_elements() const { return inputs_[kLengthPos]; } |
@@ -4331,7 +4343,7 @@ class CreateArrayInstr : public TemplateDefinition<2, Throws> { |
virtual void SetIdentity(AliasIdentity identity) { identity_ = identity; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
AliasIdentity identity_; |
DISALLOW_COPY_AND_ASSIGN(CreateArrayInstr); |
@@ -4409,7 +4421,7 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
LoadFieldInstr(Value* instance, |
intptr_t offset_in_bytes, |
const AbstractType& type, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: offset_in_bytes_(offset_in_bytes), |
type_(type), |
result_cid_(kDynamicCid), |
@@ -4426,7 +4438,7 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
LoadFieldInstr(Value* instance, |
const Field* field, |
const AbstractType& type, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: offset_in_bytes_(field->Offset()), |
type_(type), |
result_cid_(kDynamicCid), |
@@ -4447,7 +4459,7 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
const AbstractType& type() const { return type_; } |
void set_result_cid(intptr_t value) { result_cid_ = value; } |
intptr_t result_cid() const { return result_cid_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
const Field* field() const { return field_; } |
@@ -4495,7 +4507,7 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
MethodRecognizer::Kind recognized_kind_; |
const Field* field_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(LoadFieldInstr); |
}; |
@@ -4503,7 +4515,7 @@ class LoadFieldInstr : public TemplateDefinition<1, NoThrow> { |
class InstantiateTypeInstr : public TemplateDefinition<1, Throws> { |
public: |
- InstantiateTypeInstr(intptr_t token_pos, |
+ InstantiateTypeInstr(TokenDescriptor token_pos, |
const AbstractType& type, |
const Class& instantiator_class, |
Value* instantiator) |
@@ -4521,7 +4533,7 @@ class InstantiateTypeInstr : public TemplateDefinition<1, Throws> { |
const AbstractType& type() const { return type_; |
} |
const Class& instantiator_class() const { return instantiator_class_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -4530,7 +4542,7 @@ class InstantiateTypeInstr : public TemplateDefinition<1, Throws> { |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const AbstractType& type_; |
const Class& instantiator_class_; |
@@ -4540,7 +4552,7 @@ class InstantiateTypeInstr : public TemplateDefinition<1, Throws> { |
class InstantiateTypeArgumentsInstr : public TemplateDefinition<1, Throws> { |
public: |
- InstantiateTypeArgumentsInstr(intptr_t token_pos, |
+ InstantiateTypeArgumentsInstr(TokenDescriptor token_pos, |
const TypeArguments& type_arguments, |
const Class& instantiator_class, |
Value* instantiator) |
@@ -4559,7 +4571,7 @@ class InstantiateTypeArgumentsInstr : public TemplateDefinition<1, Throws> { |
return type_arguments_; |
} |
const Class& instantiator_class() const { return instantiator_class_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -4570,7 +4582,7 @@ class InstantiateTypeArgumentsInstr : public TemplateDefinition<1, Throws> { |
virtual Definition* Canonicalize(FlowGraph* flow_graph); |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const TypeArguments& type_arguments_; |
const Class& instantiator_class_; |
@@ -4580,7 +4592,7 @@ class InstantiateTypeArgumentsInstr : public TemplateDefinition<1, Throws> { |
class AllocateContextInstr : public TemplateDefinition<0, NoThrow> { |
public: |
- AllocateContextInstr(intptr_t token_pos, |
+ AllocateContextInstr(TokenDescriptor token_pos, |
intptr_t num_context_variables) |
: token_pos_(token_pos), |
num_context_variables_(num_context_variables) { } |
@@ -4588,7 +4600,7 @@ class AllocateContextInstr : public TemplateDefinition<0, NoThrow> { |
DECLARE_INSTRUCTION(AllocateContext) |
virtual CompileType ComputeType() const; |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
intptr_t num_context_variables() const { return num_context_variables_; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -4598,7 +4610,7 @@ class AllocateContextInstr : public TemplateDefinition<0, NoThrow> { |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const intptr_t num_context_variables_; |
DISALLOW_COPY_AND_ASSIGN(AllocateContextInstr); |
@@ -4613,7 +4625,9 @@ class InitStaticFieldInstr : public TemplateInstruction<1, Throws> { |
SetInputAt(0, input); |
} |
- virtual intptr_t token_pos() const { return field_.token_pos(); } |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor(field_.token_pos()); |
+ } |
const Field& field() const { return field_; } |
DECLARE_INSTRUCTION(InitStaticField) |
@@ -4631,13 +4645,13 @@ class InitStaticFieldInstr : public TemplateInstruction<1, Throws> { |
class CloneContextInstr : public TemplateDefinition<1, NoThrow> { |
public: |
- CloneContextInstr(intptr_t token_pos, Value* context_value) |
+ CloneContextInstr(TokenDescriptor token_pos, Value* context_value) |
: TemplateDefinition(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos) { |
SetInputAt(0, context_value); |
} |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
Value* context_value() const { return inputs_[0]; } |
DECLARE_INSTRUCTION(CloneContext) |
@@ -4648,7 +4662,7 @@ class CloneContextInstr : public TemplateDefinition<1, NoThrow> { |
virtual EffectSet Effects() const { return EffectSet::None(); } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(CloneContextInstr); |
}; |
@@ -4768,8 +4782,8 @@ class BoxInstr : public TemplateDefinition<1, NoThrow, Pure> { |
Definition* Canonicalize(FlowGraph* flow_graph); |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kBox; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kBox; |
} |
protected: |
@@ -4894,8 +4908,8 @@ class UnboxInstr : public TemplateDefinition<1, NoThrow, Pure> { |
return GetDeoptId(); |
} |
- virtual intptr_t token_pos() const { |
- return ClassifyingTokenPositions::kBox; |
+ virtual TokenDescriptor token_pos() const { |
+ return TokenDescriptor::kBox; |
} |
protected: |
@@ -5214,7 +5228,7 @@ class BinaryDoubleOpInstr : public TemplateDefinition<2, NoThrow, Pure> { |
Value* left, |
Value* right, |
intptr_t deopt_id, |
- intptr_t token_pos) |
+ TokenDescriptor token_pos) |
: TemplateDefinition(deopt_id), |
op_kind_(op_kind), |
token_pos_(token_pos) { |
@@ -5227,7 +5241,7 @@ class BinaryDoubleOpInstr : public TemplateDefinition<2, NoThrow, Pure> { |
Token::Kind op_kind() const { return op_kind_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
@@ -5259,7 +5273,7 @@ class BinaryDoubleOpInstr : public TemplateDefinition<2, NoThrow, Pure> { |
private: |
const Token::Kind op_kind_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(BinaryDoubleOpInstr); |
}; |
@@ -7165,13 +7179,13 @@ class UnaryDoubleOpInstr : public TemplateDefinition<1, NoThrow, Pure> { |
class CheckStackOverflowInstr : public TemplateInstruction<0, NoThrow> { |
public: |
- CheckStackOverflowInstr(intptr_t token_pos, intptr_t loop_depth) |
+ CheckStackOverflowInstr(TokenDescriptor token_pos, intptr_t loop_depth) |
: TemplateInstruction(Thread::Current()->GetNextDeoptId()), |
token_pos_(token_pos), |
loop_depth_(loop_depth) { |
} |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
bool in_loop() const { return loop_depth_ > 0; } |
intptr_t loop_depth() const { return loop_depth_; } |
@@ -7184,7 +7198,7 @@ class CheckStackOverflowInstr : public TemplateInstruction<0, NoThrow> { |
virtual void PrintOperandsTo(BufferFormatter* f) const; |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
const intptr_t loop_depth_; |
DISALLOW_COPY_AND_ASSIGN(CheckStackOverflowInstr); |
@@ -7194,13 +7208,13 @@ class CheckStackOverflowInstr : public TemplateInstruction<0, NoThrow> { |
// TODO(vegorov): remove this instruction in favor of Int32ToDouble. |
class SmiToDoubleInstr : public TemplateDefinition<1, NoThrow, Pure> { |
public: |
- SmiToDoubleInstr(Value* value, intptr_t token_pos) |
+ SmiToDoubleInstr(Value* value, TokenDescriptor token_pos) |
: token_pos_(token_pos) { |
SetInputAt(0, value); |
} |
Value* value() const { return inputs_[0]; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
DECLARE_INSTRUCTION(SmiToDouble) |
virtual CompileType ComputeType() const; |
@@ -7214,7 +7228,7 @@ class SmiToDoubleInstr : public TemplateDefinition<1, NoThrow, Pure> { |
virtual bool AttributesEqual(Instruction* other) const { return true; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(SmiToDoubleInstr); |
}; |
@@ -7461,7 +7475,7 @@ class InvokeMathCFunctionInstr : public PureDefinition { |
InvokeMathCFunctionInstr(ZoneGrowableArray<Value*>* inputs, |
intptr_t deopt_id, |
MethodRecognizer::Kind recognized_kind, |
- intptr_t token_pos); |
+ TokenDescriptor token_pos); |
static intptr_t ArgumentCountFor(MethodRecognizer::Kind recognized_kind_); |
@@ -7469,7 +7483,7 @@ class InvokeMathCFunctionInstr : public PureDefinition { |
MethodRecognizer::Kind recognized_kind() const { return recognized_kind_; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
DECLARE_INSTRUCTION(InvokeMathCFunction) |
virtual CompileType ComputeType() const; |
@@ -7514,7 +7528,7 @@ class InvokeMathCFunctionInstr : public PureDefinition { |
ZoneGrowableArray<Value*>* inputs_; |
const MethodRecognizer::Kind recognized_kind_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(InvokeMathCFunctionInstr); |
}; |
@@ -7675,13 +7689,13 @@ class CheckClassInstr : public TemplateInstruction<1, NoThrow> { |
CheckClassInstr(Value* value, |
intptr_t deopt_id, |
const ICData& unary_checks, |
- intptr_t token_pos); |
+ TokenDescriptor token_pos); |
DECLARE_INSTRUCTION(CheckClass) |
virtual bool CanDeoptimize() const { return true; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
Value* value() const { return inputs_[0]; } |
@@ -7717,7 +7731,7 @@ class CheckClassInstr : public TemplateInstruction<1, NoThrow> { |
const ICData& unary_checks_; |
GrowableArray<intptr_t> cids_; // Sorted, lowest first. |
bool licm_hoisted_; |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
DISALLOW_COPY_AND_ASSIGN(CheckClassInstr); |
}; |
@@ -7725,7 +7739,7 @@ class CheckClassInstr : public TemplateInstruction<1, NoThrow> { |
class CheckSmiInstr : public TemplateInstruction<1, NoThrow, Pure> { |
public: |
- CheckSmiInstr(Value* value, intptr_t deopt_id, intptr_t token_pos) |
+ CheckSmiInstr(Value* value, intptr_t deopt_id, TokenDescriptor token_pos) |
: TemplateInstruction(deopt_id), |
token_pos_(token_pos), |
licm_hoisted_(false) { |
@@ -7733,7 +7747,7 @@ class CheckSmiInstr : public TemplateInstruction<1, NoThrow, Pure> { |
} |
Value* value() const { return inputs_[0]; } |
- virtual intptr_t token_pos() const { return token_pos_; } |
+ virtual TokenDescriptor token_pos() const { return token_pos_; } |
DECLARE_INSTRUCTION(CheckSmi) |
@@ -7746,7 +7760,7 @@ class CheckSmiInstr : public TemplateInstruction<1, NoThrow, Pure> { |
void set_licm_hoisted(bool value) { licm_hoisted_ = value; } |
private: |
- const intptr_t token_pos_; |
+ const TokenDescriptor token_pos_; |
bool licm_hoisted_; |
DISALLOW_COPY_AND_ASSIGN(CheckSmiInstr); |