[PATCH] D150004: [RISCV][MC] .debug_line/.debug_frame/.eh_frame: emit relocations for assembly input files with relaxation

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri May 12 14:49:19 PDT 2023


MaskRay added a comment.

In D150004#4339066 <https://reviews.llvm.org/D150004#4339066>, @MaskRay wrote:

> 

To provide an overview of how I perceive this problem:

We currently have a fragile assembler infrastructure for RISC-V linker relaxation, and the code being removed in this patch builds on top of that. https://xkcd.com/2347/

By removing some code paths, this patch will address the known bugs in `.debug_line` and `.debug_frame` without affecting the output for non-RISC-V targets, as well as decreasing the complexity.

While it is possible to address the bugs in `RISCVELFStreamer::requiresFixups` and `MCExpr::evaluateAsAbsolute` without applying this patch, it would require additional effort.
Furthermore, there is a concern that making the ambitious changes might introduce further fragility to linker relaxation infrastructure.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D150004/new/

https://reviews.llvm.org/D150004



More information about the llvm-commits mailing list