Expose supported native disassembly registers and memory in debug sessions
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Start with XDebugProcess.java in the WfP platform (the debug process/adapter contract) and assembler/src/isa/amd64/encoder.rs in Whale for machine-level context, plus the dependency issue #88 since this work builds on it. Map which adapter capabilities each acceptance criterion needs (bounded disassembly, memory-range reads with cancellation, supported register representation), then design fake capability matrices and inaccessible-memory fixtures as tests. Done means each capability is negotiated per adapter, absent capabilities degrade gracefully, and addresses/endianness/precision are explicit with stale marking after resume.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem / current evidence
Compiler developers need machine-level inspection at native/LLVM boundaries, especially when source information is missing. Such views require real adapter capabilities and cannot be inferred from syntax-highlighting support.
Code and contract references
- WfP/platform/xdebugger-api/src/com/intellij/xdebugger/XDebugProcess.java
- Whale/assembler/src/isa/amd64/encoder.rs
Scope / proposed contract
Extend the native debug session with read-only machine views supported by the selected adapter. Negotiate each feature and preserve a useful session when some capabilities are absent.
Completion criteria
- Support bounded disassembly and memory-range reads with cancellation and clear unreadable-region handling.
- Show registers only through a supported adapter representation; do not invent a universal register protocol.
- Keep addresses/architecture/endianness explicit and preserve integer precision.
- Synchronize selected frame/instruction and mark stale data after resume.
- Use fake capability matrices and inaccessible-memory fixtures; writing memory/registers is out of scope.
Dependencies and boundaries
- Depends on #88.
- Ecosystem index: #49; existing foundations: #8.
Difficulty
High — spans compiler contracts, process/debugger lifecycle or structured inspection.
Audit baseline: Wave 509a1e46; Whale e3a12d08; Vex 71f29daa; WfP 2804fc02. This issue records source-audit findings and proposed work; no implementation or new execution is claimed. The checks above are future acceptance criteria. Prefer small fixtures and targeted validation; full builds or real debugger/IDE sessions should be explicit and necessary.
- Lingua principale
- Java
- Stelle
- 0
- Fork
- 3
- Merge medio
- 8h 8m
- PR unite (30g)
- 1
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di wavefnd/wave-for-platform
-
documentation good first issue help wanted priority medium
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
wavefnd/wave-for-platform#45 ·
-
documentation good first issue help wanted priority medium
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
wavefnd/wave-for-platform#44 ·
-
documentation good first issue help wanted priority high
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
wavefnd/wave-for-platform#43 ·
-
enhancement good first issue help wanted priority low ui
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
wavefnd/wave-for-platform#41 ·
-
enhancement good first issue help wanted priority medium product
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
wavefnd/wave-for-platform#40 ·
Tutte le issue di wavefnd/wave-for-platform
Issue simili
-
Startup can freeze while MigLayout's component wrapper runs its static initializer on the EDTApertadesktop edt not responding
Difficoltà 1/5 1-3 ore Idoneità per principianti 86/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
physical
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
antonyrag/ragleap-core#1339 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
Bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
rezelyn/Wathe-Extended#116 ·