Landing: c32d2dada842

Project / Subsystem

gcc / gccrs

Date

2026-06-28

Author

Owen Avery

Commit

c32d2dada8425762e26f537dde21f531100bb910

Source

github

Perf win

Yes

Breaking

No

All attributes

project
gcc
subsystem
gccrs
patch_id
—
commit_hash
c32d2dada8425762e26f537dde21f531100bb910
source_type
github
headline
gccrs: Unify node trees for shared memory representation
tldr
Refactors ForeverStack to share node trees across instances, improving memory efficiency.
author
Owen Avery
outcome
committed
performance_win
true
breaking_change
false
series_id
—
series_parts
[]
tags
  • • gccrs
  • • memory management
  • • refactoring
discussion_id_link
—
bugzilla_pr
—
date
2026-06-28T00:00:00.000Z

This change unifies node trees within gccrs’s ForeverStack, allowing multiple instances to share the same set of nodes. Previously, each ForeverStack built its own tree, leading to redundant memory usage. By introducing ForeverStackBase and making nodes shareable, this commit reduces memory overhead and simplifies the handling of node objects originating from ForeverStacks with different namespaces. This is a key step towards more efficient memory management in the Rust frontend.