dyninst.git
2 years agoavoid initializing c++ object in an inner scope, which requires synchronization
John Mellor-Crummey [Fri, 9 Feb 2018 02:26:58 +0000 (20:26 -0600)]
avoid initializing c++ object in an inner scope, which requires synchronization

2 years agoadjust lazy initialization of rose register semantic to be thread safe using call_once
John Mellor-Crummey [Thu, 8 Feb 2018 21:37:49 +0000 (15:37 -0600)]
adjust lazy initialization of rose register semantic to be thread safe using call_once

2 years agosimplify openmp parallelization in Parser.C
John Mellor-Crummey [Sun, 4 Feb 2018 06:42:42 +0000 (00:42 -0600)]
simplify openmp parallelization in Parser.C

2 years agoMerge branch 'new-parallel-parsing' of https://github.com/jmellorcrummey/dyninst...
John Mellor-Crummey [Thu, 25 Jan 2018 05:19:40 +0000 (23:19 -0600)]
Merge branch 'new-parallel-parsing' of https://github.com/jmellorcrummey/dyninst into new-parallel-parsing

Conflicts:
symtabAPI/src/dwarfWalker.C

2 years agobill's changes to parallelize symtab.
John Mellor-Crummey [Thu, 25 Jan 2018 05:15:37 +0000 (23:15 -0600)]
bill's changes to parallelize symtab.

2 years agobill's changes to parallelize symtab.
John Mellor-Crummey [Thu, 25 Jan 2018 05:15:37 +0000 (23:15 -0600)]
bill's changes to parallelize symtab.

2 years agorefine cilk configuration of Parser.C for data race detection
John Mellor-Crummey [Thu, 25 Jan 2018 03:34:38 +0000 (21:34 -0600)]
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.

2 years agouse cilk to eliminate a data race in SymtabCodeSource.C
John Mellor-Crummey [Thu, 25 Jan 2018 03:29:26 +0000 (21:29 -0600)]
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.

2 years agocorrect the include path for tbb hash map
John Mellor-Crummey [Wed, 24 Jan 2018 22:49:17 +0000 (16:49 -0600)]
correct the include path for tbb hash map

2 years agoadd draft parallelization of parse frames creation
John Mellor-Crummey [Wed, 24 Jan 2018 17:18:51 +0000 (11:18 -0600)]
add draft parallelization of parse frames creation

2 years agoadd debugging support to LockFreeQueue.h
John Mellor-Crummey [Wed, 24 Jan 2018 17:18:20 +0000 (11:18 -0600)]
add debugging support to LockFreeQueue.h

2 years agorefine CodeRegion:;contains so that offset() is not called redundantly
John Mellor-Crummey [Wed, 24 Jan 2018 17:16:59 +0000 (11:16 -0600)]
refine CodeRegion:;contains so that offset() is not called redundantly

2 years agoadd openmp parallelism to SymtabCodeSource init_regions and init_hints
John Mellor-Crummey [Mon, 15 Jan 2018 23:29:58 +0000 (17:29 -0600)]
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.

2 years agoremove unnecessary mutex guard around C++ demangler
John Mellor-Crummey [Mon, 15 Jan 2018 23:27:51 +0000 (17:27 -0600)]
remove unnecessary mutex guard around C++ demangler

2 years agofirst attempt to add parallelism to symtab code source.
John Mellor-Crummey [Sun, 14 Jan 2018 19:04:37 +0000 (13:04 -0600)]
first attempt to add parallelism to symtab code source.

2 years agoremove unnecessary lock guard in SymtabCodeSource::lookup_region
John Mellor-Crummey [Sat, 13 Jan 2018 03:51:24 +0000 (21:51 -0600)]
remove unnecessary lock guard in SymtabCodeSource::lookup_region

2 years agofix IBSTree-fast: add missing decl and missing unlock on one path
John Mellor-Crummey [Fri, 12 Jan 2018 14:06:00 +0000 (08:06 -0600)]
fix IBSTree-fast: add missing decl and missing unlock on one path

