angr / angr/archinfo

Refactor arches to be singletons

未關閉
#181 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
enhancement needs-triage
主要語言
Python
星號
97
分支
70
平均合併
2 天 6 小時
30 天內合併 PR
8

描述

### 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_

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。