[webkit-changes] [WebKit/WebKit] eeecca: [JSC] Emit logical op children in condition contex...
David Degazio
noreply at github.com
Thu Mar 6 15:26:39 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: eeecca442eb0e974f22a45b07660754a42106275
https://github.com/WebKit/WebKit/commit/eeecca442eb0e974f22a45b07660754a42106275
Author: David Degazio <d_degazio at apple.com>
Date: 2025-03-06 (Thu, 06 Mar 2025)
Changed paths:
M Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp
Log Message:
-----------
[JSC] Emit logical op children in condition context when overall result is ignored
https://bugs.webkit.org/show_bug.cgi?id=289134
rdar://146174665
Reviewed by Yusuke Suzuki and Geoffrey Garen.
Emits logical op children in condition context, meaning we compile them down
to conditional branches instead of getting their values, when the overall
result of a logical operation is known to be ignored. This fixes an issue
where we were unable to fuse conditions and branches in discarded logical
operations because the result value was assumed to be accessible. Also changes
SourceElements to ignore the results of child statements unless the completion
value is observable.
* Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp:
(JSC::LogicalOpNode::emitBytecode):
(JSC::SourceElements::emitBytecode):
Canonical link: https://commits.webkit.org/291740@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list