| OLD | NEW | 
|---|
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 "src/crankshaft/s390/lithium-s390.h" | 5 #include "src/crankshaft/s390/lithium-s390.h" | 
| 6 | 6 | 
| 7 #include <sstream> | 7 #include <sstream> | 
| 8 | 8 | 
| 9 #include "src/crankshaft/hydrogen-osr.h" | 9 #include "src/crankshaft/hydrogen-osr.h" | 
| 10 #include "src/crankshaft/lithium-inl.h" | 10 #include "src/crankshaft/lithium-inl.h" | 
| (...skipping 821 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 832 } | 832 } | 
| 833 | 833 | 
| 834 LInstruction* LChunkBuilder::DoGoto(HGoto* instr) { | 834 LInstruction* LChunkBuilder::DoGoto(HGoto* instr) { | 
| 835   return new (zone()) LGoto(instr->FirstSuccessor()); | 835   return new (zone()) LGoto(instr->FirstSuccessor()); | 
| 836 } | 836 } | 
| 837 | 837 | 
| 838 LInstruction* LChunkBuilder::DoBranch(HBranch* instr) { | 838 LInstruction* LChunkBuilder::DoBranch(HBranch* instr) { | 
| 839   HValue* value = instr->value(); | 839   HValue* value = instr->value(); | 
| 840   Representation r = value->representation(); | 840   Representation r = value->representation(); | 
| 841   HType type = value->type(); | 841   HType type = value->type(); | 
| 842   ToBooleanStub::Types expected = instr->expected_input_types(); | 842   ToBooleanICStub::Types expected = instr->expected_input_types(); | 
| 843   if (expected.IsEmpty()) expected = ToBooleanStub::Types::Generic(); | 843   if (expected.IsEmpty()) expected = ToBooleanICStub::Types::Generic(); | 
| 844 | 844 | 
| 845   bool easy_case = !r.IsTagged() || type.IsBoolean() || type.IsSmi() || | 845   bool easy_case = !r.IsTagged() || type.IsBoolean() || type.IsSmi() || | 
| 846                    type.IsJSArray() || type.IsHeapNumber() || type.IsString(); | 846                    type.IsJSArray() || type.IsHeapNumber() || type.IsString(); | 
| 847   LInstruction* branch = new (zone()) LBranch(UseRegister(value)); | 847   LInstruction* branch = new (zone()) LBranch(UseRegister(value)); | 
| 848   if (!easy_case && | 848   if (!easy_case && | 
| 849       ((!expected.Contains(ToBooleanStub::SMI) && expected.NeedsMap()) || | 849       ((!expected.Contains(ToBooleanICStub::SMI) && expected.NeedsMap()) || | 
| 850        !expected.IsGeneric())) { | 850        !expected.IsGeneric())) { | 
| 851     branch = AssignEnvironment(branch); | 851     branch = AssignEnvironment(branch); | 
| 852   } | 852   } | 
| 853   return branch; | 853   return branch; | 
| 854 } | 854 } | 
| 855 | 855 | 
| 856 LInstruction* LChunkBuilder::DoDebugBreak(HDebugBreak* instr) { | 856 LInstruction* LChunkBuilder::DoDebugBreak(HDebugBreak* instr) { | 
| 857   return new (zone()) LDebugBreak(); | 857   return new (zone()) LDebugBreak(); | 
| 858 } | 858 } | 
| 859 | 859 | 
| (...skipping 1435 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2295   return AssignPointerMap(result); | 2295   return AssignPointerMap(result); | 
| 2296 } | 2296 } | 
| 2297 | 2297 | 
| 2298 LInstruction* LChunkBuilder::DoStoreFrameContext(HStoreFrameContext* instr) { | 2298 LInstruction* LChunkBuilder::DoStoreFrameContext(HStoreFrameContext* instr) { | 
| 2299   LOperand* context = UseRegisterAtStart(instr->context()); | 2299   LOperand* context = UseRegisterAtStart(instr->context()); | 
| 2300   return new (zone()) LStoreFrameContext(context); | 2300   return new (zone()) LStoreFrameContext(context); | 
| 2301 } | 2301 } | 
| 2302 | 2302 | 
| 2303 }  // namespace internal | 2303 }  // namespace internal | 
| 2304 }  // namespace v8 | 2304 }  // namespace v8 | 
| OLD | NEW | 
|---|