dyninst.git
19 months agoMerge pull request #463 from dyninst/vector_categories
Xiaozhu Meng [Wed, 22 Aug 2018 14:24:34 +0000 (09:24 -0500)]
Merge pull request #463 from dyninst/vector_categories

Vector categories merge into master

19 months ago1. The FULL register size must have value 0 due to the way we calculate 463/head
Xiaozhu Meng [Wed, 22 Aug 2018 00:59:44 +0000 (19:59 -0500)]
1. The FULL register size must have value 0 due to the way we calculate
base registers.
2. Update liveness for the value changes

20 months agoadd debugging support to LineInformation
John Mellor-Crummey [Tue, 17 Oct 2017 17:22:44 +0000 (12:22 -0500)]
add debugging support to LineInformation

20 months agoadd debugging support to Symtab interface
John Mellor-Crummey [Tue, 17 Oct 2017 17:19:37 +0000 (12:19 -0500)]
add debugging support to Symtab interface

use new IBSTree dumping functionality to dump function and
module ranges.

20 months agoadd debugging support to IBSTree.h
John Mellor-Crummey [Tue, 17 Oct 2017 16:48:10 +0000 (11:48 -0500)]
add debugging support to IBSTree.h

20 months agocorrect dwarf debug printing
John Mellor-Crummey [Wed, 18 Oct 2017 15:48:34 +0000 (10:48 -0500)]
correct dwarf debug printing

in dwarfWalker::setFuncFromLowest, set the current function
before calling dwarf_printf so that curFunc() in the
dwarf_printf sees the function just found

(cherry picked from commit a786739e5369b79ff6823cf742042c9f2d874765)

20 months agoupdate line map reader based on dwarf_next_lines
John Mellor-Crummey [Sat, 30 Jun 2018 17:58:19 +0000 (12:58 -0500)]
update line map reader based on dwarf_next_lines

integrate changes in master's parseLineMapInfoForCU that
avoid missing line map entries into new line map parser
based on elfutils 0.173 that uses dwarf_next_lines for
binaries that lack a .debug_info section

20 months agoremove old line map parsing code
John Mellor-Crummey [Sat, 30 Jun 2018 16:41:53 +0000 (11:41 -0500)]
remove old line map parsing code

20 months agofix line map parsing to avoid omissions
John Mellor-Crummey [Sat, 30 Jun 2018 16:39:42 +0000 (11:39 -0500)]
fix line map parsing to avoid omissions

20 months agouse dwarf_next_lines to read .debug_line without .debug_info
John Mellor-Crummey [Fri, 29 Jun 2018 19:33:08 +0000 (14:33 -0500)]
use dwarf_next_lines to read .debug_line without .debug_info

20 months agohandle empty DebugSectionMap
John Mellor-Crummey [Sat, 2 Jun 2018 18:06:11 +0000 (13:06 -0500)]
handle empty DebugSectionMap

20 months agoavoid infinite loop on bad DWARF CFI record
John Mellor-Crummey [Fri, 1 Jun 2018 23:35:54 +0000 (18:35 -0500)]
avoid infinite loop on bad DWARF CFI record

20 months agoMerge branch 'master' of https://github.com/dyninst/dyninst
Sasha Nicolas [Tue, 10 Jul 2018 17:52:12 +0000 (12:52 -0500)]
Merge branch 'master' of https://github.com/dyninst/dyninst

20 months agoChanging URL of Elfutils to always download the lastest released version.
Sasha Nicolas [Tue, 10 Jul 2018 17:46:04 +0000 (12:46 -0500)]
Changing URL of Elfutils to always download the lastest released version.

21 months agoMerge pull request #469 from rafzi/upstream
Sasha Nícolas [Fri, 29 Jun 2018 23:41:55 +0000 (18:41 -0500)]
Merge pull request #469 from rafzi/upstream

symtab: fix memory error in Statement::getFile

21 months agosymtab: fix memory error in Statement::getFile 469/head
Rafael Stahl [Tue, 19 Jun 2018 15:24:19 +0000 (17:24 +0200)]
symtab: fix memory error in Statement::getFile

21 months agoFix register sizes in InstructionAPI
Xiaozhu Meng [Wed, 6 Jun 2018 20:37:40 +0000 (15:37 -0500)]
Fix register sizes in InstructionAPI

