Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(192)

Issue 1775603002: Fix timing of parseFunctions. (Closed)

Created:
4 years, 9 months ago by Karl
Modified:
4 years, 9 months ago
CC:
native-client-reviews_googlegroups.com
Base URL:
https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Fix timing of parseFunctions. The previous implementation was charging about 24% more time that it should to the function parser. The cause was that the time to "queue" the parsed functions, and the time to emit the assembled code (again including "queue" time) was not accounted for. About 15% was going to queuing costs, and 7% to emitting the ELF file. This CL adds timing of function translateFunctions, which captures most of the queueing costs, and timing for each of the major ELF emission functions (emitELF). This allows the corresponding costs to be better bucketed, and not charged to the time it takes to parse functions in bitcode files. Bug=None R=jpp@chromium.org, stichnot@chromium.org Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=b6e9b897d9cda26ee4272c041a620195db9beaed

Patch Set 1 #

Patch Set 2 : Fix nits. #

Total comments: 6

Patch Set 3 : Fix nits. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+26 lines, -6 lines) Patch
M src/IceCfg.cpp View 1 2 2 chunks +2 lines, -2 lines 0 comments Download
M src/IceCompiler.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M src/IceELFObjectWriter.cpp View 1 2 8 chunks +17 lines, -0 lines 0 comments Download
M src/IceGlobalContext.cpp View 1 2 2 chunks +2 lines, -1 line 0 comments Download
M src/IceTimerTree.def View 1 2 2 chunks +4 lines, -2 lines 0 comments Download

Messages

Total messages: 9 (4 generated)
Karl
4 years, 9 months ago (2016-03-07 21:45:09 UTC) #3
John
lgtm https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter.cpp File src/IceELFObjectWriter.cpp (right): https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter.cpp#newcode223 src/IceELFObjectWriter.cpp:223: constexpr Ice::TimerStackIdT StackID = Ice::GlobalContext::TSK_Funcs; No need to ...
4 years, 9 months ago (2016-03-07 22:40:39 UTC) #4
Jim Stichnoth
lgtm https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter.cpp File src/IceELFObjectWriter.cpp (right): https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter.cpp#newcode632 src/IceELFObjectWriter.cpp:632: void ELFObjectWriter::setUndefinedSyms(const ConstantList &UndefSyms) { I think you ...
4 years, 9 months ago (2016-03-07 23:20:12 UTC) #6
Karl
Committed patchset #3 (id:40001) manually as b6e9b897d9cda26ee4272c041a620195db9beaed (presubmit successful).
4 years, 9 months ago (2016-03-08 20:27:17 UTC) #8
Karl
4 years, 9 months ago (2016-03-08 21:52:47 UTC) #9
Message was sent while issue was closed.
https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter.cpp
File src/IceELFObjectWriter.cpp (right):

https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter....
src/IceELFObjectWriter.cpp:223: constexpr Ice::TimerStackIdT StackID =
Ice::GlobalContext::TSK_Funcs;
On 2016/03/07 22:40:39, John wrote:
> No need to fully qualify these.

Done.

https://codereview.chromium.org/1775603002/diff/20001/src/IceELFObjectWriter....
src/IceELFObjectWriter.cpp:632: void ELFObjectWriter::setUndefinedSyms(const
ConstantList &UndefSyms) {
On 2016/03/07 23:20:12, stichnot wrote:
> I think you need a TT_writeELF marker here as well.  This is based on reading
> the documentation at the start of the .h file.

Done.

https://codereview.chromium.org/1775603002/diff/20001/src/IceTimerTree.def
File src/IceTimerTree.def (right):

https://codereview.chromium.org/1775603002/diff/20001/src/IceTimerTree.def#ne...
src/IceTimerTree.def:30: X(emit)                      \
On 2016/03/07 23:20:12, stichnot wrote:
> What do you think about renaming this to something like emitAsm?  For a long
> time I mistakenly thought that referred to ELF emission as well...

Done.

Powered by Google App Engine
This is Rietveld 408576698