commit | 6ded16be15dd865a9b21ea304d5273c8be299c87 | [log] [tgz] |
---|---|---|
author | Steve Block <steveblock@google.com> | Mon May 10 14:33:55 2010 +0100 |
committer | Steve Block <steveblock@google.com> | Mon May 10 15:08:22 2010 +0100 |
tree | b3661ae5d929e233f7024223f3fad0f2a284cd6e | |
parent | 6599b9dd3411791c9d89ab7efbfb4131e5664c48 [diff] [blame] |
Update V8 to r4588 We're using WebKit r58033, as used by http://src.chromium.org/svn/releases/5.0.387.0/DEPS This requires http://v8.googlecode.com/svn/trunk@4465 but this version has a crashing bug for ARM. Instead we use http://v8.googlecode.com/svn/trunk@4588, which is used by http://src.chromium.org/svn/releases/6.0.399.0/DEPS Note that a trivial bug fix was required in arm/codegen-arm.cc. This is guarded with ANDROID. See http://code.google.com/p/v8/issues/detail?id=703 Change-Id: I459647a8286c4f8c7405f0c5581ecbf051a6f1e8
diff --git a/src/x64/assembler-x64-inl.h b/src/x64/assembler-x64-inl.h index 9c7f9b6..c9ab627 100644 --- a/src/x64/assembler-x64-inl.h +++ b/src/x64/assembler-x64-inl.h
@@ -89,6 +89,11 @@ } +void Assembler::emit_rex_64(Register reg, XMMRegister rm_reg) { + emit(0x48 | (reg.code() & 0x8) >> 1 | rm_reg.code() >> 3); +} + + void Assembler::emit_rex_64(Register reg, const Operand& op) { emit(0x48 | reg.high_bit() << 2 | op.rex_); } @@ -160,6 +165,12 @@ } +void Assembler::emit_optional_rex_32(Register reg, XMMRegister base) { + byte rex_bits = (reg.code() & 0x8) >> 1 | (base.code() & 0x8) >> 3; + if (rex_bits != 0) emit(0x40 | rex_bits); +} + + void Assembler::emit_optional_rex_32(Register rm_reg) { if (rm_reg.high_bit()) emit(0x41); }