Branch: refs/heads/master
Home: https://github.com/dyninst/dyninst
Commit: 5c01c39956034ce57f92d9327fac18b843d27a7a
https://github.com/dyninst/dyninst/commit/5c01c39956034ce57f92d9327fac18b843d27a7a
Author: Jonathon Anderson <17242663+blue42u@xxxxxxxxxxxxxxxxxxxxxxxx>
Date: 2022-02-04 (Fri, 04 Feb 2022)
Changed paths:
M parseAPI/h/CFG.h
M parseAPI/src/Block.C
M parseAPI/src/Parser.C
Log Message:
-----------
ParseAPI: Speed up the case where a function is called from many locations (#1190)
In some binaries a single function has many callers, so copying out the source edges for
the entry Block takes a while and causes significant contention on the Block's lock.
The case in Parser::finalize where this becomes a hotspot likely does not need to read
every edge, so this commit inlines those cases into methods on Block instead.
|