[DynInst_API:] [dyninst/dyninst] 63bc94: Use depth-first traversal in MultiRegisterAST::vis...


Date: Thu, 04 Dec 2025 01:20:46 -0800
From: Ronak Chauhan <noreply@xxxxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] 63bc94: Use depth-first traversal in MultiRegisterAST::vis...
  Branch: refs/heads/ronak/amdgpu-review
  Home:   https://github.com/dyninst/dyninst
  Commit: 63bc945bab064736dc1b2ccf24459de05fa12ccf
      https://github.com/dyninst/dyninst/commit/63bc945bab064736dc1b2ccf24459de05fa12ccf
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-10-31 (Fri, 31 Oct 2025)

  Changed paths:
    M instructionAPI/h/InstructionAST.h
    M instructionAPI/src/MultiRegister.C
    M tests/unit/CMakeLists.txt
    A tests/unit/instructionAPI/AST/CMakeLists.txt
    A tests/unit/instructionAPI/AST/getUsedRegisters.cpp

  Log Message:
  -----------
  Use depth-first traversal in MultiRegisterAST::visit (#2044)

This makes it consistent with the other AST types. This _could_ affect
user code. However, MultiRegisterAST hasn't been part of a release yet,
so a change of behavior is acceptable since API breakages are allowed
on major releases.

Summary of effects on current Visitor implementations in Dyninst:

getUsedRegisters
  updated

StateEvalVisitor
  no change in behavior

ExpressionConversionVisitor
  multireg isn't supported

thunkVisitor
  no change in behavior

detectToppedLoc
  There could be a change of behavior here since the registers of a
  multireg will now be seen before the multireg, itself. It's possible
  the RegisterAST visit method could do work that it wouldn't have
  before this change.

BPatch_memoryAccessAdapter
  multireg isn't supported

leaSimplifyVisitor
  This is only for x86 where the parts of a multireg can't be used as
  and index or base register for addressing, so there's no change in
  behavior.

ASTFactory
  multireg isn't supported.


  Commit: 72268ba081596e5a8da361c16f28a0006a2514ed
      https://github.com/dyninst/dyninst/commit/72268ba081596e5a8da361c16f28a0006a2514ed
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-10-31 (Fri, 31 Oct 2025)

  Changed paths:
    M common/CMakeLists.txt
    A common/h/registers/register_set.h
    M tests/integration/CMakeLists.txt
    A tests/integration/InstructionAPI/decoder/CMakeLists.txt
    A tests/integration/InstructionAPI/decoder/cft_tests.cpp
    A tests/integration/InstructionAPI/decoder/cft_tests.h
    A tests/integration/InstructionAPI/decoder/memory_tests.cpp
    A tests/integration/InstructionAPI/decoder/memory_tests.h
    A tests/integration/InstructionAPI/decoder/register_tests.cpp
    A tests/integration/InstructionAPI/decoder/register_tests.h
    A tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
    A tests/integration/InstructionAPI/decoder/x86/call.cpp

  Log Message:
  -----------
  Add unit tests for x86 call instructions (#2045)

This is a very limited subset of the possible 'call' instructions
and mainly serves as a means of getting the decoder unit test
framework into Dyninst.


  Commit: d5d164be891b6363e1e1397efcd401112d14eebb
      https://github.com/dyninst/dyninst/commit/d5d164be891b6363e1e1397efcd401112d14eebb
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-03 (Mon, 03 Nov 2025)

  Changed paths:
    M instructionAPI/src/AMDGPU/gfx908/InstructionDecoder-amdgpu-gfx908.h
    M instructionAPI/src/AMDGPU/gfx90a/InstructionDecoder-amdgpu-gfx90a.h
    M instructionAPI/src/AMDGPU/gfx940/InstructionDecoder-amdgpu-gfx940.h
    M instructionAPI/src/InstructionDecoder-aarch64.h
    M instructionAPI/src/InstructionDecoder-power.h
    M instructionAPI/src/InstructionDecoder-x86.C
    M instructionAPI/src/InstructionDecoder-x86.h
    M instructionAPI/src/InstructionDecoder.C
    M instructionAPI/src/InstructionDecoderImpl.h

  Log Message:
  -----------
  Remove InstructionDecoderImpl::setMode (#2048)

It's only used by x86, so move it there.


  Commit: 4e365e8f538c2d299946124ff05d968205f9280a
      https://github.com/dyninst/dyninst/commit/4e365e8f538c2d299946124ff05d968205f9280a
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-03 (Mon, 03 Nov 2025)

  Changed paths:
    M .github/actions/build-fedora/action.yaml
    M .github/actions/build-ubuntu/action.yaml
    M .github/actions/build/action.yaml
    M .github/workflows/README.md
    A .github/workflows/binary-tests.yaml
    M .github/workflows/codegen-cross-build.yaml
    M .github/workflows/pr-tests.yaml
    M docker/build.sh
    M tests/CMakeLists.txt
    A tests/cmake/DyninstBinaryTests.cmake

  Log Message:
  -----------
  Enable regression testing of known binary files (#1998)


  Commit: 8823b4abbe4df4867c2d8ffe3ffe48fe095667c0
      https://github.com/dyninst/dyninst/commit/8823b4abbe4df4867c2d8ffe3ffe48fe095667c0
  Author: kupsch <kupsch@xxxxxxxxxxx>
  Date:   2025-11-04 (Tue, 04 Nov 2025)

  Changed paths:
    M symtabAPI/src/Object-elf.C

  Log Message:
  -----------
  make parse_attr lambdas noexcept (#2051)

This was introduced in PR #1966.  The code as written works with
C++ 11, but fails when compiling with C++ version 14 to 23, as
std::function wants lambda stored in them to be noexcept.


  Commit: 3fdbf5a841feba2d211fc293eb435759d9ca219a
      https://github.com/dyninst/dyninst/commit/3fdbf5a841feba2d211fc293eb435759d9ca219a
  Author: wxrdnx <67510189+wxrdnx@xxxxxxxxxxxxxxxxxxxxxxxx>
  Date:   2025-11-06 (Thu, 06 Nov 2025)

  Changed paths:
    M .github/workflows/dependency-version.yaml
    M CMakeLists.txt
    A cmake/tpls/DyninstCapstone.cmake
    M docker/Dockerfile.fedora
    M docker/Dockerfile.ubuntu
    A docker/build_capstone.sh
    M docker/dependencies.versions

  Log Message:
  -----------
  Add Capstone Workflow (#2053)


  Commit: d9083fbab0ac69a90e1e1c308b07cdcb3e0b4bcd
      https://github.com/dyninst/dyninst/commit/d9083fbab0ac69a90e1e1c308b07cdcb3e0b4bcd
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-06 (Thu, 06 Nov 2025)

  Changed paths:
    M instructionAPI/doc/API/Instruction.tex
    M instructionAPI/h/Instruction.h
    M instructionAPI/h/InstructionDecoder.h

  Log Message:
  -----------
  Move maxInstructionLength into Instruction class (#2054)

This value is more closely associated with an Instruction than a
decoder, so move it there. Although it was never documented, an alias
is left in place.


  Commit: 74266259b4c66a92b4df9a71054263720f869362
      https://github.com/dyninst/dyninst/commit/74266259b4c66a92b4df9a71054263720f869362
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-06 (Thu, 06 Nov 2025)

  Changed paths:
    M instructionAPI/h/Operation_impl.h
    M instructionAPI/src/Operation.C

  Log Message:
  -----------
  Replace default ctor with default member initializers (#2055)


  Commit: cf948e34f7bd8c8a755675a3c9d7a1899b28e47e
      https://github.com/dyninst/dyninst/commit/cf948e34f7bd8c8a755675a3c9d7a1899b28e47e
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-08 (Sat, 08 Nov 2025)

  Changed paths:
    M dataflowAPI/src/AbslocInterface.C

  Log Message:
  -----------
  Clean up, refactor AbsRegionConverter::convertAll (#2049)

* Extract aarch64 flag checks

* Modernize loops

* Whitespace


  Commit: 61e390a4517efbaa012172f59e779ab973639be3
      https://github.com/dyninst/dyninst/commit/61e390a4517efbaa012172f59e779ab973639be3
  Author: wxrdnx <67510189+wxrdnx@xxxxxxxxxxxxxxxxxxxxxxxx>
  Date:   2025-11-08 (Sat, 08 Nov 2025)

  Changed paths:
    M .github/workflows/build-opts.yaml
    M CMakeLists.txt
    M cmake/DyninstLibrary.cmake
    M cmake/DyninstOptions.cmake
    M cmake/DyninstPlatform.cmake
    M docker/build.sh

  Log Message:
  -----------
  Conditionally compile Capstone (#2058)


  Commit: 7312ae811a6ec050a29f5e33a28f851c83554a66
      https://github.com/dyninst/dyninst/commit/7312ae811a6ec050a29f5e33a28f851c83554a66
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-09 (Sun, 09 Nov 2025)

  Changed paths:
    M docker/build.sh

  Log Message:
  -----------
  Docker: fix exit value in build.sh (#2060)


  Commit: e6480522b30638faf324332f209d246adf9046cf
      https://github.com/dyninst/dyninst/commit/e6480522b30638faf324332f209d246adf9046cf
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-09 (Sun, 09 Nov 2025)

  Changed paths:
    M .github/workflows/build-opts.yaml

  Log Message:
  -----------
  GitHub CI: fix build-opts workflow (#2059)


  Commit: 1004557a9d92e2f909a32bd1ab045672e0410673
      https://github.com/dyninst/dyninst/commit/1004557a9d92e2f909a32bd1ab045672e0410673
  Author: bbiiggppiigg <bbiiggppiigg@xxxxxxxxx>
  Date:   2025-11-13 (Thu, 13 Nov 2025)

  Changed paths:
    M dataflowAPI/src/slicing.C

  Log Message:
  -----------
  Fix detection of conditional jump in slicing (#2062)

* Fix detection of conditional jump in slicing

Currently, in backward slicing, the detection of the conditional jump
assumes both
COND_TAKEN and COND_NOT_TAKEN are present.

However, under current parsing implementation, it could be the case
where only
one of the edges are present when parsing the indirect control flow in
the fallthrough block.

As a result, when backward slicing on the jump table index, the slicer
would miss the fact that
predecessor block ends with a conditional jump instruction, and fail to
compute the bound.

Paritally Fixes #2050


  Commit: 9345b697f7572184949fc38c1613f776ec739632
      https://github.com/dyninst/dyninst/commit/9345b697f7572184949fc38c1613f776ec739632
  Author: bbiiggppiigg <bbiiggppiigg@xxxxxxxxx>
  Date:   2025-11-13 (Thu, 13 Nov 2025)

  Changed paths:
    M dataflowAPI/rose/x86_64InstructionSemantics.h

  Log Message:
  -----------
  Fix semantic for move 32 bit register (#2063)

On x86_64, the upper 32 bits should be zeroed when moving a
32 bit value, except the sepcial case for xchg eax,eax


  Commit: fe39c929f3350ac3a1a9c3b0b77dc6752b70d345
      https://github.com/dyninst/dyninst/commit/fe39c929f3350ac3a1a9c3b0b77dc6752b70d345
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-13 (Thu, 13 Nov 2025)

  Changed paths:
    M dataflowAPI/rose/x86_64InstructionSemantics.h

  Log Message:
  -----------
  Update semantics for ROSE x86 xchg nop (#2065)

When an operand is a memory reference,
isSgAsmx86RegisterReferenceExpression returns nullptr because it's of
type SgAsmx86MemoryReferenceExpression.


  Commit: 342d6f7b34f1e0281876cc56b872a87dca39d691
      https://github.com/dyninst/dyninst/commit/342d6f7b34f1e0281876cc56b872a87dca39d691
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-13 (Thu, 13 Nov 2025)

  Changed paths:
    M cmake/tpls/DyninstCapstone.cmake
    M docker/build_capstone.sh
    M docker/dependencies.versions

  Log Message:
  -----------
  Increase minimum Capstone version to 6.0.0-Alpha5 (#2061)

* Require at least 6.0.0-Alpha5

The 'capstone::capstone' target was removed just before the
6.0.0-Alpha5. By making this the minimum, we can guaratee we get 1) a
version of Capstone built with PIC that is needed for linking into
libinstructionAPI, and 2) the needed RISC-V stuff.

* Require the Capstone shared library

* Remove use of BUILD_SHARED_LIBS

CAPSTONE_BUILD_SHARED_LIBS automatically sets that.


  Commit: 97ebe21efc1a6c1105f37c75c51537292d2d6e68
      https://github.com/dyninst/dyninst/commit/97ebe21efc1a6c1105f37c75c51537292d2d6e68
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-13 (Thu, 13 Nov 2025)

  Changed paths:
    M .github/workflows/pr-tests.yaml

  Log Message:
  -----------
  GitHubCI: require external-test to run (#2066)


  Commit: f2fd25934c05d235f5fab12a4fe70b8089bb0cb5
      https://github.com/dyninst/dyninst/commit/f2fd25934c05d235f5fab12a4fe70b8089bb0cb5
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-15 (Sat, 15 Nov 2025)

  Changed paths:
    M .github/workflows/build-opts.yaml
    M .github/workflows/compiler-multibuild.yaml
    M .github/workflows/libabigail.yaml

  Log Message:
  -----------
  GitHub CI: limit where known binary tests are run (#2068)

There's no need to run those tests when doing build tests. Running the unit, integration,
and regression tests is needed to validate the build is usable.


  Commit: 23c77ca55427d3f33902776fb988cd77cacc24b8
      https://github.com/dyninst/dyninst/commit/23c77ca55427d3f33902776fb988cd77cacc24b8
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-15 (Sat, 15 Nov 2025)

  Changed paths:
    M .github/workflows/consumers.yaml

  Log Message:
  -----------
  GitHub CI: re-enable HPCtoolkit build on Fedora (#2069)

The bootstrapping issue in spack has been resolved.

Effectively reverts 8e070fff1204.


  Commit: 0f569612d1cd62131dbdee71ca1643d8a6c242e1
      https://github.com/dyninst/dyninst/commit/0f569612d1cd62131dbdee71ca1643d8a6c242e1
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-15 (Sat, 15 Nov 2025)

  Changed paths:
    M docker/build.sh

  Log Message:
  -----------
  Fix build error in docker/build.sh (#2064)

I do not know why, but when the install directory ($dest_dir) is
manually created with 'mkdir' instead of letting it be implicitly
created by 'cmake --build', 'ctest' fails to find the tests- even when
I have confirmed they are present.

I've added '--no-tests=error' to ensure that ctest fails when no tests
are run.


  Commit: d7a6b0d1ff01a38edf9adfcc7037526ce9318276
      https://github.com/dyninst/dyninst/commit/d7a6b0d1ff01a38edf9adfcc7037526ce9318276
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-16 (Sun, 16 Nov 2025)

  Changed paths:
    M .github/workflows/consumers.yaml

  Log Message:
  -----------
  GitHub CI: fix yaml for hpctoolkit job (#2070)


  Commit: 65746938d4bf274eebf1d92420f2d39b3d5d1724
      https://github.com/dyninst/dyninst/commit/65746938d4bf274eebf1d92420f2d39b3d5d1724
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-16 (Sun, 16 Nov 2025)

  Changed paths:
    M cmake/DyninstOptions.cmake
    M tests/CMakeLists.txt

  Log Message:
  -----------
  Update DYNINST_ENABLE_TESTS option (#2067)

It now takes several possible arguments rather than just being turned
on/off.


  Commit: a99222df9ae5145c3530c36ba43c435ec4dcd748
      https://github.com/dyninst/dyninst/commit/a99222df9ae5145c3530c36ba43c435ec4dcd748
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-16 (Sun, 16 Nov 2025)

  Changed paths:
    M .github/actions/build/action.yaml
    M .github/workflows/libabigail.yaml
    M docker/build.sh
    M tests/CMakeLists.txt
    A tests/cft_tests.cpp
    A tests/cft_tests.h
    M tests/integration/CMakeLists.txt
    R tests/integration/InstructionAPI/decoder/CMakeLists.txt
    R tests/integration/InstructionAPI/decoder/cft_tests.cpp
    R tests/integration/InstructionAPI/decoder/cft_tests.h
    R tests/integration/InstructionAPI/decoder/memory_tests.cpp
    R tests/integration/InstructionAPI/decoder/memory_tests.h
    R tests/integration/InstructionAPI/decoder/register_tests.cpp
    R tests/integration/InstructionAPI/decoder/register_tests.h
    A tests/memory_tests.cpp
    A tests/memory_tests.h
    A tests/register_tests.cpp
    A tests/register_tests.h
    M tests/unit/CMakeLists.txt
    A tests/unit/dyninstAPI/CMakeLists.txt
    M tests/unit/instructionAPI/CMakeLists.txt
    M tests/unit/instructionAPI/syscall-x86.cpp
    M tests/unit/parseAPI/lea-nop-x86.cpp

  Log Message:
  -----------
  Refactor tests (#2056)

* Move decoder test infrastructure to root of tests directory

Naturally, these turned out to be more useful than just for testing
the decoders.

* Update error messages in syscall-x86

* Move syscall-x86::main to top of file

This makes it easier to see the core of the test before the details.

* Don't fail early in lea-nop-x86

* Move dyninst/emitter cmake into subdir

* Move instructionAPI/AST cmake into subdir

* Don't fail early when decode fails

* Clean up run_32

* Don't enable any cmake tests by default


  Commit: 32c3f1b0ce839f3ade8457716a041f6125575abb
      https://github.com/dyninst/dyninst/commit/32c3f1b0ce839f3ade8457716a041f6125575abb
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-17 (Mon, 17 Nov 2025)

  Changed paths:
    M docker/build.sh

  Log Message:
  -----------
  GitHub CI: disable cmake tests by default (#2071)

* GitHub CI: disable cmake tests by default

This should have been part of #2056.

* Remove old debug code


  Commit: 263a1d8c9a9ebb4660907a0d89c4a9283976a50e
      https://github.com/dyninst/dyninst/commit/263a1d8c9a9ebb4660907a0d89c4a9283976a50e
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-17 (Mon, 17 Nov 2025)

  Changed paths:
    M cmake/DyninstOptions.cmake
    M parseAPI/CMakeLists.txt
    R parseAPI/h/GraphAdapter.h
    R parseAPI/src/GraphAdapter.C

  Log Message:
  -----------
  Remove ENABLE_PARSE_API_GRAPHS (#2072)

This was broken by 69fb1b45b in 2014 when const_blocklist changed from
a std::vector to a boost::iterator_range.


  Commit: 53b97f6839aca8eec14109a756ef6cf034e4140c
      https://github.com/dyninst/dyninst/commit/53b97f6839aca8eec14109a756ef6cf034e4140c
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-11-17 (Mon, 17 Nov 2025)

  Changed paths:
    M instructionAPI/h/Instruction.h
    M instructionAPI/src/Instruction.C
    M instructionAPI/src/InstructionDecoder-aarch64.C
    M instructionAPI/src/InstructionDecoder-power.C

  Log Message:
  -----------
  Refactor Instruction raw representation (#2052)

* Replace raw_instruction_t with std::array<uint8_t, maxInstructionLength>

* Make m_size a uint8_t

This drops the size of the Instruction from 344 to 366 bytes due to
improved layout. Reducing the length of m_RawInsn has no effect.

* Update default ctor

This could use default class member initialization, instead. I opted to
do it this way since none of the other members is default-initialized
currently.


  Commit: 7c0fd28e16b6329e0bae8383ce52bd00b1c225bf
      https://github.com/dyninst/dyninst/commit/7c0fd28e16b6329e0bae8383ce52bd00b1c225bf
  Author: bbiiggppiigg <bbiiggppiigg@xxxxxxxxx>
  Date:   2025-11-21 (Fri, 21 Nov 2025)

  Changed paths:
    M parseAPI/src/IA_IAPI.C
    M parseAPI/src/IA_x86.C

  Log Message:
  -----------
  Fix jump detection in instruction adapters

Certain if predicates are missing a not in #1813.
This fix the regression reported in #2050.


  Commit: d2eb368df68fc1a4d4854dfbe79cbed747f902c1
      https://github.com/dyninst/dyninst/commit/d2eb368df68fc1a4d4854dfbe79cbed747f902c1
  Author: bbiiggppiigg <bbiiggppiigg@xxxxxxxxx>
  Date:   2025-12-01 (Mon, 01 Dec 2025)

  Changed paths:
    M common/src/arch-x86.C

  Log Message:
  -----------
  Replace VEX_DEBUG with common_parsing_printf (#2076)

* Replace VEX_DEBUG with common_parsing_printf

The old debug message for decoding VEX instructions rely on
building dynisnt with VEX_DEBUG/VEX_PEDANTIC, making it annoying
to flip the switch. This PR replace it with the
common_parsing_printf, which relies on runtime ENVIROMENTAL
variable COMMON_DEBUG_PARSING.


  Commit: bdecc21e2ce61e4305e95bf79fddc929e00ec6fc
      https://github.com/dyninst/dyninst/commit/bdecc21e2ce61e4305e95bf79fddc929e00ec6fc
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2025-12-03 (Wed, 03 Dec 2025)

  Changed paths:
    M docker/build.sh

  Log Message:
  -----------
  GitHub CI: force test directory (#2077)

When run under GitHub's CI, ctest doesn't find the build directory specified by
'--test-dir' _and_ it doesn't raise an error even though '--no-tests=error'.
This fixes both.


  Commit: 8cbe2785ac486913dd17ba14a5646b21c612879d
      https://github.com/dyninst/dyninst/commit/8cbe2785ac486913dd17ba14a5646b21c612879d
  Author: Ronak Chauhan <ronak@xxxxxxxxxxx>
  Date:   2025-12-04 (Thu, 04 Dec 2025)

  Changed paths:
    M .github/actions/build-fedora/action.yaml
    M .github/actions/build-ubuntu/action.yaml
    M .github/actions/build/action.yaml
    M .github/workflows/README.md
    A .github/workflows/binary-tests.yaml
    M .github/workflows/build-opts.yaml
    M .github/workflows/codegen-cross-build.yaml
    M .github/workflows/compiler-multibuild.yaml
    M .github/workflows/consumers.yaml
    M .github/workflows/dependency-version.yaml
    M .github/workflows/pr-tests.yaml
    M CMakeLists.txt
    M cmake/DyninstLibrary.cmake
    M cmake/DyninstOptions.cmake
    M cmake/DyninstPlatform.cmake
    A cmake/tpls/DyninstCapstone.cmake
    M common/CMakeLists.txt
    A common/h/registers/register_set.h
    M common/src/arch-x86.C
    M dataflowAPI/rose/x86_64InstructionSemantics.h
    M dataflowAPI/src/AbslocInterface.C
    M dataflowAPI/src/slicing.C
    M docker/Dockerfile.fedora
    M docker/Dockerfile.ubuntu
    M docker/build.sh
    A docker/build_capstone.sh
    M docker/dependencies.versions
    M instructionAPI/doc/API/Instruction.tex
    M instructionAPI/h/Instruction.h
    M instructionAPI/h/InstructionAST.h
    M instructionAPI/h/InstructionDecoder.h
    M instructionAPI/h/Operation_impl.h
    M instructionAPI/src/AMDGPU/gfx908/InstructionDecoder-amdgpu-gfx908.h
    M instructionAPI/src/AMDGPU/gfx90a/InstructionDecoder-amdgpu-gfx90a.h
    M instructionAPI/src/AMDGPU/gfx940/InstructionDecoder-amdgpu-gfx940.h
    M instructionAPI/src/Instruction.C
    M instructionAPI/src/InstructionDecoder-aarch64.C
    M instructionAPI/src/InstructionDecoder-aarch64.h
    M instructionAPI/src/InstructionDecoder-power.C
    M instructionAPI/src/InstructionDecoder-power.h
    M instructionAPI/src/InstructionDecoder-x86.C
    M instructionAPI/src/InstructionDecoder-x86.h
    M instructionAPI/src/InstructionDecoder.C
    M instructionAPI/src/InstructionDecoderImpl.h
    M instructionAPI/src/MultiRegister.C
    M instructionAPI/src/Operation.C
    M parseAPI/CMakeLists.txt
    R parseAPI/h/GraphAdapter.h
    R parseAPI/src/GraphAdapter.C
    M parseAPI/src/IA_IAPI.C
    M parseAPI/src/IA_x86.C
    M symtabAPI/src/Object-elf.C
    M tests/CMakeLists.txt
    A tests/cft_tests.cpp
    A tests/cft_tests.h
    A tests/cmake/DyninstBinaryTests.cmake
    M tests/integration/CMakeLists.txt
    A tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
    A tests/integration/InstructionAPI/decoder/x86/call.cpp
    A tests/memory_tests.cpp
    A tests/memory_tests.h
    A tests/register_tests.cpp
    A tests/register_tests.h
    M tests/unit/CMakeLists.txt
    A tests/unit/dyninstAPI/CMakeLists.txt
    A tests/unit/instructionAPI/AST/CMakeLists.txt
    A tests/unit/instructionAPI/AST/getUsedRegisters.cpp
    M tests/unit/instructionAPI/CMakeLists.txt
    M tests/unit/instructionAPI/syscall-x86.cpp
    M tests/unit/parseAPI/lea-nop-x86.cpp

  Log Message:
  -----------
  Merge branch 'master' into ronak/amdgpu-review


  Commit: c92dfcf68c3f728f0ce396b6a4c092e92bfefa79
      https://github.com/dyninst/dyninst/commit/c92dfcf68c3f728f0ce396b6a4c092e92bfefa79
  Author: Ronak Chauhan <ronak@xxxxxxxxxxx>
  Date:   2025-12-04 (Thu, 04 Dec 2025)

  Changed paths:
    M dyninstAPI/src/amdgpu-gfx908-details.h

  Log Message:
  -----------
  [AMDGPU] Use explicit opcode value for S_ATOMIC_SUB in SMEM_Opcode


Compare: https://github.com/dyninst/dyninst/compare/b9a921320a10...c92dfcf68c3f

To unsubscribe from these emails, change your notification settings at https://github.com/dyninst/dyninst/settings/notifications
[← Prev in Thread] Current Thread [Next in Thread→]