21 months agoMerge branch 'github_master' into vector_categories
Xiaozhu Meng [Wed, 6 Jun 2018 19:40:26 +0000 (14:40 -0500)]
Merge branch 'github_master' into vector_categories

21 months agoFix bit-size for YMM and ZMM registers
Xiaozhu Meng [Wed, 6 Jun 2018 19:39:16 +0000 (14:39 -0500)]
Fix bit-size for YMM and ZMM registers

22 months agoFixing parsing of try/catch blocks.
Sasha Nicolas [Wed, 30 May 2018 01:33:15 +0000 (20:33 -0500)]
Fixing parsing of try/catch blocks.
The FDEs were not necessarily following the CIE, as the format says.
https://refspecs.linuxfoundation.org/LSB_3.0.0/LSB-PDA/LSB-PDA/ehframechpt.html
In the ARM binary, because there were FDEs with different CIEs mixed together
we were ignoring FDEs whose CIE had past or whose CIE's reference had changed.

22 months agoFix: parsing .eh_frame on binaries without .debug_frame.
Sasha Nicolas [Thu, 24 May 2018 01:30:27 +0000 (20:30 -0500)]
Fix: parsing .eh_frame on binaries without .debug_frame.

22 months agoFixing the calculation of offset for FDE augmentation data.
Sasha Nicolas [Fri, 13 Oct 2017 21:16:34 +0000 (16:16 -0500)]
Fixing the calculation of offset for FDE augmentation data.

(cherry picked from commit 0780fb7bd7371acea691110826718f810c1f3dd4)

22 months agoMerge branch 'master' of https://github.com/dyninst/dyninst
Sasha Nicolas [Wed, 23 May 2018 17:46:04 +0000 (12:46 -0500)]
Merge branch 'master' of https://github.com/dyninst/dyninst

23 months agoMerge pull request #430 from jmellorcrummey/master
Xiaozhu Meng [Tue, 17 Apr 2018 20:05:03 +0000 (15:05 -0500)]
Merge pull request #430 from jmellorcrummey/master

add missing initialization for flags when Elf_X is a memory image

23 months agoMerge pull request #445 from stanfordcox/irelative
Xiaozhu Meng [Tue, 17 Apr 2018 19:34:08 +0000 (14:34 -0500)]
Merge pull request #445 from stanfordcox/irelative

Remove unused rpc/xdr references.

2 years agoCorrecting declaration of variable for the value of DW_AT_comp_dir of Modules.
Sasha Nicolas [Wed, 4 Apr 2018 22:58:11 +0000 (17:58 -0500)]
Correcting declaration of variable for the value of DW_AT_comp_dir of Modules.

2 years agoMerge branch 'sasha/dwarf-absolute-filenames'
Sasha Nicolas [Sat, 31 Mar 2018 00:42:15 +0000 (19:42 -0500)]
Merge branch 'sasha/dwarf-absolute-filenames'

2 years agoAdding getCompDir method to Module.
Sasha Nicolas [Sat, 31 Mar 2018 00:37:56 +0000 (19:37 -0500)]
Adding getCompDir method to Module.
This method returns the DW_AT_comp_dir of Compilation Units.

2 years agoMerge pull request #446 from mxz297/powerpc_and_loop
Xiaozhu Meng [Thu, 29 Mar 2018 21:28:36 +0000 (16:28 -0500)]
Merge pull request #446 from mxz297/powerpc_and_loop

Fixes for testsuite failures on powerv7 and block boundary aligning for overlapping instructions

2 years agoWhen checking whether an address is consistent with instructionsin a 446/head
Xiaozhu Meng [Thu, 29 Mar 2018 20:55:56 +0000 (15:55 -0500)]
When checking whether an address is consistent with instructionsin a
block, first check whether the address is within the block

2 years agoShould continue to check other CIEs when we cannot find FDE in one of the CIE
Xiaozhu Meng [Thu, 29 Mar 2018 15:11:04 +0000 (10:11 -0500)]
Should continue to check other CIEs when we cannot find FDE in one of the CIE

2 years agoppc32 and ppc64 should use the same formatter
Xiaozhu Meng [Wed, 28 Mar 2018 21:36:00 +0000 (16:36 -0500)]
ppc32 and ppc64 should use the same formatter

2 years agoNeed to flush trap mapping table into the mutatee after instrumentation for registeri...
Xiaozhu Meng [Mon, 26 Mar 2018 21:31:36 +0000 (16:31 -0500)]
Need to flush trap mapping table into the mutatee after instrumentation for registering callbacks

