Closed
Bug 1481727
Opened 6 years ago
Closed 6 years ago
elfhack corner case after bug 1423822
Categories
(Firefox Build System :: General, enhancement)
Firefox Build System
General
Tracking
(firefox63 fixed)
RESOLVED
FIXED
mozilla63
Tracking | Status | |
---|---|---|
firefox63 | --- | fixed |
People
(Reporter: glandium, Assigned: glandium)
References
Details
Attachments
(1 file)
(deleted),
patch
|
froydnj
:
review+
|
Details | Diff | Splinter Review |
No description provided.
Assignee | ||
Comment 1•6 years ago
|
||
Bug 1423822 moved the injected code section before the .text section.
When linking with lld, the text section is usually page aligned, and
starting a PT_LOAD. We inject code at the beginning of the PT_LOAD,
which means the PT_LOAD is going to be extended at least a page
downwards. And it means the preceding PT_LOAD can't finish in that same
page, so the overhead of the injected code is needs to account for the
page alignment.
Attachment #8998469 -
Flags: review?(nfroyd)
Comment 2•6 years ago
|
||
Comment on attachment 8998469 [details] [diff] [review]
Fix an elfhack corner case after bug 1423822
Review of attachment 8998469 [details] [diff] [review]:
-----------------------------------------------------------------
::: build/unix/elfhack/elfhack.cpp
@@ +1085,2 @@
> size_t align = first_executable->getSegmentByType(PT_LOAD)->getAlign();
> + size_t new_size = relhack->getSize() + relhackcode->getSize() + relhackcode->getAddr() & (align - 1);
This is a slightly odd expression for dealing with page alignment, but I'm not sure how to make it more clearer, short of expanding the comment quite a bit.
Attachment #8998469 -
Flags: review?(nfroyd) → review+
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/mozilla-inbound/rev/068870abe0cc
Fix an elfhack corner case after bug 1423822. r=froydnj
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b353e89db751
Fix up for bug 1481727, because operator priorities are fucked up in C/C++. r=bustage on a CLOSED TREE
Assignee | ||
Comment 5•6 years ago
|
||
(In reply to Pulsebot from comment #4)
> Pushed by mh@glandium.org:
> https://hg.mozilla.org/integration/mozilla-inbound/rev/b353e89db751
> Fix up for bug 1481727, because operator priorities are fucked up in C/C++.
> r=bustage on a CLOSED TREE
Because who would expect a + b & c to mean (a + b) & c?
Comment 6•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/068870abe0cc
https://hg.mozilla.org/mozilla-central/rev/b353e89db751
Status: NEW → RESOLVED
Closed: 6 years ago
status-firefox63:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
You need to log in
before you can comment on or make changes to this bug.
Description
•