2 years agoadjust switches to control cilk vs. openmp support
John Mellor-Crummey [Thu, 11 Jan 2018 22:23:17 +0000 (16:23 -0600)]
adjust switches to control cilk vs. openmp support

2 years agoremove lock guard on block map that causes deadlock.
John Mellor-Crummey [Thu, 11 Jan 2018 21:46:48 +0000 (15:46 -0600)]
remove lock guard on block map that causes deadlock.

2 years agoremove dead code in singleton_object_pool.h
John Mellor-Crummey [Thu, 11 Jan 2018 15:51:47 +0000 (09:51 -0600)]
remove dead code in singleton_object_pool.h

2 years agoMove to tbb::scalable_alloc instead of boost::pool for small object allocation in...
John Mellor-Crummey [Thu, 11 Jan 2018 15:38:55 +0000 (09:38 -0600)]
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

2 years agoMerge branch 'new-parallel-parsing' of https://github.com/jmellorcrummey/dyninst...
John Mellor-Crummey [Wed, 10 Jan 2018 17:36:05 +0000 (11:36 -0600)]
Merge branch 'new-parallel-parsing' of https://github.com/jmellorcrummey/dyninst into new-parallel-parsing

2 years agofinalize race detector annotations for ParseData
John Mellor-Crummey [Wed, 10 Jan 2018 17:13:29 +0000 (11:13 -0600)]
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

2 years agofix indentation in Type.C
John Mellor-Crummey [Mon, 8 Jan 2018 23:31:42 +0000 (17:31 -0600)]
fix indentation in Type.C

2 years agorefined (and final) support for race detection for singleton object pool
John Mellor-Crummey [Mon, 8 Jan 2018 23:26:47 +0000 (17:26 -0600)]
refined (and final) support for race detection for singleton object pool

2 years agoclean up race detection annotations for FuncExtent
John Mellor-Crummey [Mon, 8 Jan 2018 04:42:27 +0000 (22:42 -0600)]
clean up race detection annotations for FuncExtent

2 years agoreplace boost locks with phase-fair reader-writer locks
John Mellor-Crummey [Mon, 8 Jan 2018 04:36:22 +0000 (22:36 -0600)]
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.

2 years agoinclude race detector annotations in Symtab.C
John Mellor-Crummey [Mon, 8 Jan 2018 04:19:37 +0000 (22:19 -0600)]
include race detector annotations in Symtab.C

2 years agocorrect precise race detector annotations in phase-fair reader-writer lock
John Mellor-Crummey [Mon, 8 Jan 2018 04:18:58 +0000 (22:18 -0600)]
correct precise race detector annotations in phase-fair reader-writer lock

2 years agorace-free version with specific fake locks.
John Mellor-Crummey [Sun, 7 Jan 2018 21:00:05 +0000 (15:00 -0600)]
race-free version with specific fake locks.

2 years agoFindCilk not needed with icc. Cilk not interesting with icc.
John Mellor-Crummey [Sun, 7 Jan 2018 17:34:33 +0000 (11:34 -0600)]
FindCilk not needed with icc. Cilk not interesting with icc.

2 years agoavoid data races by adding lock_guard to Function::num_blocks and
John Mellor-Crummey [Sat, 6 Jan 2018 01:53:45 +0000 (19:53 -0600)]
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.)

2 years agosuppress race reports when accessing region cache
John Mellor-Crummey [Sat, 6 Jan 2018 01:49:37 +0000 (19:49 -0600)]
suppress race reports when accessing region cache
maintained as an atomic in SymtabRegionSource::_lookup_cache

2 years agoafter initializing a Function, scrub its access history before
John Mellor-Crummey [Sat, 6 Jan 2018 01:05:24 +0000 (19:05 -0600)]
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,

