Last Comment Bug 757336 - Cleanup probes handling in CompileScript()
: Cleanup probes handling in CompileScript()
Product: Core
Classification: Components
Component: JavaScript Engine (show other bugs)
: unspecified
: All All
-- normal (vote)
: mozilla15
Assigned To: Nicholas Nethercote [:njn]
: Jason Orendorff [:jorendorff]
Depends on:
Blocks: UntangleFrontEnd
  Show dependency treegraph
Reported: 2012-05-21 23:30 PDT by Nicholas Nethercote [:njn]
Modified: 2012-05-23 04:53 PDT (History)
1 user (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

patch (13.60 KB, patch)
2012-05-21 23:30 PDT, Nicholas Nethercote [:njn]
sphink: review+
Details | Diff | Splinter Review

Description User image Nicholas Nethercote [:njn] 2012-05-21 23:30:50 PDT
Created attachment 625904 [details] [diff] [review]

This patch:

- Uses a new one-shot class, ProbesManager, to provide RAII for 
  handling probes in CompileScript.  This allows removal of the goto
  statements, and some variable declarations to be moved lower.
- BytecodeEmitter is passed |lineno| instead of tokenStream.getLineno(), 
  because they're the same thing and |lineno| is simpler.
- TreeContext::init() doesn't need the JSContext* param, so I removed it.

- compileScript{Begin,End}() also had unnecessary params, which I removed.
Comment 1 User image Nicholas Nethercote [:njn] 2012-05-22 18:14:36 PDT
Comment 2 User image Ed Morley [:emorley] 2012-05-23 04:53:57 PDT

Note You need to log in before you can comment on or make changes to this bug.