[PATCH 00/11] alpha: support STT_GNU_IFUNC

Project / Subsystem

binutils / alpha

Date

2026-09-01

Proposer

Matt Turner <mattst88@gmail.com>

Source type

public_inbox

Consensus

Proposed

Sentiment

—/10

Technical tradeoffs

  • • Enables support for a more advanced function resolution mechanism.
  • • Relies on future dynamic linker and C library support for full runtime functionality.

All attributes

project
binutils
subsystem
alpha
patch_id
—
discussion_id
20260901023318.3503991-1-mattst88@gmail.com
source_type
public_inbox
title
[PATCH 00/11] alpha: support STT_GNU_IFUNC
headline
alpha: support STT_GNU_IFUNC
tldr
Adds support for GNU_IFUNC symbol type to the Alpha linker, enabling indirect function resolution.
proposer
Matt Turner <mattst88@gmail.com>
consensus
Proposed
outcome
proposed
sentiment_score
—
technical_tradeoffs
  • • Enables support for a more advanced function resolution mechanism.
  • • Relies on future dynamic linker and C library support for full runtime functionality.
series_id
binutils:alpha: support stt_gnu_ifunc
series_role
cover
series_parts
[]
tags
  • • alpha
  • • linker
  • • ifunc
  • • relocation
  • • elf
bugzilla_url
—
date
2026-09-01T00:00:00.000Z

[PATCH 00/11] alpha: support STT_GNU_IFUNC

This series of patches introduces support for STT_GNU_IFUNC (Indirect Functions) to the Alpha linker. This enables the linker to correctly handle IFUNCs, which allow a symbol to resolve to different function implementations at runtime based on a resolver. The changes include allocating the R_ALPHA_IRELATIVE relocation type, handling IFUNC references in PIC and non-PIC links, and ensuring compatibility with glibc. Until dynamic linker or C library support is widespread, existing binaries will continue to use the resolver’s address, preventing regressions.