Closed
Bug 1487341
Opened 6 years ago
Closed 6 years ago
Simplify Truncate(), SetLength() and Capacity() and write them in terms of StartBulkWriteImpl()
Categories
(Core :: XPCOM, enhancement)
Core
XPCOM
Tracking
()
RESOLVED
FIXED
mozilla64
Tracking | Status | |
---|---|---|
firefox64 | --- | fixed |
People
(Reporter: hsivonen, Assigned: hsivonen)
References
Details
(Keywords: perf)
Attachments
(1 file)
Once bug 1486711 has landed successfully, Truncate(), SetLength() and Capacity() can become simpler and faster.
Assignee | ||
Comment 1•6 years ago
|
||
MozReview-Commit-ID: 2LeRrWcN8vF
Assignee | ||
Comment 2•6 years ago
|
||
Note to self: Search for SetCapacity(0) and replace with Truncate().
Assignee | ||
Comment 3•6 years ago
|
||
Try run: https://treeherder.mozilla.org/#/jobs?repo=try&revision=e48f40d3918333a5c97c6a79ed9145da3b8e2811
Assignee | ||
Comment 4•6 years ago
|
||
(In reply to Henri Sivonen (:hsivonen) from comment #3) > Try run: > https://treeherder.mozilla.org/#/ > jobs?repo=try&revision=e48f40d3918333a5c97c6a79ed9145da3b8e2811 Lots and lots of application crashed [@ mozilla::Base64URLEncode(unsigned int, unsigned char const*, mozilla::Base64URLEncodePaddingPolicy, nsTSubstring<char>&)]
Assignee | ||
Comment 5•6 years ago
|
||
I managed to miss a SetCapacity() call in Base64.cpp!
Assignee | ||
Comment 6•6 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=c01f56d85ed5439d7bb40156ac5e129ce6cb656b
Updated•6 years ago
|
Attachment #9005160 -
Attachment description: Bug 1487341 - Simplify Truncate(), SetLength() and Capacity() by writing them in terms of StartBulkWriteImpl(). → Bug 1487341 - Make Truncate(), SetLength() and Capacity() more efficient by keeping memcpying to the minimum.
Assignee | ||
Comment 7•6 years ago
|
||
A new try run with the fix for bug 1488452: https://treeherder.mozilla.org/#/jobs?repo=try&revision=fd687d068c4943ea1c53d3d814efe0752b966e4a
Assignee | ||
Comment 8•6 years ago
|
||
A new try run with the Oculus loader fix: https://treeherder.mozilla.org/#/jobs?repo=try&revision=ca05cb7010caf28cf2ec3f773895b676431c0023
Assignee | ||
Comment 9•6 years ago
|
||
Opt try run: https://treeherder.mozilla.org/#/jobs?repo=try&revision=2b9aab798efafb79497b6c2343be3d456ac4ba09
Assignee | ||
Comment 10•6 years ago
|
||
Opt try run after rebase: https://treeherder.mozilla.org/#/jobs?repo=try&revision=125dda84e41afb61428bd18a8d10552dff5107d1
Comment 11•6 years ago
|
||
Comment on attachment 9005160 [details] Bug 1487341 - Make Truncate(), SetLength() and Capacity() more efficient by keeping memcpying to the minimum. Nathan Froyd [:froydnj] has approved the revision.
Attachment #9005160 -
Flags: review+
Assignee | ||
Comment 12•6 years ago
|
||
(In reply to Henri Sivonen (:hsivonen) from comment #10) > Opt try run after rebase: > https://treeherder.mozilla.org/#/ > jobs?repo=try&revision=125dda84e41afb61428bd18a8d10552dff5107d1 This is full of fail. I'll try to track down what goes wrong. For starters, trying to repro locally leads to a hang when the sandboxing code calls lstat for /sys/dev/char/ . I'll try to see if I get something more tractable in gtest with the sandbox disabled.
Assignee | ||
Comment 13•6 years ago
|
||
Oops. I had a function call whose side effects mattered within the argument of a MOZ_ASSERT.
Assignee | ||
Comment 14•6 years ago
|
||
Try run with trivial fix: https://treeherder.mozilla.org/#/jobs?repo=try&revision=4042ab5579669de5722a146667f4891bfd572c06
Comment 15•6 years ago
|
||
Pushed by hsivonen@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/0bb09351c1c1 Make Truncate(), SetLength() and Capacity() more efficient by keeping memcpying to the minimum. r=froydnj
Comment 16•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/0bb09351c1c1
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
status-firefox64:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Assignee | ||
Comment 17•6 years ago
|
||
Need to investigate if bug 1494634 is fallout from this one in the sense of this change exposing some edge case bug that has remained hidden for a decade.
Updated•3 years ago
|
Component: String → XPCOM
You need to log in
before you can comment on or make changes to this bug.
Description
•