qiling icon indicating copy to clipboard operation
qiling copied to clipboard

Implement dedicated arch classes for ARM Cortex-A/R

Open elicn opened this issue 3 years ago • 4 comments
trafficstars

Implement QlArch subclasses for different ARM core types, including relevant registers mapping:

  • [x] Cortex-M
  • [ ] Cortex-A
  • [ ] Cortex-R

elicn avatar Oct 25 '22 19:10 elicn

I'm not sure if the differentiation between the ARM architecture profiles is enough. For example, Cortex-M33 (ARMv8-M) implements additional core registers compared to Cortex-M0 (ARMv6-M).

ckudera avatar Oct 26 '22 13:10 ckudera

Good point. I'll leave this to the ARM experts to figure out.

elicn avatar Oct 27 '22 16:10 elicn

I'm not sure if the differentiation between the ARM architecture profiles is enough. For example, Cortex-M33 (ARMv8-M) implements additional core registers compared to Cortex-M0 (ARMv6-M).

For Unicorn, by default there is no errors for writing to non-exist registers.

wtdcode avatar Oct 27 '22 17:10 wtdcode

For Unicorn, by default there is no errors for writing to non-exist registers.

I think that the point is that we may need a better granularity than just Cortex X.

elicn avatar Oct 29 '22 16:10 elicn