Branch: refs/heads/arm64/feature/semantics
Home: https://github.com/dyninst/dyninst
Commit: ae8875e306a2c2ad77d2ea9b4b9c41e1770c8d74
https://github.com/dyninst/dyninst/commit/ae8875e306a2c2ad77d2ea9b4b9c41e1770c8d74
Author: Sunny Shah <shah28@xxxxxxxx>
Date: 2016-09-23 (Fri, 23 Sep 2016)
Changed paths:
M common/h/dyn_regs.h
M common/src/dyn_regs.C
M dataflowAPI/rose/semantics/Registers.C
M external/rose/armv8InstructionEnum.h
Log Message:
-----------
Register definitions for treating the 4 ARM64 flags separately
As with dataflow analysis on other architectures, each flag should be treated as a distinct unit. Following changes, made as part of this commit, achieve this:
- n, z, c and v have been added as individual register definitions in dyn_regs with their baseIDs indicating their positions in the pstate register. The conversions from Dyninst to ROSE registers for these new additions are also defined.
- The 'nzcv' enum value in ARMv8PstateFields (for use in ARM semantics) is split into 4 different values, one for each flag. Each of these is also added to the register dictionary for ARMv8 in Registers.C.
|