Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Unified Diff: runtime/vm/intermediate_language.h

Issue 1390153004: Move deopt_id and related helpers/definitions from Isolate to Thread (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/il_printer.cc ('k') | runtime/vm/intermediate_language.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/intermediate_language.h
diff --git a/runtime/vm/intermediate_language.h b/runtime/vm/intermediate_language.h
index 68a88003ae9f82908939a20774010ccc51ee3983..7f01ecc6de5b4576351b10fd7bbc0cb8e3311181 100644
--- a/runtime/vm/intermediate_language.h
+++ b/runtime/vm/intermediate_language.h
@@ -608,7 +608,7 @@ class Instruction : public ZoneAllocated {
};
#undef DECLARE_TAG
- explicit Instruction(intptr_t deopt_id = Isolate::kNoDeoptId)
+ explicit Instruction(intptr_t deopt_id = Thread::kNoDeoptId)
: deopt_id_(deopt_id),
lifetime_position_(kNoPlaceId),
previous_(NULL),
@@ -772,7 +772,7 @@ FOR_EACH_ABSTRACT_INSTRUCTION(INSTRUCTION_TYPE_CHECK)
// to.
virtual intptr_t DeoptimizationTarget() const {
UNREACHABLE();
- return Isolate::kNoDeoptId;
+ return Thread::kNoDeoptId;
}
// Returns a replacement for the instruction or NULL if the instruction can
@@ -945,7 +945,7 @@ template<intptr_t N,
template<typename Default, typename Pure> class CSETrait = NoCSE>
class TemplateInstruction: public CSETrait<Instruction, PureInstruction>::Base {
public:
- explicit TemplateInstruction(intptr_t deopt_id = Isolate::kNoDeoptId)
+ explicit TemplateInstruction(intptr_t deopt_id = Thread::kNoDeoptId)
: CSETrait<Instruction, PureInstruction>::Base(deopt_id), inputs_() { }
virtual intptr_t InputCount() const { return N; }
@@ -1205,7 +1205,7 @@ class BlockEntryInstr : public Instruction {
protected:
BlockEntryInstr(intptr_t block_id, intptr_t try_index)
- : Instruction(Isolate::Current()->GetNextDeoptId()),
+ : Instruction(Thread::Current()->GetNextDeoptId()),
block_id_(block_id),
try_index_(try_index),
preorder_number_(-1),
@@ -1331,7 +1331,7 @@ class GraphEntryInstr : public BlockEntryInstr {
}
ConstantInstr* constant_null();
- bool IsCompiledForOsr() const { return osr_id_ != Isolate::kNoDeoptId; }
+ bool IsCompiledForOsr() const { return osr_id_ != Thread::kNoDeoptId; }
intptr_t entry_count() const { return entry_count_; }
void set_entry_count(intptr_t count) { entry_count_ = count; }
@@ -1639,7 +1639,7 @@ class AliasIdentity : public ValueObject {
// Abstract super-class of all instructions that define a value (Bind, Phi).
class Definition : public Instruction {
public:
- explicit Definition(intptr_t deopt_id = Isolate::kNoDeoptId);
+ explicit Definition(intptr_t deopt_id = Thread::kNoDeoptId);
// Overridden by definitions that have call counts.
virtual intptr_t CallCount() const {
@@ -1842,7 +1842,7 @@ template<intptr_t N,
template<typename Impure, typename Pure> class CSETrait = NoCSE>
class TemplateDefinition : public CSETrait<Definition, PureDefinition>::Base {
public:
- explicit TemplateDefinition(intptr_t deopt_id = Isolate::kNoDeoptId)
+ explicit TemplateDefinition(intptr_t deopt_id = Thread::kNoDeoptId)
: CSETrait<Definition, PureDefinition>::Base(deopt_id), inputs_() { }
virtual intptr_t InputCount() const { return N; }
@@ -2049,7 +2049,7 @@ inline Definition* Instruction::ArgumentAt(intptr_t index) const {
class ReturnInstr : public TemplateInstruction<1, NoThrow> {
public:
ReturnInstr(intptr_t token_pos, Value* value)
- : TemplateInstruction(Isolate::Current()->GetNextDeoptId()),
+ : TemplateInstruction(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos) {
SetInputAt(0, value);
}
@@ -2079,7 +2079,7 @@ class ReturnInstr : public TemplateInstruction<1, NoThrow> {
class ThrowInstr : public TemplateInstruction<0, Throws> {
public:
explicit ThrowInstr(intptr_t token_pos)
- : TemplateInstruction(Isolate::Current()->GetNextDeoptId()),
+ : TemplateInstruction(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos) {
}
@@ -2105,7 +2105,7 @@ class ReThrowInstr : public TemplateInstruction<0, Throws> {
// '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)
- : TemplateInstruction(Isolate::Current()->GetNextDeoptId()),
+ : TemplateInstruction(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos),
catch_try_index_(catch_try_index) {
}
@@ -2158,7 +2158,7 @@ class StopInstr : public TemplateInstruction<0, NoThrow> {
class GotoInstr : public TemplateInstruction<0, NoThrow> {
public:
explicit GotoInstr(JoinEntryInstr* entry)
- : TemplateInstruction(Isolate::Current()->GetNextDeoptId()),
+ : TemplateInstruction(Thread::Current()->GetNextDeoptId()),
block_(NULL),
successor_(entry),
edge_weight_(0.0),
@@ -2322,7 +2322,7 @@ class ComparisonInstr : public TemplateDefinition<2, NoThrow, Pure> {
Token::Kind kind,
Value* left,
Value* right,
- intptr_t deopt_id = Isolate::kNoDeoptId)
+ intptr_t deopt_id = Thread::kNoDeoptId)
: TemplateDefinition(deopt_id),
token_pos_(token_pos),
kind_(kind),
@@ -2345,7 +2345,7 @@ class ComparisonInstr : public TemplateDefinition<2, NoThrow, Pure> {
class BranchInstr : public Instruction {
public:
explicit BranchInstr(ComparisonInstr* comparison)
- : Instruction(Isolate::Current()->GetNextDeoptId()),
+ : Instruction(Thread::Current()->GetNextDeoptId()),
comparison_(comparison),
is_checked_(false),
constrained_type_(NULL),
@@ -2653,7 +2653,7 @@ class AssertAssignableInstr : public TemplateDefinition<3, Throws, Pure> {
class AssertBooleanInstr : public TemplateDefinition<1, Throws, Pure> {
public:
AssertBooleanInstr(intptr_t token_pos, Value* value)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos) {
SetInputAt(0, value);
}
@@ -2684,7 +2684,7 @@ class AssertBooleanInstr : public TemplateDefinition<1, Throws, Pure> {
class CurrentContextInstr : public TemplateDefinition<0, NoThrow> {
public:
CurrentContextInstr()
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()) {
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()) {
}
DECLARE_INSTRUCTION(CurrentContext)
@@ -2706,7 +2706,7 @@ class ClosureCallInstr : public TemplateDefinition<1, Throws> {
ClosureCallInstr(Value* function,
ClosureCallNode* node,
ZoneGrowableArray<PushArgumentInstr*>* arguments)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
ast_node_(*node),
arguments_(arguments) {
SetInputAt(0, function);
@@ -2748,7 +2748,7 @@ class InstanceCallInstr : public TemplateDefinition<0, Throws> {
const Array& argument_names,
intptr_t checked_argument_count,
const ZoneGrowableArray<const ICData*>& ic_data_array)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
ic_data_(NULL),
token_pos_(token_pos),
function_name_(function_name),
@@ -2972,7 +2972,7 @@ class TestCidsInstr : public ComparisonInstr {
virtual CompileType ComputeType() const;
virtual bool CanDeoptimize() const {
- return GetDeoptId() != Isolate::kNoDeoptId;
+ return GetDeoptId() != Thread::kNoDeoptId;
}
virtual Representation RequiredInputRepresentation(intptr_t idx) const {
@@ -3084,7 +3084,7 @@ class IfThenElseInstr : public Definition {
IfThenElseInstr(ComparisonInstr* comparison,
Value* if_true,
Value* if_false)
- : Definition(Isolate::Current()->GetNextDeoptId()),
+ : Definition(Thread::Current()->GetNextDeoptId()),
comparison_(comparison),
if_true_(Smi::Cast(if_true->BoundConstant()).Value()),
if_false_(Smi::Cast(if_false->BoundConstant()).Value()) {
@@ -3165,7 +3165,7 @@ class StaticCallInstr : public TemplateDefinition<0, Throws> {
const Array& argument_names,
ZoneGrowableArray<PushArgumentInstr*>* arguments,
const ZoneGrowableArray<const ICData*>& ic_data_array)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
ic_data_(NULL),
token_pos_(token_pos),
function_(function),
@@ -3740,7 +3740,7 @@ class LoadIndexedInstr : public TemplateDefinition<2, NoThrow> {
intptr_t class_id() const { return class_id_; }
virtual bool CanDeoptimize() const {
- return GetDeoptId() != Isolate::kNoDeoptId;
+ return GetDeoptId() != Thread::kNoDeoptId;
}
virtual Representation representation() const;
@@ -3883,7 +3883,7 @@ class StringToCharCodeInstr : public TemplateDefinition<1, NoThrow, Pure> {
class StringInterpolateInstr : public TemplateDefinition<1, Throws> {
public:
StringInterpolateInstr(Value* value, intptr_t token_pos)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos),
function_(Function::ZoneHandle()) {
SetInputAt(0, value);
@@ -4250,7 +4250,7 @@ class CreateArrayInstr : public TemplateDefinition<2, Throws> {
CreateArrayInstr(intptr_t token_pos,
Value* element_type,
Value* num_elements)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos),
identity_(AliasIdentity::Unknown()) {
SetInputAt(kElementTypePos, element_type);
@@ -4453,7 +4453,7 @@ class InstantiateTypeInstr : public TemplateDefinition<1, Throws> {
const AbstractType& type,
const Class& instantiator_class,
Value* instantiator)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos),
type_(type),
instantiator_class_(instantiator_class) {
@@ -4490,7 +4490,7 @@ class InstantiateTypeArgumentsInstr : public TemplateDefinition<1, Throws> {
const TypeArguments& type_arguments,
const Class& instantiator_class,
Value* instantiator)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos),
type_arguments_(type_arguments),
instantiator_class_(instantiator_class) {
@@ -4554,7 +4554,7 @@ class AllocateContextInstr : public TemplateDefinition<0, NoThrow> {
class InitStaticFieldInstr : public TemplateInstruction<1, Throws> {
public:
InitStaticFieldInstr(Value* input, const Field& field)
- : TemplateInstruction(Isolate::Current()->GetNextDeoptId()),
+ : TemplateInstruction(Thread::Current()->GetNextDeoptId()),
field_(field) {
SetInputAt(0, input);
}
@@ -4578,7 +4578,7 @@ class InitStaticFieldInstr : public TemplateInstruction<1, Throws> {
class CloneContextInstr : public TemplateDefinition<1, NoThrow> {
public:
CloneContextInstr(intptr_t token_pos, Value* context_value)
- : TemplateDefinition(Isolate::Current()->GetNextDeoptId()),
+ : TemplateDefinition(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos) {
SetInputAt(0, context_value);
}
@@ -4700,7 +4700,7 @@ class BoxInstr : public TemplateDefinition<1, NoThrow, Pure> {
virtual bool CanDeoptimize() const { return false; }
virtual intptr_t DeoptimizationTarget() const {
- return Isolate::kNoDeoptId;
+ return Thread::kNoDeoptId;
}
virtual Representation RequiredInputRepresentation(intptr_t idx) const {
@@ -7102,7 +7102,7 @@ class UnaryDoubleOpInstr : public TemplateDefinition<1, NoThrow, Pure> {
class CheckStackOverflowInstr : public TemplateInstruction<0, NoThrow> {
public:
CheckStackOverflowInstr(intptr_t token_pos, intptr_t loop_depth)
- : TemplateInstruction(Isolate::Current()->GetNextDeoptId()),
+ : TemplateInstruction(Thread::Current()->GetNextDeoptId()),
token_pos_(token_pos),
loop_depth_(loop_depth) {
}
« no previous file with comments | « runtime/vm/il_printer.cc ('k') | runtime/vm/intermediate_language.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698