2 years agoWhen dealing with overlapping instructions, we should align block as
Xiaozhu Meng [Thu, 22 Mar 2018 17:14:15 +0000 (12:14 -0500)]
When dealing with overlapping instructions, we should align block as
soon as possible, correctly split blocks, anc create new fall-through
edges

2 years agoAdd instruction semantics for extsw on powerpc
Xiaozhu Meng [Mon, 19 Mar 2018 16:56:34 +0000 (11:56 -0500)]
Add instruction semantics for extsw on powerpc

2 years agoRemove unused rpc/xdr references. 445/head
Stan Cox [Wed, 28 Mar 2018 18:06:32 +0000 (14:06 -0400)]
Remove unused rpc/xdr references.

2 years agoMerge remote-tracking branch 'upstream/master' into irelative
Stan Cox [Wed, 28 Mar 2018 18:04:24 +0000 (14:04 -0400)]
Merge remote-tracking branch 'upstream/master' into irelative

2 years agoFixing problem of relative paths from libdw.
Sasha Nicolas [Tue, 27 Mar 2018 21:12:12 +0000 (16:12 -0500)]
Fixing problem of relative paths from libdw.
Now all paths coming from libdw dwarf_filesrc() and dwarf_linesrc() are
being checked and converted to be absolute.

2 years agoPrevious commits broke the build. This is to fix the compiling, but the changes done...
Sasha Nicolas [Wed, 21 Mar 2018 22:34:18 +0000 (17:34 -0500)]
Previous commits broke the build. This is to fix the compiling, but the changes done in the commits should be examined.

2 years agoMerge pull request #441 from thomasdullien/master
Bill Williams [Tue, 20 Mar 2018 19:50:43 +0000 (14:50 -0500)]
Merge pull request #441 from thomasdullien/master

Very minor clean-up a particualrly ugly piece of code.

2 years agoMerge branch 'master' of https://github.com/dyninst/dyninst
Sasha Nicolas [Tue, 20 Mar 2018 16:43:32 +0000 (11:43 -0500)]
Merge branch 'master' of https://github.com/dyninst/dyninst

2 years agoFix segfault due to missing arguments in call to parse_printf 441/head
Thomas Dullien [Tue, 20 Mar 2018 15:09:57 +0000 (16:09 +0100)]
Fix segfault due to missing arguments in call to parse_printf

2 years agoMerge remote-tracking branch 'upstream/master'
Thomas Dullien [Tue, 20 Mar 2018 09:28:07 +0000 (10:28 +0100)]
Merge remote-tracking branch 'upstream/master'

2 years agoMerge pull request #437 from mxz297/ret_crossarch
Xiaozhu Meng [Mon, 19 Mar 2018 16:12:34 +0000 (11:12 -0500)]
Merge pull request #437 from mxz297/ret_crossarch

Fixes for non-returning functions, endianness for cross architecture parsing, and powerpc instruction decoding. In addition, fix failures in testsuite on x86/64

2 years agoFix DWARF parsing for arraies 437/head
Xiaozhu Meng [Mon, 19 Mar 2018 16:09:01 +0000 (11:09 -0500)]
Fix DWARF parsing for arraies

2 years agoVery minor clean-up a particualrly ugly piece of code.
Thomas Dullien [Mon, 19 Mar 2018 11:37:55 +0000 (12:37 +0100)]
Very minor clean-up a particualrly ugly piece of code.

2 years agoIn loop anaylsis, visit blocks according to the starting addresses to
Xiaozhu Meng [Fri, 16 Mar 2018 14:10:52 +0000 (09:10 -0500)]
In loop anaylsis, visit blocks according to the starting addresses to
ensure deterministic results. And ignore catch edges in loop analysis

2 years agoHandle wait instruction on powerpc and add vrsave SPR
Xiaozhu Meng [Thu, 8 Mar 2018 20:11:24 +0000 (14:11 -0600)]
Handle wait instruction on powerpc and add vrsave SPR

2 years ago~0 --> ~0u to avoid warnings about left shift of signed value 430/head
John Mellor-Crummey [Thu, 8 Mar 2018 19:50:35 +0000 (13:50 -0600)]
~0 --> ~0u to avoid warnings about left shift of signed value

