Index: src/compiler/arm64/instruction-selector-arm64.cc |
diff --git a/src/compiler/arm64/instruction-selector-arm64.cc b/src/compiler/arm64/instruction-selector-arm64.cc |
index 26e9b8cad9010594ca22b5308bad624acdf67c35..d7d11702e4c99827521485ec95ebfcd6728abb8d 100644 |
--- a/src/compiler/arm64/instruction-selector-arm64.cc |
+++ b/src/compiler/arm64/instruction-selector-arm64.cc |
@@ -278,7 +278,7 @@ void VisitAddSub(InstructionSelector* selector, Node* node, ArchOpcode opcode, |
g.CanBeImmediate(-m.right().Value(), kArithmeticImm)) { |
selector->Emit(negate_opcode, g.DefineAsRegister(node), |
g.UseRegister(m.left().node()), |
- g.TempImmediate(-m.right().Value())); |
+ g.TempImmediate(static_cast<int32_t>(-m.right().Value()))); |
} else { |
VisitBinop<Matcher>(selector, node, opcode, kArithmeticImm); |
} |
@@ -595,7 +595,8 @@ void InstructionSelector::VisitWord64And(Node* node) { |
Emit(kArm64Ubfx, g.DefineAsRegister(node), |
g.UseRegister(mleft.left().node()), |
- g.UseImmediate(mleft.right().node()), g.TempImmediate(mask_width)); |
+ g.UseImmediate(mleft.right().node()), |
+ g.TempImmediate(static_cast<int32_t>(mask_width))); |
return; |
} |
// Other cases fall through to the normal And operation. |
@@ -731,8 +732,9 @@ void InstructionSelector::VisitWord64Shr(Node* node) { |
if ((mask_msb + mask_width + lsb) == 64) { |
DCHECK_EQ(lsb, base::bits::CountTrailingZeros64(mask)); |
Emit(kArm64Ubfx, g.DefineAsRegister(node), |
- g.UseRegister(mleft.left().node()), g.TempImmediate(lsb), |
- g.TempImmediate(mask_width)); |
+ g.UseRegister(mleft.left().node()), |
+ g.TempImmediate(static_cast<int32_t>(lsb)), |
+ g.TempImmediate(static_cast<int32_t>(mask_width))); |
return; |
} |
} |
@@ -1229,8 +1231,8 @@ void InstructionSelector::VisitCall(Node* node, BasicBlock* handler) { |
FrameStateDescriptor* frame_state_descriptor = nullptr; |
if (descriptor->NeedsFrameState()) { |
- frame_state_descriptor = |
- GetFrameStateDescriptor(node->InputAt(descriptor->InputCount())); |
+ frame_state_descriptor = GetFrameStateDescriptor( |
+ node->InputAt(static_cast<int>(descriptor->InputCount()))); |
} |
CallBuffer buffer(zone(), descriptor, frame_state_descriptor); |
@@ -1242,8 +1244,8 @@ void InstructionSelector::VisitCall(Node* node, BasicBlock* handler) { |
InitializeCallBuffer(node, &buffer, true, false); |
// Push the arguments to the stack. |
- bool pushed_count_uneven = buffer.pushed_nodes.size() & 1; |
- int aligned_push_count = buffer.pushed_nodes.size(); |
+ int aligned_push_count = static_cast<int>(buffer.pushed_nodes.size()); |
+ bool pushed_count_uneven = aligned_push_count & 1; |
// TODO(dcarney): claim and poke probably take small immediates, |
// loop here or whatever. |
// Bump the stack pointer(s). |
@@ -1254,7 +1256,7 @@ void InstructionSelector::VisitCall(Node* node, BasicBlock* handler) { |
} |
// Move arguments to the stack. |
{ |
- int slot = buffer.pushed_nodes.size() - 1; |
+ int slot = aligned_push_count - 1; |
// Emit the uneven pushes. |
if (pushed_count_uneven) { |
Node* input = buffer.pushed_nodes[slot]; |
@@ -1344,8 +1346,8 @@ void InstructionSelector::VisitTailCall(Node* node) { |
} else { |
FrameStateDescriptor* frame_state_descriptor = nullptr; |
if (descriptor->NeedsFrameState()) { |
- frame_state_descriptor = |
- GetFrameStateDescriptor(node->InputAt(descriptor->InputCount())); |
+ frame_state_descriptor = GetFrameStateDescriptor( |
+ node->InputAt(static_cast<int>(descriptor->InputCount()))); |
} |
CallBuffer buffer(zone(), descriptor, frame_state_descriptor); |
@@ -1357,8 +1359,8 @@ void InstructionSelector::VisitTailCall(Node* node) { |
InitializeCallBuffer(node, &buffer, true, false); |
// Push the arguments to the stack. |
- bool pushed_count_uneven = buffer.pushed_nodes.size() & 1; |
- int aligned_push_count = buffer.pushed_nodes.size(); |
+ int aligned_push_count = static_cast<int>(buffer.pushed_nodes.size()); |
+ bool pushed_count_uneven = aligned_push_count & 1; |
// TODO(dcarney): claim and poke probably take small immediates, |
// loop here or whatever. |
// Bump the stack pointer(s). |
@@ -1369,7 +1371,7 @@ void InstructionSelector::VisitTailCall(Node* node) { |
} |
// Move arguments to the stack. |
{ |
- int slot = buffer.pushed_nodes.size() - 1; |
+ int slot = aligned_push_count - 1; |
// Emit the uneven pushes. |
if (pushed_count_uneven) { |
Node* input = buffer.pushed_nodes[slot]; |