Branch: refs/heads/new-parallel-parsing
Home: https://github.com/dyninst/dyninst
Commit: 87cf1e1332d2ba4e54c7a81ca6b06e610f599d79
https://github.com/dyninst/dyninst/commit/87cf1e1332d2ba4e54c7a81ca6b06e610f599d79
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-03 (Fri, 03 Nov 2017)
Changed paths:
M cmake/Modules/FindCilk.cmake
M common/src/arch-x86.C
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
parsing binaries with OpenMP divide-and-conquer
this version uses the fine-grain synchronization from the Cilk version
Commit: a0e74aad0b809c7dcd16a4dcf3f2ba7dbf86c0cf
https://github.com/dyninst/dyninst/commit/a0e74aad0b809c7dcd16a4dcf3f2ba7dbf86c0cf
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-03 (Fri, 03 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
coarse-grain merging of new frames
Commit: 47392a17f1ce4058833ed2c84308c59a5b04247a
https://github.com/dyninst/dyninst/commit/47392a17f1ce4058833ed2c84308c59a5b04247a
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-04 (Sat, 04 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
coarse grain merging of new frame vectors
Commit: 1aae731da247e1dc428ad20d37fe1d166d6fdf96
https://github.com/dyninst/dyninst/commit/1aae731da247e1dc428ad20d37fe1d166d6fdf96
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-04 (Sat, 04 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
revert to set insertion under mutex
Commit: 133d5c6466e946a6418ca832b82043d0ac87d0bd
https://github.com/dyninst/dyninst/commit/133d5c6466e946a6418ca832b82043d0ac87d0bd
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-05 (Sun, 05 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
A parseAPI/src/WaitFreeQueue.h
Log Message:
-----------
add wait free queue for collecting frames that need to be analyzed.
Commit: a54b0280918bf1aa41e059088184457a50009560
https://github.com/dyninst/dyninst/commit/a54b0280918bf1aa41e059088184457a50009560
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-05 (Sun, 05 Nov 2017)
Changed paths:
M parseAPI/h/CodeSource.h
M parseAPI/src/SymtabCodeSource.C
Log Message:
-----------
manage SymtabCodeSource::_lookup_cache as an atomic variable
Commit: 835fe7b9eefdff064910ca6f20fe9284b65d66a0
https://github.com/dyninst/dyninst/commit/835fe7b9eefdff064910ca6f20fe9284b65d66a0
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-05 (Sun, 05 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
parallel cleanup: OpenMP for loop with schedule(auto)
Commit: 5133612b873edbb74c72769c62e38f8bc6314633
https://github.com/dyninst/dyninst/commit/5133612b873edbb74c72769c62e38f8bc6314633
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-05 (Sun, 05 Nov 2017)
Changed paths:
A parseAPI/h/WaitFreeQueue.h
R parseAPI/src/WaitFreeQueue.h
Log Message:
-----------
relocate WaitFreeQueue.h; add Dyninst header/footer
Commit: 760af5cc2bc7e0414ce71ea5227c53d03ed69545
https://github.com/dyninst/dyninst/commit/760af5cc2bc7e0414ce71ea5227c53d03ed69545
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-06 (Mon, 06 Nov 2017)
Changed paths:
M parseAPI/h/CFGFactory.h
M parseAPI/src/CFGFactory.C
Log Message:
-----------
replace CFG factory edge, block, and function lists with wait-free lists
Commit: 655af562c07a079381dfe814e8da7c40f1a19929
https://github.com/dyninst/dyninst/commit/655af562c07a079381dfe814e8da7c40f1a19929
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-08 (Wed, 08 Nov 2017)
Changed paths:
M parseAPI/h/WaitFreeQueue.h
M parseAPI/src/ParseData.h
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
openmp parallelization of parseAPI based on (mostly) wait-free queue
- augment the wait-free queue to support the parallelization
add peek, steal, pop operations. pop is not wait-free.
- ParseData.h now has a flag for marking when a frame is being processed
- Parser.C/h include a sophisticated OpenMP parallelization where a master
thread spawns work found in a (mostly) wait-free queue.
Commit: d53cdbadfc4806fddd2c6826d118a0a0bf2864bd
https://github.com/dyninst/dyninst/commit/d53cdbadfc4806fddd2c6826d118a0a0bf2864bd
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-08 (Wed, 08 Nov 2017)
Changed paths:
M cmake/Modules/FindCilk.cmake
M parseAPI/src/Parser.C
Log Message:
-----------
commit changes to use cilk to go detect data races on another machine with an intel compiler.
Commit: 9d64ee6ba54beb6401b465386f4f45f186b586e9
https://github.com/dyninst/dyninst/commit/9d64ee6ba54beb6401b465386f4f45f186b586e9
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2017-11-10 (Fri, 10 Nov 2017)
Changed paths:
M symtabAPI/src/Module.C
Log Message:
-----------
fix race clearing vector in parseLineInformation.
Commit: f27790a883ee86d89d04090e58fa6eb410d00143
https://github.com/dyninst/dyninst/commit/f27790a883ee86d89d04090e58fa6eb410d00143
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-12 (Sun, 12 Nov 2017)
Changed paths:
M cmake/Modules/FindCilk.cmake
M parseAPI/src/Parser.C
Log Message:
-----------
switch from Cilk to OpenMP. Fix #if that control programming model selection.
Commit: 425350ed1de0e6e409d116e819ddaf87fc3161bd
https://github.com/dyninst/dyninst/commit/425350ed1de0e6e409d116e819ddaf87fc3161bd
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-13 (Mon, 13 Nov 2017)
Changed paths:
M parseAPI/h/WaitFreeQueue.h
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
M parseAPI/src/ParserDetails.C
Log Message:
-----------
replace frames vector with wait-free queue to eliminate data races
Commit: 99d19717219d426cdfc827f95f3a4acfed00a369
https://github.com/dyninst/dyninst/commit/99d19717219d426cdfc827f95f3a4acfed00a369
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
switch cleanup frames from tasking loop to auto scheduled for loop
switch cleanup frames loop processing wfq items to one that
empties wfq into vector and applies autoscheduled for loop.
Commit: b5d2400202395aa051f4cea5972955e4d2272460
https://github.com/dyninst/dyninst/commit/b5d2400202395aa051f4cea5972955e4d2272460
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-18 (Sat, 18 Nov 2017)
Changed paths:
M parseAPI/h/CFGFactory.h
A parseAPI/h/LockFreeQueue.h
R parseAPI/h/WaitFreeQueue.h
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
rename WaitFreeQueue.h to LockFreeQueue.h and fix references
Commit: 07c1ec3fda0551b7f56e7640743b3c955af5b308
https://github.com/dyninst/dyninst/commit/07c1ec3fda0551b7f56e7640743b3c955af5b308
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-19 (Sun, 19 Nov 2017)
Changed paths:
M parseAPI/h/CFGFactory.h
M parseAPI/src/CFGFactory.C
Log Message:
-----------
clean out dead code in CFGFactory
Commit: 70c1c1b4e8e10bca857292f8ce299817b3b55bc9
https://github.com/dyninst/dyninst/commit/70c1c1b4e8e10bca857292f8ce299817b3b55bc9
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-24 (Fri, 24 Nov 2017)
Changed paths:
A cmake/endian.cmake
M cmake/shared.cmake
Log Message:
-----------
check and report endianness with cmake
Commit: a00056bec6a0265afb592944dde2ff461b525e8d
https://github.com/dyninst/dyninst/commit/a00056bec6a0265afb592944dde2ff461b525e8d
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-25 (Sat, 25 Nov 2017)
Changed paths:
M common/CMakeLists.txt
A common/h/mcs-lock.h
A common/h/pfq-rwlock.h
A common/src/mcs-lock.C
A common/src/pfq-rwlock.C
Log Message:
-----------
add support for MCS locks and phase-fair reader writer locks
Commit: 7ada55c62e60ae61e7051892376c9eebc693f02f
https://github.com/dyninst/dyninst/commit/7ada55c62e60ae61e7051892376c9eebc693f02f
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-25 (Sat, 25 Nov 2017)
Changed paths:
M cmake/endian.cmake
Log Message:
-----------
fix cmake endian check
rename #define names so that they won't conflict with others
Commit: 137f4a15564665bc77792eff11d978c68160badb
https://github.com/dyninst/dyninst/commit/137f4a15564665bc77792eff11d978c68160badb
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-25 (Sat, 25 Nov 2017)
Changed paths:
M common/h/IBSTree.h
Log Message:
-----------
replace synchronization in IBSTree.h with phase fair locks
boost uses mutual exclusion implemented with pthread locks
to implement boost::upgrade_lockable_adapter<boost::upgrade_mutex>.
unnecessary mutual exclusion significantly hurts scalability of
fine-grain parallel operations. replace this synchronization with
phase-fair reader/writer locks. In the absence of writers, these
locks require only readers to perform only a fetch-and-add and a test
at entry and exit.
Commit: 3476f519d7a6a07e451e4f5676a00a354d846ecc
https://github.com/dyninst/dyninst/commit/3476f519d7a6a07e451e4f5676a00a354d846ecc
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
clean up cilk and serial versions of Parser.C
Commit: cd8ca5c0d6df1a98c27e026333710a0f5c72e691
https://github.com/dyninst/dyninst/commit/cd8ca5c0d6df1a98c27e026333710a0f5c72e691
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-26 (Sun, 26 Nov 2017)
Changed paths:
M parseAPI/h/CFG.h
Log Message:
-----------
add lock_guard to CFG.h - needed once it isn't available from IBSTree.h
Commit: 03e1a824772079e5fa2704cec10e6cb53fd9e5cd
https://github.com/dyninst/dyninst/commit/03e1a824772079e5fa2704cec10e6cb53fd9e5cd
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2017-11-27 (Mon, 27 Nov 2017)
Changed paths:
M common/h/IBSTree.h
Log Message:
-----------
fix IBSTree iterators.
Commit: 2d4c889dbb384f83cf71794596e81308f4669732
https://github.com/dyninst/dyninst/commit/2d4c889dbb384f83cf71794596e81308f4669732
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
M symtabAPI/h/Symtab.h
M symtabAPI/src/Symtab-lookup.C
M symtabAPI/src/Symtab.C
M symtabAPI/src/emitElf.C
M symtabAPI/src/parseDwarf.C
Log Message:
-----------
fix data races associated with Symtab error reporting
make serr a thread local variable in Symtab class
adjust Symtab files to manipulate serr through a method
add race detector annotation to avoid race reporting for thread local
Commit: 9a383aaa80011453d35b22d303e64517be46326e
https://github.com/dyninst/dyninst/commit/9a383aaa80011453d35b22d303e64517be46326e
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
M symtabAPI/src/Type-mem.h
M symtabAPI/src/Type.C
Log Message:
-----------
scrub any stale race detector annotations from newly allocated memory
Commit: 22097dfaed1244999edd211b9d9053eb74cd84fe
https://github.com/dyninst/dyninst/commit/22097dfaed1244999edd211b9d9053eb74cd84fe
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
M common/src/singleton_object_pool.h
Log Message:
-----------
add race detector annotations to singleton pool
Commit: 6cf198de5e795044a541a3a1c1f8732be174f32f
https://github.com/dyninst/dyninst/commit/6cf198de5e795044a541a3a1c1f8732be174f32f
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
A common/src/race-detector-annotations.C
Log Message:
-----------
add race detector annotations implementation
Commit: 73cc0d40df8f4ebee0c436c68b1b02ce27f100f4
https://github.com/dyninst/dyninst/commit/73cc0d40df8f4ebee0c436c68b1b02ce27f100f4
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
M common/src/mcs-lock.C
M common/src/pfq-rwlock.C
Log Message:
-----------
add race detector annotations to mcs and reader writer locks
Commit: fd8073af58aaaa4be9b306a4e6406e67dd8268d3
https://github.com/dyninst/dyninst/commit/fd8073af58aaaa4be9b306a4e6406e67dd8268d3
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
A common/h/race-detector-annotations.h
Log Message:
-----------
add definition of race detector annotations
Commit: 2233767a255ce76bc488e5e3469a13561d4455ba
https://github.com/dyninst/dyninst/commit/2233767a255ce76bc488e5e3469a13561d4455ba
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-03 (Wed, 03 Jan 2018)
Changed paths:
M instructionAPI/src/InstructionAST.C
Log Message:
-----------
promote static DummyExpr to global scope
avoid overhead and data race report associated with initialization of
DummyExpr instance inside operator==
Commit: f5d95d704d6924d4450631e1af1e7f6a84e7d8ec
https://github.com/dyninst/dyninst/commit/f5d95d704d6924d4450631e1af1e7f6a84e7d8ec
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-05 (Fri, 05 Jan 2018)
Changed paths:
M dataflowAPI/src/debug_dataflow.C
M dataflowAPI/src/debug_dataflow.h
M dataflowAPI/src/liveness.C
M dataflowAPI/src/slicing.C
M dataflowAPI/src/stackanalysis.C
Log Message:
-----------
initialize and use dataflow analysis debugging flags safely
dataflow analysis debugging flags are now set upon demand just before
they are first inspected. the new interface ensures that they are set
before they are ever inspected. use of call_once guarantees that they
are only initialized once. use of race detector annotations suppresses
benign races that arise from the use of the call_once idiom.
Commit: d16b53dfc914d5c03109f942d635f50528b8cc99
https://github.com/dyninst/dyninst/commit/d16b53dfc914d5c03109f942d635f50528b8cc99
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-05 (Fri, 05 Jan 2018)
Changed paths:
M parseAPI/src/BoundFactCalculator.C
M parseAPI/src/IndirectASTVisitor.C
M parseAPI/src/IndirectASTVisitor.h
M parseAPI/src/JumpTableFormatPred.C
M parseAPI/src/JumpTableIndexPred.C
M parseAPI/src/SymbolicExpression.C
M parseAPI/src/SymbolicExpression.h
Log Message:
-----------
change SymbolicExpression::cs from a static to a class member to eliminate data races
prior to this change, data races occurred on "static SymbolicExpression::cs"
when two threads used it concurrently, with each thread reading and writing
the variable.
Commit: 45f9ffb470959421db6edf295a5081a44fbacb94
https://github.com/dyninst/dyninst/commit/45f9ffb470959421db6edf295a5081a44fbacb94
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-05 (Fri, 05 Jan 2018)
Changed paths:
M common/CMakeLists.txt
Log Message:
-----------
add race detector annotations to CMakeLists.txt
Commit: c83d6ca38d6ba45f758c0c6cc0bcb91a20f1f7e3
https://github.com/dyninst/dyninst/commit/c83d6ca38d6ba45f758c0c6cc0bcb91a20f1f7e3
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-05 (Fri, 05 Jan 2018)
Changed paths:
M parseAPI/src/CFGFactory.C
Log Message:
-----------
after initializing a Function, scrub its access history before
adding the Function to a concurrent data structure to make it
visible to others. this avoids race reports from other threads
who read it after it becomes visible.
making the Function visible to
others.
and making it visible to others
by adding it to a concurrent data structure,
Commit: 4aede8d55f507dd94df0a1905fd7b53d17f3f4d1
https://github.com/dyninst/dyninst/commit/4aede8d55f507dd94df0a1905fd7b53d17f3f4d1
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-05 (Fri, 05 Jan 2018)
Changed paths:
M parseAPI/src/SymtabCodeSource.C
Log Message:
-----------
suppress race reports when accessing region cache
maintained as an atomic in SymtabRegionSource::_lookup_cache
Commit: b34022b855a16400165670a50793ab90f115d4dd
https://github.com/dyninst/dyninst/commit/b34022b855a16400165670a50793ab90f115d4dd
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-05 (Fri, 05 Jan 2018)
Changed paths:
M parseAPI/h/CFG.h
Log Message:
-----------
avoid data races by adding lock_guard to Function::num_blocks and
Function::retstatus. (Function retstatus could be an atomic to
avoid locks if this is critical for performance.)
Commit: 1c6863f1daaf4019423de601270942180891d796
https://github.com/dyninst/dyninst/commit/1c6863f1daaf4019423de601270942180891d796
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-07 (Sun, 07 Jan 2018)
Changed paths:
R cmake/Modules/FindCilk.cmake
Log Message:
-----------
FindCilk not needed with icc. Cilk not interesting with icc.
Commit: 43dd5eb6eb44df5650e7e89318c697b00605d0ec
https://github.com/dyninst/dyninst/commit/43dd5eb6eb44df5650e7e89318c697b00605d0ec
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-07 (Sun, 07 Jan 2018)
Changed paths:
M common/h/IBSTree-fast.h
M common/h/race-detector-annotations.h
M common/src/arch-x86.C
M common/src/mcs-lock.C
M common/src/pfq-rwlock.C
M common/src/race-detector-annotations.C
M common/src/singleton_object_pool.h
M dataflowAPI/src/debug_dataflow.C
M parseAPI/src/ParseData.C
M parseAPI/src/ParseData.h
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
M parseAPI/src/SymtabCodeSource.C
M symtabAPI/src/Symtab.C
Log Message:
-----------
race-free version with specific fake locks.
Commit: cfa7543fe2b52fc826a05a5f0b451a70b277f201
https://github.com/dyninst/dyninst/commit/cfa7543fe2b52fc826a05a5f0b451a70b277f201
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-07 (Sun, 07 Jan 2018)
Changed paths:
M common/src/pfq-rwlock.C
Log Message:
-----------
correct precise race detector annotations in phase-fair reader-writer lock
Commit: 23c23303cce3b9fb1c737bcb670e0284e9e0a7dc
https://github.com/dyninst/dyninst/commit/23c23303cce3b9fb1c737bcb670e0284e9e0a7dc
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-07 (Sun, 07 Jan 2018)
Changed paths:
M symtabAPI/src/Symtab.C
Log Message:
-----------
include race detector annotations in Symtab.C
Commit: ec570aa0e577ac5ffd2fea87b6a6e8e4e5233cc6
https://github.com/dyninst/dyninst/commit/ec570aa0e577ac5ffd2fea87b6a6e8e4e5233cc6
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-07 (Sun, 07 Jan 2018)
Changed paths:
M common/h/IBSTree-fast.h
Log Message:
-----------
replace boost locks with phase-fair reader-writer locks
race detector annotations in phase-fair reader-writer lock suppress
race reports that would occur with boost reader/writer locks.
Commit: 0451ad982bd301ac8f113584358447be76951c50
https://github.com/dyninst/dyninst/commit/0451ad982bd301ac8f113584358447be76951c50
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-07 (Sun, 07 Jan 2018)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
clean up race detection annotations for FuncExtent
Commit: bcb01b9bdbcc8e11f4785fc88d41f543e88afb43
https://github.com/dyninst/dyninst/commit/bcb01b9bdbcc8e11f4785fc88d41f543e88afb43
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-08 (Mon, 08 Jan 2018)
Changed paths:
M common/src/singleton_object_pool.h
Log Message:
-----------
refined (and final) support for race detection for singleton object pool
Commit: fef15a15ab38663b6455b03d63d8c0a20ed0d054
https://github.com/dyninst/dyninst/commit/fef15a15ab38663b6455b03d63d8c0a20ed0d054
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-08 (Mon, 08 Jan 2018)
Changed paths:
M symtabAPI/src/Type.C
Log Message:
-----------
fix indentation in Type.C
Commit: 04b07505e1cb3e99519962541253b63809485ef6
https://github.com/dyninst/dyninst/commit/04b07505e1cb3e99519962541253b63809485ef6
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-10 (Wed, 10 Jan 2018)
Changed paths:
M parseAPI/src/ParseData.C
M parseAPI/src/ParseData.h
Log Message:
-----------
finalize race detector annotations for ParseData
remove annotations from IBSTree operations
use TBB concurrent hash map as fake lock protecting its operations
add missing annotations to cover all TBB concurrent hash map operations
Commit: 075dd24f73ad6b42272e368758cea8154630de8c
https://github.com/dyninst/dyninst/commit/075dd24f73ad6b42272e368758cea8154630de8c
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-10 (Wed, 10 Jan 2018)
Changed paths:
M common/h/IBSTree.h
Log Message:
-----------
Merge branch 'new-parallel-parsing' of https://github.com/jmellorcrummey/dyninst into new-parallel-parsing
Commit: 32075d0eac072ebda1db97af487bd0451d2c1544
https://github.com/dyninst/dyninst/commit/32075d0eac072ebda1db97af487bd0451d2c1544
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-11 (Thu, 11 Jan 2018)
Changed paths:
M common/src/singleton_object_pool.h
M instructionAPI/CMakeLists.txt
M instructionAPI/h/ArchSpecificFormatters.h
M instructionAPI/h/BinaryFunction.h
M instructionAPI/h/Dereference.h
M instructionAPI/h/Instruction.h
M instructionAPI/src/ArchSpecificFormatters.C
M instructionAPI/src/Immediate.C
M instructionAPI/src/Instruction.C
M instructionAPI/src/InstructionDecoderImpl.C
M instructionAPI/src/Register.C
M parseAPI/CMakeLists.txt
Log Message:
-----------
Move to tbb::scalable_alloc instead of boost::pool for small object allocation in InstructionAPI.
resolved conflict with common/src/singleton_object_pool.h by completely replacing old version
resolved build failure by adding tbbmalloc to libraries list in parseAPI/CMakeLists.txt
Commit: a130b285f8727d7bb77041bb9d303d5946fc0d54
https://github.com/dyninst/dyninst/commit/a130b285f8727d7bb77041bb9d303d5946fc0d54
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-11 (Thu, 11 Jan 2018)
Changed paths:
M common/src/singleton_object_pool.h
Log Message:
-----------
remove dead code in singleton_object_pool.h
Commit: bac1d36275e43f412eb3da9a063d4d257ca20fa0
https://github.com/dyninst/dyninst/commit/bac1d36275e43f412eb3da9a063d4d257ca20fa0
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-11 (Thu, 11 Jan 2018)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
remove lock guard on block map that causes deadlock.
Commit: e6245ffa76b1ec13729624cb0cee8156ce624e87
https://github.com/dyninst/dyninst/commit/e6245ffa76b1ec13729624cb0cee8156ce624e87
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-11 (Thu, 11 Jan 2018)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
adjust switches to control cilk vs. openmp support
Commit: 3006ed21ffbcb400d2cf19135cdf0088520865e8
https://github.com/dyninst/dyninst/commit/3006ed21ffbcb400d2cf19135cdf0088520865e8
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-12 (Fri, 12 Jan 2018)
Changed paths:
M common/h/IBSTree-fast.h
Log Message:
-----------
fix IBSTree-fast: add missing decl and missing unlock on one path
Commit: 66efcc518cb676d449be6c3b17baa7f0462f6235
https://github.com/dyninst/dyninst/commit/66efcc518cb676d449be6c3b17baa7f0462f6235
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-12 (Fri, 12 Jan 2018)
Changed paths:
M parseAPI/src/SymtabCodeSource.C
Log Message:
-----------
remove unnecessary lock guard in SymtabCodeSource::lookup_region
Commit: 6a9dac78546f6a22cf7fdbd7cd4189b3eb0e4126
https://github.com/dyninst/dyninst/commit/6a9dac78546f6a22cf7fdbd7cd4189b3eb0e4126
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-14 (Sun, 14 Jan 2018)
Changed paths:
M parseAPI/src/SymtabCodeSource.C
Log Message:
-----------
first attempt to add parallelism to symtab code source.
Commit: e22b3c5d2be51472d1474ca62708aa13a980c4ab
https://github.com/dyninst/dyninst/commit/e22b3c5d2be51472d1474ca62708aa13a980c4ab
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-15 (Mon, 15 Jan 2018)
Changed paths:
M common/src/linuxKludges.C
Log Message:
-----------
remove unnecessary mutex guard around C++ demangler
Commit: 85e16bbd05fecb2b1b11b68835357f65150f738d
https://github.com/dyninst/dyninst/commit/85e16bbd05fecb2b1b11b68835357f65150f738d
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-15 (Mon, 15 Jan 2018)
Changed paths:
M parseAPI/h/CodeSource.h
M parseAPI/src/SymtabCodeSource.C
M symtabAPI/h/Symtab.h
M symtabAPI/src/Symtab-edit.C
M symtabAPI/src/Symtab-lookup.C
M symtabAPI/src/Symtab.C
Log Message:
-----------
add openmp parallelism to SymtabCodeSource init_regions and init_hints
to avoid serialization in these parallel regions, replaced mutual
exclusion in symtab queries with phase-fair read locks.
Commit: de0889c727885887d12799d9fa692d91bf82c64f
https://github.com/dyninst/dyninst/commit/de0889c727885887d12799d9fa692d91bf82c64f
Author: Bill Williams <bill@xxxxxxxxxxx>
Date: 2018-01-17 (Wed, 17 Jan 2018)
Changed paths:
M elf/src/Elf_X.C
M symtabAPI/src/Object-elf.C
Log Message:
-----------
Fix places where we fail to check for empty section headers/no shstrtab section.
Commit: eaa312c96d59f6e797fe38be0c5b984f3318e40b
https://github.com/dyninst/dyninst/commit/eaa312c96d59f6e797fe38be0c5b984f3318e40b
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M parseAPI/h/CodeSource.h
Log Message:
-----------
refine CodeRegion:;contains so that offset() is not called redundantly
Commit: 77af45e37d2a0a8064f65ab029567ff53f34118e
https://github.com/dyninst/dyninst/commit/77af45e37d2a0a8064f65ab029567ff53f34118e
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M parseAPI/h/LockFreeQueue.h
Log Message:
-----------
add debugging support to LockFreeQueue.h
Commit: 53a61df3abf40b319ca52b95e6658b78cdcab08f
https://github.com/dyninst/dyninst/commit/53a61df3abf40b319ca52b95e6658b78cdcab08f
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
M parseAPI/src/ParserDetails.C
Log Message:
-----------
add draft parallelization of parse frames creation
Commit: 5d066e78c6300ec18c6355494b41804d4b0293eb
https://github.com/dyninst/dyninst/commit/5d066e78c6300ec18c6355494b41804d4b0293eb
Author: Bill Williams <bill@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M symtabAPI/src/dwarfWalker.C
M symtabAPI/src/dwarfWalker.h
Log Message:
-----------
Parallelize iteration over module DIEs.
Commit: 173c9a1f64e2aa96290edca840c8a305e82d7059
https://github.com/dyninst/dyninst/commit/173c9a1f64e2aa96290edca840c8a305e82d7059
Author: Bill Williams <bill@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M cmake/options.cmake
M cmake/packages.cmake
M cmake/shared.cmake
Log Message:
-----------
Converted more hidden options to proper options.
Commit: 05aeee229ec9f1ef1d65863a09ee2c592bf2d9d3
https://github.com/dyninst/dyninst/commit/05aeee229ec9f1ef1d65863a09ee2c592bf2d9d3
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M parseAPI/h/CodeSource.h
Log Message:
-----------
correct the include path for tbb hash map
Commit: d55651bce00fd9ab6b46e44d123546dac15080d2
https://github.com/dyninst/dyninst/commit/d55651bce00fd9ab6b46e44d123546dac15080d2
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M parseAPI/src/SymtabCodeSource.C
Log Message:
-----------
use cilk to eliminate a data race in SymtabCodeSource.C
add configuration that enables cilk and openmp to coexist
so the programming model can be flipped with a cmake setting
eliminate an inconsequential data race that occurred when
marking an item as "seen" more than once in a tbb concurrent
hash table.
Commit: 033872a77aec11af6811bdb225ed584f97236ebc
https://github.com/dyninst/dyninst/commit/033872a77aec11af6811bdb225ed584f97236ebc
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M parseAPI/src/Parser.C
Log Message:
-----------
refine cilk configuration of Parser.C for data race detection
add a lock for cilkscreen that causes a deadlock in openmp.
is this really correct?
fix cilk configuration for lock free queue.
Commit: 5c53059bf61ff75f611f9f7cad06b06b57650a9d
https://github.com/dyninst/dyninst/commit/5c53059bf61ff75f611f9f7cad06b06b57650a9d
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M symtabAPI/src/dwarfWalker.C
M symtabAPI/src/dwarfWalker.h
Log Message:
-----------
bill's changes to parallelize symtab.
Commit: f4e87efbafe6b44bc4105be91e47040e315cb71c
https://github.com/dyninst/dyninst/commit/f4e87efbafe6b44bc4105be91e47040e315cb71c
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Changed paths:
M symtabAPI/src/dwarfWalker.C
M symtabAPI/src/dwarfWalker.h
Log Message:
-----------
bill's changes to parallelize symtab.
Commit: 0edbc2672d0679e75cb9df7f743925be23515bfc
https://github.com/dyninst/dyninst/commit/0edbc2672d0679e75cb9df7f743925be23515bfc
Author: John Mellor-Crummey <jmellorcrummey@xxxxxxxxxxx>
Date: 2018-01-24 (Wed, 24 Jan 2018)
Log Message:
-----------
Merge branch 'new-parallel-parsing' of https://github.com/jmellorcrummey/dyninst into new-parallel-parsing
Conflicts:
symtabAPI/src/dwarfWalker.C
Commit: e5e1a39dee3be19b8459685adaa0a015b4976920
https://github.com/dyninst/dyninst/commit/e5e1a39dee3be19b8459685adaa0a015b4976920
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-02-04 (Sun, 04 Feb 2018)
Changed paths:
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
Log Message:
-----------
simplify openmp parallelization in Parser.C
Commit: 988d0482f79325f9bdb6c1f948f43adc1a6a72df
https://github.com/dyninst/dyninst/commit/988d0482f79325f9bdb6c1f948f43adc1a6a72df
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-02-08 (Thu, 08 Feb 2018)
Changed paths:
M dataflowAPI/rose/semantics/Registers.C
Log Message:
-----------
adjust lazy initialization of rose register semantic to be thread safe using call_once
Commit: 6f8f55d7b7ff94192382fb0872e2a37fa5419684
https://github.com/dyninst/dyninst/commit/6f8f55d7b7ff94192382fb0872e2a37fa5419684
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-02-08 (Thu, 08 Feb 2018)
Changed paths:
M common/src/arch-x86.C
Log Message:
-----------
avoid initializing c++ object in an inner scope, which requires synchronization
Commit: 8ec9fd7251947a844334ae709e784066110053ca
https://github.com/dyninst/dyninst/commit/8ec9fd7251947a844334ae709e784066110053ca
Author: John Mellor-Crummey <johnmc@xxxxxxxx>
Date: 2018-02-08 (Thu, 08 Feb 2018)
Changed paths:
M symtabAPI/src/dwarfWalker.C
Log Message:
-----------
add guard around cilk include file
Commit: f075aac4ddd10bec5b676a1196d454a7e9964def
https://github.com/dyninst/dyninst/commit/f075aac4ddd10bec5b676a1196d454a7e9964def
Author: Bill Williams <bill@xxxxxxxxxxx>
Date: 2018-02-09 (Fri, 09 Feb 2018)
Changed paths:
M CMakeLists.txt
M common/CMakeLists.txt
M instructionAPI/src/InstructionDecoder-power.C
M instructionAPI/src/Operation.C
M instructionAPI/src/power_opcode_tables.C
Log Message:
-----------
Cleanup: remove dead code, use call_once for singleton-style init
Commit: b12f0cb69e2d5b05978ef539c83cd3b6aed1a740
https://github.com/dyninst/dyninst/commit/b12f0cb69e2d5b05978ef539c83cd3b6aed1a740
Author: Bill Williams <bill@xxxxxxxxxxx>
Date: 2018-02-20 (Tue, 20 Feb 2018)
Changed paths:
M .gitmodules
R cmake/Modules/FindCilk.cmake
A cmake/endian.cmake
M cmake/shared.cmake
M common/CMakeLists.txt
M common/h/IBSTree-fast.h
M common/h/IBSTree.h
A common/h/mcs-lock.h
A common/h/pfq-rwlock.h
A common/h/race-detector-annotations.h
M common/src/arch-x86.C
M common/src/linuxKludges.C
A common/src/mcs-lock.C
A common/src/pfq-rwlock.C
A common/src/race-detector-annotations.C
M common/src/singleton_object_pool.h
M dataflowAPI/rose/semantics/Registers.C
M dataflowAPI/src/debug_dataflow.C
M dataflowAPI/src/debug_dataflow.h
M dataflowAPI/src/liveness.C
M dataflowAPI/src/slicing.C
M dataflowAPI/src/stackanalysis.C
M instructionAPI/src/InstructionAST.C
M parseAPI/h/CFG.h
M parseAPI/h/CFGFactory.h
M parseAPI/h/CodeSource.h
A parseAPI/h/LockFreeQueue.h
M parseAPI/src/BoundFactCalculator.C
M parseAPI/src/CFGFactory.C
M parseAPI/src/IndirectASTVisitor.C
M parseAPI/src/IndirectASTVisitor.h
M parseAPI/src/JumpTableFormatPred.C
M parseAPI/src/JumpTableIndexPred.C
M parseAPI/src/ParseData.C
M parseAPI/src/ParseData.h
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
M parseAPI/src/ParserDetails.C
M parseAPI/src/SymbolicExpression.C
M parseAPI/src/SymbolicExpression.h
M parseAPI/src/SymtabCodeSource.C
M symtabAPI/h/Symtab.h
M symtabAPI/src/Module.C
M symtabAPI/src/Symtab-edit.C
M symtabAPI/src/Symtab-lookup.C
M symtabAPI/src/Symtab.C
M symtabAPI/src/Type-mem.h
M symtabAPI/src/Type.C
M symtabAPI/src/dwarfWalker.C
M symtabAPI/src/emitElf.C
M symtabAPI/src/parseDwarf.C
A testsuite
Log Message:
-----------
Merge John's changes and update test suite.
Commit: f5d27cde21e22a60c4c89d7020892c181da05983
https://github.com/dyninst/dyninst/commit/f5d27cde21e22a60c4c89d7020892c181da05983
Author: Bill Williams <bill@xxxxxxxxxxx>
Date: 2018-02-21 (Wed, 21 Feb 2018)
Changed paths:
M CMakeLists.txt
M common/src/arch-x86.C
M elf/src/Elf_X.C
M parseAPI/src/ParseData.h
M parseAPI/src/Parser.C
M parseAPI/src/Parser.h
M symtabAPI/src/Object-elf.C
Log Message:
-----------
Checkpoint for ARM testing
Compare: https://github.com/dyninst/dyninst/compare/cf1bc0d5c14c...f5d27cde21e2
|