2016-09-10T00:01:45Z nyef`: Yeah, that's the way of it. You mostly-nail the issue, only to find that there's an edge-case or two that you hadn't considered. 2016-09-10T00:02:02Z stassats: well, it's actually not a fundamental problem 2016-09-10T00:02:12Z stassats: i'm just incorrectly finding the new ctran 2016-09-10T00:05:21Z brfennpocock quit (Ping timeout: 276 seconds) 2016-09-10T00:08:47Z cromachina joined #sbcl 2016-09-10T00:27:24Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-09-10T00:29:00Z karswell` quit (Remote host closed the connection) 2016-09-10T00:29:15Z karswell` joined #sbcl 2016-09-10T00:40:52Z stassats: actually, the ctran is right, but the blocks get joined together before inline expansion 2016-09-10T00:45:30Z stassats: time for a break from this 2016-09-10T00:50:15Z stassats: it's actually better that there's another issue 2016-09-10T00:50:23Z stassats: otherwise it would have been to easy 2016-09-10T01:18:43Z stassats: need a more robust way to pin down blocks 2016-09-10T01:37:59Z stassats: can't think of anything 2016-09-10T01:43:04Z DavidGu joined #sbcl 2016-09-10T01:43:24Z em1l_ joined #sbcl 2016-09-10T01:44:22Z karswell` is now known as karswell 2016-09-10T01:44:48Z karswell quit (Quit: ERC (IRC client for Emacs 24.5.1)) 2016-09-10T01:47:03Z em1l quit (Ping timeout: 265 seconds) 2016-09-10T02:02:19Z nzambe quit (Quit: http://www.kiwiirc.com/ - A hand crafted IRC client) 2016-09-10T02:03:06Z nzambe joined #sbcl 2016-09-10T02:08:43Z sjl quit (Ping timeout: 265 seconds) 2016-09-10T02:17:54Z stassats quit (Ping timeout: 265 seconds) 2016-09-10T02:36:09Z DavidGu quit (Ping timeout: 276 seconds) 2016-09-10T02:43:54Z rumbler31 joined #sbcl 2016-09-10T02:56:57Z myrkraverk_ joined #sbcl 2016-09-10T02:58:15Z myrkraverk quit (Ping timeout: 276 seconds) 2016-09-10T02:58:26Z myrkraverk_ is now known as myrkraverk 2016-09-10T03:08:20Z Bike quit (Quit: temp) 2016-09-10T03:13:40Z Bike joined #sbcl 2016-09-10T03:25:28Z rumbler31 quit (Remote host closed the connection) 2016-09-10T03:30:24Z irsol quit (Ping timeout: 265 seconds) 2016-09-10T03:32:13Z irsol joined #sbcl 2016-09-10T03:38:02Z karswell joined #sbcl 2016-09-10T05:07:32Z salva quit (*.net *.split) 2016-09-10T05:07:32Z jsnell quit (*.net *.split) 2016-09-10T05:07:33Z p_l quit (*.net *.split) 2016-09-10T05:07:33Z angular_mike quit (*.net *.split) 2016-09-10T05:07:35Z carvite quit (*.net *.split) 2016-09-10T05:07:35Z minion quit (*.net *.split) 2016-09-10T05:07:37Z slyrus quit (*.net *.split) 2016-09-10T05:07:37Z eschatologist quit (*.net *.split) 2016-09-10T05:07:38Z abruanese quit (*.net *.split) 2016-09-10T05:07:39Z luis quit (*.net *.split) 2016-09-10T05:07:42Z scymtym quit (*.net *.split) 2016-09-10T05:07:42Z DeadTrickster quit (*.net *.split) 2016-09-10T05:07:46Z karswell quit (*.net *.split) 2016-09-10T05:07:48Z dougk_ quit (*.net *.split) 2016-09-10T05:07:48Z |3b| quit (*.net *.split) 2016-09-10T05:07:48Z gko quit (*.net *.split) 2016-09-10T05:07:48Z foom quit (*.net *.split) 2016-09-10T05:07:49Z drmeister quit (*.net *.split) 2016-09-10T05:07:50Z PuercoPop quit (*.net *.split) 2016-09-10T05:07:52Z loke quit (*.net *.split) 2016-09-10T05:07:54Z brucem quit (*.net *.split) 2016-09-10T05:07:54Z nicdev quit (*.net *.split) 2016-09-10T05:07:54Z pchrist quit (*.net *.split) 2016-09-10T05:07:55Z mordocai quit (*.net *.split) 2016-09-10T05:23:00Z drmeister joined #sbcl 2016-09-10T05:24:29Z angular_mike joined #sbcl 2016-09-10T05:25:03Z gingerale joined #sbcl 2016-09-10T05:25:03Z salva joined #sbcl 2016-09-10T05:25:03Z jsnell joined #sbcl 2016-09-10T05:25:03Z p_l joined #sbcl 2016-09-10T05:25:03Z carvite joined #sbcl 2016-09-10T05:25:03Z minion joined #sbcl 2016-09-10T06:53:12Z igajsin joined #sbcl 2016-09-10T06:55:53Z shka_ joined #sbcl 2016-09-10T07:54:36Z Bike quit (Quit: canny) 2016-09-10T08:04:24Z karswell joined #sbcl 2016-09-10T08:04:24Z dougk_ joined #sbcl 2016-09-10T08:04:24Z |3b| joined #sbcl 2016-09-10T08:04:24Z gko joined #sbcl 2016-09-10T08:04:24Z foom joined #sbcl 2016-09-10T08:04:24Z PuercoPop joined #sbcl 2016-09-10T08:04:24Z loke joined #sbcl 2016-09-10T08:04:24Z brucem joined #sbcl 2016-09-10T08:04:24Z nicdev joined #sbcl 2016-09-10T08:04:24Z mordocai joined #sbcl 2016-09-10T08:04:24Z pchrist joined #sbcl 2016-09-10T08:05:04Z scymtym joined #sbcl 2016-09-10T08:05:04Z DeadTrickster joined #sbcl 2016-09-10T08:05:06Z slyrus joined #sbcl 2016-09-10T08:05:06Z eschatologist joined #sbcl 2016-09-10T08:05:06Z abruanese joined #sbcl 2016-09-10T08:05:06Z luis joined #sbcl 2016-09-10T08:08:53Z angular_mike quit (Ping timeout: 265 seconds) 2016-09-10T08:11:14Z angavrilov joined #sbcl 2016-09-10T08:17:17Z angular_mike joined #sbcl 2016-09-10T08:27:21Z igajsin quit (Remote host closed the connection) 2016-09-10T08:38:26Z attila_lendvai joined #sbcl 2016-09-10T08:38:26Z attila_lendvai quit (Changing host) 2016-09-10T08:38:26Z attila_lendvai joined #sbcl 2016-09-10T09:10:12Z DeadTrickster_ joined #sbcl 2016-09-10T09:11:52Z DeadTrickster quit (Ping timeout: 240 seconds) 2016-09-10T09:37:23Z leo_song quit (Read error: Connection reset by peer) 2016-09-10T09:37:42Z leo_song_ joined #sbcl 2016-09-10T09:37:47Z leo_song_ is now known as leo_song 2016-09-10T10:00:37Z PosterdatiMobile joined #sbcl 2016-09-10T10:00:39Z _PosterdatiMobil joined #sbcl 2016-09-10T10:00:44Z _PosterdatiMobil quit (Client Quit) 2016-09-10T10:46:08Z scymtym quit (Remote host closed the connection) 2016-09-10T11:37:25Z stassats joined #sbcl 2016-09-10T11:43:03Z schjetne quit (Ping timeout: 240 seconds) 2016-09-10T11:45:41Z scymtym joined #sbcl 2016-09-10T12:22:03Z sjl joined #sbcl 2016-09-10T12:41:49Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-09-10T12:47:48Z stassats quit (Ping timeout: 276 seconds) 2016-09-10T12:52:37Z stassats joined #sbcl 2016-09-10T13:10:31Z christoph_debian quit (Quit: WeeChat 1.0.1) 2016-09-10T13:10:52Z christoph_debian joined #sbcl 2016-09-10T13:11:13Z DeadTrickster joined #sbcl 2016-09-10T13:12:48Z christoph_debian quit (Client Quit) 2016-09-10T13:13:03Z christoph_debian joined #sbcl 2016-09-10T13:14:03Z DeadTrickster_ quit (Ping timeout: 240 seconds) 2016-09-10T13:25:59Z shka_ quit (Quit: Konversation terminated!) 2016-09-10T13:32:24Z shka joined #sbcl 2016-09-10T13:37:14Z shka quit (Ping timeout: 260 seconds) 2016-09-10T13:43:23Z rszeno joined #sbcl 2016-09-10T14:29:51Z PosterdatiMobile quit (Quit: KVIrc 4.2.0 Equilibrium http://www.kvirc.net/) 2016-09-10T14:41:01Z nyef`: G'morning all. 2016-09-10T14:42:39Z nyef`: Can anyone think of an example where we would want to automatically DX a functoin parameter that is NOT itself a function? Automatically marking the TEST argument for REMOVE-IF-NOT, for example, is an example where it IS a function, but I'm having trouble thinking of a case where we want to auto-DX something that ISN'T a function. 2016-09-10T15:08:34Z scymtym: Xof: i mostly managed to implement the idea we discussed: https://github.com/scymtym/sbcl/commits/wip-compact-xref-and-repack 2016-09-10T15:09:11Z scymtym: the remaining issue is where to put a file that is loaded for side-effects during warm load 2016-09-10T15:19:29Z edgar-rft quit (Quit: edgar-rft) 2016-09-10T15:24:59Z DavidGu joined #sbcl 2016-09-10T15:25:58Z DavidGu quit (Client Quit) 2016-09-10T15:29:38Z stassats: so, i think to really fix the inlining issue it needs to copy the IR that was created for the FLET 2016-09-10T15:30:22Z stassats: i can go and patch places where it moves ctrans or lvars, but it's a game of whack-a-mole 2016-09-10T15:30:37Z stassats: but he flet sits there and gets silently updated 2016-09-10T15:31:12Z stassats: just need to copy ir, update all the uses, etc. 2016-09-10T15:36:16Z slyrus quit (Ping timeout: 244 seconds) 2016-09-10T15:57:02Z nyef`: I'd ask if duplicating the IR is really the right approach, but it seems surprising to me that it isn't standard procedure if there's more than one reference to the function. 2016-09-10T15:57:15Z nyef`: The bug doesn't crop up if there's only the one reference, right? 2016-09-10T15:57:44Z igajsin joined #sbcl 2016-09-10T15:58:16Z nyef`: Less surprising when I consider the maintenance history of SBCL, but still, WTF? 2016-09-10T16:01:15Z igajsin left #sbcl 2016-09-10T16:22:57Z Bike joined #sbcl 2016-09-10T16:25:07Z PosterdatiMobile joined #sbcl 2016-09-10T16:25:11Z _PosterdatiMobil joined #sbcl 2016-09-10T16:25:25Z _PosterdatiMobil quit (Client Quit) 2016-09-10T16:36:05Z stassats: nyef`: yes, one reference is just let converted 2016-09-10T16:51:20Z stassats: i think i can commandeer maybe-expand-local-inline to actually copy ir 2016-09-10T16:51:58Z stassats: because making maybe-let-convert copy may be a bit to involving, and i guess no need to copy the last call 2016-09-10T16:52:12Z stassats: or at least that's where i start 2016-09-10T16:52:56Z nyef`: Right, no need to copy the last call, there are no other references anyway so it won't do any damage to re-use it but it will cost to copy it. 2016-09-10T17:11:16Z scymtym quit (Ping timeout: 255 seconds) 2016-09-10T17:27:03Z PosterdatiMobile quit (Ping timeout: 240 seconds) 2016-09-10T17:54:32Z edgar-rft joined #sbcl 2016-09-10T18:16:05Z sjl quit (Ping timeout: 244 seconds) 2016-09-10T18:57:59Z rszeno quit (Quit: Leaving.) 2016-09-10T19:51:46Z nyef`: ... Ooh. I think I may just have found a bug in the implicit value-cell handling. 2016-09-10T20:00:26Z nyef`: Ah, no. Only happens when the user lies to the compiler about DX. Nevermind. 2016-09-10T20:02:44Z nyef`: Heh. It *does*, however, mean that there's still some benefit to declaring a LET-bound closure as DX, even if the closure itself gets heap-allocated. 2016-09-10T20:08:09Z scymtym joined #sbcl 2016-09-10T20:32:50Z whiteline quit (Quit: Leaving) 2016-09-10T20:33:13Z whiteline joined #sbcl 2016-09-10T20:34:36Z whiteline quit (Remote host closed the connection) 2016-09-10T20:34:53Z whiteline joined #sbcl 2016-09-10T20:42:20Z slyrus joined #sbcl 2016-09-10T20:51:11Z attila_lendvai joined #sbcl 2016-09-10T20:51:11Z attila_lendvai quit (Changing host) 2016-09-10T20:51:11Z attila_lendvai joined #sbcl 2016-09-10T20:51:45Z attila_lendvai quit (Read error: Connection reset by peer) 2016-09-10T20:54:34Z attila_lendvai joined #sbcl 2016-09-10T20:57:14Z sjl joined #sbcl 2016-09-10T20:57:56Z angavrilov quit (Remote host closed the connection) 2016-09-10T20:58:30Z schjetne joined #sbcl 2016-09-10T21:25:39Z attila_lendvai quit (Ping timeout: 260 seconds) 2016-09-10T21:32:41Z ASau quit (Read error: Connection reset by peer) 2016-09-10T21:32:43Z ASau` joined #sbcl 2016-09-10T21:35:26Z ASau` is now known as ASau 2016-09-10T21:44:56Z nyef`: Ugh. Bloody undocumented DX magic. 2016-09-10T21:45:14Z stassats: like anything else is documented? 2016-09-10T21:45:49Z nyef`: STACK phase is fairly well documented. 2016-09-10T21:46:53Z nyef`: Right now I'm staring at the mess around HANDLE-NESTED-DYNAMIC-EXTENT-LVARS and LVAR-GOOD-FOR-DX-P, and wondering how on earth this CLAMBDA is getting set DX. 2016-09-10T21:47:23Z stassats: i'm realizing that copying ir1 is basically like doing ir1-convert but with ir1 as a source instead of s-exps 2016-09-10T21:47:34Z nyef`: That... sounds about right. 2016-09-10T21:48:46Z stassats: which also means it's error prone and any changes to ir1 will upset it 2016-09-10T21:49:04Z nyef`: That ALSO sounds about right. 2016-09-10T21:49:22Z nyef`: You might be better off keeping a copy of the original s-exp source and re-converting it. 2016-09-10T21:49:23Z stassats: well, whatchagonnado 2016-09-10T21:49:47Z gingerale quit (Remote host closed the connection) 2016-09-10T21:49:56Z stassats: thought about that, but how do i find the new lexical environment? 2016-09-10T21:50:07Z stassats: especially if something is deleted 2016-09-10T21:50:12Z nyef`: Fair poing. 2016-09-10T21:50:15Z nyef`: Err... 2016-09-10T21:50:17Z nyef`: Fair point. 2016-09-10T21:51:12Z stassats: that's why nobody did it before, it's pretty daunting 2016-09-10T21:51:47Z nyef`: So, cache the original s-exp AND the LEXENV? 2016-09-10T21:52:15Z stassats: well, copying is ultimately the right solution 2016-09-10T21:52:21Z stassats: just gotta find the least painful way 2016-09-10T21:53:15Z stassats: i've gotta start with some way, be able to cope something like (lambda (x) 123) first 2016-09-10T21:53:23Z stassats: and go from there 2016-09-10T21:53:28Z stassats: and learn a thing or two 2016-09-10T21:54:35Z stassats: just looking at ir2-convert-block, there's not much to be handled 2016-09-10T21:57:08Z nyef`: Okay, no wonder I don't see how this mess markes the CLAMBDA as being DX: it doesn't. 2016-09-10T21:57:17Z nyef`: ... so how does it get marked DX? 2016-09-10T21:57:54Z sjl quit (Read error: Connection reset by peer) 2016-09-10T22:20:30Z ASau quit (Read error: Connection reset by peer) 2016-09-10T22:24:36Z fe[nl]ix quit (Quit: No Ping reply in 180 seconds.) 2016-09-10T22:26:13Z fe[nl]ix joined #sbcl 2016-09-10T22:31:36Z drmeister quit (Ping timeout: 260 seconds) 2016-09-10T22:31:36Z nzambe quit (Ping timeout: 260 seconds) 2016-09-10T22:31:40Z drmeister joined #sbcl 2016-09-10T22:37:25Z drmeister_ joined #sbcl 2016-09-10T22:37:49Z fe[nl]ix quit (Quit: No Ping reply in 180 seconds.) 2016-09-10T22:37:51Z drmeister quit (Ping timeout: 260 seconds) 2016-09-10T22:38:22Z drmeister_ is now known as drmeister 2016-09-10T22:38:32Z Blkt_ joined #sbcl 2016-09-10T22:38:36Z joshe quit (Ping timeout: 260 seconds) 2016-09-10T22:38:36Z fe[nl]ix joined #sbcl 2016-09-10T22:41:53Z Blkt quit (Ping timeout: 260 seconds) 2016-09-10T23:04:03Z Blkt_ quit (Quit: No Ping reply in 180 seconds.) 2016-09-10T23:05:29Z Blkt joined #sbcl 2016-09-10T23:08:45Z sjl joined #sbcl 2016-09-10T23:11:09Z slyrus quit (Ping timeout: 276 seconds) 2016-09-10T23:13:33Z fe[nl]ix quit (Quit: No Ping reply in 180 seconds.) 2016-09-10T23:13:33Z Blkt quit (Quit: No Ping reply in 180 seconds.) 2016-09-10T23:14:52Z Blkt joined #sbcl 2016-09-10T23:14:54Z fe[nl]ix joined #sbcl 2016-09-10T23:24:37Z slyrus joined #sbcl 2016-09-10T23:36:01Z stassats quit (Ping timeout: 255 seconds) 2016-09-10T23:48:53Z sjl quit (Ping timeout: 265 seconds) 2016-09-10T23:58:17Z White_Flame quit (Remote host closed the connection)