diff options
author | Steve MacLean <Steve.MacLean@microsoft.com> | 2019-07-03 22:29:07 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-03 22:29:07 -0400 |
commit | 613f9f233abde4159a85aa8130b7fcb57dc7a4ef (patch) | |
tree | 09aed307f82583475ef52a7e2448c46da8c640db /src/vm/CMakeLists.txt | |
parent | ae3430d8ce50c9e954192e89871aff783da375e2 (diff) | |
download | coreclr-613f9f233abde4159a85aa8130b7fcb57dc7a4ef.tar.gz coreclr-613f9f233abde4159a85aa8130b7fcb57dc7a4ef.tar.bz2 coreclr-613f9f233abde4159a85aa8130b7fcb57dc7a4ef.zip |
arm64singlestepper (#25512)
Add single step emulation for arm64 Linux
Add a copy and rework armsinglestepper to arm64singlestepper
Add arm64 emulation of all armv8 user space instructions which read or write PC.
- ADR, ADRP
- Branch instructions: B, BL, B.cond, BR, BLR, RET
- LDR (literal)
* Add FEATURE_EMULATE_SINGLESTEP
* Enable for ARM64 linux
* Debugging fixes
Fix IsSSFlagEnabled bug
Fix opcode type
Fix code buffer asserts
Fix CBZ typo
Fix BitExtract
Fix m_targetPc
Minimize written instructions
Fix comments
Fix Bypass address truncation
Fix false assert
Add additional logging
Use %lx to log addresses
Remove stray LOG
Remove stray assert
Diffstat (limited to 'src/vm/CMakeLists.txt')
-rw-r--r-- | src/vm/CMakeLists.txt | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/vm/CMakeLists.txt b/src/vm/CMakeLists.txt index f341566df0..3a556aff2f 100644 --- a/src/vm/CMakeLists.txt +++ b/src/vm/CMakeLists.txt @@ -852,6 +852,12 @@ elseif(CLR_CMAKE_TARGET_ARCH_ARM64) ${ARCH_SOURCES_DIR}/virtualcallstubcpu.hpp exceptionhandling.h ) + + if(CLR_CMAKE_PLATFORM_UNIX) + list(APPEND VM_SOURCES_DAC_AND_WKS_ARCH + ${ARCH_SOURCES_DIR}/arm64singlestepper.cpp + ) + endif(CLR_CMAKE_PLATFORM_UNIX) endif() if(CLR_CMAKE_PLATFORM_UNIX) |