Repository navigation
Commit 6fbae40
committed
[JSC] Use StringSwitch with resolved rope strings in FTL
https://bugs.webkit.org/show_bug.cgi?id=322144
rdar://185366501
Reviewed by Yijia Huang.
FTL StringSwitch is really efficient for non atom strings, so let's use
it even for resolved rope strings. When we encounter a rope string, we
call a function and resolve them. If it is 8bit string, then returning a
data pointer so that we can use FTL StringSwitch with it.
* Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):
* Source/JavaScriptCore/ftl/FTLOperations.cpp:
(JSC::FTL::JSC_DEFINE_NOEXCEPT_JIT_OPERATION):
* Source/JavaScriptCore/ftl/FTLOperations.h:
Canonical link: https://commits.webkit.org/319501@main1 parent c8f6b5d commit 6fbae40
3 files changed
Lines changed: 33 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23849 | 23849 | | |
23850 | 23850 | | |
23851 | 23851 | | |
| 23852 | + | |
| 23853 | + | |
23852 | 23854 | | |
23853 | 23855 | | |
23854 | 23856 | | |
23855 | 23857 | | |
23856 | 23858 | | |
23857 | 23859 | | |
| 23860 | + | |
| 23861 | + | |
23858 | 23862 | | |
23859 | 23863 | | |
23860 | 23864 | | |
| |||
23904 | 23908 | | |
23905 | 23909 | | |
23906 | 23910 | | |
23907 | | - | |
| 23911 | + | |
23908 | 23912 | | |
23909 | 23913 | | |
23910 | 23914 | | |
23911 | 23915 | | |
23912 | 23916 | | |
23913 | 23917 | | |
23914 | | - | |
| 23918 | + | |
| 23919 | + | |
| 23920 | + | |
| 23921 | + | |
| 23922 | + | |
| 23923 | + | |
| 23924 | + | |
| 23925 | + | |
| 23926 | + | |
| 23927 | + | |
23915 | 23928 | | |
23916 | 23929 | | |
23917 | | - | |
23918 | | - | |
| 23930 | + | |
| 23931 | + | |
23919 | 23932 | | |
23920 | 23933 | | |
23921 | 23934 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
922 | 922 | | |
923 | 923 | | |
924 | 924 | | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
925 | 940 | | |
926 | 941 | | |
927 | 942 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
48 | 49 | | |
49 | 50 | | |
50 | 51 | | |
| |||
0 commit comments