Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9f356ab748c54c07f772ad2e72140ea78fbd62c2
      
https://github.com/WebKit/WebKit/commit/9f356ab748c54c07f772ad2e72140ea78fbd62c2
  Author: Yusuke Suzuki <[email protected]>
  Date:   2024-09-23 (Mon, 23 Sep 2024)

  Changed paths:
    M Source/JavaScriptCore/bytecode/ExitKind.h
    M Source/JavaScriptCore/dfg/DFGFixupPhase.cpp
    M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
    M Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp

  Log Message:
  -----------
  [JSC] Introduce BadStringType exit kind
https://bugs.webkit.org/show_bug.cgi?id=280240
<rdar://problem/136542341>

Reviewed by Mark Lam.

We should not handle StringIdentUse's failure as BadType. Let's say we
encounter non StringIdent value in StringIdentUse. But it is possible
that this string will be converted into StringIdent at any point. As a
result, ValueProfile may just point at this already converted string and
we cannot get updated type feedback in that case since it will just
offer SpecStringIdent. Instead, we record new BadStringType exit kind
here so that we can offer solid feedback to DFG fixup phase in the
reoptimization case.

* Source/JavaScriptCore/bytecode/ExitKind.h:
* Source/JavaScriptCore/dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupToThis):
(JSC::DFG::FixupPhase::fixupCompareStrictEqAndSameValue):
* Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp:
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):

Canonical link: https://commits.webkit.org/284133@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to