Landing: b4aa063fe4a4

Project / Subsystem

gcc / aarch64

Date

2026-02-09

Author

Wilco Dijkstra

Commit

b4aa063fe4a4142544a0aad362ef45b2f23165ee

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
aarch64
patch_id
commit_hash
b4aa063fe4a4142544a0aad362ef45b2f23165ee
source_type
github
headline
Add PIC/PIE support to large model
tldr
Added Position Independent Code (PIC) and Position Independent Executable (PIE) support to the AArch64 large memory model, improving code size.
author
Wilco Dijkstra
outcome
committed
performance_win
true
breaking_change
false
series_id
series_parts
[]
tags
  • aarch64
  • PIC
  • PIE
  • code size
  • optimization
discussion_id_link
github:gcc-mirror/gcc#123791
bugzilla_pr
date
2026-02-09T00:00:00.000Z

This commit introduces PIC/PIE support for the AArch64 large memory model. It uses an indirection via the Global Offset Table (GOT) for data accesses that might be out of range of ADRP, avoiding relro symbol references in literal pools and allowing trivial PIC/PIE support. The code quality is improved and SPEC2017 codesize reduces by 2.2%.