Closed Bug 616941 Opened 14 years ago Closed 6 years ago

Consider short strings for String.prototype.substring results

Categories

(Core :: JavaScript Engine, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: igor, Unassigned)

References

Details

Currently str_substring implementing String.prototype.substring always creates dependent strings even if the result fits the short string. Although the short strings do take more memory using them would avoid flattening of the base string if it is a rope. Another advantage of the short string is that it does not prevent the base string from the GC.

So even if using short strings unconditionally may slow things down we should consider using them even if the base string is a rope or a likely to be short-lived based, for example, on a length heuristics.
Assignee: general → nobody
This eventually tunnels into JSDependentString::new_ now, and that function implements the inline optimization, so this is fixed.
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.