Reviewers: Michail Naganov,

Message:
Misha, may you have a look?

Description:
Fix a build for Win64 with VS2008.

It complaints of type conversions.

Please review this at http://codereview.chromium.org/3396015/show

Affected files:
  M test/cctest/test-log-stack-tracer.cc


Index: test/cctest/test-log-stack-tracer.cc
diff --git a/test/cctest/test-log-stack-tracer.cc b/test/cctest/test-log-stack-tracer.cc index b0cf93d9e70af509e68aeb3d5a953d7be17e847d..9162ffd48cd75c8e78593b65dbd27eba8708ff5c 100644
--- a/test/cctest/test-log-stack-tracer.cc
+++ b/test/cctest/test-log-stack-tracer.cc
@@ -241,11 +241,12 @@ static v8::Handle<Value> construct_call(const v8::Arguments& args) {
   CHECK(calling_frame->is_java_script());

 #if defined(V8_HOST_ARCH_32_BIT)
-  int32_t low_bits = reinterpret_cast<intptr_t>(calling_frame->fp());
+  int32_t low_bits = reinterpret_cast<int32_t>(calling_frame->fp());
   args.This()->Set(v8_str("low_bits"), v8_num(low_bits >> 1));
 #elif defined(V8_HOST_ARCH_64_BIT)
-  int32_t low_bits = reinterpret_cast<uintptr_t>(calling_frame->fp());
- int32_t high_bits = reinterpret_cast<uintptr_t>(calling_frame->fp()) >> 32;
+  uint64_t fp = reinterpret_cast<uint64_t>(calling_frame->fp());
+  int32_t low_bits = fp & 0xffffffff;
+  int32_t high_bits = fp >> 32;
   args.This()->Set(v8_str("low_bits"), v8_num(low_bits));
   args.This()->Set(v8_str("high_bits"), v8_num(high_bits));
 #else


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to