2 years agoadd race detector annotations to CMakeLists.txt
John Mellor-Crummey [Sat, 6 Jan 2018 00:27:06 +0000 (18:27 -0600)]
add race detector annotations to CMakeLists.txt

2 years agochange SymbolicExpression::cs from a static to a class member to eliminate data races
John Mellor-Crummey [Fri, 5 Jan 2018 23:46:55 +0000 (17:46 -0600)]
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.

2 years agoinitialize and use dataflow analysis debugging flags safely
John Mellor-Crummey [Fri, 5 Jan 2018 23:21:32 +0000 (17:21 -0600)]
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.

2 years agopromote static DummyExpr to global scope
John Mellor-Crummey [Wed, 3 Jan 2018 23:43:28 +0000 (17:43 -0600)]
promote static DummyExpr to global scope
avoid overhead and data race report associated with initialization of
DummyExpr instance inside operator==

2 years agoadd definition of race detector annotations
John Mellor-Crummey [Wed, 3 Jan 2018 21:29:49 +0000 (15:29 -0600)]
add definition of race detector annotations

2 years agoadd race detector annotations to mcs and reader writer locks
John Mellor-Crummey [Wed, 3 Jan 2018 21:29:13 +0000 (15:29 -0600)]
add race detector annotations to mcs and reader writer locks

2 years agoadd race detector annotations implementation
John Mellor-Crummey [Wed, 3 Jan 2018 21:28:13 +0000 (15:28 -0600)]
add race detector annotations implementation

2 years agoadd race detector annotations to singleton pool
John Mellor-Crummey [Wed, 3 Jan 2018 21:26:44 +0000 (15:26 -0600)]
add race detector annotations to singleton pool

2 years agoscrub any stale race detector annotations from newly allocated memory
John Mellor-Crummey [Wed, 3 Jan 2018 21:21:59 +0000 (15:21 -0600)]
scrub any stale race detector annotations from newly allocated memory

2 years agofix data races associated with Symtab error reporting
John Mellor-Crummey [Wed, 3 Jan 2018 21:10:09 +0000 (15:10 -0600)]
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

2 years agofix IBSTree iterators.
John Mellor-Crummey [Mon, 27 Nov 2017 17:59:42 +0000 (11:59 -0600)]
fix IBSTree iterators.

2 years agoadd lock_guard to CFG.h - needed once it isn't available from IBSTree.h
John Mellor-Crummey [Mon, 27 Nov 2017 03:02:20 +0000 (21:02 -0600)]
add lock_guard to CFG.h - needed once it isn't available from IBSTree.h

2 years agoclean up cilk and serial versions of Parser.C
John Mellor-Crummey [Mon, 27 Nov 2017 03:01:17 +0000 (21:01 -0600)]
clean up cilk and serial versions of Parser.C

2 years agoreplace synchronization in IBSTree.h with phase fair locks
John Mellor-Crummey [Sat, 25 Nov 2017 23:14:14 +0000 (17:14 -0600)]
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.

2 years agofix cmake endian check
John Mellor-Crummey [Sat, 25 Nov 2017 23:12:24 +0000 (17:12 -0600)]
fix cmake endian check

rename #define names so that they won't conflict with others

2 years agoadd support for MCS locks and phase-fair reader writer locks
John Mellor-Crummey [Fri, 24 Nov 2017 18:34:45 +0000 (12:34 -0600)]
add support for MCS locks and phase-fair reader writer locks

2 years agocheck and report endianness with cmake
John Mellor-Crummey [Fri, 24 Nov 2017 17:22:46 +0000 (11:22 -0600)]
check and report endianness with cmake

2 years agoclean out dead code in CFGFactory
John Mellor-Crummey [Mon, 20 Nov 2017 03:17:21 +0000 (21:17 -0600)]
clean out dead code in CFGFactory

