Commit 49d9a5e
Force usage of CinderX interpreter loop when it's enabled for inline dispatch
Summary: In 3.12 we don't use the eval frame hook and instead have our own hook that we check. The normal eval frame hook is checked for before doing inline dispatch but we don't check for our special hook. This adds one special check in DISPATCH_INLINED and then has a couple of additional checks in the opcodes which set "return_offset" to something other than 0 - these need special treatment so we push them down the normal deopt path.
Reviewed By: alexmalyshev
Differential Revision: D97347966
fbshipit-source-id: d03cc7039b866c82a3f2b698bcee08f16915c9c41 parent caa98cb commit 49d9a5e
3 files changed
Lines changed: 375 additions & 362 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
841 | 841 | | |
842 | 842 | | |
843 | 843 | | |
| 844 | + | |
844 | 845 | | |
845 | 846 | | |
846 | 847 | | |
| |||
878 | 879 | | |
879 | 880 | | |
880 | 881 | | |
881 | | - | |
| 882 | + | |
882 | 883 | | |
883 | 884 | | |
884 | 885 | | |
| |||
2527 | 2528 | | |
2528 | 2529 | | |
2529 | 2530 | | |
2530 | | - | |
| 2531 | + | |
2531 | 2532 | | |
2532 | 2533 | | |
2533 | 2534 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
108 | | - | |
109 | 108 | | |
110 | 109 | | |
111 | 110 | | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
112 | 123 | | |
113 | 124 | | |
114 | 125 | | |
| |||
0 commit comments