commit 6276b3a03fb6aec4665902c8584f52491190a12f
parent 7de83b45c326c15ed2d73108da8bc757ec9c427b
Author: André Bargull <andre.bargull@gmail.com>
Date: Thu, 23 Oct 2025 09:56:08 +0000
Bug 1995491 - Part 4: Remove unnecessary Address copying. r=spidermonkey-reviewers,iain
Differential Revision: https://phabricator.services.mozilla.com/D269361
Diffstat:
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/js/src/jit/loong64/MacroAssembler-loong64.cpp b/js/src/jit/loong64/MacroAssembler-loong64.cpp
@@ -5623,14 +5623,14 @@ void MacroAssemblerLOONG64Compat::loadConstantDouble(double dp,
Register MacroAssemblerLOONG64Compat::extractObject(const Address& address,
Register scratch) {
- loadPtr(Address(address.base, address.offset), scratch);
+ loadPtr(address, scratch);
as_bstrpick_d(scratch, scratch, JSVAL_TAG_SHIFT - 1, 0);
return scratch;
}
Register MacroAssemblerLOONG64Compat::extractTag(const Address& address,
Register scratch) {
- loadPtr(Address(address.base, address.offset), scratch);
+ loadPtr(address, scratch);
as_bstrpick_d(scratch, scratch, 63, JSVAL_TAG_SHIFT);
return scratch;
}
diff --git a/js/src/jit/mips64/MacroAssembler-mips64.cpp b/js/src/jit/mips64/MacroAssembler-mips64.cpp
@@ -2047,14 +2047,14 @@ void MacroAssemblerMIPS64Compat::loadConstantDouble(double dp,
Register MacroAssemblerMIPS64Compat::extractObject(const Address& address,
Register scratch) {
- loadPtr(Address(address.base, address.offset), scratch);
+ loadPtr(address, scratch);
ma_dext(scratch, scratch, Imm32(0), Imm32(JSVAL_TAG_SHIFT));
return scratch;
}
Register MacroAssemblerMIPS64Compat::extractTag(const Address& address,
Register scratch) {
- loadPtr(Address(address.base, address.offset), scratch);
+ loadPtr(address, scratch);
ma_dext(scratch, scratch, Imm32(JSVAL_TAG_SHIFT),
Imm32(64 - JSVAL_TAG_SHIFT));
return scratch;
diff --git a/js/src/jit/riscv64/MacroAssembler-riscv64.cpp b/js/src/jit/riscv64/MacroAssembler-riscv64.cpp
@@ -2061,14 +2061,14 @@ void MacroAssemblerRiscv64Compat::loadConstantDouble(double dp,
Register MacroAssemblerRiscv64Compat::extractObject(const Address& address,
Register scratch) {
- loadPtr(Address(address.base, address.offset), scratch);
+ loadPtr(address, scratch);
ExtractBits(scratch, scratch, 0, JSVAL_TAG_SHIFT);
return scratch;
}
Register MacroAssemblerRiscv64Compat::extractTag(const Address& address,
Register scratch) {
- loadPtr(Address(address.base, address.offset), scratch);
+ loadPtr(address, scratch);
ExtractBits(scratch, scratch, JSVAL_TAG_SHIFT, 64 - JSVAL_TAG_SHIFT);
return scratch;
}