2 years agorename WaitFreeQueue.h to LockFreeQueue.h and fix references
John Mellor-Crummey [Sat, 18 Nov 2017 20:42:13 +0000 (14:42 -0600)]
rename WaitFreeQueue.h to LockFreeQueue.h and fix references

2 years agoswitch cleanup frames from tasking loop to auto scheduled for loop
John Mellor-Crummey [Tue, 14 Nov 2017 22:48:20 +0000 (16:48 -0600)]
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.

2 years agoreplace frames vector with wait-free queue to eliminate data races
John Mellor-Crummey [Tue, 14 Nov 2017 00:20:29 +0000 (18:20 -0600)]
replace frames vector with wait-free queue to eliminate data races

2 years agoswitch from Cilk to OpenMP. Fix #if that control programming model selection.
John Mellor-Crummey [Mon, 13 Nov 2017 00:33:09 +0000 (18:33 -0600)]
switch from Cilk to OpenMP. Fix #if that control programming model selection.

2 years agofix race clearing vector in parseLineInformation.
John Mellor-Crummey [Fri, 10 Nov 2017 16:37:01 +0000 (10:37 -0600)]
fix race clearing vector in parseLineInformation.

2 years agocommit changes to use cilk to go detect data races on another machine with an intel...
John Mellor-Crummey [Wed, 8 Nov 2017 19:43:41 +0000 (13:43 -0600)]
commit changes to use cilk to go detect data races on another machine with an intel compiler.

2 years agoopenmp parallelization of parseAPI based on (mostly) wait-free queue
John Mellor-Crummey [Wed, 8 Nov 2017 08:02:58 +0000 (02:02 -0600)]
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.

2 years agoreplace CFG factory edge, block, and function lists with wait-free lists
John Mellor-Crummey [Mon, 6 Nov 2017 14:24:00 +0000 (08:24 -0600)]
replace CFG factory edge, block, and function lists with wait-free lists

2 years agorelocate WaitFreeQueue.h; add Dyninst header/footer
John Mellor-Crummey [Mon, 6 Nov 2017 03:39:08 +0000 (21:39 -0600)]
relocate WaitFreeQueue.h; add Dyninst header/footer

2 years agoparallel cleanup: OpenMP for loop with schedule(auto)
John Mellor-Crummey [Mon, 6 Nov 2017 02:39:58 +0000 (20:39 -0600)]
parallel cleanup: OpenMP for loop with schedule(auto)

2 years agomanage SymtabCodeSource::_lookup_cache as an atomic variable
John Mellor-Crummey [Sun, 5 Nov 2017 22:02:42 +0000 (16:02 -0600)]
manage SymtabCodeSource::_lookup_cache as an atomic variable

2 years agoadd wait free queue for collecting frames that need to be analyzed.
John Mellor-Crummey [Sun, 5 Nov 2017 19:40:41 +0000 (13:40 -0600)]
add wait free queue for collecting frames that need to be analyzed.

2 years agorevert to set insertion under mutex
John Mellor-Crummey [Sat, 4 Nov 2017 22:25:40 +0000 (17:25 -0500)]
revert to set insertion under mutex

2 years agocoarse grain merging of new frame vectors
John Mellor-Crummey [Sat, 4 Nov 2017 18:06:48 +0000 (13:06 -0500)]
coarse grain merging of new frame vectors

2 years agocoarse-grain merging of new frames
John Mellor-Crummey [Fri, 3 Nov 2017 22:33:47 +0000 (17:33 -0500)]
coarse-grain merging of new frames

2 years agoparsing binaries with OpenMP divide-and-conquer
John Mellor-Crummey [Fri, 3 Nov 2017 21:10:14 +0000 (16:10 -0500)]
parsing binaries with OpenMP divide-and-conquer

this version uses the fine-grain synchronization from the Cilk version

2 years agoBuilds cleanly under icc17; TBB found properly via CMake.
Bill Williams [Thu, 19 Oct 2017 21:30:01 +0000 (16:30 -0500)]
Builds cleanly under icc17; TBB found properly via CMake.

