Turn the JS recursive descent parser into a coroutine

NEW
Unassigned

Status

()

--
enhancement
8 years ago
4 years ago

People

(Reporter: cdleary, Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Firefox.next placeholder bug. The idea is to do incremental parsing corresponding to the network-selector chunks with a yield when the last available character is extinguished. Heap-allocate a stack, mprotect the correct number of pages after it to avoid heaped-stack overflows, and let it ride!

This would also require compiler support to determine (or limit) the maximum size frame under a node in the callgraph, so we could guarantee that mprotect was protecting a safe number of pages. (This also assumes that no nodes in the subgraph use alloca.) That way, you couldn't have stack accesses jump over the known heaped-stack region into arbitrary heap space.
Severity: normal → enhancement
Mass-reassigning cdleary's bugs to default. He won't work on any of them, anymore. I guess, at least.

@cdleary: shout if you take issue with this.
Assignee: cdleary → general
Status: ASSIGNED → NEW
(Assignee)

Updated

4 years ago
Assignee: general → nobody
You need to log in before you can comment on or make changes to this bug.