Branch: refs/heads/thaines/capstone_integration
Home: https://github.com/dyninst/dyninst
Commit: 375e7e8b84643a9c0af8653b3b5ffa7f8b7e8966
https://github.com/dyninst/dyninst/commit/375e7e8b84643a9c0af8653b3b5ffa7f8b7e8966
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M CMakeLists.txt
A cmake/tpls/DyninstCapstone.cmake
M instructionAPI/CMakeLists.txt
Log Message:
-----------
Add CMake stub
Commit: 97a8a03f146ea67229a1ed7f19de7f76c55373df
https://github.com/dyninst/dyninst/commit/97a8a03f146ea67229a1ed7f19de7f76c55373df
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/capstone/import.py
M instructionAPI/capstone/x86.py
Log Message:
-----------
Make parameter the root directory in import script
Instead of specifying the file name, the user just points to the
directory and the script will grab the necessary files.
Commit: 480f558d9272cd9a4361565ec9478ca0a721e80d
https://github.com/dyninst/dyninst/commit/480f558d9272cd9a4361565ec9478ca0a721e80d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/capstone/import.py
M instructionAPI/capstone/x86.py
Log Message:
-----------
Alias faddp to fadd
Capstone only uses fadd. This does not modify the entryIDs yet.
Commit: 924c3c9c001483d49cac758fd3b83c2936e55752
https://github.com/dyninst/dyninst/commit/924c3c9c001483d49cac758fd3b83c2936e55752
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/capstone/import.py
Log Message:
-----------
Add mnemonic translation to import script
Commit: 4b2386ce29a3eb4e4d633439608cb1efbe3861b9
https://github.com/dyninst/dyninst/commit/4b2386ce29a3eb4e4d633439608cb1efbe3861b9
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
A instructionAPI/src/x86/register-xlat.C
A instructionAPI/src/x86/register-xlat.h
Log Message:
-----------
Add Capstone->Dyninst register translation
Commit: a79593452870c7d3752673fd3d24a151cead3327
https://github.com/dyninst/dyninst/commit/a79593452870c7d3752673fd3d24a151cead3327
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
A instructionAPI/src/x86/mnemonic-xlat.C
A instructionAPI/src/x86/mnemonic-xlat.h
Log Message:
-----------
Add Capstone->Dyninst mnemonic translation
Commit: 915903167ba6dcad349068bb69526dc5f91ad18d
https://github.com/dyninst/dyninst/commit/915903167ba6dcad349068bb69526dc5f91ad18d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/InstructionDecoder-x86.C
Log Message:
-----------
InstructionDecoder-x86.C whitespace
Commit: a3d9a7f33b3651f2bba6643301db8234d2ebce75
https://github.com/dyninst/dyninst/commit/a3d9a7f33b3651f2bba6643301db8234d2ebce75
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/CMakeLists.txt
M instructionAPI/h/Instruction.h
M instructionAPI/src/InstructionDecoderImpl.C
A instructionAPI/src/x86/decoder.C
A instructionAPI/src/x86/decoder.h
Log Message:
-----------
Add stub replacement for x86 decoder
Commit: 92315c445eb56d17e686c8bde5445034772b65e5
https://github.com/dyninst/dyninst/commit/92315c445eb56d17e686c8bde5445034772b65e5
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
M instructionAPI/src/x86/decoder.h
Log Message:
-----------
Add decoder ctor and dtor
There is one usage of Capstone per decoder. This should be threadsafe
as it doesn't make sense to use a decoder with multiple threads
simultaneously. See comments in ctor for why there are two Capstone
handles per decoder.
Commit: cb0a52ed9939ffcebc68e63769d0f120767975aa
https://github.com/dyninst/dyninst/commit/cb0a52ed9939ffcebc68e63769d0f120767975aa
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Add decodeOpcode
Commit: 5b163734e3fc522402a53208f44f8a1688194064
https://github.com/dyninst/dyninst/commit/5b163734e3fc522402a53208f44f8a1688194064
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Add note in decodeOperands
Commit: bc95e826d60326d6ba6a52d1727c653eb05f12be
https://github.com/dyninst/dyninst/commit/bc95e826d60326d6ba6a52d1727c653eb05f12be
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
M instructionAPI/src/x86/decoder.h
Log Message:
-----------
Add doDelayedDecode
This is a copy/paste of Xiaozhu's implementation. It appears to be
incomplete (as per the comments).
Commit: 148da0cf7e554df634c65b8c9aa70db360aa1a77
https://github.com/dyninst/dyninst/commit/148da0cf7e554df634c65b8c9aa70db360aa1a77
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.h
Log Message:
-----------
stub -- refactor
Commit: 4fb5bda442d3561aedf049d337a9d343751c418b
https://github.com/dyninst/dyninst/commit/4fb5bda442d3561aedf049d337a9d343751c418b
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
M instructionAPI/src/x86/decoder.h
Log Message:
-----------
Use disassembler object in decode_operands
Commit: 47cbb11d26f1a44b7dbd86ba85d007be99fe5fd5
https://github.com/dyninst/dyninst/commit/47cbb11d26f1a44b7dbd86ba85d007be99fe5fd5
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
M instructionAPI/src/x86/decoder.h
Log Message:
-----------
Refactor decode_operands
This makes it much easier to follow.
Commit: fa0eb02a78bbba40ccd0edcb13fa74557eeac38a
https://github.com/dyninst/dyninst/commit/fa0eb02a78bbba40ccd0edcb13fa74557eeac38a
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Add detailed comments about operand types
Commit: ef999b48a6b284ea6aaad4e005cbdd2b27fff86d
https://github.com/dyninst/dyninst/commit/ef999b48a6b284ea6aaad4e005cbdd2b27fff86d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Use Instruction::makeReturnExpression
No need to reinvent the wheel.
Commit: 2a15ed3f715459e39534aa14b3fad42ec7e47079
https://github.com/dyninst/dyninst/commit/2a15ed3f715459e39534aa14b3fad42ec7e47079
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Remove redundant includes
Commit: 3f38a751e37e52ec7d053078d0c66d9440a3069c
https://github.com/dyninst/dyninst/commit/3f38a751e37e52ec7d053078d0c66d9440a3069c
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Refactor handling of implicit registers
By giving the properties names rather than std::pairs, it makes it much
easier to read.
Commit: 1e1efaa6ec76201565897b4bdc645e527cc3e64e
https://github.com/dyninst/dyninst/commit/1e1efaa6ec76201565897b4bdc645e527cc3e64e
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Include decoding of {e,r}flags
Commit: 04f78383f21bcd1d2df1d63852b5339909f68e74
https://github.com/dyninst/dyninst/commit/04f78383f21bcd1d2df1d63852b5339909f68e74
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Fix comment for explicit operands
Commit: 6459ddfcf74935e599ce06e77a0121a8f9d157eb
https://github.com/dyninst/dyninst/commit/6459ddfcf74935e599ce06e77a0121a8f9d157eb
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Fix explicit operands example
Commit: 3b7ba79b2eb5e255565f2c548a0e9519e7ea9ee6
https://github.com/dyninst/dyninst/commit/3b7ba79b2eb5e255565f2c548a0e9519e7ea9ee6
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Remove extraneous namespace qualifier
Commit: 7017326c6b1ea291d239e44a5d5fcdff05ca9a03
https://github.com/dyninst/dyninst/commit/7017326c6b1ea291d239e44a5d5fcdff05ca9a03
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Refactor is_call
The original code did the nested check, but didn't need to.
if(cat == c_BranchInsn || cat == c_CallInsn) {
isCFT = true;
if(cat == c_CallInsn) {
isCall = true;
}
}
is equivalent to
if(cat == c_CallInsn) {
isCall = true;
}
if(cat == c_BranchInsn || isCall) {
isCFT = true;
}
Commit: 7180d3142b2daa1f4f3f4d164023730b42ef5d4c
https://github.com/dyninst/dyninst/commit/7180d3142b2daa1f4f3f4d164023730b42ef5d4c
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Fix comment in expand_eflags
Commit: 50b834b200ad83ac34dcbe735f0a4fd0d72d4a7e
https://github.com/dyninst/dyninst/commit/50b834b200ad83ac34dcbe735f0a4fd0d72d4a7e
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/register-xlat.C
Log Message:
-----------
Fix comment for BND registers
Commit: f842a154d7130e2e17748c894b9976550cfc81af
https://github.com/dyninst/dyninst/commit/f842a154d7130e2e17748c894b9976550cfc81af
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Refactor isCFT in decode_reg
Commit: d35b7d29f262d09377e06d316ce893dbbdf8dc81
https://github.com/dyninst/dyninst/commit/d35b7d29f262d09377e06d316ce893dbbdf8dc81
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Refactor isCFT in decode_imm
Commit: 36393430159142cd170356a16d4be69cf1f6460b
https://github.com/dyninst/dyninst/commit/36393430159142cd170356a16d4be69cf1f6460b
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Use signed 64-bit values for immediates
Commit: b5e22697b896b2452244003f19b7c9a2a2f75ec7
https://github.com/dyninst/dyninst/commit/b5e22697b896b2452244003f19b7c9a2a2f75ec7
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Update comment for relative branch immediates
Commit: 26e1c553373299a41dfb1893762578941de6083e
https://github.com/dyninst/dyninst/commit/26e1c553373299a41dfb1893762578941de6083e
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Remove error check on size_to_type
It has been updated to include all values used by Capstone.
Commit: fefa3d3ff608b1f89034b35fa19eea9998107522
https://github.com/dyninst/dyninst/commit/fefa3d3ff608b1f89034b35fa19eea9998107522
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Remove unneeded assert
Commit: 455c3f2b20b5c1f737463e32dd80c7d6d76310cf
https://github.com/dyninst/dyninst/commit/455c3f2b20b5c1f737463e32dd80c7d6d76310cf
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Move is_call and is_cft to where they are used
Commit: 79dec28a28adda7064f36dbac9d08904264a7523
https://github.com/dyninst/dyninst/commit/79dec28a28adda7064f36dbac9d08904264a7523
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Use signed values for calculations
The manual says everything but the scale can be positive or negative.
Commit: 91fc705169fe6cac2d1f279554f0c6b1db4bed7c
https://github.com/dyninst/dyninst/commit/91fc705169fe6cac2d1f279554f0c6b1db4bed7c
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Use braces
Commit: 30001139dc9d3774c0698ad30448747207489afb
https://github.com/dyninst/dyninst/commit/30001139dc9d3774c0698ad30448747207489afb
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Move size_to_type to where it is used
Commit: 2462b0ea34dfab85ea21f58e8dd7c899347d079b
https://github.com/dyninst/dyninst/commit/2462b0ea34dfab85ea21f58e8dd7c899347d079b
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Add some whitespace
Commit: 41751b17d188a5a4d3405d9db7fec8174b2d6bc8
https://github.com/dyninst/dyninst/commit/41751b17d188a5a4d3405d9db7fec8174b2d6bc8
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Add description from Intel manual
Commit: b1e20f100a58325f337f9cc0eccc09785a395aac
https://github.com/dyninst/dyninst/commit/b1e20f100a58325f337f9cc0eccc09785a395aac
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Return early if processing a CFT
Commit: 715d051cf59c87911f97fff2d7d00f2bcaeb1db8
https://github.com/dyninst/dyninst/commit/715d051cf59c87911f97fff2d7d00f2bcaeb1db8
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Add comment about LEA
Commit: d552c1878d3abc1dd47a33c613a4ea908e14b7bb
https://github.com/dyninst/dyninst/commit/d552c1878d3abc1dd47a33c613a4ea908e14b7bb
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Rename immAST -> displacementAST
This better reflects its meaning.
Commit: b7998957044a7e6a85f0a3a5e29ea70aff79fb13
https://github.com/dyninst/dyninst/commit/b7998957044a7e6a85f0a3a5e29ea70aff79fb13
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Handle segment registers as memory operands
Commit: efd1a32fb85f9560a3986925aab34a7e794a11c8
https://github.com/dyninst/dyninst/commit/efd1a32fb85f9560a3986925aab34a7e794a11c8
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/CMakeLists.txt
Log Message:
-----------
Fix cmake formatting in instructionAPI/CMakeLists.txt
Commit: 773bd9c7b6b4bda3763f6211104e742631f47abc
https://github.com/dyninst/dyninst/commit/773bd9c7b6b4bda3763f6211104e742631f47abc
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M .github/workflows/dependency-version.yaml
M docker/dependencies.versions
Log Message:
-----------
Add dependency-version check for Capstone
Commit: 7b5640a30ea3e73baaf4a8c95c29563ab61a7382
https://github.com/dyninst/dyninst/commit/7b5640a30ea3e73baaf4a8c95c29563ab61a7382
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/CMakeLists.txt
Log Message:
-----------
Make Capstone a private dependency
Commit: dbde26ef5dc8e0c5f9432c4ea964c19a4c8e6d9e
https://github.com/dyninst/dyninst/commit/dbde26ef5dc8e0c5f9432c4ea964c19a4c8e6d9e
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M docker/Dockerfile.fedora
M docker/Dockerfile.ubuntu
A docker/build_capstone.sh
M docker/dependencies.versions
Log Message:
-----------
Docker: add Capstone builds
Commit: 6431bc3075ad362770146406e81610bcf92650e0
https://github.com/dyninst/dyninst/commit/6431bc3075ad362770146406e81610bcf92650e0
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Only decode segment register operands for i386
Commit: 72d81fcdf1425c093094c7cb50c24a6324211102
https://github.com/dyninst/dyninst/commit/72d81fcdf1425c093094c7cb50c24a6324211102
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M instructionAPI/src/x86/decoder.C
Log Message:
-----------
Fix format from clang's -Wformat-pedantic
Commit: 89b9ec010335d89ec75f253c4ce7b09938956833
https://github.com/dyninst/dyninst/commit/89b9ec010335d89ec75f253c4ce7b09938956833
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2024-01-12 (Fri, 12 Jan 2024)
Changed paths:
M cmake/tpls/DyninstCapstone.cmake
Log Message:
-----------
Use correct capitalization for capstone_ROOT in CMake
Compare: https://github.com/dyninst/dyninst/compare/2d410aac628b...89b9ec010335
|