Commit d36c838
Remove std::function churn and wasted arena interning in MLIRGen (#203)
- Rewrite the three StringSwitch<std::function> utility-type tables
(getEmbeddedTypeWithParam*/ManyParams) as enum dispatch; the old form
constructed every case closure eagerly on each call
- Replace all std::bind sites with lambdas or member-function pointers
- Add concatFullNamespaceName() (no interning) and use it where the
full name is transient (getNameOfFunction, enum type refs, dynamic
import names); getFullNamespaceName keeps interning for stored names
Review doc item A4.
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>1 parent 102ef9d commit d36c838
1 file changed
Lines changed: 177 additions & 212 deletions
0 commit comments