Use hydrogen accessor instead of copying members.
BUG= TEST= Review URL: http://codereview.chromium.org/6119001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
a50e69bda5
commit
1152cab095
@ -1285,12 +1285,7 @@ LInstruction* LChunkBuilder::DoCompareMapAndBranch(
|
||||
HCompareMapAndBranch* instr) {
|
||||
ASSERT(instr->value()->representation().IsTagged());
|
||||
LOperand* value = UseRegisterAtStart(instr->value());
|
||||
HBasicBlock* first = instr->FirstSuccessor();
|
||||
HBasicBlock* second = instr->SecondSuccessor();
|
||||
return new LCmpMapAndBranch(value,
|
||||
instr->map(),
|
||||
first->block_id(),
|
||||
second->block_id());
|
||||
return new LCmpMapAndBranch(value);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1145,27 +1145,20 @@ class LBranch: public LUnaryOperation {
|
||||
|
||||
class LCmpMapAndBranch: public LUnaryOperation {
|
||||
public:
|
||||
LCmpMapAndBranch(LOperand* value,
|
||||
Handle<Map> map,
|
||||
int true_block_id,
|
||||
int false_block_id)
|
||||
: LUnaryOperation(value),
|
||||
map_(map),
|
||||
true_block_id_(true_block_id),
|
||||
false_block_id_(false_block_id) { }
|
||||
explicit LCmpMapAndBranch(LOperand* value) : LUnaryOperation(value) { }
|
||||
|
||||
DECLARE_CONCRETE_INSTRUCTION(CmpMapAndBranch, "cmp-map-and-branch")
|
||||
DECLARE_HYDROGEN_ACCESSOR(CompareMapAndBranch)
|
||||
|
||||
virtual bool IsControl() const { return true; }
|
||||
|
||||
Handle<Map> map() const { return map_; }
|
||||
int true_block_id() const { return true_block_id_; }
|
||||
int false_block_id() const { return false_block_id_; }
|
||||
|
||||
private:
|
||||
Handle<Map> map_;
|
||||
int true_block_id_;
|
||||
int false_block_id_;
|
||||
Handle<Map> map() const { return hydrogen()->map(); }
|
||||
int true_block_id() const {
|
||||
return hydrogen()->true_destination()->block_id();
|
||||
}
|
||||
int false_block_id() const {
|
||||
return hydrogen()->false_destination()->block_id();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user