Files
clang-p2996/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp
Jonas Hahnfeld 78f39dc70c [JITLink][RISCV] Use hashmap to find PCREL_HI20 edge (#78849)
As noted in issues #68594 and #73935, `JITLink/RISCV/ELF_ehframe.s`
fails with libstdc++'s expensive checks because `getRISCVPCRelHi20`
calls `std::equal_range` on the edges which may not be ordered by their
offset. Instead let `ELFJITLinker_riscv` build a hashmap of all edges
with type `R_RISCV_PCREL_HI20` that can be looked up in constant time.

Closes #73935
2024-02-12 19:45:52 +01:00

35 KiB