github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
Ulti_ github.com/MoarVM/MoarVM/blob/mast...re.pl#L205 how important is this? I've only recently (last month or so) had my build abort with it 11:35
timotimo we could make it not exit immediately, and instead output a gigantic warning at the end of configure 11:55
in the hopes that if it does indeed go wrong, the user would scroll up and see a screen full of "WARNING WARNING WARNING" and maybe decide to read what it says 11:56
Ulti yeah my build is fine the GNU tool I have is GNU grep alongside everything else being BSD stuff from core macOS 12:01
timotimo it'd be cool if you could find out what exact check fails there and if we can rely on whatever you have to be fine and make the check less sensitive 12:04
Ulti yeah Im working on it, this is kind of infuriating I've just stripped anything I know I've installed with homebrew and Im still getting the warning 12:07
I cant actually find that script in the rakudobrew cache though I think its downloading moar then wiping it each time 12:08
from what I can see this script is tripping 12:21
ar cc ld make <--- none of these are GNU 12:22
not installed and not in my path
aha make is 12:23
but also appears to be built by Apple and is ancient :/ so.... 12:24
timotimo should probably be enough to run rakudobrew with a custom PATH? 12:28
Ulti FOUND GNU TOOL /usr/local/opt/llvm/bin/clang 12:29
errr
>____>
yup thats the only one its hung up on 12:30
timotimo d'oh, that's what you get when your --version pretends it's something else
Ulti and it really is clang... but fails the grep -b 'gnu'
I feel like we should trust a binary called clang to not secretly be gcc :) 12:31
yeah there are loads of gnu mentions in that binary 12:33
ok so the system clang rather than my one from homebrew doesnt have any gnu mentions so that's kind of reasonable 12:34
Geth MoarVM: MattOates++ created pull request #1094:
Update README.markdown
12:41
Ulti yeah that fixed it, I can try and add an additional check for weird clang as a specific error in the Config 12:42
timotimo what changed in that last line? i see red/green, but no actual change? 12:44
Ulti weird have no idea 12:47
I used the github editor :/ and didnt touch the last line 12:48
timotimo it's not a "no end of line at end of file" thing, right?
i thin that has a special icon for that
Ulti I'm noticing start up time is super fast recently in relative terms 12:49
timotimo oh?
that sounds interesting 12:50
Ulti at least at the level of Rakudo 12:52
timotimo i'm hoping we'll reach a point where fuzzing rakudo (or at the very least nqp) becomes a possibility 13:23
i mean, it's already possible, but it's so slow that it might as well not work at all 13:24
MasterDuke timotimo: couldn't we fuzz moarvm directly? give something like afl some moar bytecode to start with and let it just mutate that? 13:35
timotimo yeah, i've done that before and it mostly found very easy ways to crash it
some ways that moarvm files can be corrupted to make the parser unhappy 13:36
check bca85b242eb4f54941cb0659562c783d3d460580 for example 13:37
MasterDuke nice 13:38
timotimo and commits later than that also harden against corrupt moarvm files 13:43
MasterDuke and afl couldn't find anything useful after those? 13:45
timotimo it could
i'm not sure if i fixed the one where it built a series of static frames that make a loop with their outer pointers 13:46
brrt ohai 19:12
timotimo hey there
Kaiepi posted in the wrong channel, check #perl6-dev 20:50
brrt so.... lesson learned 21:06
dynasm calls, what intel manuals call 'movq', 'movd'
timotimo whoa
brrt or at least, it emits the right thing
e.g. 21:07
'movd xmm0, rcx' in dynasm
timotimo so double and quad, clearly the opposite of each other and themselves
brrt is diassembled as 'movq xmm0, rcx'
now, it so happens that 'movq' is indeed the instruction that I need
it's just that all our code looks very wrong 21:08
timotimo we'll just have to put comments everywhere that happens
but damn ...
we could make macros
all uppercase for example 21:09
brrt hehe 21:10
maybe that's not such a bad idea though
the alternative is that I fix the dynasm template
I mean, I know how to do that?
I guess?
(do I?) 21:11
timotimo what's easier? :)
brrt ignoring it 21:12
timotimo okay, what's the next step up from that? :)
the macro thing would almost be trivial, wouldn't it? 21:13
it'll also make people who want to add to the code look at it and go "huh" without us having to put comments everywhere
i bet there's some ludicrous but kind of defendable reason for things to be the way they are ?!?! 21:14
timotimo random idea i had while i was trying to fall asleep last night - or maybe at another time, not sure - is to generate a bytecode verifier from the oplist right there in update-ops.p6; perhaps that'll let us come up with one that is much faster 22:31
though of course that might want to wait until the verifier goes up further in profiles
Kaiepi is MVMInstance an MVMCollectable? 23:39
Kaiepi never mind, i have an MVMThreadContext on hand anyway 23:49
Kaiepi i know 6model stuff can be cast to MVMCollectible, but what else? 23:50