Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 1a8d6ca80b53fb104e690a22745bbb367abadab8 https://github.com/WebKit/WebKit/commit/1a8d6ca80b53fb104e690a22745bbb367abadab8 Author: Yusuke Suzuki <ysuz...@apple.com> Date: 2024-05-21 (Tue, 21 May 2024)
Changed paths: M Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp Log Message: ----------- [JSC] Split super complicated IC code generation clause into three different ones https://bugs.webkit.org/show_bug.cgi?id=274429 rdar://128435898 Reviewed by Justin Michaud. Load, GetGetter, CustomValueGetter, CustomValueSetter, CustomAccessorGetter, CustomAccessorSetter, Getter, Setter, and IntrinsicGetter are sharing one switch-clause, and it makes code incredibly complicated and hard to follow. Let's just split them into three. 1. Load, GetGetter 2. CustomValueGetter, CustomValueSetter, CustomAccessorGetter, CustomAccessorSetter 3. Getter, Setter, IntrinsicGetter This significantly reduces complexity for simple IC (like Load), and it also improves some code generation for CustomAccessorGetter / CustomAccessorSetter, where we are unnecessarily loading property owner GPR before. * Source/JavaScriptCore/bytecode/InlineCacheCompiler.cpp: (JSC::InlineCacheCompiler::generateImpl): Canonical link: https://commits.webkit.org/279047@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes