Closed Bug 1946086 Opened 2 months ago Closed 2 months ago

Support three operand shift/bitwise operations when one operand is an immediate

Categories

(Core :: JavaScript Engine: JIT, enhancement)

enhancement

Tracking

()

RESOLVED FIXED
137 Branch
Tracking Status
firefox137 --- fixed

People

(Reporter: anba, Assigned: anba)

References

(Blocks 1 open bug)

Details

Attachments

(5 files)

Support three operand shift/bitwise operations to replace:

masm.move32(src, dest);
masm.rshift32(Imm32(n), dest);

with:

masm.rshift32(Imm32(n), src, dest);

This helps to avoid a register move for non-x86/x64 targets.

Part 2 will update code to use the three-operand functions.

Part 4 will update code to use the three-operand functions.

Use the existing three operand method in two places.

Pushed by andre.bargull@gmail.com: https://hg.mozilla.org/integration/autoland/rev/dfe5282ff253 Part 1: Add three-operand shift operations. r=jandem https://hg.mozilla.org/integration/autoland/rev/299fa59e05df Part 2: Use three-operand shift instructions. r=jandem https://hg.mozilla.org/integration/autoland/rev/fa847db27e7b Part 3: Add three-operand bitwise operations. r=jandem https://hg.mozilla.org/integration/autoland/rev/bc8e264aecbd Part 4: Use three-operand bitwise instructions. r=jandem https://hg.mozilla.org/integration/autoland/rev/caf217a2262f Part 5: Use three-operand add instruction. r=jandem
Blocks: 1947750
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: