Branch: refs/heads/master
  Home:   https://github.com/dyninst/dyninst
  Commit: 40f9295af0666d7eed13f8c69236ae24e77969c1
      https://github.com/dyninst/dyninst/commit/40f9295af0666d7eed13f8c69236ae24e77969c1
  Author: bbiiggppiigg <bbiiggppiigg@xxxxxxxxx>
  Date:   2020-11-23 (Mon, 23 Nov 2020)
  Changed paths:
    A common/h/amdgpu_op_table.h
    A common/h/amdgpu_vega_sys_regs.h
    M common/h/dyn_regs.h
    M common/h/entryIDs.h
    M common/src/dyn_regs.C
    M dataflowAPI/rose/conversions.h
    M dataflowAPI/rose/semantics/Registers.C
    M dataflowAPI/src/AbslocInterface.C
    M dataflowAPI/src/ExpressionConversionVisitor.C
    M dataflowAPI/src/RoseInsnFactory.C
    M dataflowAPI/src/RoseInsnFactory.h
    M dataflowAPI/src/SymEval.C
    M dataflowAPI/src/SymbolicExpansion.C
    M dataflowAPI/src/SymbolicExpansion.h
    M dataflowAPI/src/convertOpcodes.C
    M dwarf/src/dwarfHandle.C
    M elf/src/Elf_X.C
    A external/rose/amdgpuInstructionEnum.h
    M external/rose/rose-compat.h
    M instructionAPI/CMakeLists.txt
    M instructionAPI/h/ArchSpecificFormatters.h
    M instructionAPI/h/BinaryFunction.h
    M instructionAPI/h/Instruction.h
    M instructionAPI/h/InstructionCategories.h
    M instructionAPI/h/Operation_impl.h
    A instructionAPI/h/Ternary.h
    M instructionAPI/src/ArchSpecificFormatters.C
    M instructionAPI/src/Expression.C
    M instructionAPI/src/Instruction.C
    M instructionAPI/src/InstructionCategories.C
    A instructionAPI/src/InstructionDecoder-amdgpu-vega.C
    A instructionAPI/src/InstructionDecoder-amdgpu-vega.h
    M instructionAPI/src/InstructionDecoderImpl.C
    M instructionAPI/src/InstructionDecoderImpl.h
    M instructionAPI/src/Register.C
    A instructionAPI/src/Ternary.C
    A instructionAPI/src/amdgpu_branchinsn_table.h
    A instructionAPI/src/amdgpu_decoder_impl_vega.C
    A instructionAPI/src/amdgpu_decoder_impl_vega.h
    A instructionAPI/src/amdgpu_insn_entry.h
    A instructionAPI/src/amdgpu_opcode_tables.C
    M parseAPI/CMakeLists.txt
    M parseAPI/src/IA_IAPI.C
    A parseAPI/src/IA_amdgpu.C
    A parseAPI/src/IA_amdgpu.h
    M parseAPI/src/IndirectAnalyzer.C
    M parseAPI/src/Parser.C
    M parseAPI/src/SymbolicExpression.C
    M proccontrol/src/process.C
  Log Message:
  -----------
  Add initial support for analyzing AMDGPU binaries (#900)
* remove unnecessary assertion for unknown phdr_type
* add initial stubs for amdgpu support
* add formatters for amdgpu
* add opcode table and register definition
* added support for register vector
* add untracked files
* commit stubs for xiaozhu to see
* initial cfg traversal done
* remove unused register-pair related files
* remove symbol patching since the 256 byte function header is no longer there
* Do not assert in getBaseRegister
* fix instruction length detection and decoding logic
* now decode will only decode operands for branch instructions
* added basic support for amdgpu in rose
* merged upstream
* fix a bug where we decode the vdst as ssrc
* improve the logic for computing len of instructions that might make use of literals, such that we no longer need to pass the buffer all over the place
* fix undefined behavior for std::transform
* Remove empty code blocks/Unreachable code/Unneeded
Comment out dead code
Restore sym_debug_parsing to default value 0
* Added meaningful name and comments to function prototype of getAMDGPURoseRegisters
Remove duplicate public modifiers in class declaration.
* remove unnecessary include of boost/format.hpp
* remove all amdgpu related stuff in dataflowAPI, and patched indirect analyzer so it skips for amdgpu
* renaming Arch_amdgpu to Arch_amdgpu_vega
* make changes to use namespace amdgpu_vega instead of amdgpu
* change the naming of c_NonReturnInsn to c_GPUKernelExitInsn as suggested
Co-authored-by: Xiaozhu Meng <mxz297@xxxxxxxxx>
 |