Window is the only object to make use of the JavaCriptCore oversize allocator; avoiding use of this should speed up garbage collection when there are many tabs/windows/frames open, and also enables a bunch of further optimizations to the collector.
Created attachment 14062 [details] 01-js-gc-window-not-oversize.patch.txt
Comment on attachment 14062 [details] 01-js-gc-window-not-oversize.patch.txt Optimization level changes should be done in Configurations/Base.xcconfig instead of in the project.pbxproj. Change otherwise looks fine to me. Although I'm not crazy about the name "d".
Created attachment 14081 [details] omitting optimization level changes The optimization level changes were accidental.
Comment on attachment 14081 [details] omitting optimization level changes r=me