2 years agobuilds clean under icc
Bill Williams [Wed, 18 Oct 2017 19:32:46 +0000 (12:32 -0700)]
builds clean under icc

2 years agoFix common link deps
Bill Williams [Wed, 18 Oct 2017 00:26:27 +0000 (19:26 -0500)]
Fix common link deps

2 years agoRemove hard-coded development dependencies
Bill Williams [Wed, 18 Oct 2017 00:09:07 +0000 (19:09 -0500)]
Remove hard-coded development dependencies

Requires TBB includes/libs to be in CMake search path; this is intended to be used with a spackfile or other preset development environment.

2 years agoGet the right header for make_pair
Bill Williams [Tue, 17 Oct 2017 21:20:21 +0000 (16:20 -0500)]
Get the right header for make_pair

2 years agogcc 5.4.0 build fixes
Bill Williams [Tue, 17 Oct 2017 21:05:36 +0000 (16:05 -0500)]
gcc 5.4.0 build fixes

2 years agoFix stray cilktools dependency
Bill Williams [Tue, 17 Oct 2017 20:49:26 +0000 (15:49 -0500)]
Fix stray cilktools dependency

2 years agoRemove cilkscreen dependencies.
Bill Williams [Mon, 16 Oct 2017 17:23:22 +0000 (12:23 -0500)]
Remove cilkscreen dependencies.

2 years agoBacked out DWARF parallelism. Fixed memory leaks and DWARF bugs.
Bill Williams [Tue, 10 Oct 2017 21:19:47 +0000 (16:19 -0500)]
Backed out DWARF parallelism. Fixed memory leaks and DWARF bugs.

2 years agoMerge branch 'master' into new-parallel-parsing
Bill Williams [Wed, 27 Sep 2017 19:04:57 +0000 (14:04 -0500)]
Merge branch 'master' into new-parallel-parsing

# Conflicts:
# dyninstAPI/src/Relocation/Transformers/Movement-analysis.C
# symtabAPI/src/LineInformation.C
# symtabAPI/src/dwarfWalker.C

2 years agoMerge remote-tracking branch 'origin/master'
Bill Williams [Wed, 27 Sep 2017 19:02:30 +0000 (14:02 -0500)]
Merge remote-tracking branch 'origin/master'

2 years agoMerge branch 'master' into new-parallel-parsing
Bill Williams [Wed, 27 Sep 2017 18:38:23 +0000 (13:38 -0500)]
Merge branch 'master' into new-parallel-parsing

# Conflicts:
# dyninstAPI/src/Relocation/Transformers/Movement-analysis.C

2 years agoSome initial DWARF parallelism
Bill Williams [Wed, 27 Sep 2017 18:30:26 +0000 (13:30 -0500)]
Some initial DWARF parallelism

2 years agoNow getting actual parallelism:
Bill Williams [Tue, 26 Sep 2017 17:57:28 +0000 (12:57 -0500)]
Now getting actual parallelism:

* Instructions by value, not by shared pointer
* Blocks updated in region_data during finalize, not during parse

3 years agoMerge pull request #403 from dyninst/sasha/fix-dwarf-symbol-frame
Sasha NĂ­colas [Fri, 8 Sep 2017 20:24:55 +0000 (15:24 -0500)]
Merge pull request #403 from dyninst/sasha/fix-dwarf-symbol-frame

fix dwarf symbol frame

3 years agotemporary patch to dwarfWalker 403/head
John Mellor-Crummey [Wed, 6 Sep 2017 01:21:23 +0000 (20:21 -0500)]
temporary patch to dwarfWalker
returning false for getFrameBase prevented processing
of multiple levels of inlined functions in CUBINs

(cherry picked from commit e91fb8670dc5884db902a678a00f48466b126ced)

3 years agoimprove fix to dwarf line reading.
John Mellor-Crummey [Fri, 1 Sep 2017 22:41:01 +0000 (17:41 -0500)]
improve fix to dwarf line reading.

