[DynInst_API:] [dyninst/dyninst] d7942b: GitHub CI: auto-cancel in-progress workflows (#2139)


Date: Mon, 16 Mar 2026 13:14:29 -0700
From: wxrdnx <noreply@xxxxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] d7942b: GitHub CI: auto-cancel in-progress workflows (#2139)
  Branch: refs/heads/angushe/riscv-parse-dataflow
  Home:   https://github.com/dyninst/dyninst
  Commit: d7942b68f59058941de6d86dc929f3f1171aef4e
      https://github.com/dyninst/dyninst/commit/d7942b68f59058941de6d86dc929f3f1171aef4e
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-03 (Tue, 03 Feb 2026)

  Changed paths:
    M .github/workflows/binary-tests.yaml
    M .github/workflows/build-opts.yaml
    M .github/workflows/cmake-formatting.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/dev-containers.yaml
    M .github/workflows/libabigail.yaml
    M .github/workflows/pr-tests.yaml
    M .github/workflows/purge-workflows.yaml
    M .github/workflows/refresh-containers.yaml
    M .github/workflows/release-containers.yaml
    M .github/workflows/spack-build.yaml
    M .github/workflows/system-libs.yaml

  Log Message:
  -----------
  GitHub CI: auto-cancel in-progress workflows (#2139)

Pushing changes to a PR's branch will relaunch all of the workflows. This
change ensures that any workflows running against that PR are terminated
to free resources and run with the updated branch.


  Commit: 0cc8dc400337c8f8e549d363259952130d71b8c2
      https://github.com/dyninst/dyninst/commit/0cc8dc400337c8f8e549d363259952130d71b8c2
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-03 (Tue, 03 Feb 2026)

  Changed paths:
    M proccontrol/h/PCProcess.h
    M proccontrol/src/int_process.h
    M proccontrol/src/process.C

  Log Message:
  -----------
  Add a synchronized breakpoint type (#2137)

This can be used to ensure that all threads in a process are stopped
before the breakpoint is executed.


  Commit: 8926e8e3b30aadaab90eea1bbea03024c7f7266c
      https://github.com/dyninst/dyninst/commit/8926e8e3b30aadaab90eea1bbea03024c7f7266c
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-04 (Wed, 04 Feb 2026)

  Changed paths:
    M common/src/dyn_register.h

  Log Message:
  -----------
  Make Dyninst::Register constructors noexcept (#2140)

For std::vector<T>::emplace_back, the standard notes

  If the move constructor of T is not noexcept and is not CopyInsertable
  into *this, vector will use the throwing move constructor.

gcc-15 and newer warn via '-Werror=noexcept' when the move_if_noexcept
condition fails and recommends making the ctor noexcept. This is not a
requirement, but the CI jobs build with -Werror.


  Commit: 461361dac57cee73d9ba6c26d7c352cc5f81681a
      https://github.com/dyninst/dyninst/commit/461361dac57cee73d9ba6c26d7c352cc5f81681a
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-04 (Wed, 04 Feb 2026)

  Changed paths:
    M cmake/DyninstOptimization.cmake

  Log Message:
  -----------
  Add clang flag to split hot/cold code (#2138)


  Commit: eb92b3449e6fc705341b3f3a59961e31163391be
      https://github.com/dyninst/dyninst/commit/eb92b3449e6fc705341b3f3a59961e31163391be
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-05 (Thu, 05 Feb 2026)

  Changed paths:
    M dyninstAPI/src/parse-cfg.h

  Log Message:
  -----------
  Remove parse_func::writesSPRs (#2141)

It was added by ad610d9a0c90 in 2006, but never implemented.


  Commit: df5ffba700fe21ce3139ba822f8c5baab4c8ae97
      https://github.com/dyninst/dyninst/commit/df5ffba700fe21ce3139ba822f8c5baab4c8ae97
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-05 (Thu, 05 Feb 2026)

  Changed paths:
    M dyninstAPI/src/dynProcess.C
    M dyninstAPI/src/pcEventHandler.C
    M proccontrol/src/event.C
    M proccontrol/src/handler.C

  Log Message:
  -----------
  Add proccontrol support for threads spawned before reaching main (#2131)

* Use a synchronized breakpoint for 'main'

If a thread is spawned before reaching main (e.g., in a .ctor entry),
proccontrol does not observe events from it and so assumes it is safe
to remove the breakpoint at 'main'. It is unclear at this time why no
events are observed. Particularly becuase there is a check that _should_
catch this case:

  BPatch::processCreate
          V
  BPatch_process::BPatch_process
          V
  PCProcess::createProcess
          V
  Process::createProcess
          V
  int_process::createProcess
          V
  PCProcess::bootstrapProcess()
          V
  assert( pcProc_->allThreadsStopped() );

co-authored by Kian Cossettini @ AMD

* Ignore events for destroyed threads launched before main

If a thread is launched and destroyed before main is reached, there
could be events in the queue that belong to that dead thread. We should
ignore them. This seems at odds with proccontrol's failure to detect
that there are threads alive before main is reached, but there is a
user-reported crash that is fixed by these changes.

Co-authored-by: Kian Cossettini <Kian.Cossettini@xxxxxxx>


  Commit: 2b27c01a702f02dd5b4c6482e3f0fe49c2c09f2a
      https://github.com/dyninst/dyninst/commit/2b27c01a702f02dd5b4c6482e3f0fe49c2c09f2a
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-07 (Sat, 07 Feb 2026)

  Changed paths:
    M .github/workflows/dev-containers.yaml
    M .github/workflows/purge-workflows.yaml
    M .github/workflows/refresh-containers.yaml
    M .github/workflows/release-containers.yaml

  Log Message:
  -----------
  GitHub CI: don't autocancel container workflows (#2147)

'Refresh base and dev containers' depends on
'Build and Deploy Development Containers'. 'Purge old workflow runs'
isn't in that dependency chain, but it could be added to a longer
workflow in the future. It doesn't matter if it is run multiple times.


  Commit: d82afffc64f3403e7ed6055e170286fc3560a865
      https://github.com/dyninst/dyninst/commit/d82afffc64f3403e7ed6055e170286fc3560a865
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-07 (Sat, 07 Feb 2026)

  Changed paths:
    M dyninstAPI/src/parse-cfg.C

  Log Message:
  -----------
  Fix return value in parse_func::IsLeafFunc (#2145)

A leaf function is one that has _no_ call edges.


  Commit: 8493016bae509d3a73f6747dafe33c7af6013e14
      https://github.com/dyninst/dyninst/commit/8493016bae509d3a73f6747dafe33c7af6013e14
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-10 (Tue, 10 Feb 2026)

  Changed paths:
    M dyninstAPI/h/BPatch_function.h
    M dyninstAPI/src/BPatch_function.C
    M dyninstAPI/src/function.h
    M dyninstAPI/src/parse-cfg.C
    M dyninstAPI/src/parse-cfg.h

  Log Message:
  -----------
  Remove unused code in parse_func, parse_block (#2142)

* Remove parse_func::containsSPRWrites_

It was added by ad610d9a0 in 2006, but never used.

* Remove parse_func::containsSharedBlocks_

Its usage was removed by 62b7d1f21 in 2010.

This also removes the following functions that directly or indirectly
depend on it:

  parse_func::containsSharedBlocks()
  func_instance::containsSharedBlocks()
  BPatch_function::containsSharedBlocks()

The one in BPatch_function was explicitly marked as not to be
documented, so it's assumed users never use it.

* Remove parse_func::invalidateLiveness_

Its usage was removed by 70328949c in 2011.

* Remove parse_func::o7_live

Its usage was removed by dee8900a in 2011.

* Remove parse_func::calcBlockLevelLiveness

Its usage was removed by 799b99dc2 in 2013.

* Remove parse_block::getLivenessIn

Its usage was removed by 18a7ca0a4 in 2011

* Remove parse_block::blockSet

Its usage was removed by 18a7ca0a4 in 2011.

* Remove parse_block::getLivenessOut

Its usage was removed by 18a7ca0a4 in 2011.

* Remove redundant typedef for Insns

It's defined in ParseAPI::Block.

* Use default dtor for parse_block


  Commit: 081f5af2d3bb649ba16943e40301526c7c1e3738
      https://github.com/dyninst/dyninst/commit/081f5af2d3bb649ba16943e40301526c7c1e3738
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M dyninstAPI/src/parse-aarch64.C
    M dyninstAPI/src/parse-amdgpu.C
    M dyninstAPI/src/parse-cfg.C
    M dyninstAPI/src/parse-cfg.h
    M dyninstAPI/src/parse-power.C

  Log Message:
  -----------
  Remove unused OpenMP parsing in parse_func (#2135)

* Remove parse_func::parseOMPParent

Functionality removed by dee8900ad35 in 2011. aarch64 was added by
311466419b in 2015, but never implemented.

* Remove parse_func::calcParentFunc

Its last usage was removed by b7899c9de7c37 in 2014.

* Remove parse_func::OMPparsed

It's not used anywhere.

* Remove parse_func::OMPparsed_

It is only ever checked/updated in parseOMPFunc on ppc, so has no effect.

* Remove parse_func::parseOMPFunc

Its no longer used.

* Remove parse_func::addRegion

ITs no longer used.

* Remove parse_func::parseOMP

It's last usage was removed by b7899c9de in 2014.


  Commit: 551b6dc41c46fa830c263c15cf586c520fe5d1a8
      https://github.com/dyninst/dyninst/commit/551b6dc41c46fa830c263c15cf586c520fe5d1a8
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-13 (Fri, 13 Feb 2026)

  Changed paths:
    M dyninstAPI/src/mapped_object.C
    M dyninstAPI/src/mapped_object.h
    M dyninstAPI/src/parse-aarch64.C
    M dyninstAPI/src/parse-amdgpu.C
    M dyninstAPI/src/parse-power.C
    M dyninstAPI/src/parse-x86.C

  Log Message:
  -----------
  Consolidate mapped_object ctor/dtor lookup (#2134)

* Merge mapped_object ctor/dtor lookup

All of the architectures do the same thing, so there's no need for
separate implementations. There's no need to assert for unimplemented
architectures.

* Merge the implementations into findGlobalFunc


  Commit: 7619154eec78d8f0bafb00be0d6a512339ab40cf
      https://github.com/dyninst/dyninst/commit/7619154eec78d8f0bafb00be0d6a512339ab40cf
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

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

  Log Message:
  -----------
  GitHub CI: Remove STAT patch (#2153)

It has been merged on their side.


  Commit: 8788c179e07e9970fff4fe358a98c5b0433999c1
      https://github.com/dyninst/dyninst/commit/8788c179e07e9970fff4fe358a98c5b0433999c1
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-16 (Mon, 16 Feb 2026)

  Changed paths:
    M dyninstAPI/src/mapped_object.C

  Log Message:
  -----------
  Remove shadowed variable in mapped_object::findGlobalFunc (#2154)

This was reported by gcc-7 as shadowing the inherited member function PatchObject::funcs(Iter).


  Commit: 7bcc539f282865fb2587c6b4e6b651ecb2707681
      https://github.com/dyninst/dyninst/commit/7bcc539f282865fb2587c6b4e6b651ecb2707681
  Author: Ronak Chauhan <ronak@xxxxxxxxxxx>
  Date:   2026-02-20 (Fri, 20 Feb 2026)

  Changed paths:
    M common/src/arch-amdgpu.C
    M common/src/arch-amdgpu.h
    M dyninstAPI/src/AmdgpuKernelDescriptor.C
    M dyninstAPI/src/AmdgpuKernelDescriptor.h
    M dyninstAPI/src/AmdgpuPointHandler.C
    M dyninstAPI/src/AmdgpuPointHandler.h
    M dyninstAPI/src/RegisterConversion-amdgpu.C
    M dyninstAPI/src/amdgpu-gfx908-details.h
    M dyninstAPI/src/ast.C
    M dyninstAPI/src/codegen-amdgpu.C
    M dyninstAPI/src/emit-amdgpu.C
    M dyninstAPI/src/emit-amdgpu.h
    M dyninstAPI/src/inst-amdgpu.C
    M dyninstAPI/src/registerSpace.C
    M dyninstAPI/src/registerSpace.h
    M tests/unit/dyninstAPI/emitter/amdgpu_gfx908.cpp

  Log Message:
  -----------
  [AMDGPU] Begin using the new Register type for codegen (#2115)


  Commit: 7e1c53ed026ce92abd0c812935d7f92f942709b0
      https://github.com/dyninst/dyninst/commit/7e1c53ed026ce92abd0c812935d7f92f942709b0
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-21 (Sat, 21 Feb 2026)

  Changed paths:
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/src/Relocation/Widgets/CFWidget-aarch64.C
    M dyninstAPI/src/Relocation/Widgets/CFWidget-ppc.C
    M dyninstAPI/src/Relocation/Widgets/CFWidget-x86.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget-aarch64.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget-ppc.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget-x86.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget.C
    M dyninstAPI/src/Relocation/Widgets/RelDataWidget.C
    M dyninstAPI/src/codegen-aarch64.C
    M dyninstAPI/src/codegen-power.C
    M dyninstAPI/src/emit-aarch64.C
    M dyninstAPI/src/emit-amdgpu.C
    M dyninstAPI/src/emit-x86.C
    M dyninstAPI/src/inst-aarch64.C
    M dyninstAPI/src/inst-amdgpu.C
    M dyninstAPI/src/inst-power.C
    M dyninstAPI/src/inst-x86.C
    M dyninstAPI/src/inst-x86.h
    M dyninstAPI/src/linux-aarch64.C
    M dyninstAPI/src/linux-power.C
    M dyninstAPI/src/linux-x86.C
    M dyninstAPI/src/pdwinnt.C
    R dyninstAPI/src/registerSpace.C
    R dyninstAPI/src/registerSpace.h
    A dyninstAPI/src/registerSpace/registerSpace-aarch64.C
    A dyninstAPI/src/registerSpace/registerSpace-amdgpu.C
    A dyninstAPI/src/registerSpace/registerSpace-ppc.C
    A dyninstAPI/src/registerSpace/registerSpace-x86.C
    A dyninstAPI/src/registerSpace/registerSpace.C
    A dyninstAPI/src/registerSpace/registerSpace.h
    M dyninstAPI/src/trampolines/baseTramp.C
    M tests/unit/dyninstAPI/emitter/amdgpu_gfx908.cpp
    M tests/unit/dyninstAPI/emitter/x86_64.cpp

  Log Message:
  -----------
  Separate architecture-specific registerSpace implementations  (#2132)


  Commit: a6cb76201a89e18c8608b1e4b919d6cf178dc392
      https://github.com/dyninst/dyninst/commit/a6cb76201a89e18c8608b1e4b919d6cf178dc392
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-24 (Tue, 24 Feb 2026)

  Changed paths:
    M instructionAPI/h/Instruction.h
    M instructionAPI/h/Operation_impl.h
    M instructionAPI/src/Instruction.C
    M instructionAPI/src/Operation.C
    M tests/integration/InstructionAPI/decoder/riscv/a_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/branches.cpp
    M tests/integration/InstructionAPI/decoder/riscv/c_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/d_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/f_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/m_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/pseudo.cpp
    M tests/integration/InstructionAPI/decoder/riscv/rv64i_base.cpp
    M tests/integration/InstructionAPI/decoder/riscv/zicsr_ext.cpp
    M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
    M tests/integration/InstructionAPI/decoder/x86/call.cpp
    M tests/opcode_tests.cpp
    M tests/opcode_tests.h

  Log Message:
  -----------
  Correctly detect compressed instructions for operand formatting (#2150)

* Add Operation::operator==

* Add Instruction::isCompressed

* Fix Instruction::getExplicitEncodedOperands()

m_EncodedOperands is only populated for compressed instructions.

* Fix Instruction::format()

* Update opcode_test

* Update RISV decode tests

* Update x86 decode tests


  Commit: b907a157c20ef5587581ceda54be4aa664ae7206
      https://github.com/dyninst/dyninst/commit/b907a157c20ef5587581ceda54be4aa664ae7206
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/h/BPatch_addressSpace.h
    M dyninstAPI/h/BPatch_binaryEdit.h
    M dyninstAPI/h/BPatch_process.h
    M dyninstAPI/h/BPatch_snippet.h
    A dyninstAPI/src/ASTs/AmdgpuEpilogue.C
    A dyninstAPI/src/ASTs/AmdgpuEpilogue.h
    A dyninstAPI/src/ASTs/AmdgpuPrologue.C
    A dyninstAPI/src/ASTs/AmdgpuPrologue.h
    A dyninstAPI/src/ASTs/OperandType.h
    A dyninstAPI/src/ASTs/actualAddressAST.C
    A dyninstAPI/src/ASTs/addressAST.h
    A dyninstAPI/src/ASTs/ast.h
    A dyninstAPI/src/ASTs/ast_helpers.h
    A dyninstAPI/src/ASTs/atomicOperationAST.C
    A dyninstAPI/src/ASTs/atomicOperationAST.h
    A dyninstAPI/src/ASTs/codeGenAST.C
    A dyninstAPI/src/ASTs/codeGenAST.h
    A dyninstAPI/src/ASTs/functionCallAST.C
    A dyninstAPI/src/ASTs/functionCallAST.h
    A dyninstAPI/src/ASTs/genericStackAST.C
    A dyninstAPI/src/ASTs/genericStackAST.h
    A dyninstAPI/src/ASTs/jumpTargetAST.C
    A dyninstAPI/src/ASTs/jumpTargetAST.h
    A dyninstAPI/src/ASTs/memoryAccessAST.C
    A dyninstAPI/src/ASTs/memoryAccessAST.h
    A dyninstAPI/src/ASTs/nullAST.C
    A dyninstAPI/src/ASTs/nullAST.h
    A dyninstAPI/src/ASTs/operandAST.C
    A dyninstAPI/src/ASTs/operandAST.h
    A dyninstAPI/src/ASTs/operatorAST.C
    A dyninstAPI/src/ASTs/operatorAST.h
    A dyninstAPI/src/ASTs/originalAddressAST.C
    A dyninstAPI/src/ASTs/scrambleRegistersAST.C
    A dyninstAPI/src/ASTs/scrambleRegistersAST.h
    A dyninstAPI/src/ASTs/sequenceAST.C
    A dyninstAPI/src/ASTs/sequenceAST.h
    A dyninstAPI/src/ASTs/snippetAST.C
    A dyninstAPI/src/ASTs/snippetAST.h
    A dyninstAPI/src/ASTs/stackAST.C
    A dyninstAPI/src/ASTs/stackAST.h
    A dyninstAPI/src/ASTs/stackInsertionAST.C
    A dyninstAPI/src/ASTs/stackInsertionAST.h
    A dyninstAPI/src/ASTs/stackRemovalAST.C
    A dyninstAPI/src/ASTs/stackRemovalAST.h
    A dyninstAPI/src/ASTs/threadAST.C
    A dyninstAPI/src/ASTs/threadAST.h
    A dyninstAPI/src/ASTs/variableAST.C
    A dyninstAPI/src/ASTs/variableAST.h
    R dyninstAPI/src/AmdgpuEpilogue.C
    R dyninstAPI/src/AmdgpuEpilogue.h
    M dyninstAPI/src/AmdgpuPointHandler.C
    M dyninstAPI/src/AmdgpuPointHandler.h
    R dyninstAPI/src/AmdgpuPrologue.C
    R dyninstAPI/src/AmdgpuPrologue.h
    M dyninstAPI/src/BPatch_addressSpace.C
    M dyninstAPI/src/BPatch_binaryEdit.C
    M dyninstAPI/src/BPatch_function.C
    M dyninstAPI/src/BPatch_point.C
    M dyninstAPI/src/BPatch_snippet.C
    M dyninstAPI/src/IAPI_to_AST.C
    M dyninstAPI/src/IAPI_to_AST.h
    R dyninstAPI/src/OperandType.h
    M dyninstAPI/src/PointHandler.h
    M dyninstAPI/src/Relocation/DynInstrumenter.C
    M dyninstAPI/src/Relocation/DynInstrumenter.h
    M dyninstAPI/src/StackMod/StackModExpr.C
    M dyninstAPI/src/addressSpace.C
    M dyninstAPI/src/addressSpace.h
    R dyninstAPI/src/ast.C
    R dyninstAPI/src/ast.h
    M dyninstAPI/src/codegen.h
    M dyninstAPI/src/dynProcess.C
    M dyninstAPI/src/dynProcess.h
    M dyninstAPI/src/emit-aarch64.h
    M dyninstAPI/src/emit-amdgpu.C
    M dyninstAPI/src/emit-amdgpu.h
    M dyninstAPI/src/emit-power.h
    M dyninstAPI/src/emit-x86.C
    M dyninstAPI/src/emit-x86.h
    M dyninstAPI/src/emitter.h
    M dyninstAPI/src/inst-aarch64.C
    M dyninstAPI/src/inst-amdgpu.C
    M dyninstAPI/src/inst-power.C
    M dyninstAPI/src/inst-power.h
    M dyninstAPI/src/inst-winnt.C
    M dyninstAPI/src/inst-x86.C
    M dyninstAPI/src/inst.C
    M dyninstAPI/src/inst.h
    M dyninstAPI/src/instPoint.C
    M dyninstAPI/src/instPoint.h
    M dyninstAPI/src/linux-aarch64.C
    M dyninstAPI/src/linux-power.C
    M dyninstAPI/src/linux-x86.C
    M dyninstAPI/src/parse-aarch64.C
    M dyninstAPI/src/parse-power.C
    M dyninstAPI/src/parse-x86.C
    M dyninstAPI/src/pdwinnt.C
    M dyninstAPI/src/regTracker.C
    M dyninstAPI/src/regTracker.h
    M dyninstAPI/src/registerSpace/registerSpace.C
    M dyninstAPI/src/syscallNotification.C
    M dyninstAPI/src/trampolines/baseTramp.C
    M dyninstAPI/src/trampolines/baseTramp.h
    M tests/unit/dyninstAPI/emitter/amdgpu_gfx908.cpp
    M tests/unit/dyninstAPI/emitter/x86_64.cpp

  Log Message:
  -----------
  Split up dyninstAPI AST node classes (#2125)

This makes them much easier to reason about and to see where the architecture-specific parts are.


* Extract operandType

This centralizes the type and its functions and will help with
possibly refactoring the operand-specific methods out of AstNode
some day.

* Create a decorator for stack ASTs

Eventually MSpecialType will go in there, but it's needed for AstNode to
build right now.

* Remove ast.C

It's no longer needed.

* Move MSpecialType into AstStackNode class

This is a better logical place for it.

* Extract AstNode::threadIndexNode into a class

This makes it consistent with the other ASTs.

NOTE: I think it should override containsFuncCall to return 'true'. The
      original implementation didn't, so I've left it as-is.

Note that AstCallNode::constFunc_ is only true when dealing with an
instance of AstThreadIndexNode, so there's no reason to store it. This
also allows AstCallNode::canBeKept to be pushed down into
AstThreadIndexNode.


  Commit: 877171ee448fcc083001a568918bf9d4c59ee3ec
      https://github.com/dyninst/dyninst/commit/877171ee448fcc083001a568918bf9d4c59ee3ec
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/h/BPatch_image.h
    R dyninstAPI/h/BPatch_parRegion.h
    M dyninstAPI/src/BPatch_image.C
    R dyninstAPI/src/BPatch_parRegion.C
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h
    M dyninstAPI/src/image.C
    M dyninstAPI/src/image.h
    R dyninstAPI/src/parRegion.C
    R dyninstAPI/src/parRegion.h
    M dyninstAPI/src/parse-aarch64.C
    M dyninstAPI/src/parse-cfg.C
    M dyninstAPI/src/parse-cfg.h
    M dyninstAPI/src/parse-power.C

  Log Message:
  -----------
  Remove remnants of defunct parallel region parsing (#2156)

* Remove parse_func::addParRegion

Its usage was removed by 0cbe68409 in 2015.

* Remove parse_func::parRegions()

* Remove parse_func::parRegionsList

* Remove image::parallelRegions

* Remove func_instance::parRegions()

* Remove func_instance::parallelRegions_

* Remove BPatch_image::getParRegions()

* Remove BPatch_parRegion

This has never been usable by users since the only useful constructor
requires a int_parRegion which is an opaque type.

* Remove int_parRegion

* Remove image_parRegion


  Commit: cc547f6882424a801b6e523c0fa4ecaab835793e
      https://github.com/dyninst/dyninst/commit/cc547f6882424a801b6e523c0fa4ecaab835793e
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dyninstAPI/src/emit-x86.C
    M dyninstAPI/src/inst-aarch64.C
    M dyninstAPI/src/inst-power.C
    M dyninstAPI/src/inst-x86.C
    M dyninstAPI/src/inst-x86.h
    M dyninstAPI/src/parse-aarch64.C
    M dyninstAPI/src/parse-amdgpu.C
    M dyninstAPI/src/parse-cfg.C
    M dyninstAPI/src/parse-cfg.h
    M dyninstAPI/src/parse-power.C
    M dyninstAPI/src/parse-x86.C

  Log Message:
  -----------
  Extract arch-specific register clobbering out of parse_func (#2148)

This also uses the x86_64 registers when analyzing x86_64 code.


  Commit: 990a65f8cc09a96f944ac8bc20fc28cb18c1cb82
      https://github.com/dyninst/dyninst/commit/990a65f8cc09a96f944ac8bc20fc28cb18c1cb82
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M common/h/registers/AMDGPU/amdgpu_gfx908_regs.h
    M common/h/registers/AMDGPU/amdgpu_gfx90a_regs.h
    M common/h/registers/AMDGPU/amdgpu_gfx940_regs.h
    M common/h/registers/aarch64_regs.h
    M common/h/registers/abstract_regs.h
    M common/h/registers/cuda_regs.h
    M common/h/registers/ppc32_regs.h
    M common/h/registers/ppc64_regs.h
    M common/h/registers/reg_def.h
    M common/h/registers/riscv64_regs.h
    M common/h/registers/x86_64_regs.h
    M common/h/registers/x86_regs.h
    M instructionAPI/capstone/import_registers.py
    M instructionAPI/src/ArchSpecificFormatters.C
    M tests/integration/InstructionAPI/decoder/x86/call.cpp
    M tests/unit/common/registers/uniqueness.cpp

  Log Message:
  -----------
  Remove architecture prefix in MachRegister name (#2157)


  Commit: 3d8c2fa31a04f2e520d658fbf375153583473bb2
      https://github.com/dyninst/dyninst/commit/3d8c2fa31a04f2e520d658fbf375153583473bb2
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-27 (Fri, 27 Feb 2026)

  Changed paths:
    M dyninstAPI/h/BPatch_snippet.h
    M dyninstAPI/src/inst-amdgpu.C

  Log Message:
  -----------
  Remove using alias from global namespace in BPatch_snippet.h (#2159)


  Commit: 6513aea1c7f7977ee4b52469be280afc2bab2851
      https://github.com/dyninst/dyninst/commit/6513aea1c7f7977ee4b52469be280afc2bab2851
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-02-28 (Sat, 28 Feb 2026)

  Changed paths:
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/src/inst-aarch64.C
    M dyninstAPI/src/inst-x86.h
    A dyninstAPI/src/registerSpace/RealRegister.h
    A dyninstAPI/src/registerSpace/registerSlot.C
    A dyninstAPI/src/registerSpace/registerSlot.h
    M dyninstAPI/src/registerSpace/registerSpace-x86.C
    M dyninstAPI/src/registerSpace/registerSpace.C
    M dyninstAPI/src/registerSpace/registerSpace.h

  Log Message:
  -----------
  Clean up, refactor registerSpace classes (#2158)

* registerSpace: use in-class initialziers, default ctor

* registerSpace: make conservativeRegSpace private

It's never called outside of the class.

* registerSpace: merge savedRegSpace into irpcRegSpace

That's the only place it's used.

* Use in-class initializers for registerSlot

* Remove string copy in registerSlot ctor

* Remove registerSlot::alloc_num

It was added by 4a4b40a24 in 2009, but was marked as "remove later"
and is only used for debugging.

* Remove 'num_allocs' in getScratchRegister

It was added by 4a4b40a24 in 2009, but was only used for debugging.

* Extract/update RealRegister

* Clean up includes in registerSpace.h

* Extract registerSlot

* Clean up comments in registerSlot

* Move the other x86-only classes into RealRegister.h

* Clean up forward decls in registerSpace.h

* Clean up comments in registerSpace.h

* Remove registerSpace::spillRegister

Its functionality was removed by 66682a53ca6d426 in 2008.

* Remove registerSpace::trySpecificRegister

Its usage was removed by 62b7d1f21d in 2010.

* Remove dead code in registerSpace::actualRegSpace

It was removed by 47ca4d9f1f3 in 2010.

* Remove registerSpace::restoreAllRegisters

Its usage was removed by bb377beb9 in 2007.

* Remove registerSpace::restoreRegister

Its usage was removed by bb377beb9 in 2007.

* Remove registerSpace::popRegister

Its usage was removed by bb377beb9 in 2007.

* Remove registerSpace::markReadOnly

Its usage was removed by bb377beb9 in 2007.

* Remove dead code in registerSpace::markSavedRegister

* Remove registerSpace::currStackPointer

Its usage was removed by 4a4b40a242f5 in 2009.

* Remove registerSpace::getRegistersSlot(Dyninst::Register)

It was added by 26c4bfd06 in 2006, but never implemented.

* Remove registerSpace::savedFlagSize

Its usage was removed by ab24c9bf0 in 2011.

* Remove registerSpace::getAllRegisterNames

Its usage was removed by 0be40fb32 in 2009.

* Remove registerSpace::getRegByNumber

It was added by 66682a53c in 2008, but never used.

* Use Register conversion in EmitterAARCH64(Save,Restore)Regs

This is the only place where registerSpace::getRegByName is used. It's
essentially a worse version of 'convertRegID', so use the latter.

* Remove registerSpace lookup by name

* Cleanup registerSpace SMFs

* Remove redundant access specifiers in registerSpace

* Fix comments in registerSpace-x86.C

* Remove registerSpace::saveAllRegisters

It was added by 26c4bfd06c4 in 2006, but never implemented.

* Remove registerSpace::readOnlyRegister

Its definition was removed by bb377beb9 in 2007.

* Remove registerSpace::checkLeaks

Its definition was removed by bb377beb9 in 2007.

* Remove registerSpace::printAllocedRegisters

Its definition was removed by bb377beb9 in 2007.

* Remove registerSpace::numRegisters()

It was added by bb377beb9 in 2007, but never used.


  Commit: 848c44aefc3adff11c7b25471df46ae49f5651db
      https://github.com/dyninst/dyninst/commit/848c44aefc3adff11c7b25471df46ae49f5651db
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-03-03 (Tue, 03 Mar 2026)

  Changed paths:
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/src/binaryEdit.C
    R dyninstAPI/src/parse-aarch64.C
    R dyninstAPI/src/parse-amdgpu.C
    R dyninstAPI/src/parse-power.C
    R dyninstAPI/src/parse-x86.C

  Log Message:
  -----------
  Consolidate implementations of BinaryEdit::doStaticBinarySpecialCases (#2133)


  Commit: fbbdfe08f5da2c020cfeb692b44d5104d7248a81
      https://github.com/dyninst/dyninst/commit/fbbdfe08f5da2c020cfeb692b44d5104d7248a81
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-03-03 (Tue, 03 Mar 2026)

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

  Log Message:
  -----------
  GitHubCI: patch build error in extrae (#2160)


  Commit: ef72799e5cb275d5afc180bd262648a8fe9f040e
      https://github.com/dyninst/dyninst/commit/ef72799e5cb275d5afc180bd262648a8fe9f040e
  Author: kupsch <kupsch@xxxxxxxxxxx>
  Date:   2026-03-03 (Tue, 03 Mar 2026)

  Changed paths:
    M common/CMakeLists.txt
    A common/src/AuxvParser.C
    A common/src/AuxvParser.h
    M common/src/addrtranslate-auxv.C
    M common/src/addrtranslate-linux.C
    M common/src/addrtranslate-sysv.C
    M common/src/addrtranslate-sysv.h
    M common/src/linuxKludges.C
    R common/src/parseauxv.C
    R common/src/parseauxv.h
    M proccontrol/src/linux.C
    M proccontrol/src/windows_handler.C
    M stackwalk/src/linux-swk.C
    M symtabAPI/src/emitWin.C

  Log Message:
  -----------
  Fix AddressTranslateSysV::getAOut (#2161)

- Clean up AuxvParser: ctor, getter functions, and file names
    
- Improve AuxvParser to get the number of program headers and the size 
  of each program header

- Fix AddressTranslateSysV::getAOut to eliminate assumptions on program
  header types and order; program headers can be any order.  The current
  could read past the end of the program headers or stop early failing
  to find the lowest or any PT_LOAD program header. Now loops over all
  program headers to correctly find the PT_PHDR and lower PT_LOAD
  virtual addresses.


  Commit: c09ee19879011b8fc2078fabaf42389fe2406e44
      https://github.com/dyninst/dyninst/commit/c09ee19879011b8fc2078fabaf42389fe2406e44
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-03-04 (Wed, 04 Mar 2026)

  Changed paths:
    M dyninstAPI/src/emit-aarch64.h
    M dyninstAPI/src/emit-amdgpu.h
    M dyninstAPI/src/emit-power.h
    M dyninstAPI/src/emit-x86.C
    M dyninstAPI/src/emit-x86.h
    M dyninstAPI/src/emitter.h
    M dyninstAPI/src/inst-aarch64.C
    M dyninstAPI/src/inst-amdgpu.C
    M dyninstAPI/src/inst-power.C

  Log Message:
  -----------
  Make Emitter::getInterModule(Func,Var)Addr overloadable (#2149)

This makes the implementations architecture-specific without having
possible symbol collisions when all architectures are linked together
(a necessity for having architecture-independent codegen).


  Commit: 0d206d395c6deee12bcdaa65614c5f438d0aaeaf
      https://github.com/dyninst/dyninst/commit/0d206d395c6deee12bcdaa65614c5f438d0aaeaf
  Author: bbiiggppiigg <bbiiggppiigg@xxxxxxxxx>
  Date:   2026-03-05 (Thu, 05 Mar 2026)

  Changed paths:
    M symtabAPI/src/emitElf.C
    M symtabAPI/src/emitElf.h

  Log Message:
  -----------
  Clean up logic related to movePHdrFirst (#2165)

Remove always true function cannotRelocatePhdrs

Remove logic related to movePHdrs


  Commit: 180cf802dd18358a710134b96fab4122d63c14ab
      https://github.com/dyninst/dyninst/commit/180cf802dd18358a710134b96fab4122d63c14ab
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-03-05 (Thu, 05 Mar 2026)

  Changed paths:
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/src/BPatch_basicBlock.C
    M dyninstAPI/src/BPatch_object.C
    M dyninstAPI/src/Parsing-arch.C
    M dyninstAPI/src/Parsing.C
    M dyninstAPI/src/Relocation/DynCFGMaker.C
    M dyninstAPI/src/Relocation/DynInstrumenter.C
    M dyninstAPI/src/addressSpace.C
    M dyninstAPI/src/block.C
    M dyninstAPI/src/block.h
    M dyninstAPI/src/dynThread.C
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h
    M dyninstAPI/src/image.C
    M dyninstAPI/src/inst-power.C
    M dyninstAPI/src/inst-x86.h
    M dyninstAPI/src/inst.C
    M dyninstAPI/src/instPoint.C
    R dyninstAPI/src/parse-cfg.C
    R dyninstAPI/src/parse-cfg.h
    A dyninstAPI/src/parse_block.C
    A dyninstAPI/src/parse_block.h
    A dyninstAPI/src/parse_func.C
    A dyninstAPI/src/parse_func.h
    M dyninstAPI/src/unix.C

  Log Message:
  -----------
  Clean up, refactor dyninstAPI parse_func and parse_block classes (#2162)

* Remove parse_block::img()

Its usage was removed by 62b7d1f21 in 2010.

* Clean up parse_func::getPtrToInstruction()

The code was commented out by 62b7d1f21 in 2010.

* Remove ROUGH_MEMORY_PROFILE

It's not used anymore.

* Remove parse_block::compare

It's not used.

* Remove parse_block::getCallee()

Its usage was removed by 4bc7f25d76db9 in 2020.

* Remove func_instance::getReachableBlocks()

Its usage was disabled by ab24c9bf0 in 2012 and removed by 780d7d1246
in 2021.

* Remove parse_func::getReachableBlocks

It's no longer used.

* Remove unneeded class forward decls in parse-cfg.h

* Remove parse_block::getInsns

The offset is never used, so it's just equivalent to calling the version
in the base class. The comment is also out of date because the returned
value is never reused at its callsite.

* Remove unused ifuncPtr, ifuncCmp

These were added by c63e1528202 in 2005, but never used.

* Removed unused includes in parse-cfg.h

* Cleanup includes in parse-cfg.h

* Remove using directives in parse-cfg.h

* Remove parse_block::debugPrint

There's a clear copy/paste error in that it prints the sources as the
targets. I don't think anyone has ever used this.

* Remove unneeded friend delcaration in parse_block

* Make second parse_block ctor public, remove unneeded friend declaration

It's unclear why this was done instead of just making the constructor
public.

* Replace parse_block::firstInsnOffset with Block::start

* Replace parse_block::lastInsnOffset with Block::lastInsnAddr

* Replace parse_block::endOffset() with Block::end()

* Replace parse_block::getSize() with Block::size()

* Remove MSVC++ check in image_edge

* Clean up image_edge::src,trg

* Remove unneeded friend declaration in image_edge

* Extract parse_block

* Explicitly mark overrides in parse_block

* Use in-class initializers in parse_block

* Extract parse_block -- REBASE

* Simplify parse_block::isCallBlock()

* Simplify parse_block::isIndirectTailCallBlock()

* Remove image_edge

It's no longer used.

* Fix PLT function handling in parse_func

Originally, isPLTFunction() just returned isPLTFunction_. That was
changed by 62b7d1f21 in 2010 to the current calculation. However, the
construction of a parse_func in DynCFGFactory::mkfunc didn't reflect
that change.

I don't think the check is parse_func::isPLTFunction() is strictly
necessary, but I've added it for assurances.

* Simplify parse_func constructor

* Use default dtor in parse_func

* Remove compile guard on parse_func::savesReturnAddr()

* Remove parse_func::compare

It's not used.

* Remove parse_func::copyNames

It was added by 0f583e73a in 2005, but never implemented.

* Remove parse_func::parse()

It was added by ecd7eac74 in 2009, but never implemented.

* Replace parse_func::getOffset() with Function::addr()

* Inline parse_func::getPtrOffset()

* Inline parse_func::getSymTabSize()

* Extract parse_func

* Remove redundant access specifier in parse_func

* Remove parse-cfg.h

* Mark parse_block::id() as 'override'


  Commit: f9a3672de7028e3ab3bc3cf59a91195622fe0408
      https://github.com/dyninst/dyninst/commit/f9a3672de7028e3ab3bc3cf59a91195622fe0408
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-03-05 (Thu, 05 Mar 2026)

  Changed paths:
    M tests/regression/symtabAPI/CMakeLists.txt
    A tests/regression/symtabAPI/DWARF/CMakeLists.txt
    A tests/regression/symtabAPI/DWARF/dwarf5_inline_func.cpp

  Log Message:
  -----------
  Add regression test for DWARF5 inlined functions (#2164)

See https://github.com/dyninst/dyninst/issues/1455 for details.


  Commit: 67135fb3e2c9566fc2ff0dd9a0c830961e6feef7
      https://github.com/dyninst/dyninst/commit/67135fb3e2c9566fc2ff0dd9a0c830961e6feef7
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2026-03-16 (Mon, 16 Mar 2026)

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

  Log Message:
  -----------
  Cleanup, refactor Instruction class (#2163)

* Simplify use of DYNINST_EXPORT

* Don't store the ArchSpecificFormatter.

* Clean up includes in Instruction.C

* Remove namespace directive in Instruction.C

* Define isLegalInsn() in terms of isValid()

* Don't store m_Valid

It's cheap to compute.

* Fix whitespace for ctors

* Use in-class initializers

* Modernize loops

* Use explicitly-defaulted default ctor

Members now use in-class initializers.

* Remove non-const getEncodedOperation()

The only reason the non-const getOperation() exists is because
Operation::isRead isn't const. That will get fixed when x86 migrates to
Capstone because SetUpNonOperandData() will go away.

* Update docs for Instruction::get(Read,Write)Set

* Update include guard name for Instruction.h


  Commit: 23bddd872cd15a3d0d4c8f7eeaaa514a9821b33a
      https://github.com/dyninst/dyninst/commit/23bddd872cd15a3d0d4c8f7eeaaa514a9821b33a
  Author: wxrdnx <67510189+wxrdnx@xxxxxxxxxxxxxxxxxxxxxxxx>
  Date:   2026-03-16 (Mon, 16 Mar 2026)

  Changed paths:
    M .github/workflows/binary-tests.yaml
    M .github/workflows/build-opts.yaml
    M .github/workflows/cmake-formatting.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/libabigail.yaml
    M .github/workflows/pr-tests.yaml
    M .github/workflows/spack-build.yaml
    M .github/workflows/system-libs.yaml
    M cmake/DyninstOptimization.cmake
    M common/CMakeLists.txt
    M common/h/registers/AMDGPU/amdgpu_gfx908_regs.h
    M common/h/registers/AMDGPU/amdgpu_gfx90a_regs.h
    M common/h/registers/AMDGPU/amdgpu_gfx940_regs.h
    M common/h/registers/aarch64_regs.h
    M common/h/registers/abstract_regs.h
    M common/h/registers/cuda_regs.h
    M common/h/registers/ppc32_regs.h
    M common/h/registers/ppc64_regs.h
    M common/h/registers/reg_def.h
    M common/h/registers/riscv64_regs.h
    M common/h/registers/x86_64_regs.h
    M common/h/registers/x86_regs.h
    A common/src/AuxvParser.C
    A common/src/AuxvParser.h
    M common/src/addrtranslate-auxv.C
    M common/src/addrtranslate-linux.C
    M common/src/addrtranslate-sysv.C
    M common/src/addrtranslate-sysv.h
    M common/src/arch-amdgpu.C
    M common/src/arch-amdgpu.h
    M common/src/dyn_register.h
    M common/src/linuxKludges.C
    R common/src/parseauxv.C
    R common/src/parseauxv.h
    M dyninstAPI/CMakeLists.txt
    M dyninstAPI/h/BPatch_addressSpace.h
    M dyninstAPI/h/BPatch_binaryEdit.h
    M dyninstAPI/h/BPatch_function.h
    M dyninstAPI/h/BPatch_image.h
    R dyninstAPI/h/BPatch_parRegion.h
    M dyninstAPI/h/BPatch_process.h
    M dyninstAPI/h/BPatch_snippet.h
    A dyninstAPI/src/ASTs/AmdgpuEpilogue.C
    A dyninstAPI/src/ASTs/AmdgpuEpilogue.h
    A dyninstAPI/src/ASTs/AmdgpuPrologue.C
    A dyninstAPI/src/ASTs/AmdgpuPrologue.h
    A dyninstAPI/src/ASTs/OperandType.h
    A dyninstAPI/src/ASTs/actualAddressAST.C
    A dyninstAPI/src/ASTs/addressAST.h
    A dyninstAPI/src/ASTs/ast.h
    A dyninstAPI/src/ASTs/ast_helpers.h
    A dyninstAPI/src/ASTs/atomicOperationAST.C
    A dyninstAPI/src/ASTs/atomicOperationAST.h
    A dyninstAPI/src/ASTs/codeGenAST.C
    A dyninstAPI/src/ASTs/codeGenAST.h
    A dyninstAPI/src/ASTs/functionCallAST.C
    A dyninstAPI/src/ASTs/functionCallAST.h
    A dyninstAPI/src/ASTs/genericStackAST.C
    A dyninstAPI/src/ASTs/genericStackAST.h
    A dyninstAPI/src/ASTs/jumpTargetAST.C
    A dyninstAPI/src/ASTs/jumpTargetAST.h
    A dyninstAPI/src/ASTs/memoryAccessAST.C
    A dyninstAPI/src/ASTs/memoryAccessAST.h
    A dyninstAPI/src/ASTs/nullAST.C
    A dyninstAPI/src/ASTs/nullAST.h
    A dyninstAPI/src/ASTs/operandAST.C
    A dyninstAPI/src/ASTs/operandAST.h
    A dyninstAPI/src/ASTs/operatorAST.C
    A dyninstAPI/src/ASTs/operatorAST.h
    A dyninstAPI/src/ASTs/originalAddressAST.C
    A dyninstAPI/src/ASTs/scrambleRegistersAST.C
    A dyninstAPI/src/ASTs/scrambleRegistersAST.h
    A dyninstAPI/src/ASTs/sequenceAST.C
    A dyninstAPI/src/ASTs/sequenceAST.h
    A dyninstAPI/src/ASTs/snippetAST.C
    A dyninstAPI/src/ASTs/snippetAST.h
    A dyninstAPI/src/ASTs/stackAST.C
    A dyninstAPI/src/ASTs/stackAST.h
    A dyninstAPI/src/ASTs/stackInsertionAST.C
    A dyninstAPI/src/ASTs/stackInsertionAST.h
    A dyninstAPI/src/ASTs/stackRemovalAST.C
    A dyninstAPI/src/ASTs/stackRemovalAST.h
    A dyninstAPI/src/ASTs/threadAST.C
    A dyninstAPI/src/ASTs/threadAST.h
    A dyninstAPI/src/ASTs/variableAST.C
    A dyninstAPI/src/ASTs/variableAST.h
    R dyninstAPI/src/AmdgpuEpilogue.C
    R dyninstAPI/src/AmdgpuEpilogue.h
    M dyninstAPI/src/AmdgpuKernelDescriptor.C
    M dyninstAPI/src/AmdgpuKernelDescriptor.h
    M dyninstAPI/src/AmdgpuPointHandler.C
    M dyninstAPI/src/AmdgpuPointHandler.h
    R dyninstAPI/src/AmdgpuPrologue.C
    R dyninstAPI/src/AmdgpuPrologue.h
    M dyninstAPI/src/BPatch_addressSpace.C
    M dyninstAPI/src/BPatch_basicBlock.C
    M dyninstAPI/src/BPatch_binaryEdit.C
    M dyninstAPI/src/BPatch_function.C
    M dyninstAPI/src/BPatch_image.C
    M dyninstAPI/src/BPatch_object.C
    R dyninstAPI/src/BPatch_parRegion.C
    M dyninstAPI/src/BPatch_point.C
    M dyninstAPI/src/BPatch_snippet.C
    M dyninstAPI/src/IAPI_to_AST.C
    M dyninstAPI/src/IAPI_to_AST.h
    R dyninstAPI/src/OperandType.h
    M dyninstAPI/src/Parsing-arch.C
    M dyninstAPI/src/Parsing.C
    M dyninstAPI/src/PointHandler.h
    M dyninstAPI/src/RegisterConversion-amdgpu.C
    M dyninstAPI/src/Relocation/DynCFGMaker.C
    M dyninstAPI/src/Relocation/DynInstrumenter.C
    M dyninstAPI/src/Relocation/DynInstrumenter.h
    M dyninstAPI/src/Relocation/Widgets/CFWidget-aarch64.C
    M dyninstAPI/src/Relocation/Widgets/CFWidget-ppc.C
    M dyninstAPI/src/Relocation/Widgets/CFWidget-x86.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget-aarch64.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget-ppc.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget-x86.C
    M dyninstAPI/src/Relocation/Widgets/PCWidget.C
    M dyninstAPI/src/Relocation/Widgets/RelDataWidget.C
    M dyninstAPI/src/StackMod/StackModExpr.C
    M dyninstAPI/src/addressSpace.C
    M dyninstAPI/src/addressSpace.h
    M dyninstAPI/src/amdgpu-gfx908-details.h
    R dyninstAPI/src/ast.C
    R dyninstAPI/src/ast.h
    M dyninstAPI/src/binaryEdit.C
    M dyninstAPI/src/block.C
    M dyninstAPI/src/block.h
    M dyninstAPI/src/codegen-aarch64.C
    M dyninstAPI/src/codegen-amdgpu.C
    M dyninstAPI/src/codegen-power.C
    M dyninstAPI/src/codegen.h
    M dyninstAPI/src/dynProcess.C
    M dyninstAPI/src/dynProcess.h
    M dyninstAPI/src/dynThread.C
    M dyninstAPI/src/emit-aarch64.C
    M dyninstAPI/src/emit-aarch64.h
    M dyninstAPI/src/emit-amdgpu.C
    M dyninstAPI/src/emit-amdgpu.h
    M dyninstAPI/src/emit-power.h
    M dyninstAPI/src/emit-x86.C
    M dyninstAPI/src/emit-x86.h
    M dyninstAPI/src/emitter.h
    M dyninstAPI/src/function.C
    M dyninstAPI/src/function.h
    M dyninstAPI/src/image.C
    M dyninstAPI/src/image.h
    M dyninstAPI/src/inst-aarch64.C
    M dyninstAPI/src/inst-amdgpu.C
    M dyninstAPI/src/inst-power.C
    M dyninstAPI/src/inst-power.h
    M dyninstAPI/src/inst-winnt.C
    M dyninstAPI/src/inst-x86.C
    M dyninstAPI/src/inst-x86.h
    M dyninstAPI/src/inst.C
    M dyninstAPI/src/inst.h
    M dyninstAPI/src/instPoint.C
    M dyninstAPI/src/instPoint.h
    M dyninstAPI/src/linux-aarch64.C
    M dyninstAPI/src/linux-power.C
    M dyninstAPI/src/linux-x86.C
    M dyninstAPI/src/mapped_object.C
    M dyninstAPI/src/mapped_object.h
    R dyninstAPI/src/parRegion.C
    R dyninstAPI/src/parRegion.h
    R dyninstAPI/src/parse-aarch64.C
    R dyninstAPI/src/parse-amdgpu.C
    R dyninstAPI/src/parse-cfg.C
    R dyninstAPI/src/parse-cfg.h
    R dyninstAPI/src/parse-power.C
    R dyninstAPI/src/parse-x86.C
    A dyninstAPI/src/parse_block.C
    A dyninstAPI/src/parse_block.h
    A dyninstAPI/src/parse_func.C
    A dyninstAPI/src/parse_func.h
    M dyninstAPI/src/pcEventHandler.C
    M dyninstAPI/src/pdwinnt.C
    M dyninstAPI/src/regTracker.C
    M dyninstAPI/src/regTracker.h
    R dyninstAPI/src/registerSpace.C
    R dyninstAPI/src/registerSpace.h
    A dyninstAPI/src/registerSpace/RealRegister.h
    A dyninstAPI/src/registerSpace/registerSlot.C
    A dyninstAPI/src/registerSpace/registerSlot.h
    A dyninstAPI/src/registerSpace/registerSpace-aarch64.C
    A dyninstAPI/src/registerSpace/registerSpace-amdgpu.C
    A dyninstAPI/src/registerSpace/registerSpace-ppc.C
    A dyninstAPI/src/registerSpace/registerSpace-x86.C
    A dyninstAPI/src/registerSpace/registerSpace.C
    A dyninstAPI/src/registerSpace/registerSpace.h
    M dyninstAPI/src/syscallNotification.C
    M dyninstAPI/src/trampolines/baseTramp.C
    M dyninstAPI/src/trampolines/baseTramp.h
    M dyninstAPI/src/unix.C
    M instructionAPI/capstone/import_registers.py
    M instructionAPI/doc/API/Instruction.tex
    M instructionAPI/h/Instruction.h
    M instructionAPI/h/Operation_impl.h
    M instructionAPI/src/ArchSpecificFormatters.C
    M instructionAPI/src/Instruction.C
    M instructionAPI/src/Operation.C
    M proccontrol/h/PCProcess.h
    M proccontrol/src/event.C
    M proccontrol/src/handler.C
    M proccontrol/src/int_process.h
    M proccontrol/src/linux.C
    M proccontrol/src/process.C
    M proccontrol/src/windows_handler.C
    M stackwalk/src/linux-swk.C
    M symtabAPI/src/emitElf.C
    M symtabAPI/src/emitElf.h
    M symtabAPI/src/emitWin.C
    M tests/integration/InstructionAPI/decoder/riscv/a_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/branches.cpp
    M tests/integration/InstructionAPI/decoder/riscv/c_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/d_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/f_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/m_ext.cpp
    M tests/integration/InstructionAPI/decoder/riscv/pseudo.cpp
    M tests/integration/InstructionAPI/decoder/riscv/rv64i_base.cpp
    M tests/integration/InstructionAPI/decoder/riscv/zicsr_ext.cpp
    M tests/integration/InstructionAPI/decoder/x86/CMakeLists.txt
    M tests/integration/InstructionAPI/decoder/x86/call.cpp
    M tests/opcode_tests.cpp
    M tests/opcode_tests.h
    M tests/regression/symtabAPI/CMakeLists.txt
    A tests/regression/symtabAPI/DWARF/CMakeLists.txt
    A tests/regression/symtabAPI/DWARF/dwarf5_inline_func.cpp
    M tests/unit/common/registers/uniqueness.cpp
    M tests/unit/dyninstAPI/emitter/amdgpu_gfx908.cpp
    M tests/unit/dyninstAPI/emitter/x86_64.cpp

  Log Message:
  -----------
  Merge branch 'master' into angushe/riscv-parse-dataflow


Compare: https://github.com/dyninst/dyninst/compare/28ce36179771...23bddd872cd1

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