Index: src/arm/macro-assembler-arm.cc |
=================================================================== |
--- src/arm/macro-assembler-arm.cc (revision 10969) |
+++ src/arm/macro-assembler-arm.cc (working copy) |
@@ -3710,14 +3710,25 @@ |
} |
fschneider
2012/03/28 09:59:18
#ifdef DEBUG
Alexandre
2012/03/28 16:27:38
Done.
|
-bool AreAliased(Register r1, Register r2, Register r3, Register r4) { |
- if (r1.is(r2)) return true; |
- if (r1.is(r3)) return true; |
- if (r1.is(r4)) return true; |
- if (r2.is(r3)) return true; |
- if (r2.is(r4)) return true; |
- if (r3.is(r4)) return true; |
- return false; |
+bool AreAliased(Register reg1, |
+ Register reg2, |
+ Register reg3, |
+ Register reg4, |
+ Register reg5, |
+ Register reg6) { |
+ int n_of_valid_regs = reg1.is_valid() + reg2.is_valid() + |
+ reg3.is_valid() + reg4.is_valid() + reg5.is_valid() + reg6.is_valid(); |
+ |
+ RegList regs = 0; |
+ if (reg1.is_valid()) regs |= reg1.bit(); |
+ if (reg2.is_valid()) regs |= reg2.bit(); |
+ if (reg3.is_valid()) regs |= reg3.bit(); |
+ if (reg4.is_valid()) regs |= reg4.bit(); |
+ if (reg5.is_valid()) regs |= reg5.bit(); |
+ if (reg6.is_valid()) regs |= reg6.bit(); |
+ int n_of_non_aliasing_regs = NumRegs(regs); |
+ |
+ return n_of_valid_regs != n_of_non_aliasing_regs; |
} |
fschneider
2012/03/28 09:59:18
#endif // DEBUG
Alexandre
2012/03/28 16:27:38
Done.
|