bugzilla.mozilla.org will be intermittently unavailable on Saturday, March 24th, from 16:00 until 20:00 UTC.

All JIT-frobbing, TI-frobbing, etc. should exist only behind friend APIs, with the default configuration being what we ship




JavaScript Engine
6 years ago
4 years ago


(Reporter: Waldo, Unassigned)


Firefox Tracking Flags

(Not tracked)




6 years ago
If I do |./js file|, it should compile and run just as it does in the browser.  Opting into experimental JITs, configurations, &c. or opting out of the defaults should be affirmative actions, and they should require using friend APIs -- obviously-not-fully-public-APIs which we can break and change at will -- to do it.

This would mean that things like xpcshell and the jsshell wouldn't need argument parsing frobbing every time a new JIT or optimization technique comes along.  (See bug 704696.)  It would also mean benchmarkers would get fully optimized performance without having to know the flag technique du jour to get it.
+1 from me. I think it would be nice if we could make the SpiderMonkey default options the same ones as used in the browser (I'm not sure if that's implied by your comment or not). Would that cause any problems?

Comment 2

6 years ago
Yeah, that's implied by the comment, basically.  I think the only think in the engine that would need changing is the code in the pref observer for the javascript.options.* stuff, to call friend APIs instead of whatever they call now.

Comment 3

6 years ago
Er, s/think in the engine/thing in the browser/.


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