For 1, I think the burden here should be on the browser debuggers. They have been making progress on improving responsiveness on large JS files. Helping them directly might make sense, for the open source ones, Chrome and Firefox. For Firefox, you can track progress here,
https://bugzilla.mozilla.org/show_bug.cgi?id=1229092 For 2, there have been discussions of a "source maps 2" that would include more info, see https://github.com/source-map/source-map-rfc/issues There is also talk in WebAssembly about a debug format inspired by DWARF, so your idea may fall along similar lines, and if you're designing a new format for debugging, see https://github.com/WebAssembly/design/blob/c8137d9a6bdefd015f5daadd3f0eb233dc6996b6/FutureFeatures.md#source-maps-integration (WebAssembly is the future in this space, so it might make sense to focus on that - although, that future will take a while longer to get here.) Overall, I'd be a little worried about us inventing a new debug format here - it should be, as much as possible, a shared project with the entire ecosystem. 3 is, I believe, an emscripten bug. It would be great to have that fixed! On Mon, Mar 7, 2016 at 6:23 PM, Charles Vaughn <[email protected]> wrote: > As part of my company's (Tableau Software) work with Emscripten, we've > wanted to come up with better tooling around debugging. 3 main pain points > we're hoping to address: > > 1. Debugging large code bases results in large (50+MB) size output > Javascript, which prevents any sort of interactive debugging, at least on > the tools I've used > 2. Heap allocated data is pretty opaque > 3. Source maps are currently busted on any level of optimization > > I have a work in progress design doc here: > https://gist.github.com/hackcasual/ea77cc31c6dafdda7274 > Changes to JSBackend to output the file format and add in the debug > intrinsics are here: > https://github.com/kripken/emscripten-fastcomp/compare/incoming...hackcasual:tableau-debugger-work > > I've got an initial driver (though out of sync with the format generated > in the current changes to JSBackend), you can see here to have some > understanding of how the types are interpreted: > https://gist.github.com/hackcasual/efb93d70c4c3e87cd1ee > > More work needs to be done to get this into shipping shape, but I'd like > to kick of discussions now. > > Thanks! > > Charles Vaughn > > -- > You received this message because you are subscribed to the Google Groups > "emscripten-discuss" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
