Hexagon lifting issues
Maintainers usually reply within 2 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- rust
- Domain
- reverse-engineering
Research direction
Start in arch/hexagon/src/lift.rs at line 123 and compare the endloop0 lifting with the provided disassembly and current LLIL. Verify the one-iteration hardware-loop behavior against the expected LLIL sketch, then check the same handling for endloop1. Done means both cases fall through after one body execution and preserve looping for counts greater than one.
Written by the indexing model from the issue text.
Description
Binary files and instruction addresses (ZIP available for upload separately):
kat-hexagon.elf: 0x10e84; SHA-256c92042e5504ec1eb0d3bf576e723b612cf35267adc963210b42d15aaba95e49a
1: Hexagon endloop0 / endloop1
Binary instruction: kat-hexagon.elf / adler32 at 0x10e84; bytes ff83000023c681e1.
Disassembly: { immext(#65472); r3 -= mpyi(r1,#65521); } endloop0.
Current lifted LLIL (relevant lines):
if (lc0 != 0) then loop else exit
lc0 = lc0 - 1
jump(sa0)
Expected LLIL (semantic sketch):
if (lc0 > 1) { lc0 = lc0 - 1; jump(sa0) } else { fallthrough }
A one-iteration hardware loop must leave the loop after its first body execution.
- Dominant language
- C++
- Stars
- 1.3k
- Forks
- 297
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 14
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Vector35/binaryninja-api
-
ARMv7 lifting issuesOpen
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Vector35/binaryninja-api#8617 · 1 comment ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Vector35/binaryninja-api#8589 ·
Maintainers usually reply within 2 days
-
Difficulty 1/5 1-3 hours Newbie friendliness 88/100
Vector35/binaryninja-api#8540 ·
Maintainers usually reply within 2 days
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Vector35/binaryninja-api#8446 ·
Maintainers usually reply within 2 days
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Vector35/binaryninja-api#8444 ·
Maintainers usually reply within 2 days
All issues in Vector35/binaryninja-api
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
ai_p2
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
ClickHouse/ClickHouse#123351 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
stillwater-sc/universal#1617 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 78/100
keepassxreboot/keepassxc#13737 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day