github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
00:33 TimToady left
timotimo aras-p.info/blog/2019/09/28/Clang-...-Analyzer/ 02:34
^- moarvm build times are already relatively good, but maybe there's something glaringly obvious we can improve 02:35
nine timotimo: I'd love for our install phase to be more parallelization friendly 06:35
06:53 linkable6 left 07:15 domidumont joined
nwc10 good *, #moarvm 07:16
MasterDuke nine: yeah, especially with everybody having ssds, all those cps can probably be parallelized for a significant speedup. do the various chunks in there need to be split into sub-tasks and then 'install' depend on them? 07:42
07:45 leont joined 07:52 zakharyas joined 07:56 sena_kun joined 08:32 zakharyas left 08:33 zakharyas joined
Geth MoarVM: taboege++ created pull request #1353:
Use GMP instead of libtommath
08:58
timotimo nine: sae 09:08
same*
09:40 Altai-man joined 09:43 sena_kun left
timotimo i wonder how much faster it would be if we could use cp instead of perl ExtUtils::Command 10:59
oh wow 11:11
yeah that's ... very fast actually 11:12
11:18 zakharyas left
MasterDuke istr some change in the repos about this. maybe consolidating all on ExtUtils::Command? 11:49
a year or so ago
11:50 ggoebel_ joined
MasterDuke one used to have a check if it was linux and used cp instead, but i think that was removed? 11:51
11:52 ggoebel left 11:56 ggoebel__ joined 11:59 ggoebel_ left 12:06 ggoebel__ left
Geth MoarVM/new-disp: 0d2933a205 | (Jonathan Worthington)++ | 2 files
Provide a way to walk dispatchers on the callstack
12:06
MoarVM/new-disp: bab515adee | (Jonathan Worthington)++ | 3 files
Rename dispatcher-[set|get]-state

The initial design idea conflated two things that seem better off being separated:
  * The (immutable) set of arguments for initializing a resumption - which
   is what this call will now we used for.
  * The (mutable) state that can be saved in the dispatch and changes as
   we walk through candidates (which will get a new field in the root
   dispatcher frame)
12:12 ggoebel joined
Geth MoarVM/new-disp: f7719162b1 | (Jonathan Worthington)++ | 3 files
Internals renamings regarding state -> resume init
12:19
12:53 brrt joined
brrt \o 12:53
re: JJMerello's request, do we have anything for hacktoberfest?
jnthn Hm, probably not at the moment...what's does it need exactly? 13:04
Approachable issues? 13:05
nwc10 o/ 13:11
13:21 ggoebel_ joined 13:23 ggoebel left
brrt yes, something approachable 13:33
preferably something that people can do easily as an introduction
13:36 ggoebel_ left 13:41 sena_kun joined 13:42 Altai-man left 13:44 ggoebel joined 13:53 zakharyas joined 13:58 brrt left
jnthn Of all things I expected might bite the current approach, continuations were one I missed... 14:01
(Wanted callstack records of a resumption to point back to the dispatch they are a resumption of. But if you manage to wedge a continuation reset between the two points, it can become dangling.) 14:03
Geth MoarVM/new-disp: 90033cddc9 | (Jonathan Worthington)++ | 3 files
Stub in boot-resume[-caller]
14:57
MoarVM/new-disp: a06c9d737a | (Jonathan Worthington)++ | 3 files
Wire up boot-resume[-caller] to a record function
MoarVM/new-disp: 12e04df951 | (Jonathan Worthington)++ | 3 files
Start persisting resumption points

So that they can be identified in the dispatch program. For now, just the dispatcher name, however the resume initialization state shall be added later on.
15:07 linkable6 joined 15:08 squashable6 joined
jnthn language class time; bbl 15:16
timotimo so walking the stack for dispatchers is the solution for "nextsame" and friends being monomorphic? 15:17
15:28 domidumont left 15:54 vrurg joined 15:56 vrurg_ joined, vrurg_ left 15:59 vrurg left 16:42 brrt joined 17:15 brrt left 17:32 zakharyas1 joined 17:34 zakharyas1 left, zakharyas left 17:40 Altai-man joined 17:42 sena_kun left 17:55 brrt joined 18:44 MasterDuke left 19:17 MasterDuke joined
MasterDuke tobs: i can repro the failure seen in azure after your last commit. `Generating src/gen/config.c ............................ FAIL unknown configuration key 'gmpconf'` 19:19
19:26 brrt left 19:40 MasterDuke left
tobs MasterDuke: makes sense, as I didn't know where else new config keys have to be announced. (I thought I finished a test build though... anyway, will fix soon.) 19:44
tellable6 tobs, I'll pass your message to MasterDuke
19:59 MasterDuke joined 20:12 brrt joined 20:15 AlexDaniel left 20:16 AlexDaniel joined, AlexDaniel left, AlexDaniel joined 20:51 squashable6 left 20:53 squashable6 joined 20:54 Altai-man left 21:01 brrt left
MasterDuke tobs: i just tried adding gmp.h to src/6model/reprs/P6bigint.h and then adding some calls to gmp functions in src/math/bigintops.c, but i get the error ``/usr/bin/ld: 3rdparty/gmp/libgmp.a(bdiv_q_1.o): warning: relocation against `__gmp_binvert_limb_table' in read-only section `.text'/usr/bin/ld: 3rdparty/gmp/libgmp.a(bdiv_q_1.o): relocation 21:12
R_X86_64_PC32 against symbol `__gmp_binvert_limb_table' can not be used when making a shared object; recompile with -fPIC/usr/bin/ld: final link failed: bad value
tellable6 2020-09-24T19:44:33Z #moarvm <tobs> MasterDuke: makes sense, as I didn't know where else new config keys have to be announced. (I thought I finished a test build though... anyway, will fix soon.)
tobs MasterDuke: I'm on it (today with my laptop plugged in). Let's see if -fPIC is actually set. 21:14
MasterDuke it is
some random SO answer suggested moving -lgmp last, but that didn't change anything 21:15
tobs I hope it is okay that I forced-pushed an update to that branch for the src/gen/config.c error, MasterDuke 21:27
MasterDuke np, no error now 21:30
(other than the new relocation one)
tobs unrelated to that error, but I think that currently gmp is configured too late. Invoking the configure script is what generates gmp.h from gmp.h.in, so that header would not be available to moarvm files compiled before gmp is configured (which happens as part of the build rule right now). Is there already a way to configure a 3rdparty dependency as part of executing Configure.pl? 21:51
unfortunately, it's bed time here already. I suppose it will be easier to link to a shared library GMP after all, configured to install into some moar-specific $PREFIX because of issue #321. 22:11
MasterDuke i'm too bed to 22:15
22:20 MasterDuke left
moon-child any thought given to adding a disassembly primitive, like lisp has? 22:31
23:03 Kaiepi left 23:05 Kaiepi joined 23:30 ggoebel left