<< 19-08-2014 >>

00:00:33*flaviu quit (Ping timeout: 240 seconds)
00:01:20*brson_ quit (Ping timeout: 255 seconds)
00:01:52filwitdom96: why is jester not in babel?
00:04:22*flaviu joined #nimrod
00:04:29filwitis babel only for wrappers and helpers? I was under the impression it was just a general-purpose "nim related" package list
00:06:10filwiterr... wait it is in Babel... it's just messing up when i try and install it
00:06:37filwitnevermind... i think i misspelled jester originally, my bad
00:16:20*bogen joined #nimrod
00:27:22*EXetoC quit (Quit: WeeChat 0.4.3)
00:30:39*seubert_ is now known as seubert
00:31:41*saml_ joined #nimrod
00:44:06*will quit (Ping timeout: 250 seconds)
00:45:59*xenagi joined #nimrod
01:00:33*flaviu quit (Remote host closed the connection)
01:01:51*flaviu joined #nimrod
01:07:07*q66 quit (Quit: Leaving)
01:34:53*Boscop quit (Ping timeout: 240 seconds)
01:35:30*flaviu quit (Remote host closed the connection)
01:36:38*flaviu joined #nimrod
01:48:46*icebattle quit (*.net *.split)
01:57:37*icebattle joined #nimrod
02:04:54*filwit quit (Quit: Leaving)
02:06:13*flaviu quit (Remote host closed the connection)
02:09:12*flaviu joined #nimrod
02:11:48*darkf_ joined #nimrod
02:13:24*Boscop joined #nimrod
02:14:14*darkf quit (Ping timeout: 250 seconds)
02:16:25*darkf_ is now known as darkf
02:20:17*flaviu quit (Remote host closed the connection)
02:21:14*flaviu joined #nimrod
02:54:39*flaviu quit (Remote host closed the connection)
02:55:34*flaviu joined #nimrod
02:56:01*flaviu quit (Remote host closed the connection)
02:56:59*flaviu joined #nimrod
03:45:10*flaviu quit (Remote host closed the connection)
03:46:17*flaviu joined #nimrod
03:46:55*gsingh93 joined #nimrod
03:51:39*flaviu quit (Ping timeout: 244 seconds)
03:59:47*saml_ quit (Quit: Leaving)
04:02:16*ARCADIVS joined #nimrod
04:10:07*Boscop quit (Changing host)
04:10:08*Boscop joined #nimrod
04:12:53*bjz quit (Ping timeout: 244 seconds)
04:27:06*xenagi quit (Read error: Connection reset by peer)
05:09:35*gkoller joined #nimrod
05:20:00*zling__ quit (Ping timeout: 260 seconds)
05:22:54*kokozedman joined #nimrod
05:23:38kokozedmanhi all
05:23:56*zling__ joined #nimrod
05:27:13kokozedmanwhat's the release model for Nimrod, is there a roadmap towards 1.0?
05:40:45*TylerE quit (Ping timeout: 240 seconds)
05:41:00*CARAM quit (Ping timeout: 260 seconds)
05:41:38*TylerE joined #nimrod
05:42:10*CARAM joined #nimrod
05:46:31*gkoller_ joined #nimrod
06:03:20*filwit joined #nimrod
06:04:05*filwit quit (Client Quit)
06:09:43*gsingh93 quit (Quit: Connection closed for inactivity)
06:11:40*gkoller quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
06:12:03*zling__ quit (Ping timeout: 240 seconds)
06:14:33*zling__ joined #nimrod
06:42:15*kshlm joined #nimrod
07:03:04*kunev joined #nimrod
07:28:32Araqkokozedman: https://github.com/Araq/Nimrod/wiki/Roadmap
07:31:25*kokozedman quit (Ping timeout: 246 seconds)
07:46:18*kokozedman joined #nimrod
07:46:33*flyx quit (Quit: I'm outta here)
07:46:59kokozedmanAraq: can you point to me an example of using dynlib? I'd like to get a nanoseconds time resolution that calls clock_gettime() on Linux
07:47:32Araqlib/system/timers.nim wraps it iirc
07:47:49Araq'dynlib' is everywhere, learn how to grep ;-)
07:48:00Araqor how to use the docs
07:50:09kokozedmanalright, thanks for the heads up
07:50:33Araqor how to use c2nim
07:50:39Araq;-)
08:03:14NimBotAraq/Nimrod devel b5248d9 Araq [+0 ±3 -0]: fixes #1143
08:03:25Araqyay, one showstopper bug down!
08:08:29NimBotAraq/Nimrod devel 4708ceb Araq [+1 ±0 -0]: fixes #592
08:09:29Araqyay, one showstopper bug down!
08:13:11*Ven joined #nimrod
08:59:43*flyx joined #nimrod
09:02:14*ARCADIVS quit (Quit: WeeChat 0.4.3)
09:12:19*kunev_ joined #nimrod
09:16:10*kunev quit (Ping timeout: 264 seconds)
10:01:10*Ven quit (Quit: Textual IRC Client: www.textualapp.com)
10:07:55*Ven joined #nimrod
10:16:43*bjz joined #nimrod
10:17:57*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
10:37:41*Ven joined #nimrod
10:46:27*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
11:00:43*Fr4n quit (Ping timeout: 255 seconds)
11:14:07*Fr4n joined #nimrod
11:40:30*ome joined #nimrod
11:43:43*Fr4n quit (Ping timeout: 272 seconds)
11:55:42*Fr4n joined #nimrod
11:58:33*Trustable joined #nimrod
12:09:36*willwillson joined #nimrod
12:25:26*kshlm quit (Quit: Konversation terminated!)
12:37:16*saml_ joined #nimrod
12:53:18*saml_ quit (Ping timeout: 250 seconds)
13:04:44*darkf quit (Quit: Leaving)
13:07:14*saml_ joined #nimrod
13:20:16*saml_ quit (Ping timeout: 250 seconds)
13:33:32*gkoller_ quit (Ping timeout: 245 seconds)
13:44:51*Fr4n quit (Ping timeout: 246 seconds)
13:59:51*bogen quit (Quit: Leaving.)
14:02:51*woodgiraffe joined #nimrod
14:43:35*nande joined #nimrod
14:46:36*Jehan_ joined #nimrod
15:30:13*kokozedman quit (Ping timeout: 246 seconds)
15:33:49*gsingh93 joined #nimrod
15:53:12*nueva joined #nimrod
15:53:21*nueva left #nimrod (#nimrod)
15:55:45*Kelet quit (*.net *.split)
16:03:54*Kelet joined #nimrod
16:07:18*brson joined #nimrod
16:08:14*Boscop_ joined #nimrod
16:11:58*Boscop quit (Ping timeout: 264 seconds)
16:19:04*kunev_ quit (Quit: leaving)
16:20:55*bjz quit (Read error: Connection reset by peer)
16:21:09*bjz joined #nimrod
16:29:38*Jesin quit (Quit: Leaving)
16:38:25*Jesin joined #nimrod
16:39:17*q66 joined #nimrod
16:50:09*ARCADIVS joined #nimrod
16:52:49*Boscop_ is now known as Boscop
16:52:56*Boscop quit (Changing host)
16:52:57*Boscop joined #nimrod
16:56:26*bjz quit (Read error: Connection reset by peer)
16:56:45*bjz joined #nimrod
16:58:28*OrionPK quit (Ping timeout: 246 seconds)
17:03:09*Demos joined #nimrod
17:11:22*bjz_ joined #nimrod
17:11:27*bjz quit (Read error: Connection reset by peer)
17:15:59dom96hi
17:18:29*kokozedman joined #nimrod
17:24:07kokozedmanhow can I have the compiled binary in another directory other than the .nim files? like the idea of BUILD directory different from the SRC directory
17:24:51dom96you can use the --out param I think
17:26:19*Ven joined #nimrod
17:26:25*kunev joined #nimrod
17:26:47kokozedmanah, ok, I didn't notice the --advanced help flag ... --nimcache:PATH is also what I'm looking for. thanks dom96
17:26:59*Boscop_ joined #nimrod
17:28:45Araqdom96: I found the codegen bug :-)
17:29:39*superfunc joined #nimrod
17:29:47superfunchey everybody
17:29:57Araqhi superfunc
17:30:29dom96Araq: good job
17:30:38*Boscop quit (Ping timeout: 250 seconds)
17:30:42superfuncAny large changes in the last couple of weeks? I've been moving across the country so I haven't really been able to keep up
17:32:00Araqsure, async/await is now quite stable, parallel+spawn are making progress, bugs are getting fixed, we'll rename the language and I'm cutting features for v1.0
17:32:51superfuncWhat are we considering renaming it to?
17:33:00AraqNim
17:33:04superfuncNeat
17:33:51superfuncThanks for all the work on it guys, the language is such a pleasure to work with.
17:34:20*io2 joined #nimrod
17:34:56*Boscop_ is now known as Boscop
17:34:57*Boscop quit (Changing host)
17:34:58*Boscop joined #nimrod
17:39:44*Ven quit (Ping timeout: 255 seconds)
17:40:00Araqsuperfunc: thanks. now please consider to submit something for Babel
17:43:35Araqbrb
17:45:54superfuncAraq: I have 2-3 things planned, moving just threw off my time frame. Rest assured, they will come out soonish.
17:47:07*Ven joined #nimrod
18:06:48*Fr4n joined #nimrod
18:11:41AraqVarriount: can you work on #1491 please?
18:12:55Araqtry these things: figure out why they are not annotated with __fastcall / N_NIMCALL
18:13:08Araqadd an explicit 'ret' instruction to the inline asm
18:13:26Araqif all fails, deactivate the asm version for x86 vcc
18:14:02Skrylartoday i learned that nimrod doesn't even want tabs when they're used for aligning things
18:17:53*shodan45 joined #nimrod
18:18:11Araqwell yes, there is a trick to enable tabs, but I won't show you
18:18:48Skrylari just shove M-x untabify through emacs, i just thought it was weird that it doesn't even want tabs doing their original function
18:18:49Skrylarlol
18:19:51NimBotAraq/Nimrod devel 5a2bea7 Araq [+0 ±1 -0]: fixes #1445
18:22:16*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)
18:25:55Skrylarspeaking of that
18:26:07Skrylari need to look up the file save hook; i know you can set it to do that automatically
18:26:32*gkoller joined #nimrod
18:32:59Araqno idea of what you're talking about
18:47:52*Ven joined #nimrod
18:49:40*ARCADIVS quit (Quit: WeeChat 0.4.3)
19:05:15*Boscop_ joined #nimrod
19:06:42*brson quit (Ping timeout: 260 seconds)
19:08:44*Boscop quit (Ping timeout: 244 seconds)
19:10:34Araqwhat do we do with https://github.com/Araq/Nimrod/issues/1337 ?
19:10:49AraqI can think of another crazy symbol lookup rule ...
19:16:34NimBotAraq/Nimrod devel 9c0d25d Dominik Picheta [+0 ±1 -0]: Fixes docgen.
19:18:08NimBotAraq/Nimrod devel 1deb982 Araq [+1 ±1 -0]: fixes #1420
19:18:08NimBotAraq/Nimrod devel e935a35 Araq [+0 ±1 -0]: fixes #1380
19:18:08NimBotAraq/Nimrod devel 7ef076a Araq [+0 ±1 -0]: Merge branch 'devel' of https://github.com/Araq/Nimrod into devel
19:18:59*Boscop__ joined #nimrod
19:22:32*Boscop_ quit (Ping timeout: 250 seconds)
19:24:45*Boscop__ quit (Ping timeout: 240 seconds)
19:34:44Araqhmm what's a good name for "dumbed down type"?
19:35:46*brson joined #nimrod
19:37:50Skrylardepends on what the context is
19:38:12Skrylara keyword, a mneumonic device for documentation, ...
19:39:13Araqthe context is an internal identifier in the compiler
19:40:32dom96Araq: What's better: 'await x and y' or 'await x + y'?
19:40:37Araqthe compiler needs to be understandable by 16 year old guys who have never looked at other language implementations and so blame me for everything they don't understand
19:41:33Araqdom96: 'and' of course
19:41:49Araqdom96: '+' can also mean 'or'
19:42:02Araqhere we go ...
19:42:03dom96Araq: ok, that's what I thought too.
19:42:18Araqthinking about internal identifiers instead of doing productive work
19:42:30dom96Araq: Just call it TRetard or something.
19:44:55Araqbtw who wrote the most recent nimrod related blog post?
19:45:15dom96why?
19:45:19Araqit's full of errors
19:45:29dom96which one?
19:45:39Araq.bycopy is misleading
19:45:55Araqthe description of .bycopy is misleading
19:46:18Araqand showing off .unroll is really unfortunate since it's not even implemented
19:47:03AraqI really wish people would send me their articles before posting on reddit ... oh well
19:48:00dom96If you're talking about the latest one that was on reddit, then that article isn't even that recent.
19:48:03dom96It's from 2013.
19:48:13Araq:O
19:48:21Araqok ... o.O
19:48:34dom96So don't blame the author, I bet they didn't submit it.
19:49:17*EXetoC joined #nimrod
19:49:27Araq"they"? what happened with good old non-gender english?
19:49:57*kunev quit (Ping timeout: 240 seconds)
19:50:09*Araq continues to use "he"
19:57:34dom96Araq: Can I just get rid of the old async implementations?
19:57:48Araquh
19:57:53Araqerm
19:58:02Araqhuh
19:58:07Araqno
19:58:37Araqpeople might already use it?
19:58:45dom96We already broke so much though, by moving it out to babel.
19:59:07Araqwhat? the async stuff is not in babel?
19:59:14dom96I guess it is just a matter of installing it though.
19:59:25dom96I'm talking about other things.
19:59:40Araqwell add a top level {.deprecated.} instead
19:59:41dom96irc is for example now in babel
20:00:46*flaviu joined #nimrod
20:01:07flaviuAraq: The error message for my original code on 982 is actually correct, as zah remarked
20:01:20flaviuOn the version that dom96 posted, which takes in mind the corrections zah mentioned, the error message is incorrect.
20:01:58dom96no because these modules still contain a synchronous implementation which is usefl
20:01:58dom96*useful
20:01:59dom96But ok, as you wish.
20:02:00dom96I won't remove the old async stuff
20:02:07Araqno need to be a dick about it
20:02:08Araqwe strive for "warning first, removal later"
20:02:48*kunev joined #nimrod
20:04:35dom96what?
20:04:35dom96How was I a dick?
20:04:36dom96I know that we do, and it's fine with me. Just thought I would ask you if I could bend this rule a bit.
20:04:48flaviudom96: Not to him, to the users
20:05:06flaviuMost people don't enjoy having the rug pulled out from under them
20:05:12*untitaker quit (Ping timeout: 245 seconds)
20:05:18Araqflaviu, dom96 I don't get #982
20:05:33*Matthias247 joined #nimrod
20:05:38Araqthe error message is a bit confusing since T clearly is declared
20:06:01flaviuAraq: the first code block is incorrect
20:06:02Araqbut it can't be inferred, so it's not too much off
20:06:04*Amrykid quit (Ping timeout: 240 seconds)
20:06:24flaviuI'll edit it, since it seems to be causing confusion
20:06:39Araqyes please
20:06:53dom96righhhttt
20:07:16*Amrykid joined #nimrod
20:07:30flaviuok, refresh
20:08:03Araqah!
20:08:33dom96Araq: But IIRC you did get me to write '**Warning:** The API of this module is unstable, and therefore is subject to change.' precisely in preparation for breakage?
20:09:03Araqwell yes, but you said yourself it's still useful
20:09:44Araqyou can also .deprecate single symbols in it
20:09:57flaviudom96: Who cares, just deprecate it and get on with your life. Its easy, just add deleting that stuff as a bug that is due to be fixed by 1.0.0
20:09:59dom96Yes. Ok.
20:10:25dom96flaviu: I care because it's more work.
20:10:30Araqbtw ... we have quite some .deprecated stuff in the stdlib that we're allowed to remove by now
20:11:40dom96Yes, somebody should do that.
20:11:49flaviu140 or so, wow
20:11:59*untitaker joined #nimrod
20:12:32flaviuwell, lots of false positives
20:12:58dom96bbl
20:19:19*gkoller quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
20:31:37VarriountAraq: Yes, I'll work on #1491
20:32:13Araq"will"? I made it a showstopper. This means you're not allowed to sleep until it's finished. ... ;-)
20:32:23*kunev quit (Ping timeout: 240 seconds)
20:38:53*Ven quit (Ping timeout: 240 seconds)
20:39:44*superfunc quit (Ping timeout: 255 seconds)
20:42:31VarriountAraq: You do realize Demos is more experienced with VS than I am, right?
20:42:58Araqer ... good point, I forgot
20:43:01Demoswhat is wrong? I have not been following chat
20:43:27AraqDemos: can you fix bug #1491 ?
20:43:48Araqin fact, I'm curious why it wasn't *you* who reported it
20:44:24DemosI never got the issue
20:44:35DemosI compile using x64
20:44:54Araqmakes sense
20:45:15Demosit happens on devel right?
20:45:38Demoswhere are these examples located?
20:45:49Demosoh, found em
20:47:09Demosgoddamn
20:47:16willwillsonhow do you call an inline iterator? I keep getting an invalid type error... When i make it a closure iterator, it works as expected.
20:47:23Araqyou might as well implement an asm version for x64
20:47:39Araqwillwillson: you can only "call" it in a for loop
20:48:00willwillsonthanks
20:49:25Demoswatch it be some stupid compatibility thing
20:49:30Araqwillwillson: sequtils.toSeq works with inline iterators though
20:49:31Demosor calling conventions
20:49:36Demosprobably calling conventions
20:49:40Araqwillwillson: iirc
20:49:50willwillsonthanks, I'll check it out
20:50:18AraqDemos: I'm afraid this code might never have been tested
20:50:27Demoswell we shall see
20:50:42DemosI gotta download the windows sdk first (why does windbg not come with VS, I have no idea)
20:51:46*kunev joined #nimrod
20:52:08Araqwe should integrate our own assembler
20:52:50Araqinline asm is so useful and yet we need at least 4 versions (x86, x86-64 for GCC and Visual C syntaxes)
20:53:26Demosjust write the opcodes :D
20:53:33EXetoCbacon
20:54:08Araqhrm ... this could work
20:54:59Araqif DB is somewhat the same in every assembler
20:56:48Demosso the exception in 1491 is the debugger break exception
20:57:21Araqthe asm code is missing a 'ret' instruction
20:57:31Demosthat il do it
20:57:42Araqbut also you need to ensure it ends up as __fastcall
20:58:00Demosallright, that is a visual C thing
20:59:09NimBotAraq/Nimrod devel ebe313e Araq [+0 ±3 -0]: fixes #1334
20:59:09NimBotAraq/Nimrod devel 9ee59da Araq [+0 ±1 -0]: minor improvements for the FAQ
20:59:37Demoswhich code is missing a ret?
21:00:17Araqlib\system\arithm.nim
21:00:27Araqthe x86 asm code for VCC
21:01:25NimBotAraq/Nimrod devel a0b2fb5 Dominik Picheta [+0 ±1 -0]: Implements `or` and `and` for futures. Ref #1487.
21:01:25NimBotAraq/Nimrod devel 0f720a8 Dominik Picheta [+1 ±5 -0]: Merge branch 'devel' of github.com:Araq/Nimrod into devel
21:05:15EXetoCno one has thrown money at zah yet?
21:08:56Araqzah doesn't need money, he needs time
21:11:49EXetoCoh. how complicated
21:13:52Araqif I merge my comment handling patch, does anybody volunteer to click through the generated docs to see what's wrong?
21:13:56Araqoh
21:14:12AraqI might as well do a diff lol
21:14:52Araqoh that reminds me ...
21:14:54Demosso adding the ret instruction terminates the process, is it possible the return address was never pushed onto the stack?
21:15:27Araqthat would imply 'asmNoStackFrame' causes not even a 'call' instruction to be emitted
21:15:33Araqhighly unlikely
21:16:25DemosI put the ret instruction after the theEnd: label
21:16:53Araqthat sounds right
21:17:28Demosdoes it save registers before jumping to the function, because I could see myself overwriting the loop index or something
21:18:09Demosalso, why does this work on x64, I guess because everything is the same calling convention there
21:18:26Araqthe code is not active on x64
21:18:35Araqthis is 32bit x86 code
21:18:56Araqyou need to replace 'eax' with 'rax' to get 64bit code
21:20:07Araq(and the same for the other registers)
21:20:41Araqwell get rid of the 'asmNoStackFrame' and then it should work
21:21:00Araqand you don't need the explicit 'ret' either then, I think
21:22:01*Boscop joined #nimrod
21:22:54DemosOK now we have an infinite loop (I am working on the fizzbuzz example
21:23:51*Fr4n quit (Ping timeout: 272 seconds)
21:26:43Araqthat means the + doesn't work anymore, maybe you need to add: mov `result`, eax
21:32:22DemosOK that fixed it, but I suspect we actually want no stack frame on these, and fastcall
21:32:26Demosotherwise what is the point
21:34:41Araqyeah
21:35:17Demosheh I will have spent a good hour debugging fizzbuzz :D
21:35:26Araqhowever ... I'm not sure it's correct.
21:35:41AraqI don't remember what registers are clobber registers
21:36:02Araqand how asmNoStackFrame affects that
21:36:28Demosand where the result is expected to be
21:37:34Araqactually that's EAX in any calling convention known to mankind
21:38:34AraqI'm looking for an Intrinsic that supports accessing the overflow flag. Of course THAT doesn't exist.
21:39:24Araqhundreds of intrinsics and yet nothing useful for overflow checking ... typical of C++
21:39:41*Trustable quit (Quit: Leaving)
21:44:38Demosso I guess I can readd asmnostackframe and add fastcall ands then eliminate the mov eax `a` and mov ecx `b` since I know they will be in ecx and edx respectively
21:45:12*Fr4n joined #nimrod
21:47:06Demoswait, how does asmnostackframe work with inlining?
21:48:48*Ven joined #nimrod
21:49:08AraqI don't know. are these procs even inlined?
21:49:38DemosI dont know, they might be, it would probably be a good thing if they were
21:52:29Araqwell go for .inline and explicit 'mov's then
21:52:44Araqyou should really check the produced asm btw
21:53:11DemosI have
21:53:25Araqdoes it inline?
21:54:01Demosno
21:54:12Demosbut this is with just {.compilerProc.}
21:54:18Demosso the calling convention is cdecl
21:55:35Araqwhat? .compilerProc produces cdecl?!
21:55:50Demosno, I am wrong. it is fastcall
21:56:03Demosedx and ecx have the params
22:01:23*pber67 joined #nimrod
22:01:33Araqhi pber67 welcome
22:02:08pber67hi araq
22:04:26Demosshould I submit just the non-naked version that seems to work?
22:04:37*Matthias247 quit (Read error: Connection reset by peer)
22:05:11AraqDemos: sure. any idea why the naked version does not work?
22:05:58*Matthias247 joined #nimrod
22:06:42*pber67 quit (Quit: Page closed)
22:07:01Demosno, although missing a return was the initial problem
22:07:32*pber67 joined #nimrod
22:07:52*io2 quit (Write error: Connection reset by peer)
22:09:42Araqwell can you gist some asm listing please?
22:09:50AraqI'm curious
22:10:18Demossure, although I gotta change some stuff so let me commit here first
22:13:25*brson_ joined #nimrod
22:16:22*Jehan_ quit (Quit: Leaving)
22:17:06*brson quit (Ping timeout: 260 seconds)
22:19:17DemosOK https://gist.github.com/barcharcraz/5ed117b13426b150c8fe is the non working version with asmnostackframe and a ret instruction
22:19:27Demosand https://gist.github.com/barcharcraz/cc4a023b8f03a2ac9243 is the working version
22:19:49Demosat the bottom is the code for modInt and the top is the code for the main fizzbuzz program
22:22:43AraqI see
22:23:42Araqreplace `a` by edx and `b` by ecx
22:24:14Demoswhy not just eliminate the mov instruction?
22:24:27Araqmy bet is that the inline assembler doesn't give a shit when it comes to symbolic name resolution and 'naked'
22:24:58Demosalso shouldent a be in dcx and b in edx?
22:25:22AraqI think edx is the first parameter, ecx the 2nd
22:25:34Araqbut yes, mov ecx, ecx can be left out
22:26:07Demos"The first two DWORD or smaller arguments that are found in the argument list from left to right are passed in ECX and EDX registers; all other arguments are passed on the stack from right to left." I /think/ it means the first one is in ECX
22:27:38Araqok, yes, I'm wrong
22:27:54Araqit's EAX, EDX, ECX for Borland's fastcall
22:28:30Demosallright that worked
22:28:56Araqmuhaha
22:29:46Araqit shouldn't matter much that it is not inline then
22:30:19Araqwith some luck you can't even measure it thanks to intel's trace cache
22:31:30Demosoh, I should remove those movs before I make the pr
22:32:47Araqer, you can't
22:32:59DemosI can for like one of the functions
22:33:17Araqwhich one?
22:33:49DemosI think I could get one out of div
22:34:23Demosscrew it
22:34:31Araqlol
22:35:11Araqit doesn't matter anyway, the CPU will rename every register under your feet
22:37:00*kunev quit (Ping timeout: 250 seconds)
22:39:13Araq"The Ivy Bridge (but not the Sandy Bridge) can eliminate register-to-register moves at the
22:39:15Araqregister allocation stage. The following example illustrates this:
22:39:16Araqadd eax,4
22:39:18Araqmov ebx,eax ; this move can be eliminated
22:39:19Araqsub ebx,ecx"
22:42:44NimBotAraq/Nimrod devel 5b32626 Charlie Barto [+0 ±1 -0]: fixed #1491
22:42:44NimBotAraq/Nimrod devel daa8b55 Andreas Rumpf [+0 ±1 -0]: Merge pull request #1495 from barcharcraz/fix1491... 2 more lines
22:43:09Araqaww no x64 version
22:43:15AraqDemos: thank you.
22:43:34Demossorry, also I am not going near the gcc syntax with a 10 foot pole
22:43:51DemosAraq, you did most of the work
22:44:39Araqer ... vcc x64 version is a simple substitution E -> R for the register names
22:48:28Demosyeah I know, but I dun feel like it right now
22:48:40Araqok no problem
22:48:50Demosand I also want to actually look at the codegen from the non-asm version to make sure it is not a waste of time
22:49:53Araqit's not when you look at the produced code
22:50:15Araqit may well be when you look at realistic benchmarks / programs
22:52:09Araqa cache miss is 100 cycles now, instruction selection and even branch prediction should be irrelevant
22:54:44*flaviu quit (Quit: Leaving.)
23:11:50pber67Araq: can I ask you about babel?
23:12:20Araqsince dom96 is asleep. yes
23:13:26pber67Error: unhandled exception: The system cannot find the file specified.
23:13:44pber67every task ends up this way
23:14:28*Matthias247_ joined #nimrod
23:14:41pber67does it depends on vc9?
23:14:59pber67(obviously I'm using winxp)
23:17:06*Matthias247 quit (Ping timeout: 246 seconds)
23:17:47Araqyou need to add --deadCodeElim:on to your global config for winxp
23:19:01pber67global config=nimrod.cfg?
23:21:08Araqyeah, config\nimrod.cfg
23:22:38pber67does not help :(
23:23:09Araqhow did you install it?
23:23:24Araqyou need to add GCC to your path somehow
23:23:33Araqthe installer supports that option
23:26:36pber67i installed only nimrod. now i go to reinstall nimrod+gcc
23:26:38pber67tnx
23:28:46*Matthias247_ quit (Read error: Connection reset by peer)
23:35:47*willw187 joined #nimrod
23:36:12*willwillson quit (Ping timeout: 246 seconds)
23:42:25pber67:( this night i'm unlucky. i go to sleep
23:42:43Araqpber67: what's the problem?
23:50:14Skrylarisn't there a function which runs the GC incrementally
23:50:29AraqGC_step, Skrylar
23:50:41Skrylarwhich file is that in now? i checked system.html on the site
23:50:47Araqlook at the GC's docs, you need to do -d:useRealtimeGC
23:51:21Skrylarthanks
23:56:17*brson_ quit (Quit: leaving)
23:57:47*Ven quit (Quit: My MacBook has gone to sleep. ZZZzzz…)