Author: [email protected]
Date: Fri Jun 19 02:12:20 2009
New Revision: 2223

Modified:
    branches/bleeding_edge/AUTHORS
    branches/bleeding_edge/src/x64/assembler-x64-inl.h
    branches/bleeding_edge/src/x64/assembler-x64.cc
    branches/bleeding_edge/src/x64/assembler-x64.h

Log:
Clarify precedence of operations involving bitwise and(&) in x64/assembler.
Review URL: http://codereview.chromium.org/131099

Modified: branches/bleeding_edge/AUTHORS
==============================================================================
--- branches/bleeding_edge/AUTHORS      (original)
+++ branches/bleeding_edge/AUTHORS      Fri Jun 19 02:12:20 2009
@@ -6,6 +6,7 @@
  Google Inc.

  Alexander Botero-Lowry <[email protected]>
+Alexandre Vassalotti <[email protected]>
  Craig Schlenter <[email protected]>
  Daniel Andersson <[email protected]>
  Daniel James <[email protected]>

Modified: branches/bleeding_edge/src/x64/assembler-x64-inl.h
==============================================================================
--- branches/bleeding_edge/src/x64/assembler-x64-inl.h  (original)
+++ branches/bleeding_edge/src/x64/assembler-x64-inl.h  Fri Jun 19 02:12:20  
2009
@@ -123,7 +123,7 @@


  void Assembler::emit_optional_rex_32(Register rm_reg) {
-  if (rm_reg.code() & 0x8 != 0) emit(0x41);
+  if (rm_reg.code() > 0x7) emit(0x41);
  }



Modified: branches/bleeding_edge/src/x64/assembler-x64.cc
==============================================================================
--- branches/bleeding_edge/src/x64/assembler-x64.cc     (original)
+++ branches/bleeding_edge/src/x64/assembler-x64.cc     Fri Jun 19 02:12:20 2009
@@ -1021,7 +1021,7 @@
    last_pc_ = pc_;
    ASSERT(!Heap::InNewSpace(*value));
    emit_rex_64(dst);
-  emit(0xB8 | dst.code() & 0x7);
+  emit(0xB8 | (dst.code() & 0x7));
    if (value->IsHeapObject()) {
      emitq(reinterpret_cast<uintptr_t>(value.location()), mode);
    } else {

Modified: branches/bleeding_edge/src/x64/assembler-x64.h
==============================================================================
--- branches/bleeding_edge/src/x64/assembler-x64.h      (original)
+++ branches/bleeding_edge/src/x64/assembler-x64.h      Fri Jun 19 02:12:20 2009
@@ -45,7 +45,7 @@
  // Test whether a 64-bit value is in a specific range.
  static inline bool is_uint32(int64_t x) {
    const int64_t kUInt32Mask = V8_INT64_C(0xffffffff);
-  return x == x & kUInt32Mask;
+  return x == (x & kUInt32Mask);
  }

  static inline bool is_int32(int64_t x) {

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

Reply via email to