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

Unified Diff: src/ppc/lithium-ppc.h

Issue 422063005: Contribution of PowerPC port. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: re-upload - catch up to 8/19 level Created 6 years, 4 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
Index: src/ppc/lithium-ppc.h
diff --git a/src/arm/lithium-arm.h b/src/ppc/lithium-ppc.h
similarity index 90%
copy from src/arm/lithium-arm.h
copy to src/ppc/lithium-ppc.h
index 16f522e5b6a0334cbd647e99379a2584583f7974..2a89178c93f8e65d3729ce88e1417740e89b6ddf 100644
--- a/src/arm/lithium-arm.h
+++ b/src/ppc/lithium-ppc.h
@@ -1,9 +1,12 @@
// Copyright 2012 the V8 project authors. All rights reserved.
+//
+// Copyright IBM Corp. 2012, 2013. All rights reserved.
+//
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef V8_ARM_LITHIUM_ARM_H_
-#define V8_ARM_LITHIUM_ARM_H_
+#ifndef V8_PPC_LITHIUM_PPC_H_
+#define V8_PPC_LITHIUM_PPC_H_
#include "src/hydrogen.h"
#include "src/lithium.h"
@@ -165,24 +168,22 @@ class LCodeGen;
V(WrapReceiver)
-#define DECLARE_CONCRETE_INSTRUCTION(type, mnemonic) \
- virtual Opcode opcode() const V8_FINAL V8_OVERRIDE { \
- return LInstruction::k##type; \
- } \
- virtual void CompileToNative(LCodeGen* generator) V8_FINAL V8_OVERRIDE; \
- virtual const char* Mnemonic() const V8_FINAL V8_OVERRIDE { \
- return mnemonic; \
- } \
- static L##type* cast(LInstruction* instr) { \
- DCHECK(instr->Is##type()); \
- return reinterpret_cast<L##type*>(instr); \
+#define DECLARE_CONCRETE_INSTRUCTION(type, mnemonic) \
+ virtual Opcode opcode() const V8_FINAL V8_OVERRIDE { \
+ return LInstruction::k##type; \
+ } \
+ virtual void CompileToNative(LCodeGen* generator) V8_FINAL V8_OVERRIDE; \
+ virtual const char* Mnemonic() const V8_FINAL V8_OVERRIDE { \
+ return mnemonic; \
+ } \
+ static L##type* cast(LInstruction* instr) { \
+ DCHECK(instr->Is##type()); \
+ return reinterpret_cast<L##type*>(instr); \
}
-#define DECLARE_HYDROGEN_ACCESSOR(type) \
- H##type* hydrogen() const { \
- return H##type::cast(hydrogen_value()); \
- }
+#define DECLARE_HYDROGEN_ACCESSOR(type) \
+ H##type* hydrogen() const { return H##type::cast(hydrogen_value()); }
class LInstruction : public ZoneObject {
@@ -190,8 +191,7 @@ class LInstruction : public ZoneObject {
LInstruction()
: environment_(NULL),
hydrogen_value_(NULL),
- bit_field_(IsCallBits::encode(false)) {
- }
+ bit_field_(IsCallBits::encode(false)) {}
virtual ~LInstruction() {}
@@ -202,16 +202,15 @@ class LInstruction : public ZoneObject {
virtual void PrintOutputOperandTo(StringStream* stream);
enum Opcode {
- // Declare a unique enum value for each instruction.
+// Declare a unique enum value for each instruction.
#define DECLARE_OPCODE(type) k##type,
- LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_OPCODE)
- kNumberOfInstructions
+ LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_OPCODE) kNumberOfInstructions
#undef DECLARE_OPCODE
};
virtual Opcode opcode() const = 0;
- // Declare non-virtual type testers for all leaf IR classes.
+// Declare non-virtual type testers for all leaf IR classes.
#define DECLARE_PREDICATE(type) \
bool Is##type() const { return opcode() == k##type; }
LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_PREDICATE)
@@ -237,7 +236,7 @@ class LInstruction : public ZoneObject {
void set_hydrogen_value(HValue* value) { hydrogen_value_ = value; }
HValue* hydrogen_value() const { return hydrogen_value_; }
- virtual void SetDeferredLazyDeoptimizationEnvironment(LEnvironment* env) { }
+ virtual void SetDeferredLazyDeoptimizationEnvironment(LEnvironment* env) {}
void MarkAsCall() { bit_field_ = IsCallBits::update(bit_field_, true); }
bool IsCall() const { return IsCallBits::decode(bit_field_); }
@@ -275,7 +274,7 @@ class LInstruction : public ZoneObject {
virtual int TempCount() = 0;
virtual LOperand* TempAt(int i) = 0;
- class IsCallBits: public BitField<bool, 0, 1> {};
+ class IsCallBits : public BitField<bool, 0, 1> {};
LEnvironment* environment_;
SetOncePointer<LPointerMap> pointer_map_;
@@ -285,7 +284,7 @@ class LInstruction : public ZoneObject {
// R = number of result operands (0 or 1).
-template<int R>
+template <int R>
class LTemplateResultInstruction : public LInstruction {
public:
// Allow 0 or 1 output operands.
@@ -304,7 +303,7 @@ class LTemplateResultInstruction : public LInstruction {
// R = number of result operands (0 or 1).
// I = number of input operands.
// T = number of temporary operands.
-template<int R, int I, int T>
+template <int R, int I, int T>
class LTemplateInstruction : public LTemplateResultInstruction<R> {
protected:
EmbeddedContainer<LOperand*, I> inputs_;
@@ -322,8 +321,7 @@ class LTemplateInstruction : public LTemplateResultInstruction<R> {
class LGap : public LTemplateInstruction<0, 0, 0> {
public:
- explicit LGap(HBasicBlock* block)
- : block_(block) {
+ explicit LGap(HBasicBlock* block) : block_(block) {
parallel_moves_[BEFORE] = NULL;
parallel_moves_[START] = NULL;
parallel_moves_[END] = NULL;
@@ -351,14 +349,14 @@ class LGap : public LTemplateInstruction<0, 0, 0> {
LAST_INNER_POSITION = AFTER
};
- LParallelMove* GetOrCreateParallelMove(InnerPosition pos, Zone* zone) {
+ LParallelMove* GetOrCreateParallelMove(InnerPosition pos, Zone* zone) {
if (parallel_moves_[pos] == NULL) {
- parallel_moves_[pos] = new(zone) LParallelMove(zone);
+ parallel_moves_[pos] = new (zone) LParallelMove(zone);
}
return parallel_moves_[pos];
}
- LParallelMove* GetParallelMove(InnerPosition pos) {
+ LParallelMove* GetParallelMove(InnerPosition pos) {
return parallel_moves_[pos];
}
@@ -370,7 +368,7 @@ class LGap : public LTemplateInstruction<0, 0, 0> {
class LInstructionGap V8_FINAL : public LGap {
public:
- explicit LInstructionGap(HBasicBlock* block) : LGap(block) { }
+ explicit LInstructionGap(HBasicBlock* block) : LGap(block) {}
virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE {
return !IsRedundant();
@@ -382,7 +380,7 @@ class LInstructionGap V8_FINAL : public LGap {
class LGoto V8_FINAL : public LTemplateInstruction<0, 0, 0> {
public:
- explicit LGoto(HBasicBlock* block) : block_(block) { }
+ explicit LGoto(HBasicBlock* block) : block_(block) {}
virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE;
DECLARE_CONCRETE_INSTRUCTION(Goto, "goto")
@@ -398,7 +396,7 @@ class LGoto V8_FINAL : public LTemplateInstruction<0, 0, 0> {
class LLazyBailout V8_FINAL : public LTemplateInstruction<0, 0, 0> {
public:
- LLazyBailout() : gap_instructions_size_(0) { }
+ LLazyBailout() : gap_instructions_size_(0) {}
DECLARE_CONCRETE_INSTRUCTION(LazyBailout, "lazy-bailout")
@@ -421,9 +419,7 @@ class LDummy V8_FINAL : public LTemplateInstruction<1, 0, 0> {
class LDummyUse V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LDummyUse(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LDummyUse(LOperand* value) { inputs_[0] = value; }
DECLARE_CONCRETE_INSTRUCTION(DummyUse, "dummy-use")
};
@@ -438,8 +434,7 @@ class LDeoptimize V8_FINAL : public LTemplateInstruction<0, 0, 0> {
class LLabel V8_FINAL : public LGap {
public:
- explicit LLabel(HBasicBlock* block)
- : LGap(block), replacement_(NULL) { }
+ explicit LLabel(HBasicBlock* block) : LGap(block), replacement_(NULL) {}
virtual bool HasInterestingComment(LCodeGen* gen) const V8_OVERRIDE {
return false;
@@ -471,9 +466,7 @@ class LParameter V8_FINAL : public LTemplateInstruction<1, 0, 0> {
class LCallStub V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LCallStub(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LCallStub(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -491,10 +484,10 @@ class LUnknownOSRValue V8_FINAL : public LTemplateInstruction<1, 0, 0> {
};
-template<int I, int T>
+template <int I, int T>
class LControlInstruction : public LTemplateInstruction<0, I, T> {
public:
- LControlInstruction() : false_label_(NULL), true_label_(NULL) { }
+ LControlInstruction() : false_label_(NULL), true_label_(NULL) {}
virtual bool IsControl() const V8_FINAL V8_OVERRIDE { return true; }
@@ -552,9 +545,7 @@ class LWrapReceiver V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LApplyArguments V8_FINAL : public LTemplateInstruction<1, 4, 0> {
public:
- LApplyArguments(LOperand* function,
- LOperand* receiver,
- LOperand* length,
+ LApplyArguments(LOperand* function, LOperand* receiver, LOperand* length,
LOperand* elements) {
inputs_[0] = function;
inputs_[1] = receiver;
@@ -591,9 +582,7 @@ class LAccessArgumentsAt V8_FINAL : public LTemplateInstruction<1, 3, 0> {
class LArgumentsLength V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LArgumentsLength(LOperand* elements) {
- inputs_[0] = elements;
- }
+ explicit LArgumentsLength(LOperand* elements) { inputs_[0] = elements; }
LOperand* elements() { return inputs_[0]; }
@@ -644,19 +633,15 @@ class LModByConstI V8_FINAL : public LTemplateInstruction<1, 1, 0> {
};
-class LModI V8_FINAL : public LTemplateInstruction<1, 2, 2> {
+class LModI V8_FINAL : public LTemplateInstruction<1, 2, 0> {
public:
- LModI(LOperand* left, LOperand* right, LOperand* temp, LOperand* temp2) {
+ LModI(LOperand* left, LOperand* right) {
inputs_[0] = left;
inputs_[1] = right;
- temps_[0] = temp;
- temps_[1] = temp2;
}
LOperand* left() { return inputs_[0]; }
LOperand* right() { return inputs_[1]; }
- LOperand* temp() { return temps_[0]; }
- LOperand* temp2() { return temps_[1]; }
DECLARE_CONCRETE_INSTRUCTION(ModI, "mod-i")
DECLARE_HYDROGEN_ACCESSOR(Mod)
@@ -699,17 +684,15 @@ class LDivByConstI V8_FINAL : public LTemplateInstruction<1, 1, 0> {
};
-class LDivI V8_FINAL : public LTemplateInstruction<1, 2, 1> {
+class LDivI V8_FINAL : public LTemplateInstruction<1, 2, 0> {
public:
- LDivI(LOperand* dividend, LOperand* divisor, LOperand* temp) {
+ LDivI(LOperand* dividend, LOperand* divisor) {
inputs_[0] = dividend;
inputs_[1] = divisor;
- temps_[0] = temp;
}
LOperand* dividend() { return inputs_[0]; }
LOperand* divisor() { return inputs_[1]; }
- LOperand* temp() { return temps_[0]; }
DECLARE_CONCRETE_INSTRUCTION(DivI, "div-i")
DECLARE_HYDROGEN_ACCESSOR(BinaryOperation)
@@ -735,7 +718,7 @@ class LFlooringDivByPowerOf2I V8_FINAL : public LTemplateInstruction<1, 1, 0> {
};
-class LFlooringDivByConstI V8_FINAL : public LTemplateInstruction<1, 1, 2> {
+class LFlooringDivByConstI V8_FINAL : public LTemplateInstruction<1, 1, 1> {
public:
LFlooringDivByConstI(LOperand* dividend, int32_t divisor, LOperand* temp) {
inputs_[0] = dividend;
@@ -755,17 +738,15 @@ class LFlooringDivByConstI V8_FINAL : public LTemplateInstruction<1, 1, 2> {
};
-class LFlooringDivI V8_FINAL : public LTemplateInstruction<1, 2, 1> {
+class LFlooringDivI V8_FINAL : public LTemplateInstruction<1, 2, 0> {
public:
- LFlooringDivI(LOperand* dividend, LOperand* divisor, LOperand* temp) {
+ LFlooringDivI(LOperand* dividend, LOperand* divisor) {
inputs_[0] = dividend;
inputs_[1] = divisor;
- temps_[0] = temp;
}
LOperand* dividend() { return inputs_[0]; }
LOperand* divisor() { return inputs_[1]; }
- LOperand* temp() { return temps_[0]; }
DECLARE_CONCRETE_INSTRUCTION(FlooringDivI, "flooring-div-i")
DECLARE_HYDROGEN_ACCESSOR(MathFloorOfDiv)
@@ -844,9 +825,7 @@ class LCompareNumericAndBranch V8_FINAL : public LControlInstruction<2, 0> {
DECLARE_HYDROGEN_ACCESSOR(CompareNumericAndBranch)
Token::Value op() const { return hydrogen()->token(); }
- bool is_double() const {
- return hydrogen()->representation().IsDouble();
- }
+ bool is_double() const { return hydrogen()->representation().IsDouble(); }
virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE;
};
@@ -854,9 +833,7 @@ class LCompareNumericAndBranch V8_FINAL : public LControlInstruction<2, 0> {
class LMathFloor V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LMathFloor(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LMathFloor(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -907,9 +884,7 @@ class LMathAbs V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LMathLog V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LMathLog(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LMathLog(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -919,9 +894,7 @@ class LMathLog V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LMathClz32 V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LMathClz32(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LMathClz32(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -931,9 +904,7 @@ class LMathClz32 V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LMathExp V8_FINAL : public LTemplateInstruction<1, 1, 3> {
public:
- LMathExp(LOperand* value,
- LOperand* double_temp,
- LOperand* temp1,
+ LMathExp(LOperand* value, LOperand* double_temp, LOperand* temp1,
LOperand* temp2) {
inputs_[0] = value;
temps_[0] = temp1;
@@ -953,9 +924,7 @@ class LMathExp V8_FINAL : public LTemplateInstruction<1, 1, 3> {
class LMathSqrt V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LMathSqrt(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LMathSqrt(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -965,9 +934,7 @@ class LMathSqrt V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LMathPowHalf V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LMathPowHalf(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LMathPowHalf(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -992,9 +959,7 @@ class LCmpObjectEqAndBranch V8_FINAL : public LControlInstruction<2, 0> {
class LCmpHoleAndBranch V8_FINAL : public LControlInstruction<1, 0> {
public:
- explicit LCmpHoleAndBranch(LOperand* object) {
- inputs_[0] = object;
- }
+ explicit LCmpHoleAndBranch(LOperand* object) { inputs_[0] = object; }
LOperand* object() { return inputs_[0]; }
@@ -1055,9 +1020,7 @@ class LIsStringAndBranch V8_FINAL : public LControlInstruction<1, 1> {
class LIsSmiAndBranch V8_FINAL : public LControlInstruction<1, 0> {
public:
- explicit LIsSmiAndBranch(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LIsSmiAndBranch(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -1110,9 +1073,7 @@ class LStringCompareAndBranch V8_FINAL : public LControlInstruction<3, 0> {
class LHasInstanceTypeAndBranch V8_FINAL : public LControlInstruction<1, 0> {
public:
- explicit LHasInstanceTypeAndBranch(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LHasInstanceTypeAndBranch(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -1126,9 +1087,7 @@ class LHasInstanceTypeAndBranch V8_FINAL : public LControlInstruction<1, 0> {
class LGetCachedArrayIndex V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LGetCachedArrayIndex(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LGetCachedArrayIndex(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -1164,8 +1123,7 @@ class LClassOfTestAndBranch V8_FINAL : public LControlInstruction<1, 1> {
LOperand* value() { return inputs_[0]; }
LOperand* temp() { return temps_[0]; }
- DECLARE_CONCRETE_INSTRUCTION(ClassOfTestAndBranch,
- "class-of-test-and-branch")
+ DECLARE_CONCRETE_INSTRUCTION(ClassOfTestAndBranch, "class-of-test-and-branch")
DECLARE_HYDROGEN_ACCESSOR(ClassOfTestAndBranch)
virtual void PrintDataTo(StringStream* stream) V8_OVERRIDE;
@@ -1227,8 +1185,8 @@ class LInstanceOfKnownGlobal V8_FINAL : public LTemplateInstruction<1, 2, 1> {
LEnvironment* GetDeferredLazyDeoptimizationEnvironment() {
return lazy_deopt_env_;
}
- virtual void SetDeferredLazyDeoptimizationEnvironment(
- LEnvironment* env) V8_OVERRIDE {
+ virtual void SetDeferredLazyDeoptimizationEnvironment(LEnvironment* env)
+ V8_OVERRIDE {
lazy_deopt_env_ = env;
}
@@ -1371,9 +1329,7 @@ class LConstantT V8_FINAL : public LTemplateInstruction<1, 0, 0> {
class LBranch V8_FINAL : public LControlInstruction<1, 0> {
public:
- explicit LBranch(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LBranch(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -1403,9 +1359,7 @@ class LCmpMapAndBranch V8_FINAL : public LControlInstruction<1, 1> {
class LMapEnumLength V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LMapEnumLength(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LMapEnumLength(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -1449,9 +1403,7 @@ class LSeqStringGetChar V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LSeqStringSetChar V8_FINAL : public LTemplateInstruction<1, 4, 0> {
public:
- LSeqStringSetChar(LOperand* context,
- LOperand* string,
- LOperand* index,
+ LSeqStringSetChar(LOperand* context, LOperand* string, LOperand* index,
LOperand* value) {
inputs_[0] = context;
inputs_[1] = string;
@@ -1515,8 +1467,7 @@ class LPower V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LArithmeticD V8_FINAL : public LTemplateInstruction<1, 2, 0> {
public:
- LArithmeticD(Token::Value op, LOperand* left, LOperand* right)
- : op_(op) {
+ LArithmeticD(Token::Value op, LOperand* left, LOperand* right) : op_(op) {
inputs_[0] = left;
inputs_[1] = right;
}
@@ -1538,9 +1489,7 @@ class LArithmeticD V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LArithmeticT V8_FINAL : public LTemplateInstruction<1, 3, 0> {
public:
- LArithmeticT(Token::Value op,
- LOperand* context,
- LOperand* left,
+ LArithmeticT(Token::Value op, LOperand* context, LOperand* left,
LOperand* right)
: op_(op) {
inputs_[0] = context;
@@ -1589,9 +1538,7 @@ class LReturn V8_FINAL : public LTemplateInstruction<0, 3, 0> {
class LLoadNamedField V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LLoadNamedField(LOperand* object) {
- inputs_[0] = object;
- }
+ explicit LLoadNamedField(LOperand* object) { inputs_[0] = object; }
LOperand* object() { return inputs_[0]; }
@@ -1621,9 +1568,7 @@ class LLoadNamedGeneric V8_FINAL : public LTemplateInstruction<1, 2, 1> {
class LLoadFunctionPrototype V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LLoadFunctionPrototype(LOperand* function) {
- inputs_[0] = function;
- }
+ explicit LLoadFunctionPrototype(LOperand* function) { inputs_[0] = function; }
LOperand* function() { return inputs_[0]; }
@@ -1650,12 +1595,8 @@ class LLoadKeyed V8_FINAL : public LTemplateInstruction<1, 2, 0> {
LOperand* elements() { return inputs_[0]; }
LOperand* key() { return inputs_[1]; }
- ElementsKind elements_kind() const {
- return hydrogen()->elements_kind();
- }
- bool is_external() const {
- return hydrogen()->is_external();
- }
+ ElementsKind elements_kind() const { return hydrogen()->elements_kind(); }
+ bool is_external() const { return hydrogen()->is_external(); }
bool is_fixed_typed_array() const {
return hydrogen()->is_fixed_typed_array();
}
@@ -1736,9 +1677,7 @@ class LStoreGlobalCell V8_FINAL : public LTemplateInstruction<0, 1, 1> {
class LLoadContextSlot V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LLoadContextSlot(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LLoadContextSlot(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -1772,9 +1711,7 @@ class LStoreContextSlot V8_FINAL : public LTemplateInstruction<0, 2, 0> {
class LPushArgument V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LPushArgument(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LPushArgument(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -1784,7 +1721,7 @@ class LPushArgument V8_FINAL : public LTemplateInstruction<0, 1, 0> {
class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
public:
- explicit LDrop(int count) : count_(count) { }
+ explicit LDrop(int count) : count_(count) {}
int count() const { return count_; }
@@ -1795,7 +1732,7 @@ class LDrop V8_FINAL : public LTemplateInstruction<0, 0, 0> {
};
-class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
+class LStoreCodeEntry V8_FINAL : public LTemplateInstruction<0, 2, 0> {
public:
LStoreCodeEntry(LOperand* function, LOperand* code_object) {
inputs_[0] = function;
@@ -1812,7 +1749,7 @@ class LStoreCodeEntry V8_FINAL: public LTemplateInstruction<0, 2, 0> {
};
-class LInnerAllocatedObject V8_FINAL: public LTemplateInstruction<1, 2, 0> {
+class LInnerAllocatedObject V8_FINAL : public LTemplateInstruction<1, 2, 0> {
public:
LInnerAllocatedObject(LOperand* base_object, LOperand* offset) {
inputs_[0] = base_object;
@@ -1844,9 +1781,7 @@ class LContext V8_FINAL : public LTemplateInstruction<1, 0, 0> {
class LDeclareGlobals V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LDeclareGlobals(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LDeclareGlobals(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -1857,9 +1792,7 @@ class LDeclareGlobals V8_FINAL : public LTemplateInstruction<0, 1, 0> {
class LCallJSFunction V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LCallJSFunction(LOperand* function) {
- inputs_[0] = function;
- }
+ explicit LCallJSFunction(LOperand* function) { inputs_[0] = function; }
LOperand* function() { return inputs_[0]; }
@@ -1875,10 +1808,9 @@ class LCallJSFunction V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LCallWithDescriptor V8_FINAL : public LTemplateResultInstruction<1> {
public:
LCallWithDescriptor(const InterfaceDescriptor* descriptor,
- const ZoneList<LOperand*>& operands,
- Zone* zone)
- : descriptor_(descriptor),
- inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
+ const ZoneList<LOperand*>& operands, Zone* zone)
+ : descriptor_(descriptor),
+ inputs_(descriptor->GetRegisterParameterCount() + 1, zone) {
DCHECK(descriptor->GetRegisterParameterCount() + 1 == operands.length());
inputs_.AddAll(operands, zone);
}
@@ -1983,9 +1915,7 @@ class LCallNewArray V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LCallRuntime V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LCallRuntime(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LCallRuntime(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -2004,9 +1934,7 @@ class LCallRuntime V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LInteger32ToDouble V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LInteger32ToDouble(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LInteger32ToDouble(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2016,9 +1944,7 @@ class LInteger32ToDouble V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LUint32ToDouble V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LUint32ToDouble(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LUint32ToDouble(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2077,9 +2003,7 @@ class LNumberTagD V8_FINAL : public LTemplateInstruction<1, 1, 2> {
class LDoubleToSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LDoubleToSmi(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LDoubleToSmi(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2093,9 +2017,7 @@ class LDoubleToSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> {
// Sometimes truncating conversion from a tagged value to an int32.
class LDoubleToI V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LDoubleToI(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LDoubleToI(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2109,9 +2031,7 @@ class LDoubleToI V8_FINAL : public LTemplateInstruction<1, 1, 0> {
// Truncating conversion from a tagged value to an int32.
class LTaggedToI V8_FINAL : public LTemplateInstruction<1, 1, 2> {
public:
- LTaggedToI(LOperand* value,
- LOperand* temp,
- LOperand* temp2) {
+ LTaggedToI(LOperand* value, LOperand* temp, LOperand* temp2) {
inputs_[0] = value;
temps_[0] = temp;
temps_[1] = temp2;
@@ -2130,9 +2050,7 @@ class LTaggedToI V8_FINAL : public LTemplateInstruction<1, 1, 2> {
class LSmiTag V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LSmiTag(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LSmiTag(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2143,9 +2061,7 @@ class LSmiTag V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LNumberUntagD V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LNumberUntagD(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LNumberUntagD(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2156,8 +2072,7 @@ class LNumberUntagD V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LSmiUntag V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- LSmiUntag(LOperand* value, bool needs_check)
- : needs_check_(needs_check) {
+ LSmiUntag(LOperand* value, bool needs_check) : needs_check_(needs_check) {
inputs_[0] = value;
}
@@ -2234,9 +2149,7 @@ class LStoreKeyed V8_FINAL : public LTemplateInstruction<0, 3, 0> {
LOperand* elements() { return inputs_[0]; }
LOperand* key() { return inputs_[1]; }
LOperand* value() { return inputs_[2]; }
- ElementsKind elements_kind() const {
- return hydrogen()->elements_kind();
- }
+ ElementsKind elements_kind() const { return hydrogen()->elements_kind(); }
DECLARE_CONCRETE_INSTRUCTION(StoreKeyed, "store-keyed")
DECLARE_HYDROGEN_ACCESSOR(StoreKeyed)
@@ -2255,9 +2168,7 @@ class LStoreKeyed V8_FINAL : public LTemplateInstruction<0, 3, 0> {
class LStoreKeyedGeneric V8_FINAL : public LTemplateInstruction<0, 4, 0> {
public:
- LStoreKeyedGeneric(LOperand* context,
- LOperand* obj,
- LOperand* key,
+ LStoreKeyedGeneric(LOperand* context, LOperand* obj, LOperand* key,
LOperand* value) {
inputs_[0] = context;
inputs_[1] = obj;
@@ -2281,8 +2192,7 @@ class LStoreKeyedGeneric V8_FINAL : public LTemplateInstruction<0, 4, 0> {
class LTransitionElementsKind V8_FINAL : public LTemplateInstruction<0, 2, 1> {
public:
- LTransitionElementsKind(LOperand* object,
- LOperand* context,
+ LTransitionElementsKind(LOperand* object, LOperand* context,
LOperand* new_map_temp) {
inputs_[0] = object;
inputs_[1] = context;
@@ -2310,8 +2220,7 @@ class LTransitionElementsKind V8_FINAL : public LTemplateInstruction<0, 2, 1> {
class LTrapAllocationMemento V8_FINAL : public LTemplateInstruction<0, 1, 1> {
public:
- LTrapAllocationMemento(LOperand* object,
- LOperand* temp) {
+ LTrapAllocationMemento(LOperand* object, LOperand* temp) {
inputs_[0] = object;
temps_[0] = temp;
}
@@ -2319,8 +2228,7 @@ class LTrapAllocationMemento V8_FINAL : public LTemplateInstruction<0, 1, 1> {
LOperand* object() { return inputs_[0]; }
LOperand* temp() { return temps_[0]; }
- DECLARE_CONCRETE_INSTRUCTION(TrapAllocationMemento,
- "trap-allocation-memento")
+ DECLARE_CONCRETE_INSTRUCTION(TrapAllocationMemento, "trap-allocation-memento")
};
@@ -2341,7 +2249,6 @@ class LStringAdd V8_FINAL : public LTemplateInstruction<1, 3, 0> {
};
-
class LStringCharCodeAt V8_FINAL : public LTemplateInstruction<1, 3, 0> {
public:
LStringCharCodeAt(LOperand* context, LOperand* string, LOperand* index) {
@@ -2376,9 +2283,7 @@ class LStringCharFromCode V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LCheckValue V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LCheckValue(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LCheckValue(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2389,9 +2294,7 @@ class LCheckValue V8_FINAL : public LTemplateInstruction<0, 1, 0> {
class LCheckInstanceType V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LCheckInstanceType(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LCheckInstanceType(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2402,9 +2305,7 @@ class LCheckInstanceType V8_FINAL : public LTemplateInstruction<0, 1, 0> {
class LCheckMaps V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LCheckMaps(LOperand* value = NULL) {
- inputs_[0] = value;
- }
+ explicit LCheckMaps(LOperand* value = NULL) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2415,9 +2316,7 @@ class LCheckMaps V8_FINAL : public LTemplateInstruction<0, 1, 0> {
class LCheckSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LCheckSmi(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LCheckSmi(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2427,9 +2326,7 @@ class LCheckSmi V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LCheckNonSmi V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LCheckNonSmi(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LCheckNonSmi(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2440,9 +2337,7 @@ class LCheckNonSmi V8_FINAL : public LTemplateInstruction<0, 1, 0> {
class LClampDToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LClampDToUint8(LOperand* unclamped) {
- inputs_[0] = unclamped;
- }
+ explicit LClampDToUint8(LOperand* unclamped) { inputs_[0] = unclamped; }
LOperand* unclamped() { return inputs_[0]; }
@@ -2452,9 +2347,7 @@ class LClampDToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LClampIToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LClampIToUint8(LOperand* unclamped) {
- inputs_[0] = unclamped;
- }
+ explicit LClampIToUint8(LOperand* unclamped) { inputs_[0] = unclamped; }
LOperand* unclamped() { return inputs_[0]; }
@@ -2478,9 +2371,7 @@ class LClampTToUint8 V8_FINAL : public LTemplateInstruction<1, 1, 1> {
class LDoubleBits V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LDoubleBits(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LDoubleBits(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2505,9 +2396,7 @@ class LConstructDouble V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LAllocate V8_FINAL : public LTemplateInstruction<1, 2, 2> {
public:
- LAllocate(LOperand* context,
- LOperand* size,
- LOperand* temp1,
+ LAllocate(LOperand* context, LOperand* size, LOperand* temp1,
LOperand* temp2) {
inputs_[0] = context;
inputs_[1] = size;
@@ -2527,9 +2416,7 @@ class LAllocate V8_FINAL : public LTemplateInstruction<1, 2, 2> {
class LRegExpLiteral V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LRegExpLiteral(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LRegExpLiteral(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -2540,9 +2427,7 @@ class LRegExpLiteral V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LFunctionLiteral V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LFunctionLiteral(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LFunctionLiteral(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -2553,9 +2438,7 @@ class LFunctionLiteral V8_FINAL : public LTemplateInstruction<1, 1, 0> {
class LToFastProperties V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LToFastProperties(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LToFastProperties(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2580,9 +2463,7 @@ class LTypeof V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LTypeofIsAndBranch V8_FINAL : public LControlInstruction<1, 0> {
public:
- explicit LTypeofIsAndBranch(LOperand* value) {
- inputs_[0] = value;
- }
+ explicit LTypeofIsAndBranch(LOperand* value) { inputs_[0] = value; }
LOperand* value() { return inputs_[0]; }
@@ -2597,9 +2478,7 @@ class LTypeofIsAndBranch V8_FINAL : public LControlInstruction<1, 0> {
class LIsConstructCallAndBranch V8_FINAL : public LControlInstruction<0, 1> {
public:
- explicit LIsConstructCallAndBranch(LOperand* temp) {
- temps_[0] = temp;
- }
+ explicit LIsConstructCallAndBranch(LOperand* temp) { temps_[0] = temp; }
LOperand* temp() { return temps_[0]; }
@@ -2621,9 +2500,7 @@ class LOsrEntry V8_FINAL : public LTemplateInstruction<0, 0, 0> {
class LStackCheck V8_FINAL : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LStackCheck(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LStackCheck(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -2653,17 +2530,13 @@ class LForInPrepareMap V8_FINAL : public LTemplateInstruction<1, 2, 0> {
class LForInCacheArray V8_FINAL : public LTemplateInstruction<1, 1, 0> {
public:
- explicit LForInCacheArray(LOperand* map) {
- inputs_[0] = map;
- }
+ explicit LForInCacheArray(LOperand* map) { inputs_[0] = map; }
LOperand* map() { return inputs_[0]; }
DECLARE_CONCRETE_INSTRUCTION(ForInCacheArray, "for-in-cache-array")
- int idx() {
- return HForInCacheArray::cast(this->hydrogen_value())->idx();
- }
+ int idx() { return HForInCacheArray::cast(this->hydrogen_value())->idx(); }
};
@@ -2695,11 +2568,9 @@ class LLoadFieldByIndex V8_FINAL : public LTemplateInstruction<1, 2, 0> {
};
-class LStoreFrameContext: public LTemplateInstruction<0, 1, 0> {
+class LStoreFrameContext : public LTemplateInstruction<0, 1, 0> {
public:
- explicit LStoreFrameContext(LOperand* context) {
- inputs_[0] = context;
- }
+ explicit LStoreFrameContext(LOperand* context) { inputs_[0] = context; }
LOperand* context() { return inputs_[0]; }
@@ -2707,7 +2578,7 @@ class LStoreFrameContext: public LTemplateInstruction<0, 1, 0> {
};
-class LAllocateBlockContext: public LTemplateInstruction<1, 2, 0> {
+class LAllocateBlockContext : public LTemplateInstruction<1, 2, 0> {
public:
LAllocateBlockContext(LOperand* context, LOperand* function) {
inputs_[0] = context;
@@ -2727,8 +2598,7 @@ class LAllocateBlockContext: public LTemplateInstruction<1, 2, 0> {
class LChunkBuilder;
class LPlatformChunk V8_FINAL : public LChunk {
public:
- LPlatformChunk(CompilationInfo* info, HGraph* graph)
- : LChunk(info, graph) { }
+ LPlatformChunk(CompilationInfo* info, HGraph* graph) : LChunk(info, graph) {}
int GetNextSpillIndex(RegisterKind kind);
LOperand* GetNextSpillSlot(RegisterKind kind);
@@ -2746,14 +2616,14 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase {
current_instruction_(NULL),
current_block_(NULL),
next_block_(NULL),
- allocator_(allocator) { }
+ allocator_(allocator) {}
Isolate* isolate() const { return graph_->isolate(); }
// Build the sequence for the graph.
LPlatformChunk* Build();
- // Declare methods that deal with the individual node types.
+// Declare methods that deal with the individual node types.
#define DECLARE_DO(type) LInstruction* Do##type(H##type* node);
HYDROGEN_CONCRETE_INSTRUCTION_LIST(DECLARE_DO)
#undef DECLARE_DO
@@ -2784,12 +2654,7 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase {
LInstruction* DoFlooringDivI(HMathFloorOfDiv* instr);
private:
- enum Status {
- UNUSED,
- BUILDING,
- DONE,
- ABORTED
- };
+ enum Status { UNUSED, BUILDING, DONE, ABORTED };
LPlatformChunk* chunk() const { return chunk_; }
CompilationInfo* info() const { return info_; }
@@ -2859,8 +2724,7 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase {
LInstruction* DefineAsSpilled(LTemplateResultInstruction<1>* instr,
int index);
LInstruction* DefineSameAsFirst(LTemplateResultInstruction<1>* instr);
- LInstruction* DefineFixed(LTemplateResultInstruction<1>* instr,
- Register reg);
+ LInstruction* DefineFixed(LTemplateResultInstruction<1>* instr, Register reg);
LInstruction* DefineFixedDouble(LTemplateResultInstruction<1>* instr,
DoubleRegister reg);
LInstruction* AssignEnvironment(LInstruction* instr);
@@ -2872,8 +2736,7 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase {
// cannot deoptimize eagerly and we do not attach environment to this
// instruction.
LInstruction* MarkAsCall(
- LInstruction* instr,
- HInstruction* hinstr,
+ LInstruction* instr, HInstruction* hinstr,
CanDeoptimize can_deoptimize = CANNOT_DEOPTIMIZE_EAGERLY);
void VisitInstruction(HInstruction* current);
@@ -2883,8 +2746,7 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase {
LInstruction* DoShift(Token::Value op, HBitwiseBinaryOperation* instr);
LInstruction* DoArithmeticD(Token::Value op,
HArithmeticBinaryOperation* instr);
- LInstruction* DoArithmeticT(Token::Value op,
- HBinaryOperation* instr);
+ LInstruction* DoArithmeticT(Token::Value op, HBinaryOperation* instr);
LPlatformChunk* chunk_;
CompilationInfo* info_;
@@ -2900,7 +2762,7 @@ class LChunkBuilder V8_FINAL : public LChunkBuilderBase {
#undef DECLARE_HYDROGEN_ACCESSOR
#undef DECLARE_CONCRETE_INSTRUCTION
+}
+} // namespace v8::internal
-} } // namespace v8::internal
-
-#endif // V8_ARM_LITHIUM_ARM_H_
+#endif // V8_PPC_LITHIUM_PPC_H_

Powered by Google App Engine
This is Rietveld 408576698