15:10:41  * mostynbquit (Quit: Leaving)
15:18:12  * enaqxquit (Remote host closed the connection)
15:18:26  * enaqxjoined
15:18:57  * enaqxquit (Remote host closed the connection)
15:30:54  * caitpchanged nick to caitp|away
16:02:41  * enaqxjoined
16:04:24  * RT|Chatzillaquit (Quit: ChatZilla 0.9.86.1 [Firefox 2.0.0.22pre/2009081014])
16:35:45  * bnoordhuisjoined
16:52:25  * enaqxquit (Remote host closed the connection)
17:10:27  * ncthom91joined
17:33:43  * ncthom91quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
17:59:11  * bnoordhuisquit (Ping timeout: 240 seconds)
17:59:37  * daviquit (Remote host closed the connection)
18:04:21  * ncthom91joined
18:05:16  * enaqxjoined
18:09:56  * enaqxquit (Ping timeout: 246 seconds)
18:35:15  * C-Manjoined
18:41:35  * ofrobotsquit (Quit: My Mac has gone to sleep. ZZZzzz…)
18:49:40  * ncthom91quit (Quit: Textual IRC Client: www.textualapp.com)
18:59:50  * bnoordhuisjoined
19:12:54  * rendarquit (Ping timeout: 268 seconds)
19:17:18  * ofrobotsjoined
19:18:18  * rendarjoined
19:32:43  * C-Manquit (Quit: Connection reset by beer)
19:48:24  * davijoined
19:48:47  * daviquit (Changing host)
19:48:47  * davijoined
20:12:13  * JoWiequit (Quit: Connection closed for inactivity)
20:47:06  * JoWiejoined
20:47:56  * bnoordhuisquit (Ping timeout: 246 seconds)
20:48:49  * bnoordhuisjoined
21:01:29  * bnoordhuisquit (Quit: leaving)
21:08:51  * caitp|awaychanged nick to caitp
21:15:05  * daviquit (Ping timeout: 246 seconds)
21:18:36  <aklein>caitp: to be clear, I agree that fixing the literal counting mess isn't needed in this patch
21:20:22  * caitpchanged nick to caitp|away
21:57:59  * esasquit (Read error: Connection reset by peer)
22:05:45  * enaqxjoined
22:20:02  * caitp|awaychanged nick to caitp
22:20:08  * plutoniixquit (Quit: จรลี จรลา)
22:22:27  * caitp-joined
22:27:40  * RT|Chatzillajoined
22:33:39  <caitp>aklein: I don't think your approach to v8:4400 works in all cases, at least not without allocating unused literal indexes than are needed. The Checkpoint::Restore() mechanism already does most of what you're talking about, but it's not quite enough
22:34:43  <caitp>I played around with it a few times over the weekend, I think what is needed is tracking literal counts on a per-expression basis and coagulating them in the appropriate places, because only per-expression can you distinguish between real literals and patterns
22:35:15  <caitp>Especially important for arrow functions, where you don't have a real FunctionState while parsing the formal parameters
22:35:51  <caitp>but your version of that strategy might be slightly different, we'll see
22:37:18  <aklein>caitp: yeah, I ran into the over-allocating problem with some simple tests cases
22:37:31  <aklein>more worryingly, I think we might already be over-allocating with destructuring bind
22:37:46  <aklein>"var {b} = {}" seems to add two materialized literal slots
22:37:48  <caitp>we are, dslomov had mentioned it in a bug
22:37:52  <aklein>ok
22:38:18  <aklein>it's worrying that rossberg didn't mention this when talking about staging...
22:38:43  <aklein>happen to have the bug handy?
22:38:52  <caitp>no,it might have been a CL or something
22:38:55  <aklein>k
22:39:14  <aklein>your outline sounds right
22:39:54  <caitp>it seems functionally correct but I'm not sure how to do it without hurting codeload very badly
22:41:59  <aklein>for now, it still seems better to over-allocate than crash :)
22:42:15  <caitp>yes
22:43:54  * seventhjoined
22:44:04  * caitp-quit (Quit: My Mac has gone to sleep. ZZZzzz…)
22:44:15  <aklein>I'll bet we don't catch 4400 in parsing tests because we run the PreParser on the whole string
22:45:57  <aklein>caitp: I'm going to let you land your rest patch (assuming you get an lgtm stamp from bmeurer) before fixing this, btw; it's clearly going to conflict with your patch
22:46:24  <caitp>I think the function needs to be invoked in order to cause the crash, so parsing tests would never catch it anyways
22:47:22  <aklein>parsing tests do compare the literal counts, though
22:47:51  <caitp>ah
22:48:04  <aklein>https://code.google.com/p/chromium/codesearch#chromium/src/v8/test/cctest/test-parsing.cc&l=1581
22:48:56  <aklein>maybe the bug is that function_state should be passed along to SkipLazyFunctionBody instead of being recreated inside the preparser? lots seems broken here.
22:50:57  * caitpchanged nick to caitp|away
22:52:13  * caitp|awaychanged nick to caitp
22:52:36  <caitp>yeah, IIRC it only compared the top-level literal counts though
23:17:43  * rendarquit
23:25:07  * deavidquit (Ping timeout: 250 seconds)
23:32:36  * deavidjoined
23:39:29  * caitpchanged nick to caitp__
23:39:29  * caitp-joined
23:42:08  * caitp__quit (Quit: Textual IRC Client: www.textualapp.com)
23:55:34  * caitp-quit (Remote host closed the connection)