| OLD | NEW | 
|---|
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 #if V8_TARGET_ARCH_S390 | 5 #if V8_TARGET_ARCH_S390 | 
| 6 | 6 | 
| 7 #include "src/ast/compile-time-value.h" | 7 #include "src/ast/compile-time-value.h" | 
| 8 #include "src/ast/scopes.h" | 8 #include "src/ast/scopes.h" | 
| 9 #include "src/builtins/builtins-constructor.h" | 9 #include "src/builtins/builtins-constructor.h" | 
| 10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" | 
| (...skipping 1579 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1590         __ lr(ip, scratch2);  // 32 bit load | 1590         __ lr(ip, scratch2);  // 32 bit load | 
| 1591         __ sra(ip, Operand(31)); | 1591         __ sra(ip, Operand(31)); | 
| 1592         __ cr_z(ip, scratch1);  // 32 bit compare | 1592         __ cr_z(ip, scratch1);  // 32 bit compare | 
| 1593         __ bne(&stub_call); | 1593         __ bne(&stub_call); | 
| 1594 #else | 1594 #else | 
| 1595         __ SmiUntag(ip, right); | 1595         __ SmiUntag(ip, right); | 
| 1596         __ LoadRR(scratch2, left);  // load into low order of reg pair | 1596         __ LoadRR(scratch2, left);  // load into low order of reg pair | 
| 1597         __ mr_z(scratch1, ip);      // R4:R5 = R5 * ip | 1597         __ mr_z(scratch1, ip);      // R4:R5 = R5 * ip | 
| 1598         // Check for overflowing the smi range - no overflow if higher 33 bits | 1598         // Check for overflowing the smi range - no overflow if higher 33 bits | 
| 1599         // of the result are identical. | 1599         // of the result are identical. | 
| 1600         __ TestIfInt32(scratch1, scratch2, ip); | 1600         __ lr(ip, scratch2);  // 32 bit load | 
|  | 1601         __ sra(ip, Operand(31)); | 
|  | 1602         __ cr_z(ip, scratch1);  // 32 bit compare | 
| 1601         __ bne(&stub_call); | 1603         __ bne(&stub_call); | 
| 1602 #endif | 1604 #endif | 
| 1603         // Go slow on zero result to handle -0. | 1605         // Go slow on zero result to handle -0. | 
| 1604         __ chi(scratch2, Operand::Zero()); | 1606         __ chi(scratch2, Operand::Zero()); | 
| 1605         __ beq(&mul_zero, Label::kNear); | 1607         __ beq(&mul_zero, Label::kNear); | 
| 1606 #if V8_TARGET_ARCH_S390X | 1608 #if V8_TARGET_ARCH_S390X | 
| 1607         __ SmiTag(right, scratch2); | 1609         __ SmiTag(right, scratch2); | 
| 1608 #else | 1610 #else | 
| 1609         __ LoadRR(right, scratch2); | 1611         __ LoadRR(right, scratch2); | 
| 1610 #endif | 1612 #endif | 
| (...skipping 1113 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 2724   USE(kOSRBranchInstruction); | 2726   USE(kOSRBranchInstruction); | 
| 2725   DCHECK(kOSRBranchInstruction == br_instr); | 2727   DCHECK(kOSRBranchInstruction == br_instr); | 
| 2726 | 2728 | 
| 2727   DCHECK(interrupt_address == | 2729   DCHECK(interrupt_address == | 
| 2728          isolate->builtins()->OnStackReplacement()->entry()); | 2730          isolate->builtins()->OnStackReplacement()->entry()); | 
| 2729   return ON_STACK_REPLACEMENT; | 2731   return ON_STACK_REPLACEMENT; | 
| 2730 } | 2732 } | 
| 2731 }  // namespace internal | 2733 }  // namespace internal | 
| 2732 }  // namespace v8 | 2734 }  // namespace v8 | 
| 2733 #endif  // V8_TARGET_ARCH_S390 | 2735 #endif  // V8_TARGET_ARCH_S390 | 
| OLD | NEW | 
|---|