| 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/compiler/simplified-lowering.h" | 5 #include "src/compiler/simplified-lowering.h" | 
| 6 | 6 | 
| 7 #include <limits> | 7 #include <limits> | 
| 8 | 8 | 
| 9 #include "src/base/bits.h" | 9 #include "src/base/bits.h" | 
| 10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" | 
| (...skipping 708 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 719         StoreRepresentation rep = OpParameter<StoreRepresentation>(node); | 719         StoreRepresentation rep = OpParameter<StoreRepresentation>(node); | 
| 720         ProcessInput(node, 0, tBase);   // pointer or object | 720         ProcessInput(node, 0, tBase);   // pointer or object | 
| 721         ProcessInput(node, 1, kMachInt32);  // index | 721         ProcessInput(node, 1, kMachInt32);  // index | 
| 722         ProcessInput(node, 2, rep.machine_type()); | 722         ProcessInput(node, 2, rep.machine_type()); | 
| 723         ProcessRemainingInputs(node, 3); | 723         ProcessRemainingInputs(node, 3); | 
| 724         SetOutput(node, 0); | 724         SetOutput(node, 0); | 
| 725         break; | 725         break; | 
| 726       } | 726       } | 
| 727       case IrOpcode::kWord32Shr: | 727       case IrOpcode::kWord32Shr: | 
| 728         // We output unsigned int32 for shift right because JavaScript. | 728         // We output unsigned int32 for shift right because JavaScript. | 
| 729         return VisitBinop(node, kRepWord32, kRepWord32 | kTypeUint32); | 729         return VisitBinop(node, kMachUint32, kMachUint32); | 
| 730       case IrOpcode::kWord32And: | 730       case IrOpcode::kWord32And: | 
| 731       case IrOpcode::kWord32Or: | 731       case IrOpcode::kWord32Or: | 
| 732       case IrOpcode::kWord32Xor: | 732       case IrOpcode::kWord32Xor: | 
| 733       case IrOpcode::kWord32Shl: | 733       case IrOpcode::kWord32Shl: | 
| 734       case IrOpcode::kWord32Sar: | 734       case IrOpcode::kWord32Sar: | 
| 735         // We use signed int32 as the output type for these word32 operations, | 735         // We use signed int32 as the output type for these word32 operations, | 
| 736         // though the machine bits are the same for either signed or unsigned, | 736         // though the machine bits are the same for either signed or unsigned, | 
| 737         // because JavaScript considers the result from these operations signed. | 737         // because JavaScript considers the result from these operations signed. | 
| 738         return VisitBinop(node, kRepWord32, kRepWord32 | kTypeInt32); | 738         return VisitBinop(node, kRepWord32, kRepWord32 | kTypeInt32); | 
| 739       case IrOpcode::kWord32Equal: | 739       case IrOpcode::kWord32Equal: | 
| (...skipping 393 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1133 void SimplifiedLowering::DoStringLessThanOrEqual(Node* node) { | 1133 void SimplifiedLowering::DoStringLessThanOrEqual(Node* node) { | 
| 1134   node->set_op(machine()->IntLessThanOrEqual()); | 1134   node->set_op(machine()->IntLessThanOrEqual()); | 
| 1135   node->ReplaceInput(0, StringComparison(node, true)); | 1135   node->ReplaceInput(0, StringComparison(node, true)); | 
| 1136   node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); | 1136   node->ReplaceInput(1, jsgraph()->SmiConstant(EQUAL)); | 
| 1137 } | 1137 } | 
| 1138 | 1138 | 
| 1139 | 1139 | 
| 1140 }  // namespace compiler | 1140 }  // namespace compiler | 
| 1141 }  // namespace internal | 1141 }  // namespace internal | 
| 1142 }  // namespace v8 | 1142 }  // namespace v8 | 
| OLD | NEW | 
|---|