00:56:11 -!- tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Quit: Leaving.] 01:05:33 -!- slyrus [~chatzilla@173-228-44-88.dsl.static.sonic.net] has quit [Ping timeout: 276 seconds] 01:20:46 -!- Fare [~Fare@ita4fw1.itasoftware.com] has quit [Quit: Leaving] 03:15:37 -!- attila_lendvai [~attila_le@catv-80-98-24-21.catv.broadband.hu] has quit [Quit: Leaving.] 04:02:17 homie` [~levgue@xdsl-78-35-131-253.netcologne.de] has joined #sbcl 04:05:44 -!- homie [~levgue@xdsl-78-35-137-186.netcologne.de] has quit [Ping timeout: 276 seconds] 04:14:05 slyrus [~chatzilla@adsl-75-36-217-249.dsl.pltn13.sbcglobal.net] has joined #sbcl 04:22:43 -!- nyef [~nyef@pool-70-20-57-204.man.east.myfairpoint.net] has quit [Quit: G'night all.] 04:56:36 -!- derrida [~derrida@unaffiliated/deleuze] has quit [Remote host closed the connection] 07:01:10 mnemonicsloth [~user@cpe-071-076-250-251.triad.res.rr.com] has joined #sbcl 07:13:10 mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has joined #sbcl 07:13:58 -!- mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has quit [Remote host closed the connection] 07:19:40 mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has joined #sbcl 08:41:47 tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 10:05:51 -!- mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has quit [Ping timeout: 240 seconds] 10:14:14 tcr2 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 10:14:17 -!- tcr2 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Read error: Connection reset by peer] 10:14:22 -!- tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Ping timeout: 272 seconds] 10:14:23 tcr2 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 10:28:15 attila_lendvai [~attila_le@catv-80-98-24-21.catv.broadband.hu] has joined #sbcl 10:28:50 -!- homie` [~levgue@xdsl-78-35-131-253.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 10:29:54 -!- foom [~jknight@ita4fw1.itasoftware.com] has quit [Remote host closed the connection] 10:37:37 homie [~levgue@xdsl-78-35-131-253.netcologne.de] has joined #sbcl 11:00:09 stassats [~stassats@wikipedia/stassats] has joined #sbcl 11:04:30 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 250 seconds] 11:45:44 -!- attila_lendvai [~attila_le@catv-80-98-24-21.catv.broadband.hu] has left #sbcl 11:46:51 Blkt [~user@net-93-151-231-62.cust.dsl.teletu.it] has joined #sbcl 11:47:23 hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has joined #sbcl 11:58:25 good day everyone 12:14:32 *tcr2* really wishes SBCL's disassembler would also include the disassembly of lambdas by default 13:29:32 stassats [~stassats@wikipedia/stassats] has joined #sbcl 13:36:44 -!- homie [~levgue@xdsl-78-35-131-253.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 13:48:44 -!- slyrus [~chatzilla@adsl-75-36-217-249.dsl.pltn13.sbcglobal.net] has quit [Ping timeout: 246 seconds] 14:09:15 -!- hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has quit [Quit: Leaving...] 14:22:29 homie [~levgue@xdsl-78-35-131-253.netcologne.de] has joined #sbcl 15:09:56 nyef [~nyef@pool-70-20-57-204.man.east.myfairpoint.net] has joined #sbcl 15:10:07 G'morning all. 15:15:26 good morning nyef 15:15:48 Anything interesting happening? 15:17:32 And is my current thought that any closed-over LAMBDA-VARs are de-facto aliased, and therefore must not be involved in SSA? 15:17:43 mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has joined #sbcl 15:17:43 Err... Is my current thought /correct/ that... 15:23:25 Hrm... Going to have to think about that more carefully. 15:29:37 rmarynch [~roman@88.135.194.233] has joined #sbcl 15:29:49 Good evening 15:33:26 Hello rmarynch. 15:35:42 nyef: are you working on SSA pass for SBCL? Or just thinking about the possible design? 15:36:00 Thinking about possible design. 15:38:11 As a new pass within the current IR1 model? 15:38:25 Or a brand new thing? 15:38:29 Not enough information to tell, yet. 15:38:38 -!- Blkt [~user@net-93-151-231-62.cust.dsl.teletu.it] has quit [Ping timeout: 276 seconds] 15:39:08 But, ICR is somehow related to CPS, which is isomorphic to SSA, which probably means something, somehow. 15:40:58 So right now I'm reading up on how SSA is used elsewhere, using my current (incomplete) model of how SBCL functions as a basis for comparison. 15:42:30 -!- mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has quit [Remote host closed the connection] 16:08:18 nyef: in case you start with it seriously, let me know. Maybe I will be able to help you in some way 16:09:05 ... Just reading some slides on SSA for predicated code. ARM machine code has a predicate on almost every single bloody instruction. 16:11:12 ooh, those sound interesting. link? 16:11:15 Itanium has 12 such flag registers for that purpose iirc :-) 16:11:28 froydnj: Which, the slides or the ARM ISA ref? 16:11:36 nyef: the slides 16:11:49 http://www.prog.uni-saarland.de/ssasem/ has links to a bunch of different slide sets. 16:12:25 cool, thanks 16:13:56 I'm currently reading "An extension to the SSA representation for predicated code (25')". 16:23:14 ... The entire point of SBCL's lifetime analysis phase is to construct the interference graph for the TNs, isn't it? 16:24:13 flip214 [~marek@unaffiliated/flip214] has joined #sbcl 16:25:23 I believe that's correct 16:25:44 since (logand (+ fixnum fixnum) (1- word-size)) is optimized, so can (logand (expt a b) (1- word-size)), right? 16:27:38 stassats: In principle, I believe so. 16:27:38 it's certainly possible, yes 16:28:34 -!- rmarynch [~roman@88.135.194.233] has quit [Quit: Leaving] 16:29:55 *stassats* is looking where it should be defined 16:33:06 and (mod (expt a b) m) can be optimized too 16:36:20 homie` [~levgue@xdsl-78-35-173-41.netcologne.de] has joined #sbcl 16:38:05 -!- homie [~levgue@xdsl-78-35-131-253.netcologne.de] has quit [Ping timeout: 240 seconds] 16:38:25 for positive integer b 16:38:58 (mod (expt ...) ...) can be too, but the transformation there is more algorithmic unless m is 2^wordsize 16:39:37 (and 2^wordsize is not a desperately common modulo, at least in cryptography -- you tend to want primes or products of two large primes) 16:40:53 right 16:41:03 that's what i was looking for in the first place 16:41:35 -!- homie` [~levgue@xdsl-78-35-173-41.netcologne.de] has quit [Quit: ERC Version 5.3 (IRC client for Emacs)] 16:42:08 is define-good-modular-fun what i'm looking for? 16:42:50 for wordsize-related things, yes, but typically you also need a direct implementation in hardware, or else to write assembly yourself 16:44:08 even modular-exp written in Lisp for large exponents is much faster than computing the exponent, and then doing MOD 16:45:02 yes, of course it is 16:45:11 homie [~levgue@xdsl-78-35-173-41.netcologne.de] has joined #sbcl 16:45:14 are you really doing the mod to 2^32-1? 16:45:29 or 2^32, rather? 16:45:59 because for any other modulo, you won't do noticeably better than mod-exp written in Lisp 16:47:36 no, what i really want is to transform (mod (expt integer integer) integer) to (mod-exp integer integer integer) 16:48:39 right. That's not define-good-modular-function 16:49:05 instead, you need to do something related to the transformation on logand 16:49:15 the logand defoptimizer 16:49:33 i just don't how to make transforms on forms, not on values 16:50:05 somewhere, alexey posted a sort of ir1-pattern-matching optimizer, where you could basically say (define-transformation ((mod (expt integer integer) integer) integer) `(mod-exp ...)) 16:50:28 stassats: well, you can walk the IR1 graph from within a transformer 16:50:49 or if you're just after a hack, you could write a compiler macro on MOD which checks the list structure of its first argument 16:52:54 *stassats* reminds himself that he should be really doing something else instead 16:53:42 nyef pasted "An optimization opportunity for d-x closures" at http://paste.lisp.org/display/118909 16:54:39 in any case, if i were to write a portable program, i wouldn't expect all compilers to optimize modular exponentiation, and would have to write mod-exp explicitly 16:54:54 but having sbcl do that automatically would be nice 16:56:34 Is this d-x closure optimization worth doing? 16:57:46 nyef: would it use unboxed storage if there were that trick of not returning VAL directly but having a kind of opaque identity? 16:57:57 it basically has to be boxed because it's returned, no? 16:58:32 It's boxed because it's closed-over. Otherwise it'd most-likely be unboxed on entry and re-boxed when being returned. 17:08:00 -!- tcr2 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Read error: Connection reset by peer] 17:08:01 tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has joined #sbcl 17:38:00 mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has joined #sbcl 18:01:03 -!- angavrilov [~angavrilo@217.71.227.181] has quit [Ping timeout: 240 seconds] 18:01:11 angavrilov [~angavrilo@217.71.227.181] has joined #sbcl 18:10:42 tsuru [~charlie@adsl-179-29-10.bna.bellsouth.net] has joined #sbcl 18:31:21 ... Because SSA and CPS are isomorphic, it would almost suffice to split blocks at SET nodes, converting the SET to a COMBINATION and heading up the new block with a BIND... Maybe? 18:31:30 Not quite, but the idea is there. 19:14:30 -!- tcr1 [~tcr@80-218-246-66.dclient.hispeed.ch] has quit [Quit: Leaving.] 19:23:16 nyef: set nodes can be specialised even ebtter and transformed nto let nodes 19:23:18 *into 19:23:26 we need combinations at control flow join points 19:33:04 Yeah, something like that. 19:33:26 I still don't completely understand IR1. 20:17:47 hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has joined #sbcl 20:30:28 -!- flip214 [~marek@unaffiliated/flip214] has quit [Ping timeout: 255 seconds] 20:31:42 ASau [~user@95-27-129-85.broadband.corbina.ru] has joined #sbcl 21:36:01 mega1_ [~quassel@catv4E5CABA2.pool.t-online.hu] has joined #sbcl 21:37:03 -!- mega1 [~quassel@catv4E5CABA2.pool.t-online.hu] has quit [Ping timeout: 240 seconds] 21:43:51 -!- mega1_ [~quassel@catv4E5CABA2.pool.t-online.hu] has quit [Ping timeout: 240 seconds] 21:50:17 -!- hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has quit [Quit: Linkinus - http://linkinus.com] 22:59:13 hargettp [~hargettp@pool-71-184-179-92.bstnma.east.verizon.net] has joined #sbcl 23:53:02 attila_lendvai [~attila_le@adsl-89-132-5-64.monradsl.monornet.hu] has joined #sbcl