[all-commits] [llvm/llvm-project] 11d97b: [llvm] annotate ABIBreakingChecks symbols for DLL ...

Andrew Rogers via All-commits all-commits at lists.llvm.org
Wed Jul 23 15:40:19 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 11d97b3b58687bf4db978d3ba3c15fd6177549fa
      https://github.com/llvm/llvm-project/commit/11d97b3b58687bf4db978d3ba3c15fd6177549fa
  Author: Andrew Rogers <andrurogerz at gmail.com>
  Date:   2025-07-23 (Wed, 23 Jul 2025)

  Changed paths:
    M llvm/include/llvm/Config/abi-breaking.h.cmake

  Log Message:
  -----------
  [llvm] annotate ABIBreakingChecks symbols for DLL export (#149198)

## Purpose
This PR is a re-application of #145575 with independent definition of
`ABI_BREAKING_EXPORT_ABI` that does not depend on
`llvm/Support/Compiler.h`. It is one in a series of code-mods that
annotate LLVM’s public interface for export. This patch annotates the
ABI Breaking Checks interface in llvm/config. The annotations currently
have no meaningful impact on the LLVM build; however, they are a
prerequisite to support an LLVM Windows DLL (shared library) build.

## Background
The effort to build LLVM as a Windows DLL is tracked in #109483.
Additional context is provided in [this
discourse](https://discourse.llvm.org/t/psa-annotating-llvm-public-interface/85307),
and documentation for `LLVM_ABI` and related annotations is found in the
LLVM repo
[here](https://github.com/llvm/llvm-project/blob/main/llvm/docs/InterfaceExportAnnotations.rst).

## Validation
Local builds and tests to validate cross-platform compatibility. This
included llvm, clang, and lldb on the following configurations:

- Windows with MSVC
- Windows with Clang
- Linux with GCC
- Linux with Clang
- Darwin with Clang



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list