Reviewers: Benedikt Meurer, ulan,
Message:
num_pending_reloc_info_ was multiplied by 2 during the call of
ConstantPoolMarker and inside ConstantPoolMarker. The result was two many
bytes
taken in account as constant when disassembling.
Move the Constant pool comment after the branch over the pool to be more
readable.
Description:
ARM64: fix constant pool size used by disassembler
BUG=
[email protected], [email protected]
Please review this at https://codereview.chromium.org/225403005/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files (+2, -2 lines):
M src/arm64/assembler-arm64.cc
Index: src/arm64/assembler-arm64.cc
diff --git a/src/arm64/assembler-arm64.cc b/src/arm64/assembler-arm64.cc
index
c5280f2aa1b22ba39ecaa11d0bc52c132a767630..744cfccd247b8cdb64e0b0d31d6d9f5fc89016a5
100644
--- a/src/arm64/assembler-arm64.cc
+++ b/src/arm64/assembler-arm64.cc
@@ -647,7 +647,7 @@ int Assembler::ConstantPoolSizeAt(Instruction* instr) {
void Assembler::ConstantPoolMarker(uint32_t size) {
ASSERT(is_const_pool_blocked());
// + 1 is for the crash guard.
- Emit(LDR_x_lit | ImmLLiteral(2 * size + 1) | Rt(xzr));
+ Emit(LDR_x_lit | ImmLLiteral(size + 1) | Rt(xzr));
}
@@ -2590,7 +2590,6 @@ void Assembler::CheckConstPool(bool force_emit, bool
require_jump) {
{
// Block recursive calls to CheckConstPool and protect from veneer
pools.
BlockPoolsScope block_pools(this);
- RecordComment("[ Constant Pool");
RecordConstPool(pool_size);
// Emit jump over constant pool if necessary.
@@ -2610,6 +2609,7 @@ void Assembler::CheckConstPool(bool force_emit, bool
require_jump) {
// beginning of the constant pool.
// TODO(all): currently each relocated constant is 64 bits, consider
adding
// support for 32-bit entries.
+ RecordComment("[ Constant Pool");
ConstantPoolMarker(2 * num_pending_reloc_info_);
ConstantPoolGuard();
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.