Optimization of struct variable assignation

Aperta
#3,744 1 commento 1 reazione 1 assegnatario Vedi su GitHub

@rssor ci sta già lavorando.

Dal 6/2/2023.

Valutazione

Questa issue non è ancora stata valutata.

Descrizione

Component: Core Effort: Medium Impact: Low

rdi is pointer to structure, rsi is zero.

Disassembly:

163e0af9  mov     qword [rdi+0x768], rsi  {0x0}
163e0b00  lea     rbx, [rdi+0x1d0]
163e0b07  mov     dword [rbx], esi  {0x0}

LLIL:

36 @ 163e0af9  [rdi + 0x768 {_struct_a::field_768}].q = rsi
37 @ 163e0b00  rbx = rdi + 0x1d0
38 @ 163e0b07  [rbx {_struct_a::field_1d0}].d = esi

HLIL:

163e0af9  struct_a->field_768 = 0
163e0b00  int32_t* rbx_1 = &struct_a->field_1d0
163e0c00  (rbx_1 - 0x1d0)->field_1d0 = 0

It would be nice if BN just uses struct_a->field_1d0 = 0. If necessary, I can share the BNDB via PM in slack.

Lingua principale
C++
Stelle
1.3k
Fork
298
Merge medio
5g 5h
PR unite (30g)
19

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Vector35/binaryninja-api

Tutte le issue di Vector35/binaryninja-api

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.