angr / angr/archinfo

Refactor arches to be singletons

Aperta
#181 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement needs-triage
Lingua principale
Python
Stelle
97
Fork
70
Merge medio
2g 6h
PR unite (30g)
8

Descrizione

### Description

Arches now are kind of like singletons. They probably should be. I'm told there are some cursed copies and mutations floating around in angr's x86 real mode stuff that expects the current behavior, but this behavior should be eliminated if possible.

Since arches come in variants, most commonly BE/LE, we might want to have a `get_all_variants` function per-arch that does the instantiation. Alternatively, we could just make the classes the singleton themselves, so an arch that varies only in endness like mips32 might have 3 classes: `BaseMips32`, `Mips32LE`, and `MIPS32BE`. Or the base and one of the endnesses could be merged.

### Alternatives

_No response_

### Additional context

_No response_

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.