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/ppc/lithium-ppc.h" | 5 #include "src/crankshaft/ppc/lithium-ppc.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 1939 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1950 return DefineAsRegister(new (zone()) LClampIToUint8(reg)); | 1950 return DefineAsRegister(new (zone()) LClampIToUint8(reg)); |
1951 } else { | 1951 } else { |
1952 DCHECK(input_rep.IsSmiOrTagged()); | 1952 DCHECK(input_rep.IsSmiOrTagged()); |
1953 LClampTToUint8* result = | 1953 LClampTToUint8* result = |
1954 new (zone()) LClampTToUint8(reg, TempDoubleRegister()); | 1954 new (zone()) LClampTToUint8(reg, TempDoubleRegister()); |
1955 return AssignEnvironment(DefineAsRegister(result)); | 1955 return AssignEnvironment(DefineAsRegister(result)); |
1956 } | 1956 } |
1957 } | 1957 } |
1958 | 1958 |
1959 | 1959 |
1960 LInstruction* LChunkBuilder::DoDoubleBits(HDoubleBits* instr) { | |
1961 HValue* value = instr->value(); | |
1962 DCHECK(value->representation().IsDouble()); | |
1963 return DefineAsRegister(new (zone()) LDoubleBits(UseRegister(value))); | |
1964 } | |
1965 | |
1966 | |
1967 LInstruction* LChunkBuilder::DoReturn(HReturn* instr) { | 1960 LInstruction* LChunkBuilder::DoReturn(HReturn* instr) { |
1968 LOperand* context = info()->IsStub() ? UseFixed(instr->context(), cp) : NULL; | 1961 LOperand* context = info()->IsStub() ? UseFixed(instr->context(), cp) : NULL; |
1969 LOperand* parameter_count = UseRegisterOrConstant(instr->parameter_count()); | 1962 LOperand* parameter_count = UseRegisterOrConstant(instr->parameter_count()); |
1970 return new (zone()) | 1963 return new (zone()) |
1971 LReturn(UseFixed(instr->value(), r3), context, parameter_count); | 1964 LReturn(UseFixed(instr->value(), r3), context, parameter_count); |
1972 } | 1965 } |
1973 | 1966 |
1974 | 1967 |
1975 LInstruction* LChunkBuilder::DoConstant(HConstant* instr) { | 1968 LInstruction* LChunkBuilder::DoConstant(HConstant* instr) { |
1976 Representation r = instr->representation(); | 1969 Representation r = instr->representation(); |
(...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2472 LInstruction* LChunkBuilder::DoLoadFieldByIndex(HLoadFieldByIndex* instr) { | 2465 LInstruction* LChunkBuilder::DoLoadFieldByIndex(HLoadFieldByIndex* instr) { |
2473 LOperand* object = UseRegister(instr->object()); | 2466 LOperand* object = UseRegister(instr->object()); |
2474 LOperand* index = UseTempRegister(instr->index()); | 2467 LOperand* index = UseTempRegister(instr->index()); |
2475 LLoadFieldByIndex* load = new (zone()) LLoadFieldByIndex(object, index); | 2468 LLoadFieldByIndex* load = new (zone()) LLoadFieldByIndex(object, index); |
2476 LInstruction* result = DefineSameAsFirst(load); | 2469 LInstruction* result = DefineSameAsFirst(load); |
2477 return AssignPointerMap(result); | 2470 return AssignPointerMap(result); |
2478 } | 2471 } |
2479 | 2472 |
2480 } // namespace internal | 2473 } // namespace internal |
2481 } // namespace v8 | 2474 } // namespace v8 |
OLD | NEW |