Three steps: - Remove WHLSL::AST::Value, inlining it into its children (it is trivial, it just has one field m_origin with a getter and nothing else) - Mark WHLSL::AST::VariableDeclaration final - Now that it inherits from nothing and nothing can inherit from it, there is no reason for it to have any virtual method, including its destructor. This not only saves 8 bytes from every variable declaration (for the virtual table pointer), it also should make destructing the AST at the end of compilation a bit faster by removing the virtual destructor call.
Created attachment 373441 [details] Patch
Comment on attachment 373441 [details] Patch Clearing flags on attachment: 373441 Committed r247124: <https://trac.webkit.org/changeset/247124>
All reviewed patches have been landed. Closing bug.
<rdar://problem/52622361>