#register #allocator #backtracking #fuzzing #infrastructure #another #ion-monkey

no-std regalloc2

受IonMonkey启发的回溯式寄存器分配器

27个版本 (9个重大更新)

0.9.3 2023年10月5日
0.9.2 2023年7月14日
0.9.1 2023年5月31日
0.6.1 2023年2月16日
0.0.0 2021年12月3日

#18内存管理

Download history 138783/week @ 2024-04-23 115083/week @ 2024-04-30 123444/week @ 2024-05-07 140902/week @ 2024-05-14 143184/week @ 2024-05-21 155933/week @ 2024-05-28 125567/week @ 2024-06-04 144294/week @ 2024-06-11 135770/week @ 2024-06-18 139999/week @ 2024-06-25 140532/week @ 2024-07-02 150307/week @ 2024-07-09 172545/week @ 2024-07-16 159309/week @ 2024-07-23 150883/week @ 2024-07-30 172621/week @ 2024-08-06

685,808 每月下载量
用于 397 个包 (直接使用3个)

Apache-2.0 WITH LLVM-exception

400KB
8K SLoC

regalloc2:另一个寄存器分配器

这是一个从IonMonkey的回溯式寄存器分配器开始移植,并且大约还有50%的代码仍然是移植版本的寄存器分配器。在许多方面,它自从最初的移植以来已经被泛化、优化和改进。

此外,它包含大量不存在于原始IonMonkey分配器中的测试基础设施(模糊测试工具和检查器)。

请参阅设计概述以获取关于分配器如何工作的更多细节(很多!)。

许可证

此包根据Apache 2.0许可证及LLVM例外条款进行许可。此许可证文本可在文件LICENSE中找到。

代码的一部分源自regalloc.rs:特别是src/checker.rssrc/domtree.rs。此包与regalloc.rs具有相同的许可证,因此这些文件的许可证没有区别。

依赖关系

~2MB
~33K SLoC