(cherry picked from commit f5f04afc71e8318f9295b209e8ee60600d156ae6)

3 years agodon't skip the first line in all but first range.
John Mellor-Crummey [Fri, 1 Sep 2017 16:26:10 +0000 (11:26 -0500)]
don't skip the first line in all but first range.

(cherry picked from commit 5b8cf9fd1aaf877feeed2971fc9d2f952d06fa7e)

3 years agoMerge pull request #401 from mxz297/jumptable_merge
Xiaozhu Meng [Tue, 29 Aug 2017 22:18:37 +0000 (15:18 -0700)]
Merge pull request #401 from mxz297/jumptable_merge

Merging my jump table improvements, att_syntax, arm semantics, v9.3.x, and libdw

3 years agoOnly do endianess translation for powerpc binaries 401/head
Xiaozhu Meng [Tue, 29 Aug 2017 22:13:51 +0000 (17:13 -0500)]
Only do endianess translation for powerpc binaries

3 years agoDisplacements should be signed integers
Xiaozhu Meng [Tue, 29 Aug 2017 20:41:36 +0000 (15:41 -0500)]
Displacements should be signed integers

3 years agoWe should only set proccontrol level process's data to NULL when the Dyninst level...
Xiaozhu Meng [Tue, 29 Aug 2017 17:18:26 +0000 (12:18 -0500)]
We should only set proccontrol level process's data to NULL when the Dyninst level process is the only owner of the proccontrol level process

3 years agoFix uninitialized return value in line info
Xiaozhu Meng [Tue, 29 Aug 2017 14:22:58 +0000 (09:22 -0500)]
Fix uninitialized return value in line info

3 years agoFix symplifying concat operations in jump table analysis
Xiaozhu Meng [Thu, 24 Aug 2017 20:39:09 +0000 (15:39 -0500)]
Fix symplifying concat operations in jump table analysis

3 years agoMerge branch 'libdw' into jumptable_rebase
Xiaozhu Meng [Thu, 24 Aug 2017 17:12:23 +0000 (12:12 -0500)]
Merge branch 'libdw' into jumptable_rebase

3 years ago1. When we find potential indexing variable with table stride being 1, we need to...
Xiaozhu Meng [Wed, 23 Aug 2017 19:21:36 +0000 (14:21 -0500)]
1. When we find potential indexing variable with table stride being 1, we need to make sure that we have already found the table base to declare this variable as the table index.
2. Add constants multiplication in AST simplification

3 years agoFixing small things after the merge.
Sasha Nicolas [Wed, 23 Aug 2017 19:54:43 +0000 (14:54 -0500)]
Fixing small things after the merge.

3 years agoMerge branch 'sasha/libdw_deploy' into v9.3.x
Sasha Nicolas [Wed, 23 Aug 2017 17:41:34 +0000 (12:41 -0500)]
Merge branch 'sasha/libdw_deploy' into v9.3.x

3 years agoMerge checkpoint
Bill Williams [Tue, 22 Aug 2017 20:55:24 +0000 (15:55 -0500)]
Merge checkpoint

3 years agoMerge branch 'github_master' into jumptable_rebase
Xiaozhu Meng [Tue, 22 Aug 2017 14:59:06 +0000 (09:59 -0500)]
Merge branch 'github_master' into jumptable_rebase

3 years ago1. Fix ARM semantics for instructions that use conditional code
Xiaozhu Meng [Tue, 22 Aug 2017 14:44:46 +0000 (09:44 -0500)]
1. Fix ARM semantics for instructions that use conditional code
2. Make sure to keep multiplication by one and shifting left by zero through visitors and expansion cache

3 years agoAdded high-level of diagram of ROSE semantics
Sunny Shah [Fri, 12 May 2017 19:22:47 +0000 (14:22 -0500)]
Added high-level of diagram of ROSE semantics