Landing: 13efaa5e7dcc
Project / Subsystem
gcc / gcc/genoutput
Date
2026-09-09
Author
Kyrylo Tkachov
Commit
13efaa5e7dcc882734e384f6a3f4061c7a8286b8
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- gcc/genoutput
- patch_id
- —
- commit_hash
- 13efaa5e7dcc882734e384f6a3f4061c7a8286b8
- source_type
- github
- headline
- genoutput writes each output template only once
- tldr
- Reduces code size and improves compile times by avoiding redundant output template definitions.
- author
- Kyrylo Tkachov
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • optimization
- • build
- • aarch64
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-09-09T00:00:00.000Z
The genoutput pass now ensures that each unique output template is defined only once, significantly reducing the generated code size and improving compilation performance. Previously, identical templates were redefined multiple times, especially when using iterators. By keying on both the template text and its source location, redundant definitions are now avoided, with subsequent identical templates simply referencing the first. This change led to a substantial reduction in output definition counts and decreased compile times and memory usage on aarch64.