Open Bug 777659 Opened 9 years ago Updated 7 years ago

IonMonkey: (ARM) fuse instructions

Categories

(Core :: JavaScript Engine, defect)

ARM
Linux
defect
Not set
normal

Tracking

()

People

(Reporter: mjrosenb, Unassigned)

Details

(Whiteboard: [ion:t])

Attachments

(1 file)

The basic idea is on ARM most of the ALU based instructions can take a (limited) integer, a register *or* a register shifted by some amount!  For the most part, we only use the first two modes, but by analyzing the MIR, we can generate add r0, r1, r2 lsl #4 rather than using two instructions, and giving the register allocator more work.  This patche is quite thoroughly hacked together, and probably needs some architectural fixes.
Attachment #646064 - Flags: feedback?(dvander)
Whiteboard: [js:t] → [ion:t]
Assignee: general → nobody
You need to log in before you can comment on or make changes to this bug.