On 11/15/2013 05:37 PM, Gregory Szorc wrote:
> On 11/15/13, 12:26 PM, Terrence Cole wrote:
>> The problem this mess is solving, at least in the GC, is that gecko
>> needs to be able to inline barriers, UnmarkGray, and misc other stuff.
>> Whenever we accidentally out-of-line anything in these paths we see a
>> tremendous slowdown on dromaeo_dom and dromaeo_css, so we do have strong
>> evidence that this optimization is critical. We hide as many of the
>> internal GC details as possible behind magic number offsets, void*, and
>> shadow structs, but this still -- particularly combined with templates
>> -- leaves us with a tremendous amount of code in headers.
>>
>> I think our best hope for improving compilation time with these
>> limitations is C++ modules. It wouldn't really improve the code layout
>> mess, but would at least mean we only have to compile the massive pile
>> of inlined code once.
> 
> Could you compile parts of SpiderMonkey in unified mode?

Would be very useful for me, but I don't think I'm the common case for
SpiderMonkey hackers.

I actually had great results playing with clang's pre-compiled headers:
30+% speedup on compilation of jsgc.cpp. Getting it production ready
looked like it would be a major headache though, so I didn't push
forward with it.


_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform

Reply via email to