tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 54f10183962564b677dc18fb22bad35301c83aca
parent 9af98b31d66efbabb08ca8a8b3965134043895f6
Author: André Bargull <andre.bargull@gmail.com>
Date:   Thu, 23 Oct 2025 09:56:09 +0000

Bug 1995495 - Part 1: Prefer neg[w] to negate a register. r=spidermonkey-reviewers,iain

Differential Revision: https://phabricator.services.mozilla.com/D269365

Diffstat:
Mjs/src/jit/riscv64/MacroAssembler-riscv64-inl.h | 6+++---
Mjs/src/jit/riscv64/MacroAssembler-riscv64.cpp | 6+++---
2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/js/src/jit/riscv64/MacroAssembler-riscv64-inl.h b/js/src/jit/riscv64/MacroAssembler-riscv64-inl.h @@ -1869,11 +1869,11 @@ void MacroAssembler::negateDouble(FloatRegister reg) { fneg_d(reg, reg); } void MacroAssembler::negateFloat(FloatRegister reg) { fneg_s(reg, reg); } -void MacroAssembler::neg64(Register64 reg) { sub(reg.reg, zero, reg.reg); } +void MacroAssembler::neg64(Register64 reg) { neg(reg.reg, reg.reg); } -void MacroAssembler::negPtr(Register reg) { sub(reg, zero, reg); } +void MacroAssembler::negPtr(Register reg) { neg(reg, reg); } -void MacroAssembler::neg32(Register reg) { subw(reg, zero, reg); } +void MacroAssembler::neg32(Register reg) { negw(reg, reg); } void MacroAssembler::not32(Register reg) { not_(reg, reg); } void MacroAssembler::notPtr(Register reg) { not_(reg, reg); } diff --git a/js/src/jit/riscv64/MacroAssembler-riscv64.cpp b/js/src/jit/riscv64/MacroAssembler-riscv64.cpp @@ -6560,7 +6560,7 @@ void MacroAssemblerRiscv64::ma_mod_mask(Register src, Register dest, bind(&negative); ma_li(hold, Imm32(-1)); - subw(remain, zero, remain); + negw(remain, remain); // Begin the main loop. bind(&head); @@ -6590,9 +6590,9 @@ void MacroAssemblerRiscv64::ma_mod_mask(Register src, Register dest, if (negZero != nullptr) { // Jump out in case of negative zero. ma_b(hold, hold, negZero, Zero); - subw(dest, zero, dest); + negw(dest, dest); } else { - subw(dest, zero, dest); + negw(dest, dest); } bind(&done);