commit | bc4ad29daf3a0f8a54bfffa95ac292a06ab66fb2 | [log] [tgz] |
---|---|---|
author | Victor Khimenko <khim@google.com> | Sat Jul 15 10:09:31 2023 +0000 |
committer | Victor Khimenko <khim@google.com> | Sun Jul 16 09:45:00 2023 +0000 |
tree | 6e3a45c5a478d16c5fdeb2b3c173c51fdfa8d082 | |
parent | c509d30a20491147702aeb034a59270faa350186 [diff] |
Inverse the logic of ProcessAllBindings function. Instead of creating lots of structs that represent bindings data and then calling ProcessBindings once we are now calling callback on them in sequence. This brings many benefits: • No risc of hittin fold expression limit: https://reviews.llvm.org/D86936 • Makes it possible pass additiona info into callback • Simplifies the generation logic a tiny bit • Makes it simpler for the compiler to optimize code • Make it possible to remove GenerateAsmCallBase class in the future. Bug: 278812060 Test: m berberis_all Change-Id: Id8c870476d910a51ac2bf87917ea9863579afa0d
Berberis: dynamic binary translator to run Android apps with riscv64 native code on x86_64 devices or emulators.