Details
-
Suggestion
-
Resolution: Done
-
Not Evaluated
-
None
-
None
-
- Host: Windows
- KEIL uVision v5.23/5.29
-
-
96c1fbcd0a1329ce3f674d3d53bc8b31eecd903f (qt-creator/qt-creator/master)
Description
It would be good to have a KEIL v5.xxx debugger integration.
The KEIL provides the UVSC API which allows to do this:
http://www.keil.com/appnotes/docs/apnt_198.asp
But, I have found a strange issues with the UVSC API, which are causes the following limitations:
1) It is impossible to fetch of an addresses of a local variables (except the structs and the arrays).
2) It is impossible to fetch a root/main stack info: the returned address, file name, function are empty.
3) It is impossible to get the current location after the 'step-into' and the 'step-over' execution from the root/main stack: always returned "undefined" error with an empty frame address.
4) Also there are present some bugs at enumeration of a members of local variables for the structures: its members has a wrong values at its initializations.
I have created the pre-liminary implementation here: https://github.com/denis-shienkov/qt-creator/tree/uvsc
== What does work ==
1) Enumeration of a registers view (read/write).
2) Enumeration of a local variables view (read/write).
3) Enumeration of a warchers view (read/write).
4) Start/stop debugging.
5) Step-in (replaced by step-by-instruction, because only it does work)
6) Step-over (replaced by step-by-instruction, because only it does work)
7) Step-out
8) Step-by-instruction
9) Disassembler view.
10) Break-points
11) Enumeration of a stack frames.
12) Enumeration of a threads (tasks)
13) Update the current location (marker/cursor)
== Kits ==
1) Implemented auto-detection of a KEIL compilers
2) Implemented auto-detection of a uVision debugger.
3) Implemented wizard for choosing of the debug providers.
== What is debug provider does work ==
1) Implemented the Simulator (for ARM, STM32).
2) Implemented ST-Link debugger (for ARM STM32)
Attachments
For Gerrit Dashboard: QTCREATORBUG-23426 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
287809,14 | BareMetal: Long live support for KEIL uVision v5.x debugger | master | qt-creator/qt-creator | Status: MERGED | +2 | 0 |