[dev-servo] Rooting progress

2014-03-29 Thread Josh Matthews
One of many hurdles in upgrading to a newer SpiderMonkey revision was the exact rooting requirement, and I've got a branch that has a decent start on that: https://github.com/jdm/servo/commits/newroot In short, with my changes all of Servo's content tests run correctly despite GCing every time

Re: [dev-servo] Rooting progress

2014-03-29 Thread Josh Matthews
On 03/29/2014 01:35 PM, Josh Matthews wrote: One of many hurdles in upgrading to a newer SpiderMonkey revision was the exact rooting requirement, and I've got a branch that has a decent start on that: https://github.com/jdm/servo/commits/newroot In short, with my changes all of Servo's content t

Re: [dev-servo] character encoding in the HTML parser

2014-03-29 Thread Simon Sapin
On 10/03/2014 23:54, Keegan McAllister wrote: [...] Also, should we follow Gecko in representing the input stream as a queue of UTF-16 buffers? With UTF-8 we would have about half as much data to stream through the parser, and (on 64-bit) we could do case-insensitive ASCII operations 8 characte

Re: [dev-servo] character encoding in the HTML parser

2014-03-29 Thread Boris Zbarsky
On 3/29/14 6:56 PM, Simon Sapin wrote: Or I guess we could use what I’ll call "evil UTF-8", which is UTF-8 without the artificial restriction of not encoding surrogates. http://en.wikipedia.org/wiki/CESU-8 As far as I understand, a "parse error" in the spec is meant for conformance checkers (

[dev-servo] Crazy idea: CSS selector JITting at parse time

2014-03-29 Thread Patrick Walton
Hi everyone, I've been discussing this idea with a few people in person over the past week, and nobody told me it was completely insane. ;) So I thought I'd send this idea around. By now many people have heard of WebKit's CSS JIT. It's a surprisingly small amount of code. One of the issues t

Re: [dev-servo] Crazy idea: CSS selector JITting at parse time

2014-03-29 Thread Boris Zbarsky
On 3/29/14 8:23 PM, Patrick Walton wrote: This is just 29 bytes of code when assembled. This is likely larger than the equivalent `nsRuleNode` The right comparison is not nsRuleNode but nsCSSSelector, right? These are actually pretty bloated in Gecko right now. For example, ".foo #a" is pars

Re: [dev-servo] Crazy idea: CSS selector JITting at parse time

2014-03-29 Thread Patrick Walton
Yes, it does have pretty tight coupling. That is the biggest risk. On a related note, I have been tossing around ideas today for using SIMD to match multiple selectors that have the same "shape" in parallel. For example, if we have ".foo #a" and ".bar #a" it may be possible to use the packed co