Landing: 84db13f68e14
Project / Subsystem
gcc / gccrs
Date
2026-06-23
Author
Enes Cevik
Commit
84db13f68e143c844b787a55e80ca4c9c07076be
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- gccrs
- patch_id
- —
- commit_hash
- 84db13f68e143c844b787a55e80ca4c9c07076be
- source_type
- github
- headline
- gccrs: Refactor dynamic object fat pointers and vtable generation
- tldr
- gccrs refactors vtable generation for dynamic objects, improving fat pointer structure and metadata.
- author
- Enes Cevik
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • gccrs
- • backend
- • codegen
- • optimization
- • refactor
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-06-23T00:00:00.000Z
This commit refactors how gccrs handles dynamic object fat pointers and generates virtual method tables (vtables). The fat pointer is now strictly two words, and vtables are generated as separate global static structs containing trait object metadata like ‘size’, ‘align’, and ‘drop_in_place’, alongside trait methods. A caching mechanism prevents duplicate vtable generation.