Closed Bug 661647 Opened 14 years ago Closed 6 years ago

compare(String,String) optimizations don't happen on 64-bit

Categories

(Tamarin Graveyard :: Baseline JIT (CodegenLIR), defect, P3)

x86_64
All
defect

Tracking

(Not tracked)

RESOLVED WONTFIX
Q3 12 - Dolores

People

(Reporter: edwsmith, Unassigned)

Details

(Whiteboard: loose-end, has-patch, PACMAN)

Attachments

(1 file)

This logic uses LIR_calli to detect string,string comparisons involving String.charAt(), but since the helper functions return string pointers, the check should be LIR_callp. Basically these optimizations are disabled on x64. if (lht == STRING_TYPE && rht == STRING_TYPE) { if (localGetp(lhsi)->opcode() == LIR_calli) { LIns* result = optimizeStringCmpWithStringCall(lhsi, rhsi, icmp, false); if (result) return result; } else if (localGetp(rhsi)->opcode() == LIR_calli) { LIns* result = optimizeStringCmpWithStringCall(rhsi, lhsi, icmp, true); if (result) return result; } }
I targeted Serrano just to get it through the decision process, but if not Serrano, I recommend Anza -- low hanging fruit, why wait.
Flags: flashplayer-qrb?
Priority: -- → P3
Hardware: All → x86_64
Target Milestone: --- → Q3 11 - Serrano
Summary: compare(String,String) optimizations dont' happen on 64-bit → compare(String,String) optimizations don't happen on 64-bit
Target Milestone: Q3 11 - Serrano → Q4 11 - Anza
Flags: flashplayer-qrb?
Flags: flashplayer-qrb+
Flags: flashplayer-injection-
Flags: flashplayer-bug+
Assignee: nobody → edwsmith
Target Milestone: Q4 11 - Anza → Q2 12 - Cyril
Target Milestone: Q2 12 - Cyril → Q1 12 - Brannan
Whiteboard: loose-end
Assignee: edwsmith → nobody
Target Milestone: Q1 12 - Brannan → Q3 12 - Dolores
Whiteboard: loose-end → loose-end, has-patch
Whiteboard: loose-end, has-patch → loose-end, has-patch, PACMAN
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: