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
-~----------~----~----~----~------~----~------~--~---