00:01:44 -!- stassats [~stassats@wikipedia/stassats] has quit [Ping timeout: 252 seconds] 00:26:46 -!- Quadrescence [~quad@unaffiliated/quadrescence] has quit [Quit: This computer has gone to sleep] 00:33:36 -!- LiamH [~none@96.231.218.61] has quit [Quit: Leaving.] 01:26:04 Quadrescence [~quad@unaffiliated/quadrescence] has joined #sbcl 01:27:37 -!- Quadrescence [~quad@unaffiliated/quadrescence] has quit [Client Quit] 01:34:15 kanru [~kanru@118-163-10-190.HINET-IP.hinet.net] has joined #sbcl 01:49:45 v__ [~v@199.68.198.120] has joined #sbcl 02:28:42 yacks [~yacks@180.151.36.169] has joined #sbcl 03:10:41 -!- v__ [~v@199.68.198.120] has quit [Read error: Operation timed out] 03:23:17 v__ [~v@202.153.186.114] has joined #sbcl 03:33:34 attila_lendvai [~attila_le@95.56.78.47] has joined #sbcl 03:33:34 -!- attila_lendvai [~attila_le@95.56.78.47] has quit [Changing host] 03:33:34 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 03:36:10 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Client Quit] 03:37:31 -!- christoph1 [~christoph@ppp-188-174-159-199.dynamic.mnet-online.de] has quit [Read error: Operation timed out] 03:41:29 LiamH [~none@96.231.218.61] has joined #sbcl 03:46:15 would you guys export the basic SIMD stuff from SB-EXT? It's really not useful enough for SB-EXT, but, otoh, I don't think I want extensions to keep using SB-KERNEL directly. 03:52:49 christoph1 [~christoph@DSL01.212.114.250.148.ip-pool.NEFkom.net] has joined #sbcl 03:58:47 -!- wbooze [~wbooze@xdsl-87-79-195-163.netcologne.de] has quit [Ping timeout: 252 seconds] 04:30:33 https://github.com/pkhuong/sbcl/tree/simd-pack-march-2013 04:40:05 I would pretty much commit the top of that branch as is, after fusing the last two (Export SB-SIMD-PACK symbols from SB-EXT and SB-SIMD-PACK on x86-64). What do you think? 04:41:16 Some review or just sanity checking would be reassuring, before I land a 950 LOC patch (: 04:45:55 pkhuong, why wouldn't or couldn't this be a contrib? does processor specific stuff belong in SB-EXT? 04:47:11 Qworkescence: a contrib can be built on top of this. 04:48:18 I only committed compiler innards. The IR1 stuff could arguably be done in a slightly suspect contrib, but the IR2/backend-specific modifications definitely need to be backed in SBCL from the get go 04:49:20 i see 04:50:16 pkhuong, so then what is the motivation for exposing stuff in SB-EXT? Do you think conditionalizing the exposition of things in SB-EXT is okay, or should things in SB-EXT be available on all platforms? 04:50:34 We already have stuff in SB-EXT that's not available everywhere. 04:50:36 (sorry if this is an incredibly minor point, and you're looking for more serious feedback about your SSE patch) 04:51:16 It's not ideal, but I don't know where else to put these, and I'm not sure that telling library/contrib writers to just go for SB-KERNEL is a good idea. 04:51:28 i agree 04:51:35 Is a new package heavily forbidden? 04:52:15 I guess not. 04:53:01 I don't know. I always saw SB-EXT as the package that contains cool compiler extensions I can use to my advantage [everywhere]. 04:53:12 Out of curiosity, what isn't available everywhere in SB-EXT? 04:53:25 atomic operations 04:54:04 ah yes are those only available on x86oid? 04:54:26 everywhere we have threads. I think we just fake them elsewhere. 04:55:14 pkhuong, and unrelated, do you know what happened to SB-EXT:CONSTANT-FUNCTION? 04:56:01 -!- LiamH [~none@96.231.218.61] has quit [Quit: Leaving.] 04:56:36 nope. I don't even know what that used to be. 04:56:53 "The sb-ext:constant-function declaration specifies that a function will always return the same value for the same arguments, which may allow the compiler to optimize calls to it. This is appropriate for functions like sqrt, but is not appropriate for functions like aref, which can change their return values when the underlying data are changed." 04:58:50 you can defknown (: 05:00:16 pkhuong, how about for labels or flet? 05:00:46 I don't think that ever worked 05:01:04 ): 05:26:00 -!- Fare [~fare@173-9-65-97-NewEngland.hfc.comcastbusiness.net] has quit [Ping timeout: 260 seconds] 05:57:01 FWIW, I also thought that a new package for basic simd stuff is a good idea if not prohibited. sb-ext over sb-kernel if need be though. 05:58:47 worth about 2¢ 05:58:49 redline6561: find a name, and make sure it doesn't conflict with a potential contrib ;) 05:59:23 sb-tobasimd 05:59:24 i kid 06:00:03 I'm deep in decision fatigue. ~24h over the past ~30h on this (: 06:04:06 sb-simd-core, sb-kernel-simd, sb-raw-simd 06:04:13 idk, i'd assume the contrib is sb-simd 06:30:17 -!- v__ [~v@202.153.186.114] has quit [Ping timeout: 256 seconds] 06:47:10 v__ [~v@199.68.198.120] has joined #sbcl 06:51:16 -!- hlavaty`` [~user@friedrichstrasse.knowledgetools.de] has quit [Read error: Operation timed out] 06:52:11 hlavaty`` [~user@friedrichstrasse.knowledgetools.de] has joined #sbcl 07:03:20 -!- v__ [~v@199.68.198.120] has quit [Ping timeout: 255 seconds] 07:16:34 -!- Qworkescence [~quad@unaffiliated/quadrescence] has quit [Quit: This computer has gone to sleep] 07:19:07 v__ [~v@199.68.198.120] has joined #sbcl 07:24:29 -!- cmm- [~cmm@109.65.178.47] has quit [Ping timeout: 252 seconds] 07:25:07 cmm [~cmm@109.65.178.47] has joined #sbcl 07:25:09 prxq [~mommer@mnhm-590c0470.pool.mediaWays.net] has joined #sbcl 07:25:17 angavrilov [~angavrilo@217.71.227.190] has joined #sbcl 07:47:49 Qworkescence [~quad@unaffiliated/quadrescence] has joined #sbcl 07:48:48 -!- ASau [~user@46.115.44.40] has quit [Ping timeout: 264 seconds] 07:49:25 -!- Qworkescence [~quad@unaffiliated/quadrescence] has quit [Disconnected by services] 07:50:01 Qworkescence [~quad@unaffiliated/quadrescence] has joined #sbcl 08:04:59 -!- hlavaty`` [~user@friedrichstrasse.knowledgetools.de] has quit [Ping timeout: 255 seconds] 08:07:14 -!- cmm [~cmm@109.65.178.47] has quit [Ping timeout: 255 seconds] 08:08:14 cmm [~cmm@109.65.178.47] has joined #sbcl 08:53:35 scymtym_ [~user@2001:638:504:2093:226:b9ff:fe7d:3e1f] has joined #sbcl 08:55:13 -!- scymtym [~user@2001:638:504:2093:226:b9ff:fe7d:3e1f] has quit [Remote host closed the connection] 10:17:49 hlavaty [~user@friedrichstrasse.knowledgetools.de] has joined #sbcl 10:22:04 jarmond [~user@137.205.183.65] has joined #sbcl 11:18:41 -!- jarmond [~user@137.205.183.65] has quit [Remote host closed the connection] 11:39:12 -!- v__ [~v@199.68.198.120] has quit [Ping timeout: 250 seconds] 11:41:37 jarmond [~user@137.205.183.65] has joined #sbcl 11:56:41 v__ [~v@61.173.98.131] has joined #sbcl 12:05:31 -!- v__ [~v@61.173.98.131] has quit [Quit: ] 12:41:30 attila_lendvai [~attila_le@92.46.25.140] has joined #sbcl 12:41:31 -!- attila_lendvai [~attila_le@92.46.25.140] has quit [Changing host] 12:41:31 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl 13:14:52 LiamH [~none@96.231.218.61] has joined #sbcl 13:17:55 -!- hlavaty [~user@friedrichstrasse.knowledgetools.de] has quit [Ping timeout: 256 seconds] 13:20:25 hlavaty [~user@friedrichstrasse.knowledgetools.de] has joined #sbcl 13:22:51 -!- LiamH [~none@96.231.218.61] has quit [Quit: Leaving.] 13:31:22 Fare [~fare@173-9-65-97-NewEngland.hfc.comcastbusiness.net] has joined #sbcl 14:01:55 -!- yacks [~yacks@180.151.36.169] has quit [Remote host closed the connection] 14:28:53 milosn_ [~milosn@user-5AF50CB9.broadband.tesco.net] has joined #sbcl 14:30:19 -!- milosn [~milosn@user-5AF501E4.broadband.tesco.net] has quit [Ping timeout: 260 seconds] 14:35:01 stassats [~stassats@wikipedia/stassats] has joined #sbcl 14:38:43 wbooze [~wbooze@xdsl-78-35-158-2.netcologne.de] has joined #sbcl 15:16:48 pkhuong: hm, so now that there are separate register and primitive types, what should be used for arguments and results in vops? 15:18:40 yacks [~yacks@180.151.36.169] has joined #sbcl 15:19:19 -!- yacks [~yacks@180.151.36.169] has quit [Max SendQ exceeded] 15:19:38 yacks [~yacks@180.151.36.169] has joined #sbcl 15:19:49 -!- yacks [~yacks@180.151.36.169] has quit [Remote host closed the connection] 15:32:13 angavrilov: I'm thinking all three for arguments 15:32:36 there's a primtype alias for the union too 15:32:58 and type things precisely for result(s) 15:33:12 yeah, already found out that unless I do that stuff breaks 15:37:05 I think I'll add support for alias storage classes. It's a bit painful to type out. 15:46:14 luckily I create my vops using macros, so only one change per unique shape is required :) 15:49:55 angavrilov: I stole your nifty printing code (: 16:02:24 yacks [~yacks@180.151.36.169] has joined #sbcl 16:08:41 dto [~user@pool-96-252-62-13.bstnma.fios.verizon.net] has joined #sbcl 16:09:15 dto says that he / SBCL needs Windows 7 Service Pack 1 to fix a crash in his game on 64 bit Windows 7. Wondering what that is? 16:10:14 i don't recall with whom i had the conversation here, but it seems that my games built with SBCL.EXE will segfault on windows 64 bit if it doesn't have SP1 or greater 16:10:31 http://blocky.io/2x0ng.html <--- download from there if anyone wants to test. 16:11:36 angavrilov: are you updating cl-simd to match pkhuong's patches? 16:14:03 btw i am relying on 2nd hand reports, not with direct windows 7 experience 16:19:25 and i ship 32-bit SDL dll's with the game 16:19:59 dto: I'm just wondering (as I said to you) if that means that the GetThreadContext bug in WoW64 was fixed in Windows 7 SP1  that would almost make my day. 16:20:13 yeah. let me know! 16:20:31 brucem: i was just giving them some extra background info 16:27:53 angavrilov: i only ask as i have been adding SS(S)E3 and SSE4.x instrinsics and was also thinking about whether it could be turned into a contrib 16:34:06 yeah, that's what I'm doing 16:34:15 probably won't be done today, but will do soon 16:35:06 ok i'll leave it then, and send you some patches later for the newer intrinsics, unless you already have them 16:36:39 are the instruction patches already in sbcl trunk? 16:36:44 (if any) 16:37:32 no i've only finished (that is, tested) SSE3. i posted a patch for them to sbcl-devel but it's not been picked up yet 16:40:40 what is the nearest safest place anything used in #. can be defined at? 16:42:32 angavrilov: what do you mean? 16:43:03 is putting in (eval-when (everything) ... ) enough to use it from #. in the same file? 16:43:21 or is it necessary to move it to a different file that's loaded first 16:43:28 angavrilov: I think so, but different file is easier 16:44:01 jarmond: angavrilov had some patches for our instruction definitions too. I'm not sure that they were merged in yet, so it can all go in at once. 16:50:51 pkhuong: if you mean the ones from a couple of years ago, i think they are in 16:52:20 i should be able to finish up the missing ones from SSE4.x tomorrow sometime 16:52:24 -!- dto [~user@pool-96-252-62-13.bstnma.fios.verizon.net] has quit [Remote host closed the connection] 16:53:04 Good stuff. git format-patch with a useful commit message is slightly easier to merge in. 16:53:37 ok no problem 16:54:38 I'm flying/jetlagged today and tomorrow, I can probably commit the SSE3 instructions today, but nothing more. 16:55:27 up to you - commit those, or wait for the rest in one patch 16:55:31 angavrilov: oh yeah, I hope a BSD license is ok for the code you maintain (: 16:58:03 should be :) 16:58:07 are the tags for %make-simd-pack stable? 16:59:27 (for the purpose of hard-coding values in source code) 17:01:31 nikodemus` [~nikodemus@cs27127210.pp.htv.fi] has joined #sbcl 17:01:31 -!- ChanServ has set mode +o nikodemus` 17:05:32 -!- specbot [~specbot@tiger.common-lisp.net] has quit [Ping timeout: 252 seconds] 17:05:50 -!- minion [~minion@tiger.common-lisp.net] has quit [Ping timeout: 252 seconds] 17:05:53 -!- nikodemus` [~nikodemus@cs27127210.pp.htv.fi] has quit [Ping timeout: 255 seconds] 17:08:46 angavrilov: they correspond to the position in *simd-pack-element-types* 17:11:17 -!- jarmond [~user@137.205.183.65] has left #sbcl 17:19:49 hm, something really weird going on here 17:20:35 ? 17:20:51 0: (SB-FASL::DUMP-INTEGER-AS-N-BYTES # 8 # angavrilov: backtrace? 17:22:38 from a chain of dump-non-immediate-object and friends 17:23:08 interestingly, I put in a couple of break calls, and that's not the first simd-pack that it tries to dump 17:23:14 angavrilov: broken %simd-pack-tag? 17:24:04 I must go. If you have a small test case, I may have some time in 1-2 hours. 17:24:40 I just tried to compile sbcl-functions.lisp in cl-simd (after tweaking it), and it died 17:24:56 it defines a number of constants 17:25:46 incidentally, eql doesn't seem to work 17:28:32 also, this value seems really strange: 8: (SB-FASL::DUMP-NON-IMMEDIATE-OBJECT (FUNCTION (* (CONSTANT-ARG (MEMBER #))) *) # it should be either TRUE TRUE TRUE TRUE, or 0 0 0 0 17:38:14 EQL isn't in this patch set. 17:38:22 I think I see what's going on. 17:38:26 bad lifetime. 17:42:07 angavrilov: rebase? 17:48:48 -!- slyrus [~chatzilla@adsl-76-254-45-27.dsl.pltn13.sbcglobal.net] has quit [Ping timeout: 264 seconds] 17:49:11 dioxirane [~OXO@unaffiliated/dioxirane] has joined #sbcl 17:57:12 better, but still wrong: http://pastebin.com/FXXLYwd8 18:08:03 in the meantime, slightly editing that function changed register allocation, and fasl saving stopped crashing 18:19:02 angavrilov: s/(:argument 0)/:argument/ 18:19:46 ASau [~user@46.115.76.71] has joined #sbcl 18:20:32 no, that's still wrong. Let's re-read nyef's lifetime write-up 18:28:56 angavrilov: retry? I'll rewrite history once things seem to be OK. 18:43:25 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.] 19:03:27 seems normal now 19:03:44 *angavrilov* zzz 19:22:47 slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has joined #sbcl 19:43:03 LiamH [~none@96.231.218.61] has joined #sbcl 19:46:08 angavrilov: I'm not convinced EQL is a good idea. We have funky type stuff happening, so we could have (type-of x) != (type-of y), but (eql x y), and that'd easily confuse the compiler into silently emitting wrong code. 19:49:55 when would (type-of x) != (type-of y), but (eql x y) be true? 19:50:21 stassats: if we allow EQL for SIMD packs. 19:53:35 -!- yacks [~yacks@180.151.36.169] has quit [Quit: Leaving] 19:56:00 There's one way: compile (simd-pack *) variables to always have a boxed representation... I'm not a fan, but it would let us compare boxed packs, including the type tag, or compare unboxed packs, while taking the primtype into account. Currently, a (or (simd-pack single-float) (simd-pack double-float)) is converted into the same primtype as a (simd-pack single-float), and there's something similar for (simd-pack integer). 19:57:41 It's a hack, and doesn't strictly follow the IR1 type system, but it lets us avoid some implicit runtime type dispatch. 19:59:30 -!- slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has quit [Remote host closed the connection] 19:59:50 slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has joined #sbcl 20:03:45 dioxriane [~OXO@unaffiliated/dioxirane] has joined #sbcl 20:06:31 -!- dioxriane [~OXO@unaffiliated/dioxirane] has quit [Remote host closed the connection] 20:06:48 -!- dioxirane [~OXO@unaffiliated/dioxirane] has quit [Ping timeout: 264 seconds] 20:13:24 minion [~minion@tiger.common-lisp.net] has joined #sbcl 20:13:24 specbot [~specbot@tiger.common-lisp.net] has joined #sbcl 20:13:46 -!- angavrilov [~angavrilo@217.71.227.190] has quit [Ping timeout: 245 seconds] 20:42:50 Guest10815 [~hmmmm@119.157.167.58] has joined #sbcl 20:42:54 -!- Guest10815 [~hmmmm@119.157.167.58] has left #sbcl 20:51:08 nyef [~nyef@c-76-119-183-159.hsd1.ma.comcast.net] has joined #sbcl 21:28:04 -!- wbooze [~wbooze@xdsl-78-35-158-2.netcologne.de] has quit [Ping timeout: 252 seconds] 21:33:35 milanj [~milanj_@82.117.199.26] has joined #sbcl 21:34:47 -!- milosn_ is now known as milosn 21:36:42 -!- slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has quit [Remote host closed the connection] 21:41:30 -!- milosn [~milosn@user-5AF50CB9.broadband.tesco.net] has quit [Ping timeout: 264 seconds] 21:43:21 milosn [~milosn@user-5AF50CB9.broadband.tesco.net] has joined #sbcl 22:23:28 Hydan [~hydan@ip-89-102-13-27.net.upcbroadband.cz] has joined #sbcl 22:25:31 -!- Hydan [~hydan@ip-89-102-13-27.net.upcbroadband.cz] has quit [Client Quit] 22:26:08 Hydan [~hydan@ip-89-102-13-27.net.upcbroadband.cz] has joined #sbcl 22:26:53 slyrus [~chatzilla@173-228-44-92.dsl.static.sonic.net] has joined #sbcl 22:29:40 -!- milanj [~milanj_@82.117.199.26] has quit [Ping timeout: 256 seconds] 22:30:40 -!- prxq [~mommer@mnhm-590c0470.pool.mediaWays.net] has quit [Quit: Leaving] 23:20:50 milanj [~milanj_@cable-94-189-134-216.dynamic.sbb.rs] has joined #sbcl 23:24:42 -!- milanj [~milanj_@cable-94-189-134-216.dynamic.sbb.rs] has quit [Client Quit] 23:54:30 milosn_ [~milosn@user-5AF503AB.broadband.tesco.net] has joined #sbcl 23:57:06 -!- milosn [~milosn@user-5AF50CB9.broadband.tesco.net] has quit [Ping timeout: 264 seconds]