Branch: refs/heads/thaines/capstone_integration
Home: https://github.com/dyninst/dyninst
Commit: 8b90d308952e6cbbbfa874dd5f4de260a513bf45
https://github.com/dyninst/dyninst/commit/8b90d308952e6cbbbfa874dd5f4de260a513bf45
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-29 (Fri, 29 May 2026)
Changed paths:
M instructionAPI/src/Operand.C
Log Message:
-----------
Add access specifiers in Operand::format -- REMOVE
This might be nice to have in general, but let's remove it after
debugging the new decoder.
Commit: e28018313989b7665b567d8d7963944c86aee82a
https://github.com/dyninst/dyninst/commit/e28018313989b7665b567d8d7963944c86aee82a
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-29 (Fri, 29 May 2026)
Changed paths:
M .github/workflows/build-opts.yaml
M CMakeLists.txt
M cmake/DyninstLibrary.cmake
M cmake/DyninstOptions.cmake
M cmake/DyninstPlatform.cmake
M instructionAPI/CMakeLists.txt
M instructionAPI/src/InstructionDecoderImpl.C
M tests/integration/CMakeLists.txt
Log Message:
-----------
Remove DYNINST_ENABLE_CAPSTONE
It's always needed now.
Commit: 8407053cc6a87d191613439dc1107115e8529fa6
https://github.com/dyninst/dyninst/commit/8407053cc6a87d191613439dc1107115e8529fa6
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-29 (Fri, 29 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
R instructionAPI/src/InstructionDecoder-x86.C
R instructionAPI/src/InstructionDecoder-x86.h
M instructionAPI/src/InstructionDecoderImpl.C
Log Message:
-----------
Remove old x86 decoder
Commit: 04db99401bcbaadfa0dc98ce333065a22fad990c
https://github.com/dyninst/dyninst/commit/04db99401bcbaadfa0dc98ce333065a22fad990c
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
M instructionAPI/h/Instruction.h
M instructionAPI/src/InstructionDecoderImpl.C
A instructionAPI/src/decoder/x86/decoder.C
A instructionAPI/src/decoder/x86/decoder.h
Log Message:
-----------
Add stub replacement for x86 decoder
Commit: afad85dcc51c3b71b5738e0363e6962279ede620
https://github.com/dyninst/dyninst/commit/afad85dcc51c3b71b5738e0363e6962279ede620
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
M instructionAPI/capstone/import_registers.py
M instructionAPI/capstone/x86/registers.py
A instructionAPI/src/decoder/x86/register_xlat.C
A instructionAPI/src/decoder/x86/register_xlat.h
Log Message:
-----------
Add Capstone->Dyninst register translation
Commit: 2e6b40f99d1add487a573e3751d7f1e97130b5f3
https://github.com/dyninst/dyninst/commit/2e6b40f99d1add487a573e3751d7f1e97130b5f3
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
A instructionAPI/src/decoder/x86/opcode_xlat.C
A instructionAPI/src/decoder/x86/opcode_xlat.h
Log Message:
-----------
Add Capstone->Dyninst opcode translation
Commit: 444c3ed9c8320bba23e5c36f54cd62a9d1e400d1
https://github.com/dyninst/dyninst/commit/444c3ed9c8320bba23e5c36f54cd62a9d1e400d1
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/src/decoder/x86/decoder.C
Log Message:
-----------
Implement x86_decoder::decode
Commit: 129f4ba50d5bed0af8470fd77e6436b95e6067d0
https://github.com/dyninst/dyninst/commit/129f4ba50d5bed0af8470fd77e6436b95e6067d0
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/src/decoder/x86/decoder.C
Log Message:
-----------
Implement skeleton for x86_decoder::decode_operands
Commit: fa3094fd8093612d394c4788eade7e3e0c96d2e6
https://github.com/dyninst/dyninst/commit/fa3094fd8093612d394c4788eade7e3e0c96d2e6
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
A instructionAPI/src/decoder/x86/categories.h
M instructionAPI/src/decoder/x86/decoder.C
Log Message:
-----------
Decode instruction categories
Commit: 5b388896d1f44e4b7771c5b795a4a80b9eca3d1d
https://github.com/dyninst/dyninst/commit/5b388896d1f44e4b7771c5b795a4a80b9eca3d1d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/h/Instruction.h
M instructionAPI/src/Instruction.C
M instructionAPI/src/InstructionCategories.C
Log Message:
-----------
Use new categories in Instruction
Commit: acd57371460b7b1cb38461a1dc4e383db3229afd
https://github.com/dyninst/dyninst/commit/acd57371460b7b1cb38461a1dc4e383db3229afd
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
A instructionAPI/src/decoder/x86/decode_reg.C
M instructionAPI/src/decoder/x86/decoder.C
M instructionAPI/src/decoder/x86/decoder.h
Log Message:
-----------
Decode explicit register operands
Commit: 92dd2cb1283e25a2f947fdace54e0f37d06ba9fe
https://github.com/dyninst/dyninst/commit/92dd2cb1283e25a2f947fdace54e0f37d06ba9fe
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
A instructionAPI/src/decoder/x86/decode_imm.C
M instructionAPI/src/decoder/x86/decoder.C
M instructionAPI/src/decoder/x86/decoder.h
Log Message:
-----------
Decode explicit immediate operands
Commit: e0bb36241d008b93a52dfecf351971c3ad51f013
https://github.com/dyninst/dyninst/commit/e0bb36241d008b93a52dfecf351971c3ad51f013
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
A instructionAPI/src/decoder/x86/decode_mem.C
M instructionAPI/src/decoder/x86/decoder.C
M instructionAPI/src/decoder/x86/decoder.h
Log Message:
-----------
Decode explicit memory operands
Commit: 3ddcd4ca9e755ef82a308276f83718fdb14093c0
https://github.com/dyninst/dyninst/commit/3ddcd4ca9e755ef82a308276f83718fdb14093c0
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
A instructionAPI/src/decoder/x86/decode_implicit.C
M instructionAPI/src/decoder/x86/decoder.C
M instructionAPI/src/decoder/x86/decoder.h
Log Message:
-----------
Decode implicit operands
Commit: 5213dc12f0c9bee16bf1746043ea17deb044dd2e
https://github.com/dyninst/dyninst/commit/5213dc12f0c9bee16bf1746043ea17deb044dd2e
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/src/decoder/x86/decode_implicit.C
Log Message:
-----------
Decode implicit memory operands
Capstone doesn't track these at all. The additional memory op for push
instructions was taken directly from Operation::setupNonOperandData.
Commit: 3900c2d6208f58a23f744bd6eb87d2969e785927
https://github.com/dyninst/dyninst/commit/3900c2d6208f58a23f744bd6eb87d2969e785927
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/src/decoder/x86/decode_implicit.C
Log Message:
-----------
Decode implicit flags for interrupt instructions
Capstone doesn't fully track eflags for interrupt instructions.
Commit: 6a1c5036477c72c891fafa3ee7243fad9d919d05
https://github.com/dyninst/dyninst/commit/6a1c5036477c72c891fafa3ee7243fad9d919d05
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/src/syscalls.C
Log Message:
-----------
Update syscalls to handle corrected AST
The new x86 instruction decoder correctly creates AST for the cases like
`call gs:[0x10]` to be the same as for `call [Base + 0x10]`. Moreover,
the new decoder handles generic segment-based addressing allowed in
64-bit mode like `call [Seg + Base + (Index * Scale) + Disp]` which is
not a system call.
Commit: 253022647b1b3f6dbfff4e445d3e5d8e74488d6c
https://github.com/dyninst/dyninst/commit/253022647b1b3f6dbfff4e445d3e5d8e74488d6c
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M common/CMakeLists.txt
M tests/unit/common/registers/CMakeLists.txt
A tests/unit/common/registers/register_set.cpp
Log Message:
-----------
Add register_set
This is a collection of MachRegisters with set operations but without
any ordering constraints.
Commit: 73b70539d2870551c2ef5050adae2be687c05fef
https://github.com/dyninst/dyninst/commit/73b70539d2870551c2ef5050adae2be687c05fef
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/cft_tests.cpp
Log Message:
-----------
Add 'isConditional' test in cft tests
Commit: 39025953cc084618b6522d9860490267cb566a54
https://github.com/dyninst/dyninst/commit/39025953cc084618b6522d9860490267cb566a54
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/arithmetic.cpp
Log Message:
-----------
arithmetic tests
Commit: 850d1b35dcb665633b85c5ec0df4e86821f3bdaf
https://github.com/dyninst/dyninst/commit/850d1b35dcb665633b85c5ec0df4e86821f3bdaf
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/branches.cpp
Log Message:
-----------
branches tests
Commit: 6491cce5e9a3db84af2478bf9fd834a4625191e1
https://github.com/dyninst/dyninst/commit/6491cce5e9a3db84af2478bf9fd834a4625191e1
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/call.cpp
Log Message:
-----------
call tests
Commit: c7eac0f04252c8c7d4badee043593d8f60783733
https://github.com/dyninst/dyninst/commit/c7eac0f04252c8c7d4badee043593d8f60783733
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/data_transfer.cpp
Log Message:
-----------
data transfer tests
Commit: e59c5d39d965c643d861b292206a534e331f3145
https://github.com/dyninst/dyninst/commit/e59c5d39d965c643d861b292206a534e331f3145
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/sse.cpp
Log Message:
-----------
sse tests
Commit: c63dfe6480a03adfb410a3d046bd4a90a8e3f0ea
https://github.com/dyninst/dyninst/commit/c63dfe6480a03adfb410a3d046bd4a90a8e3f0ea
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/strings.cpp
Log Message:
-----------
string tests
Commit: 2ada11acbe02fda7889a437780613c5de93110d4
https://github.com/dyninst/dyninst/commit/2ada11acbe02fda7889a437780613c5de93110d4
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/stack.cpp
Log Message:
-----------
stack tests
Commit: 737898dde6fa43ea28e500c282a3ce8cb3119aa5
https://github.com/dyninst/dyninst/commit/737898dde6fa43ea28e500c282a3ce8cb3119aa5
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/sysctl.cpp
Log Message:
-----------
sysctl tests
Commit: cfe9363e78065a95bd18bf6dec65bece9bc529e0
https://github.com/dyninst/dyninst/commit/cfe9363e78065a95bd18bf6dec65bece9bc529e0
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
A tests/integration/InstructionAPI/decoder/x86/x87.cpp
Log Message:
-----------
x87 tests
Commit: 78cd17e385be55ecd044e3de3d734e898037ae93
https://github.com/dyninst/dyninst/commit/78cd17e385be55ecd044e3de3d734e898037ae93
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove Operation::SetUpNonOperandData
All implicit operands are now accounted for in the decoder.
Commit: 155f3502534d9574f45ab6f0218e554602d44d74
https://github.com/dyninst/dyninst/commit/155f3502534d9574f45ab6f0218e554602d44d74
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/doc/API/Operation.tex
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Instruction.C
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove Operation::is{Read,Written}
All implicit operands are now accounted for in the decoder.
Commit: 0550b3774f5825c755baedf16ab2482c3f755417
https://github.com/dyninst/dyninst/commit/0550b3774f5825c755baedf16ab2482c3f755417
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/doc/API/Operation.tex
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Instruction.C
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove Operation::implicit{Reads,Writes}
All implicit operands are now accounted for in the decoder.
Commit: 152783a1d1e46c099ab966af839e28d62d55e6c6
https://github.com/dyninst/dyninst/commit/152783a1d1e46c099ab966af839e28d62d55e6c6
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/doc/API/Operation.tex
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Instruction.C
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove Operation::getImplicitMem{Reads,Writes}
All implicit operands are now accounted for in the decoder.
Commit: 7a4aa67b2e38effa1ca6a9c92d8c20f7cc55e428
https://github.com/dyninst/dyninst/commit/7a4aa67b2e38effa1ca6a9c92d8c20f7cc55e428
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove unused Operation::addrWidth
Commit: 41ebd2b6401ae2623b5c1374b158b8572de96a8d
https://github.com/dyninst/dyninst/commit/41ebd2b6401ae2623b5c1374b158b8572de96a8d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove Operation SMFs
Now that the std::once_flag has been removed, the special member
functions (SMFs) are no longer needed. The compiler-generated ones
will work correctly.
Commit: 75c2be6b81066fcbc8d7ca42766751926226427d
https://github.com/dyninst/dyninst/commit/75c2be6b81066fcbc8d7ca42766751926226427d
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/src/Operation.C
Log Message:
-----------
Remove x86 entry lookup in Operation::format
The decoder always populates the mnemonic, so this code will never be
used.
Commit: 5523b7362a59eb90fe565812b03af1950b6b4718
https://github.com/dyninst/dyninst/commit/5523b7362a59eb90fe565812b03af1950b6b4718
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/Operation.C
Log Message:
-----------
Operation: inline all member functions
Commit: 240fa9f4066cd66da5dd36bf8747fb6fbcd929ab
https://github.com/dyninst/dyninst/commit/240fa9f4066cd66da5dd36bf8747fb6fbcd929ab
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/h/Operation_impl.h
M instructionAPI/src/decoder/x86/decoder.C
Log Message:
-----------
Remove Operation::archDecodedFrom
It's no longer needed.
Commit: ef5c74c631ce4f94f9152ca292dc7729f1bad0ec
https://github.com/dyninst/dyninst/commit/ef5c74c631ce4f94f9152ca292dc7729f1bad0ec
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M instructionAPI/CMakeLists.txt
R instructionAPI/src/Operation.C
Log Message:
-----------
Remove Operation.C
All of it has been removed or inlined into its header.
Commit: ba2c1b7b8451a83c680f841d7f47106e6b2537f2
https://github.com/dyninst/dyninst/commit/ba2c1b7b8451a83c680f841d7f47106e6b2537f2
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M dataflowAPI/src/AbslocInterface.C
Log Message:
-----------
Only use explicit operand to make assignments for x86 pop
It is no longer guaranteed that the first operand coming from
getAllOperands is the destination. It _is_ guaranteed to be the first
explicit operand- because -it's the only explicit one.
Commit: c4cdc4dfa884d87ea9bd3acbe11e570b0c728b69
https://github.com/dyninst/dyninst/commit/c4cdc4dfa884d87ea9bd3acbe11e570b0c728b69
Author: Tim Haines <thaines.astro@xxxxxxxxx>
Date: 2026-05-30 (Sat, 30 May 2026)
Changed paths:
M parseAPI/src/IndirectAnalyzer.C
Log Message:
-----------
Do not build a jump table for an instruction without an assignment
This can happen when semantic information is incomplete for the
instruction.
Compare: https://github.com/dyninst/dyninst/compare/c524457faca7...c4cdc4dfa884
To unsubscribe from these emails, change your notification settings at https://github.com/dyninst/dyninst/settings/notifications
|