diff options
author | Trevor Norris <trev.norris@gmail.com> | 2013-08-27 15:18:12 -0700 |
---|---|---|
committer | Trevor Norris <trev.norris@gmail.com> | 2013-08-27 15:18:12 -0700 |
commit | 26bc8db33f15a365e22f23229d0700d70ac0d560 (patch) | |
tree | fbe2f60ef1380c023efa66e86d53d1d9f42ddb7c /deps/v8/src/arm/lithium-codegen-arm.h | |
parent | d86814aeca64d8985402dc073eff1fc8ac93c231 (diff) | |
download | node-26bc8db33f15a365e22f23229d0700d70ac0d560.tar.gz |
v8: upgrade to 3.20.17
Diffstat (limited to 'deps/v8/src/arm/lithium-codegen-arm.h')
-rw-r--r-- | deps/v8/src/arm/lithium-codegen-arm.h | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/deps/v8/src/arm/lithium-codegen-arm.h b/deps/v8/src/arm/lithium-codegen-arm.h index 143109c92..d0bfcbbb9 100644 --- a/deps/v8/src/arm/lithium-codegen-arm.h +++ b/deps/v8/src/arm/lithium-codegen-arm.h @@ -66,7 +66,8 @@ class LCodeGen BASE_EMBEDDED { frame_is_built_(false), safepoints_(info->zone()), resolver_(this), - expected_safepoint_kind_(Safepoint::kSimple) { + expected_safepoint_kind_(Safepoint::kSimple), + old_position_(RelocInfo::kNoPosition) { PopulateDeoptimizationLiteralsWithInlinedFunctions(); } @@ -280,16 +281,19 @@ class LCodeGen BASE_EMBEDDED { void RegisterEnvironmentForDeoptimization(LEnvironment* environment, Safepoint::DeoptMode mode); - void DeoptimizeIf(Condition cc, + void DeoptimizeIf(Condition condition, LEnvironment* environment, Deoptimizer::BailoutType bailout_type); - void DeoptimizeIf(Condition cc, LEnvironment* environment); - void ApplyCheckIf(Condition cc, LBoundsCheck* check); + void DeoptimizeIf(Condition condition, LEnvironment* environment); + void ApplyCheckIf(Condition condition, LBoundsCheck* check); - void AddToTranslation(Translation* translation, + void AddToTranslation(LEnvironment* environment, + Translation* translation, LOperand* op, bool is_tagged, - bool is_uint32); + bool is_uint32, + int* object_index_pointer, + int* dematerialized_index_pointer); void RegisterDependentCodeForEmbeddedMaps(Handle<Code> code); void PopulateDeoptimizationData(Handle<Code> code); int DefineDeoptimizationLiteral(Handle<Object> literal); @@ -315,11 +319,14 @@ class LCodeGen BASE_EMBEDDED { int arguments, Safepoint::DeoptMode mode); void RecordPosition(int position); + void RecordAndUpdatePosition(int position); static Condition TokenToCondition(Token::Value op, bool is_unsigned); void EmitGoto(int block); template<class InstrType> - void EmitBranch(InstrType instr, Condition cc); + void EmitBranch(InstrType instr, Condition condition); + template<class InstrType> + void EmitFalseBranch(InstrType instr, Condition condition); void EmitNumberUntagD(Register input, DwVfpRegister result, bool allow_undefined_as_nan, @@ -355,12 +362,6 @@ class LCodeGen BASE_EMBEDDED { // Caller should branch on equal condition. void EmitIsConstructCall(Register temp1, Register temp2); - void EmitLoadFieldOrConstantFunction(Register result, - Register object, - Handle<Map> type, - Handle<String> name, - LEnvironment* env); - // Emits optimized code to deep-copy the contents of statically known // object graphs (e.g. object literal boilerplate). void EmitDeepCopy(Handle<JSObject> object, @@ -417,6 +418,8 @@ class LCodeGen BASE_EMBEDDED { Safepoint::Kind expected_safepoint_kind_; + int old_position_; + class PushSafepointRegistersScope BASE_EMBEDDED { public: PushSafepointRegistersScope(LCodeGen* codegen, |