2 years agocorrect misleading indentation to avoid compiler warnings
John Mellor-Crummey [Thu, 8 Mar 2018 19:49:51 +0000 (13:49 -0600)]
correct misleading indentation to avoid compiler warnings

2 years agoFix a few powerpc instruction decoding problems and the endianness issue
Xiaozhu Meng [Thu, 8 Mar 2018 19:15:50 +0000 (13:15 -0600)]
Fix a few powerpc instruction decoding problems and the endianness issue
of code sections that are not named ".text"

2 years agoMerge branch 'master' of https://github.com/dyninst/dyninst
John Mellor-Crummey [Thu, 8 Mar 2018 17:09:22 +0000 (11:09 -0600)]
Merge branch 'master' of https://github.com/dyninst/dyninst

bringing my jmellorcrummey fork up to date with wisconsin.

2 years agoMerge branch 'master' of https://github.com/dyninst/dyninst
Sasha Nicolas [Tue, 6 Mar 2018 20:02:50 +0000 (14:02 -0600)]
Merge branch 'master' of https://github.com/dyninst/dyninst

2 years agoDelete deprecated #ifdef in liveness analysis
Xiaozhu Meng [Thu, 1 Mar 2018 19:41:10 +0000 (13:41 -0600)]
Delete deprecated #ifdef in liveness analysis

2 years agoShould ignore setting function return status when the function is known
Xiaozhu Meng [Sun, 18 Feb 2018 16:56:06 +0000 (10:56 -0600)]
Should ignore setting function return status when the function is known
as non-returning.

2 years agoHandle data endianness in parsing try/catch blocks, so it can be
Xiaozhu Meng [Sun, 18 Feb 2018 16:18:40 +0000 (10:18 -0600)]
Handle data endianness in parsing try/catch blocks, so it can be
cross-architecture

2 years agoShould delay parsing tail call edges when the return status of the tail
Xiaozhu Meng [Fri, 16 Feb 2018 16:40:11 +0000 (10:40 -0600)]
Should delay parsing tail call edges when the return status of the tail
callee is still UNSET

2 years agoFor known non-returning functions, we should ignore possible conflicting
Xiaozhu Meng [Fri, 16 Feb 2018 16:22:46 +0000 (10:22 -0600)]
For known non-returning functions, we should ignore possible conflicting
non-returning analysis results and still treat them as non-returning.

2 years agoadd missing initialization for flags when Elf_X is a memory image
John Mellor-Crummey [Sun, 11 Feb 2018 04:39:31 +0000 (22:39 -0600)]
add missing initialization for flags when Elf_X is a memory image

2 years agoMerge pull request #410 from jmellorcrummey/cuda-machine
Bill Williams [Fri, 26 Jan 2018 20:04:10 +0000 (14:04 -0600)]
Merge pull request #410 from jmellorcrummey/cuda-machine

Add basic support for EM_CUDA binary type

2 years agoMerge pull request #427 from nedwill/master
Bill Williams [Mon, 22 Jan 2018 16:55:04 +0000 (10:55 -0600)]
Merge pull request #427 from nedwill/master

Fix sh_info for VERNEED section

2 years agoShould only check for thunk call when it is a call instruction
Xiaozhu Meng [Fri, 12 Jan 2018 21:54:30 +0000 (15:54 -0600)]
Should only check for thunk call when it is a call instruction

2 years agoFixing verdef and vernum section headers info. Alignment and number of items.
Sasha Nicolas [Fri, 12 Jan 2018 18:54:44 +0000 (12:54 -0600)]
Fixing verdef and vernum section headers info. Alignment and number of items.

2 years agoFix sh_info for VERNEED section 427/head
Ned Williamson [Fri, 12 Jan 2018 01:41:20 +0000 (17:41 -0800)]
Fix sh_info for VERNEED section

This field used to contain verneednum, but now is hardcoded to 2.
This changes restores the original correct behavior.

2 years agoParseAPI should treat IFUNC type symbols as code
Xiaozhu Meng [Thu, 11 Jan 2018 22:19:13 +0000 (16:19 -0600)]
ParseAPI should treat IFUNC type symbols as code

2 years agoCompare against the proper operand field (addressing mode, not type).
Bill Williams [Wed, 10 Jan 2018 17:44:40 +0000 (11:44 -0600)]
Compare against the proper operand field (addressing mode, not type).

