OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include <sstream> | 5 #include <sstream> |
6 | 6 |
7 #if V8_TARGET_ARCH_MIPS | 7 #if V8_TARGET_ARCH_MIPS |
8 | 8 |
9 #include "src/hydrogen-osr.h" | 9 #include "src/hydrogen-osr.h" |
10 #include "src/lithium-inl.h" | 10 #include "src/lithium-inl.h" |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
168 | 168 |
169 void LCompareNumericAndBranch::PrintDataTo(StringStream* stream) { | 169 void LCompareNumericAndBranch::PrintDataTo(StringStream* stream) { |
170 stream->Add("if "); | 170 stream->Add("if "); |
171 left()->PrintTo(stream); | 171 left()->PrintTo(stream); |
172 stream->Add(" %s ", Token::String(op())); | 172 stream->Add(" %s ", Token::String(op())); |
173 right()->PrintTo(stream); | 173 right()->PrintTo(stream); |
174 stream->Add(" then B%d else B%d", true_block_id(), false_block_id()); | 174 stream->Add(" then B%d else B%d", true_block_id(), false_block_id()); |
175 } | 175 } |
176 | 176 |
177 | 177 |
178 void LIsObjectAndBranch::PrintDataTo(StringStream* stream) { | |
179 stream->Add("if is_object("); | |
180 value()->PrintTo(stream); | |
181 stream->Add(") then B%d else B%d", true_block_id(), false_block_id()); | |
182 } | |
183 | |
184 | |
185 void LIsStringAndBranch::PrintDataTo(StringStream* stream) { | 178 void LIsStringAndBranch::PrintDataTo(StringStream* stream) { |
186 stream->Add("if is_string("); | 179 stream->Add("if is_string("); |
187 value()->PrintTo(stream); | 180 value()->PrintTo(stream); |
188 stream->Add(") then B%d else B%d", true_block_id(), false_block_id()); | 181 stream->Add(") then B%d else B%d", true_block_id(), false_block_id()); |
189 } | 182 } |
190 | 183 |
191 | 184 |
192 void LIsSmiAndBranch::PrintDataTo(StringStream* stream) { | 185 void LIsSmiAndBranch::PrintDataTo(StringStream* stream) { |
193 stream->Add("if is_smi("); | 186 stream->Add("if is_smi("); |
194 value()->PrintTo(stream); | 187 value()->PrintTo(stream); |
(...skipping 1521 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1716 | 1709 |
1717 | 1710 |
1718 LInstruction* LChunkBuilder::DoCompareMinusZeroAndBranch( | 1711 LInstruction* LChunkBuilder::DoCompareMinusZeroAndBranch( |
1719 HCompareMinusZeroAndBranch* instr) { | 1712 HCompareMinusZeroAndBranch* instr) { |
1720 LOperand* value = UseRegister(instr->value()); | 1713 LOperand* value = UseRegister(instr->value()); |
1721 LOperand* scratch = TempRegister(); | 1714 LOperand* scratch = TempRegister(); |
1722 return new(zone()) LCompareMinusZeroAndBranch(value, scratch); | 1715 return new(zone()) LCompareMinusZeroAndBranch(value, scratch); |
1723 } | 1716 } |
1724 | 1717 |
1725 | 1718 |
1726 LInstruction* LChunkBuilder::DoIsObjectAndBranch(HIsObjectAndBranch* instr) { | |
1727 DCHECK(instr->value()->representation().IsTagged()); | |
1728 LOperand* temp = TempRegister(); | |
1729 return new(zone()) LIsObjectAndBranch(UseRegisterAtStart(instr->value()), | |
1730 temp); | |
1731 } | |
1732 | |
1733 | |
1734 LInstruction* LChunkBuilder::DoIsStringAndBranch(HIsStringAndBranch* instr) { | 1719 LInstruction* LChunkBuilder::DoIsStringAndBranch(HIsStringAndBranch* instr) { |
1735 DCHECK(instr->value()->representation().IsTagged()); | 1720 DCHECK(instr->value()->representation().IsTagged()); |
1736 LOperand* temp = TempRegister(); | 1721 LOperand* temp = TempRegister(); |
1737 return new(zone()) LIsStringAndBranch(UseRegisterAtStart(instr->value()), | 1722 return new(zone()) LIsStringAndBranch(UseRegisterAtStart(instr->value()), |
1738 temp); | 1723 temp); |
1739 } | 1724 } |
1740 | 1725 |
1741 | 1726 |
1742 LInstruction* LChunkBuilder::DoIsSmiAndBranch(HIsSmiAndBranch* instr) { | 1727 LInstruction* LChunkBuilder::DoIsSmiAndBranch(HIsSmiAndBranch* instr) { |
1743 DCHECK(instr->value()->representation().IsTagged()); | 1728 DCHECK(instr->value()->representation().IsTagged()); |
(...skipping 913 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2657 LOperand* function = UseRegisterAtStart(instr->function()); | 2642 LOperand* function = UseRegisterAtStart(instr->function()); |
2658 LAllocateBlockContext* result = | 2643 LAllocateBlockContext* result = |
2659 new(zone()) LAllocateBlockContext(context, function); | 2644 new(zone()) LAllocateBlockContext(context, function); |
2660 return MarkAsCall(DefineFixed(result, cp), instr); | 2645 return MarkAsCall(DefineFixed(result, cp), instr); |
2661 } | 2646 } |
2662 | 2647 |
2663 } // namespace internal | 2648 } // namespace internal |
2664 } // namespace v8 | 2649 } // namespace v8 |
2665 | 2650 |
2666 #endif // V8_TARGET_ARCH_MIPS | 2651 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |