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 "src/crankshaft/mips64/lithium-mips64.h" | 5 #include "src/crankshaft/mips64/lithium-mips64.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #if V8_TARGET_ARCH_MIPS64 | 9 #if V8_TARGET_ARCH_MIPS64 |
10 | 10 |
(...skipping 1919 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1930 } | 1930 } |
1931 | 1931 |
1932 | 1932 |
1933 LInstruction* LChunkBuilder::DoDoubleBits(HDoubleBits* instr) { | 1933 LInstruction* LChunkBuilder::DoDoubleBits(HDoubleBits* instr) { |
1934 HValue* value = instr->value(); | 1934 HValue* value = instr->value(); |
1935 DCHECK(value->representation().IsDouble()); | 1935 DCHECK(value->representation().IsDouble()); |
1936 return DefineAsRegister(new(zone()) LDoubleBits(UseRegister(value))); | 1936 return DefineAsRegister(new(zone()) LDoubleBits(UseRegister(value))); |
1937 } | 1937 } |
1938 | 1938 |
1939 | 1939 |
1940 LInstruction* LChunkBuilder::DoConstructDouble(HConstructDouble* instr) { | |
1941 LOperand* lo = UseRegister(instr->lo()); | |
1942 LOperand* hi = UseRegister(instr->hi()); | |
1943 return DefineAsRegister(new(zone()) LConstructDouble(hi, lo)); | |
1944 } | |
1945 | |
1946 | |
1947 LInstruction* LChunkBuilder::DoReturn(HReturn* instr) { | 1940 LInstruction* LChunkBuilder::DoReturn(HReturn* instr) { |
1948 LOperand* context = info()->IsStub() | 1941 LOperand* context = info()->IsStub() |
1949 ? UseFixed(instr->context(), cp) | 1942 ? UseFixed(instr->context(), cp) |
1950 : NULL; | 1943 : NULL; |
1951 LOperand* parameter_count = UseRegisterOrConstant(instr->parameter_count()); | 1944 LOperand* parameter_count = UseRegisterOrConstant(instr->parameter_count()); |
1952 return new(zone()) LReturn(UseFixed(instr->value(), v0), context, | 1945 return new(zone()) LReturn(UseFixed(instr->value(), v0), context, |
1953 parameter_count); | 1946 parameter_count); |
1954 } | 1947 } |
1955 | 1948 |
1956 | 1949 |
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2467 LOperand* index = UseTempRegister(instr->index()); | 2460 LOperand* index = UseTempRegister(instr->index()); |
2468 LLoadFieldByIndex* load = new(zone()) LLoadFieldByIndex(object, index); | 2461 LLoadFieldByIndex* load = new(zone()) LLoadFieldByIndex(object, index); |
2469 LInstruction* result = DefineSameAsFirst(load); | 2462 LInstruction* result = DefineSameAsFirst(load); |
2470 return AssignPointerMap(result); | 2463 return AssignPointerMap(result); |
2471 } | 2464 } |
2472 | 2465 |
2473 } // namespace internal | 2466 } // namespace internal |
2474 } // namespace v8 | 2467 } // namespace v8 |
2475 | 2468 |
2476 #endif // V8_TARGET_ARCH_MIPS64 | 2469 #endif // V8_TARGET_ARCH_MIPS64 |
OLD | NEW |