[all-commits] [llvm/llvm-project] d0fb03: CodeGen: Remove TargetOptions::EABIVersion

Matt Arsenault via All-commits all-commits at lists.llvm.org
Tue Sep 15 09:13:28 PDT 2026


  Branch: refs/heads/users/arsenm/codegen/remove-targetoptions-eabiversion
  Home:   https://github.com/llvm/llvm-project
  Commit: d0fb035767eb7aa2ae1996533652cbd77f7546a9
      https://github.com/llvm/llvm-project/commit/d0fb035767eb7aa2ae1996533652cbd77f7546a9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-15 (Tue, 15 Sep 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Arch/ARM.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/arm-eabi.c
    M clang/test/Driver/eabi.c
    M flang/lib/Frontend/FrontendActions.cpp
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Analysis/RuntimeLibcallInfo.h
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/IR/RuntimeLibcalls.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/lib/Analysis/RuntimeLibcallInfo.cpp
    M llvm/lib/CodeGen/CodeGenTargetMachineImpl.cpp
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/IR/RuntimeLibcalls.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/Passes/RunCodeGen.cpp
    M llvm/lib/Target/ARM/ARMTargetMachine.cpp
    M llvm/test/CodeGen/ARM/arm-eabi.ll
    M llvm/test/CodeGen/ARM/float-helpers.ll
    M llvm/test/TableGen/RuntimeLibcallEmitter-calling-conv.td
    M llvm/test/TableGen/RuntimeLibcallEmitter-library-dispatch.td
    M llvm/test/TableGen/RuntimeLibcallEmitter-library-grouping.td
    M llvm/test/TableGen/RuntimeLibcallEmitter-library-name-merge.td
    M llvm/test/TableGen/RuntimeLibcallEmitter.td
    M llvm/test/Transforms/Util/DeclareRuntimeLibcalls/codegen-opt-flags.ll
    M llvm/tools/llc/lib/NewPMDriver.cpp
    M llvm/tools/llc/lib/llcdriver.cpp
    M llvm/tools/opt/NewPMDriver.cpp
    M llvm/tools/opt/optdriver.cpp
    M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp

  Log Message:
  -----------
  CodeGen: Remove TargetOptions::EABIVersion

The field's only effect was gating the __aeabi_mem*[4|8] libcalls via the
IsEABI4/IsEABI5 predicates. That distinction is derivable from the triple's
environment, so replace the two predicates with a single
triple-derived IsEABIVersion and delete the field.

The clang -meabi option and clang::TargetOptions::EABIVersion are
retained (now codegen-inert); the llc/opt -meabi flag is removed. -meabi
now only takes effect on triples with a bare-EABI/GNU environment pair
(arm-none-eabi <-> gnueabi), which is the only case with a triple
representation.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>



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