[all-commits] [llvm/llvm-project] 8ba9a5: LTO: always parse modules in opaque pointer mode.

Tim Northover via All-commits all-commits at lists.llvm.org
Wed Dec 14 06:13:21 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8ba9a5218782fa4f94b5c516d513a4259992c254
      https://github.com/llvm/llvm-project/commit/8ba9a5218782fa4f94b5c516d513a4259992c254
  Author: Tim Northover <tnorthover at apple.com>
  Date:   2022-12-14 (Wed, 14 Dec 2022)

  Changed paths:
    M llvm/tools/lto/lto.cpp

  Log Message:
  -----------
  LTO: always parse modules in opaque pointer mode.

Once an LLVMContext has been told it needs to track pointer types, it can no
longer be used to parse opaque modules. However, we are likely  (at least for a
while) to have old LTO .o files in the SDK that need to interoperate with
just-generated ones, so deciding opaqueness based on the first module read
causes linker failures.

This makes the llvm-c LTO interface parse any object it sees in opaque mode,
even if type data is present, which guarantees compatibility.




More information about the All-commits mailing list