2 years agoClean unwanted files
Xiaozhu Meng [Fri, 29 Dec 2017 16:33:33 +0000 (10:33 -0600)]
Clean unwanted files

2 years agoAdd unstrip and codeCoverage to the example dir. Will build and install
Xiaozhu Meng [Fri, 29 Dec 2017 16:26:49 +0000 (10:26 -0600)]
Add unstrip and codeCoverage to the example dir. Will build and install
them with Dyninst

2 years agoAdd missing operand types for vector info.
Bill Williams [Thu, 21 Dec 2017 22:03:01 +0000 (16:03 -0600)]
Add missing operand types for vector info.

2 years agoAdd examples directory and add ParseAPI CFG example as a target.
Bill Williams [Wed, 20 Dec 2017 17:01:00 +0000 (11:01 -0600)]
Add examples directory and add ParseAPI CFG example as a target.

2 years agoMerge remote-tracking branch 'origin/master'
Bill Williams [Wed, 29 Nov 2017 19:51:48 +0000 (13:51 -0600)]
Merge remote-tracking branch 'origin/master'

2 years agoMerge pull request #413 from stanfordcox/irelative
Bill Williams [Tue, 28 Nov 2017 17:19:38 +0000 (11:19 -0600)]
Merge pull request #413 from stanfordcox/irelative

Handle R_X86_64_IRELATIVE relocation.

2 years agoMerge pull request #418 from mitalirawat/bugfixes-windows
mitalirawat [Sun, 26 Nov 2017 19:11:53 +0000 (13:11 -0600)]
Merge pull request #418 from mitalirawat/bugfixes-windows

Bugfixes windows

2 years agoreplacing deprecated hash maps and set in msc with unordered map and set 418/head
Mitali Rawat [Tue, 14 Nov 2017 17:09:08 +0000 (11:09 -0600)]
replacing deprecated hash maps and set in msc with unordered map and set

2 years agofixed unix leaks in windows
Mitali Rawat [Tue, 14 Nov 2017 17:07:15 +0000 (11:07 -0600)]
fixed unix leaks in windows

2 years agoMerge remote-tracking branch 'upstream/master' into irelative
Stan Cox [Fri, 10 Nov 2017 16:58:15 +0000 (11:58 -0500)]
Merge remote-tracking branch 'upstream/master' into irelative

2 years agoMerge pull request #414 from stanfordcox/vdso
Bill Williams [Wed, 8 Nov 2017 19:22:18 +0000 (13:22 -0600)]
Merge pull request #414 from stanfordcox/vdso

Add linux-vdso64.so.1 to the library blacklist.

2 years agoAdded category for vector instructions and initial implementation of detection.
Bill Williams [Mon, 30 Oct 2017 17:12:19 +0000 (12:12 -0500)]
Added category for vector instructions and initial implementation of detection.

2 years agoAdd linux-vdso64.so.1 to the library blacklist. 414/head
Stan Cox [Fri, 20 Oct 2017 19:54:43 +0000 (15:54 -0400)]
Add linux-vdso64.so.1 to the library blacklist.

Ignore linux-vdso64.so.1, which is the vdso variant on some ppc64 linux.

2 years agoHandle R_X86_64_IRELATIVE relocation. 413/head
Stan Cox [Fri, 20 Oct 2017 19:10:24 +0000 (15:10 -0400)]
Handle R_X86_64_IRELATIVE relocation.

Use the resolve function as the relocation function. (issue 396)

2 years agobasic support for EM_CUDA binary type 410/head
John Mellor-Crummey [Wed, 18 Oct 2017 02:07:15 +0000 (21:07 -0500)]
basic support for EM_CUDA binary type

2 years ago1. Should return from detaching the mutatee, when the mutatee cannot be stopped. 408/head
Xiaozhu Meng [Thu, 12 Oct 2017 20:05:44 +0000 (15:05 -0500)]
1. Should return from  detaching the mutatee, when the mutatee cannot be stopped.
2. Pick Bill's strrchr usage fix

2 years agoTake the fix for the memory issue in dwarf parsing from the new-parallel-parsing...
Xiaozhu Meng [Thu, 12 Oct 2017 19:52:03 +0000 (14:52 -0500)]
Take the fix for the memory issue in dwarf parsing from the new-parallel-parsing branch

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 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

2 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)

2 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)

2 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)

2 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

2 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

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

2 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

2 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

2 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

2 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

2 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

2 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.

2 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

2 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

2 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