[clang] [llvm] [clang][LTO] Emit symbols for global inline assembly as module flags (PR #174995)
Paul Kirth via cfe-commits
cfe-commits at lists.llvm.org
Mon Jan 26 12:52:23 PST 2026
ilovepi wrote:
> Moved metadata emission from Clang to `ModuleSymbolTable`. Now other tools can integrate `EmitModuleFlags` to set symbol table metadata. With the new function we don't really need to change interface of `CollectAsmSymbols` and `CollectAsmSymvers`. Without `CPU` and `Features` parameters, these functions still have to use a "default" asm parser as they used to. Addressed code style issues and improvements suggested in the comments.
>
> RISC-V issue #67698 is indeed fixed (added a LIT test), but I don't think that any of #50591, #65090, #69780 are fixed. I don't have an environment to reproduce them quickly. This patch is only about symbols defined in inline assembly, so miscompilation issues or inconsistent flags for the actual assembler are likely related to something else (`riscv-isa` metadata from #80760 perhaps?).
Thanks for looking. I don't think its a problem that some of the other issues aren't addressed by this PR. They all interact to some extent, which is why I mentioned them. For at least one of them, I think handling this bit correctly is a prerequisite for it to be addressed. We can re-evaluate their status once this is finished and determine where the remaining gaps are (if any).
https://github.com/llvm/llvm-project/pull/174995
More information about the cfe-commits
mailing list