Reviewers: ulan, JF,
Description:
Improve page flag checking sequence on ARM.
[email protected]
Please review this at https://codereview.chromium.org/11090021/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/arm/macro-assembler-arm.cc
Index: src/arm/macro-assembler-arm.cc
diff --git a/src/arm/macro-assembler-arm.cc b/src/arm/macro-assembler-arm.cc
index
cc7fc4d3a4203706ce0a9cccee63e43d2adbdbb2..cf95e77f0771c346e28c31943a50f0861dae587b
100644
--- a/src/arm/macro-assembler-arm.cc
+++ b/src/arm/macro-assembler-arm.cc
@@ -3497,7 +3497,8 @@ void MacroAssembler::CheckPageFlag(
int mask,
Condition cc,
Label* condition_met) {
- and_(scratch, object, Operand(~Page::kPageAlignmentMask));
+ Move(scratch, object);
+ Bfc(scratch, 0, kPageSizeBits);
ldr(scratch, MemOperand(scratch, MemoryChunk::kFlagsOffset));
tst(scratch, Operand(mask));
b(cc, condition_met);
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev