sb0 changed the topic of #m-labs to: ARTIQ, Migen, MiSoC, Mixxeo & other M-Labs projects :: fka #milkymist :: Logs http://irclog.whitequark.org/m-labs
<rjo> whitequark: doesnt make a difference. they must have their own rng.
Gurty has quit [Ping timeout: 265 seconds]
Gurty has joined #m-labs
nicksydney has quit [Remote host closed the connection]
nicksydney has joined #m-labs
<whitequark> rjo: unsurprising
<ysionneau> rjo: thanks! (yes, Japan!)
<GitHub58> [pythonparser] whitequark pushed 1 new commit to master: http://git.io/vmXJj
<GitHub58> pythonparser/master 72f6c5f whitequark: Add source.Range.source_lines().
<whitequark> ok, source location support landed
<whitequark> in IR
<GitHub194> [artiq] whitequark pushed 2 new commits to new-py2llvm: http://git.io/vmXUe
<GitHub194> artiq/new-py2llvm 255ffec whitequark: Generate more compact ARTIQ IR for else-less if.
<GitHub194> artiq/new-py2llvm dde2e67 whitequark: Add source locations to ARTIQ IR instructions.
<whitequark> you can try it out:
<whitequark> python3 -m artiq.compiler.testbench.irgen <<<$'for x in range(2,10):\n x + x'
<GitHub97> [artiq] whitequark pushed 1 new commit to new-py2llvm: http://git.io/vmXUB
<GitHub97> artiq/new-py2llvm 0d66bdf whitequark: Fix For miscompilation.
imrehg has joined #m-labs
imrehg has quit [Read error: Connection reset by peer]
<GitHub65> [artiq] whitequark pushed 2 new commits to new-py2llvm: http://git.io/vmXmu
<GitHub65> artiq/new-py2llvm 21eafef whitequark: Fix inference for globals.
<GitHub65> artiq/new-py2llvm 5ad02d5 whitequark: Fix ARTIQ IR generation for variables declared global.
<GitHub90> [artiq] whitequark pushed 1 new commit to new-py2llvm: http://git.io/vmXYF
<GitHub90> artiq/new-py2llvm 8e1cc8d whitequark: Add an explicit ARTIQ IR instruction to create a closure.
<GitHub100> [artiq] whitequark pushed 1 new commit to new-py2llvm: http://git.io/vmXGu
<GitHub100> artiq/new-py2llvm 47cbadb whitequark: Revert "Ensure bindings are created in correct order for e.g. "x, y = y, x"."...
bentley` has quit [Ping timeout: 256 seconds]
sb0 has quit [Read error: Connection reset by peer]
sb0 has joined #m-labs
mumptai has joined #m-labs
<cr1901_modern> Hmmm... an IR instruction to create a closure. Does this convert to code that just allocate extra stack space for the environment or actually copies the closure's code (w/ tweaked environment addresses) onto the stack as well?
<whitequark> neither
<whitequark> it just packs the environment and a function pointer into a 'fat pointer'
<whitequark> the environment will implicitly become 1st argument inside call.
<cr1901_modern> Environment is a struct passed-by-value then in your implementation (just want to be sure I understand)?
<whitequark> by reference
<cr1901_modern> Ahh okay, that makes more sense since you said "fat pointer". Thanks!
<whitequark> well, it's really a fat pointer to a function
<whitequark> but an environment is passed by reference so that all closures have the same bit size
<cr1901_modern> I'm guessing this is how most "closure can't escape the scope where it was defined" implementations do it?
<GitHub57> [artiq] sbourdeauducq pushed 3 new commits to master: http://git.io/vm1Mb
<GitHub57> artiq/master 657f198 Sebastien Bourdeauducq: gui: display '---' on failed number result
<GitHub57> artiq/master 5f95a30 Sebastien Bourdeauducq: environment: improve docstrings
<GitHub57> artiq/master 9e29a46 Sebastien Bourdeauducq: environment,gui: more argument types
<whitequark> yeah
bentley` has joined #m-labs
travis-ci has joined #m-labs
<travis-ci> m-labs/artiq#316 (master - 9e29a46 : Sebastien Bourdeauducq): The build passed.
travis-ci has left #m-labs [#m-labs]
bentley` has quit [Ping timeout: 255 seconds]
mumptai has quit [Quit: Verlassend]
<sb0> rjo, what exactly is a "explicit" scan?
<sb0> specify each value manually?
<GitHub154> [artiq] sbourdeauducq pushed 1 new commit to master: http://git.io/vmMRN
<GitHub154> artiq/master deaa492 Sebastien Bourdeauducq: language: add scan iterators
<sb0> whitequark, we may need generators in the compiler for this: https://github.com/m-labs/artiq/commit/deaa492566d09470ceb2b69c9a46b7e02a6a53a5
<sb0> rjo, what do you think of this "random scan" implementation?
<whitequark> sb0: ah ok, I will implement them after interleaving then.
<whitequark> there's a tricky part where allocations effectively "escape" once you yield
<whitequark> but the analysis I'm writing right now for other reasons will be able to detect that
<whitequark> and still leave you able to e.g. use lists in generators
tija has joined #m-labs
<tija> Hi! I am trying to learn migen. I have written a code to detect a sequence of 110. There are a bunch of compile error. Can someone help? http://paste.ubuntu.com/11899894/
<kyak> i can't help, but i think you should paste the error as well
<GitHub178> [artiq] whitequark pushed 2 new commits to new-py2llvm: http://git.io/vmMgQ
<GitHub178> artiq/new-py2llvm 224a93f whitequark: Make compiler.ir.BasicBlock.predecessors much faster.
<GitHub178> artiq/new-py2llvm 603d49d whitequark: Add a dominator analysis.
travis-ci has joined #m-labs
<travis-ci> m-labs/artiq#317 (master - deaa492 : Sebastien Bourdeauducq): The build passed.
travis-ci has left #m-labs [#m-labs]
<sb0> tija, your last nextstate should be Wait4One not WaitforOne
<tija> Oops.
sb0 has quit [Read error: Connection reset by peer]
sb0 has joined #m-labs
bentley` has joined #m-labs
bentley` has quit [Ping timeout: 244 seconds]
bentley` has joined #m-labs
tija has quit [Quit: Connection closed for inactivity]
<rjo> sb0: yes. an explicit scan contains the values explicitly/manually and not implicitly by number of points and boundaries.
<rjo> sb0: i presume these *Scan classes are the backend for scanning in the gui.
<rjo> sb0: you assume that the loop is on the host, at most the body is on the coredevice. that is fine imho if we can run kernels faster than ~10Hz.
<rjo> sb0: RandomScan should be a bit different. it should wrap LinearScan (or e.g. LogarithmicScan) and randomize their values.
<rjo> ... maybe "shuffle" instead of random is the better term here.