Index: src/arm/lithium-arm.cc |
=================================================================== |
--- src/arm/lithium-arm.cc (revision 7613) |
+++ src/arm/lithium-arm.cc (working copy) |
@@ -61,22 +61,21 @@ |
#ifdef DEBUG |
void LInstruction::VerifyCall() { |
- // Call instructions can use only fixed registers as |
- // temporaries and outputs because all registers |
- // are blocked by the calling convention. |
- // Inputs must use a fixed register. |
+ // Call instructions can use only fixed registers as temporaries and |
+ // outputs because all registers are blocked by the calling convention. |
+ // Inputs operands must use a fixed register or use-at-start policy or |
+ // a non-register policy. |
ASSERT(Output() == NULL || |
LUnallocated::cast(Output())->HasFixedPolicy() || |
!LUnallocated::cast(Output())->HasRegisterPolicy()); |
for (UseIterator it(this); it.HasNext(); it.Advance()) { |
- LOperand* operand = it.Next(); |
- ASSERT(LUnallocated::cast(operand)->HasFixedPolicy() || |
- !LUnallocated::cast(operand)->HasRegisterPolicy()); |
+ LUnallocated* operand = LUnallocated::cast(it.Next()); |
+ ASSERT(operand->HasFixedPolicy() || |
+ operand->IsUsedAtStart()); |
} |
for (TempIterator it(this); it.HasNext(); it.Advance()) { |
- LOperand* operand = it.Next(); |
- ASSERT(LUnallocated::cast(operand)->HasFixedPolicy() || |
- !LUnallocated::cast(operand)->HasRegisterPolicy()); |
+ LUnallocated* operand = LUnallocated::cast(it.Next()); |
+ ASSERT(operand->HasFixedPolicy() ||!operand->HasRegisterPolicy()); |
} |
} |
#endif |