-
Notifications
You must be signed in to change notification settings - Fork 100
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[wip] changes to support Node.js v16
This isn't quite ready for review yet, I just want to get it out there so people can see that progress is being made. The biggest problem currently is that this currently breaks support for Node.js v14. With this diff, our tests are much better. Previously they were entirely failing on Node 16. Now: * `stack-test` passes (12/12) * `inspect-test` mostly passes (55/59) * `frame-test` somewhat passes (7/25) There are a lot of changes in this diff. I plan on splitting the commits before the review, but here's a summary of the changes: 1. `ScopeInfo` is no longer a `FixedArray` as of v8/v8@ecaac329. The `Length` field was also removed in v8/v8@f731e13f. - The length field shifted everything over by a slot, meaning that a bunch of offsets changed. - Since `ScopeInfo` is no longer a `FixedArray`, I changed callsites to use `HeapObject::LoadFieldValue` rather than `FixedArray::Get`. 2. Changes to V8 calling conventions - The arguments adaptor frame no longer exists. Modified `frame-test.js` to match. - Arguments are no longer pushed "in reverse". Modified `JSFrame::LeaParamSlot` to match. 3. Postmortem data fixes - `class_Map__constructor_or_backpointer__Object` is now `class_Map__constructor_or_back_pointer__Object` (note the extra `_`). - `class_Script__source__Object` is weirdly _not_ present in Node 16 but _is_ present in both Node 14 and Node 18. I added a default to the correct value of 8.
- Loading branch information
Showing
5 changed files
with
53 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters