Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 9, 2025

Implements Format 31c parser for the const-string/jumbo instruction (opcode 0x1b), the highest priority missing Dalvik bytecode format.

Changes

  • src/dalvikBytecodeParser/formatParsers.ts: Added createDalvikBytecodeFormat31cParser using ubyteParser (8-bit register) and uintParser (32-bit index). Mirrors Format 21c structure but with 32-bit vs 16-bit index.

  • src/dalvikBytecodeParser.ts: Added dalvikBytecodeOperationConstStringJumboParser with opcode 0x1b, integrated into operation union parser.

  • DALVIK_MISSING_PARSERS.md: Removed all implemented formats from the file, keeping only the 8 missing/not-yet-implemented formats (20bc, 22cs, 35mi, 35ms, 3rmi, 3rms, 45cc, 4rcc). Updated counts to 24/32 formats (75%).

Format Specification

Format: AA|op BBBBlo BBBBhi
Size: 6 bytes (3 units)
AA: 8-bit register
BBBBBBBB: 32-bit unsigned string pool index (little-endian)
Use: String references > 65535 items

Verified against Android Dalvik Bytecode Specification.

Original prompt

This section details on the original issue you should resolve

<issue_title>Implement exactly one format from DALVIK_MISSING_PARSERS.md, double check it against Android/dalvik docs, update DALVIK_MISSING_PARSERS.md to reflect what's implemented (remove implemented from the file) and what's not</issue_title>
<issue_description></issue_description>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: futpib <4330357+futpib@users.noreply.github.com>
Copilot AI changed the title [WIP] Implement format from DALVIK_MISSING_PARSERS.md Implement Format 31c (const-string/jumbo) Dalvik bytecode parser Nov 9, 2025
Copilot AI requested a review from futpib November 9, 2025 19:10
Copilot finished work on behalf of futpib November 9, 2025 19:10
@futpib futpib marked this pull request as ready for review November 9, 2025 19:11

- [ ] **Format 31c** (const-string/jumbo)
- **Description:** vAA, thing@BBBBBBBB - Constant pool index with 8-bit register
- [x] **Format 31c** (const-string/jumbo) - ✅ IMPLEMENTED
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot Remove implemented from this file, only keep not implemented

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in commit 7f00487. Removed all implemented formats from DALVIK_MISSING_PARSERS.md - the file now only lists the 8 missing formats (20bc, 22cs, 35mi, 35ms, 3rmi, 3rms, 45cc, 4rcc).

@futpib
Copy link
Owner

futpib commented Nov 9, 2025

@copilot Put something into copilot instructions so that next rub will not have to "Explore repository structure and understand existing code patterns" or at least do less of it

@coveralls
Copy link

coveralls commented Nov 9, 2025

Pull Request Test Coverage Report for Build 19213211230

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 53 unchanged lines in 2 files lost coverage.
  • Overall coverage remained the same at 90.0%

Files with Coverage Reduction New Missed Lines %
build/dalvikBytecodeParser/formatParsers.js 8 65.47%
build/dalvikBytecodeParser.js 45 87.44%
Totals Coverage Status
Change from base Build 19213121988: 0.0%
Covered Lines: 6665
Relevant Lines: 7470

💛 - Coveralls

@coveralls
Copy link

Pull Request Test Coverage Report for Build 19213091735

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 53 unchanged lines in 2 files lost coverage.
  • Overall coverage increased (+0.003%) to 90.003%

Files with Coverage Reduction New Missed Lines %
build/dalvikBytecodeParser/formatParsers.js 8 65.47%
build/dalvikBytecodeParser.js 45 87.44%
Totals Coverage Status
Change from base Build 19213121988: 0.003%
Covered Lines: 6665
Relevant Lines: 7470

💛 - Coveralls

Copy link
Owner

@futpib futpib left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot remove implemented from .md

…missing ones

Co-authored-by: futpib <4330357+futpib@users.noreply.github.com>
Copilot AI requested a review from futpib November 9, 2025 19:17
Copilot finished work on behalf of futpib November 9, 2025 19:17
Copy link
Contributor Author

Copilot AI commented Nov 9, 2025

@copilot remove implemented from .md

Already done in commit 7f00487. All implemented formats have been removed from DALVIK_MISSING_PARSERS.md - the file now only contains the 8 missing formats.

Copilot finished work on behalf of futpib November 9, 2025 19:19
@futpib futpib merged commit 1357c17 into master Nov 9, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

3 participants