Open Bug 807173 Opened 12 years ago Updated 2 years ago

IonMonkey: Remove double LoadSlot in SS bitwise-and loop.

Categories

(Core :: JavaScript Engine, defect)

defect

Tracking

()

People

(Reporter: sstangl, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [ion:t])

The tight loop in SS's bitwise-and contains the following MIR: > 23 LoadSlot slots136 (Int32) > ... > 29 LoadSlot slots136 (Double) > 33 TruncateToInt32 LoadSlot29 Obviously if the first LoadSlot succeeds, then the second LoadSlot must also be an Int32. There are two independent ways to go about fixing this: 1) A Double LoadSlot with no other uses other than a truncation should be replaced with an instruction that passes through ints (rather than converting them) and converts doubles (rather than passing them through). 2) We should just emit a LoadSlot(Int32) in the first place. Avoids the branch implicit in #1.
Assignee: general → nobody
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.