Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[JSC] Split super complicated IC code generation clause into three di…
…fferent 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
- Loading branch information