Reviewers: Vyacheslav Egorov,
Description:
Small fixes to hash seeding code, discovered during
review of back port.
Please review this at http://codereview.chromium.org/9187006/
SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
Affected files:
M src/ia32/macro-assembler-ia32.cc
M src/objects.h
Index: src/ia32/macro-assembler-ia32.cc
===================================================================
--- src/ia32/macro-assembler-ia32.cc (revision 10367)
+++ src/ia32/macro-assembler-ia32.cc (working copy)
@@ -649,7 +649,7 @@
void MacroAssembler::EnterExitFramePrologue() {
- // Setup the frame structure on the stack.
+ // Set up the frame structure on the stack.
ASSERT(ExitFrameConstants::kCallerSPDisplacement == +2 * kPointerSize);
ASSERT(ExitFrameConstants::kCallerPCOffset == +1 * kPointerSize);
ASSERT(ExitFrameConstants::kCallerFPOffset == 0 * kPointerSize);
@@ -701,7 +701,7 @@
void MacroAssembler::EnterExitFrame(bool save_doubles) {
EnterExitFramePrologue();
- // Setup argc and argv in callee-saved registers.
+ // Set up argc and argv in callee-saved registers.
int offset = StandardFrameConstants::kCallerSPOffset - kPointerSize;
mov(edi, eax);
lea(esi, Operand(ebp, eax, times_4, offset));
@@ -1002,6 +1002,7 @@
ExternalReference roots_array_start =
ExternalReference::roots_array_start(isolate());
mov(scratch, Immediate(Heap::kHashSeedRootIndex));
+ SmiUntag(scratch);
xor_(r0, Operand::StaticArray(scratch,
times_pointer_size,
roots_array_start));
Index: src/objects.h
===================================================================
--- src/objects.h (revision 10367)
+++ src/objects.h (working copy)
@@ -2604,7 +2604,7 @@
}
static uint32_t HashForObject(Key key, Object* object) { return 0; }
static uint32_t SeededHashForObject(Key key, uint32_t seed, Object*
object) {
- // Won't be called if UsesSeed isn't overridden by child class.
+ ASSERT(UsesSeed);
return HashForObject(key, object);
}
};
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev