00:22
pyrimidine joined
01:39
BenGoldberg joined
02:14
pyrimidine joined
04:07
geekosaur joined
04:11
pyrimidi_ joined
04:28
nebuchadnezzar joined
06:54
brrt joined
08:06
pyrimidine joined
08:13
brrt joined
08:22
zakharyas joined
|
|||
brrt | \o #moarvm | 08:37 | |
08:52
brrt joined
09:06
agentzh joined
|
|||
jnthn | o/ | 09:38 | |
yoleaux2 | 02:16Z <MasterDuke> jnthn: i've updated github.com/rakudo/rakudo/pull/1018. it now builds for the JVM, and ./perl6-j -e 'say "hi"' runs fine, but a `make install` fails and i can't run the spectests. here's a gist of the output i get gist.github.com/MasterDuke17/2c8fb...046af1331. tied adding some debug statements, nothing jumping out at me. any suggestions? | ||
09:49
brrt joined
10:05
brrt joined
10:18
pyrimidine joined
10:26
ggoebel joined
|
|||
jnthn | A new SEGV: rt.perl.org/Ticket/Display.html?id=130825 | 10:28 | |
brrt | :'-( | 10:33 | |
jnthn | Granted not on anything anyone would sensibly be doing :) | ||
10:59
brrt joined
11:23
brrt joined
11:35
pyrimidine joined
12:12
Guest67605 joined
12:17
Guest67605 left
12:50
pyrimidine joined
|
|||
IOninja | So... "serving from the shadows" is the MoarVM slogan... or was that a joke one? | 13:54 | |
brrt | not sure. MoarVM isn't much marketed at all | 13:56 | |
jnthn | That was kinda deliberate. :) | 13:57 | |
"Only get a userbase besides NQP/Rakudo by accident" :P | 13:58 | ||
(No, that's not a slogan suggestion :P) | 13:59 | ||
brrt nods | 14:02 | ||
on the other hand | |||
it might be possible to get more contributor interest with more active marketing | |||
IOninja | Well, I'm going with "serving from the shadows" | 14:04 | |
If only because it fits very nicely in this space I have for it :) | |||
14:21
agentzh joined
14:26
geekosaur joined
14:35
pyrimidine joined
16:09
pyrimidine joined
16:20
pyrimidine joined
16:27
agentzh joined
17:14
pyrimidine joined
|
|||
timotimo | oops | 17:16 | |
i accidentally a marketing | 17:17 | ||
jnthn | Ooops! Quick, how can we make sure nobody knows?! | ||
IOninja | :) | 17:18 | |
I didn't do any logos last Friday. Didn't have... uh... "inspiration" | 17:20 | ||
dogbert17 | AddressSanitizer can not provide additional info wrt RT #130825. | ||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130825 | ||
dogbert17 | #0 0xb5699a06 in search_frame_handlers.isra.7.constprop.15 /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/exceptions.c:123 | ||
#1 0xb569b0c9 in search_for_handler_from /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/exceptions.c:153 | |||
#2 0xb56a17d5 in MVM_exception_throwpayload /home/dogbert/repos/rakudo/nqp/MoarVM/src/core/exceptions.c:616 | |||
FWIW | 17:21 | ||
jnthn | Backtrace fits the code that crashes, though. Will try and look at that one tomorrow. | 17:29 | |
dogbert17 | cool, looked through the SEGV list on RT, several cases are no longer SEGV's according to the comments, some I can't reproduce while others seem to predate MoarVM | 17:34 | |
only a couple were easy to reproduce | 17:35 | ||
IOninja | What do you think of dragons? | 17:45 | |
timotimo | they have a relation to compilers | ||
IOninja | hehe | 17:46 | |
the book yeah | |||
Thinking of one of "M"s being a stylized dragon with the tail kinda flipping and its end being part of the "V". | 17:49 | ||
timotimo | .o( the dragon and the butterfly ) | 17:50 | |
IOninja | tried with a pre-made dragon and pretty much ended up with "oar" VM :) Need my watson pad... and to remember how to draw again. | ||
18:02
pyrimidine joined
|
|||
jnthn | .oO( oar VM has missed the boat ) |
18:33 | |
IOninja | :D | 18:36 | |
19:15
pyrimidine joined
19:24
pyrimidine joined
20:11
pyrimidine joined
|
|||
dogbert17 | jnthn, timotimo: moronic C question. Is it certain that 'result' is set to a value at github.com/MoarVM/MoarVM/blob/mast...ump.c#L286 | 20:28 | |
moritz | I don't think so | 20:30 | |
dogbert17 | .oO | ||
jnthn | No | ||
moritz | if the rest of the logic is right, I'd unify the if (sc) and if (result) to a single branch | ||
jnthn | Or at the very least just NULL it beforehand. | 20:31 | |
moritz | ah no, won't work if MVM_sc_try_get_object returns 0 | ||
right, that's probably the safer approach | |||
dogbert17 | so locals are set to zero/NULL | 20:32 | |
jnthn | In C, locals are - unless you assign to them - potentially anything | ||
So need to be NULL'd/zeroed explicitly | |||
dogbert17 | jnthn sry didn't read what you wrote | ||
for fun I ran a tool call cppcheck on the Moar codebase | 20:33 | ||
it didn't find much and I don't know if everything it DID find is correct (or false positives) | 20:34 | ||
this was one of the (very few) complaints | |||
should I PR this? | 20:36 | ||
moritz | yes! | 20:38 | |
dogbert17 | I can gist the list if anyone with more knowledge of C wants to take a look | 20:39 | |
jnthn | Feel free to do that also :) | 20:40 | |
moritz | my C knowledge is very limited, but I can take a peek | ||
dogbert17 | gist.github.com/dogbert17/a32e2ebd...0141417789 | 20:42 | |
will be interesting to see/hear how many of those are false positives | 20:43 | ||
moritz | the first one seems genuine | 20:45 | |
dogbert17: did you run it against current master? | 20:46 | ||
dogbert17 | 2017-02 | 20:47 | |
moritz | that explains why some line numbers seem to be off | ||
20:47
pyrimidine joined
|
|||
dogbert17 | some line numbers look a bit strange to me as well | 20:49 | |
moritz | the leak of values in nativecall_libffi.c might be real, dunno | 20:51 | |
moritz doesn't understand enough of moarvm's memory management | 20:53 | ||
the leaks in the string functions seem to be false positive | |||
((MVMArray *)out)->body.slots.u32 = (MVMuint32 *) result; | |||
nope, result doesn't leak here | |||
dogbert17 | the nativecall thing looked strange to me as well | 20:54 | |
Geth | MoarVM: 06c5798724 | (Moritz Lenz)++ | 2 files Initialize some variables found by dogbert17++ through cppcheck |
20:55 | |
moritz | I don't think I'm doing anything risky there | ||
dogbert17: do you want me to fix the one in spesh.c too, or are you doing the PR? | 20:56 | ||
dogbert17 | please do | ||
Geth | MoarVM: 16eac84994 | (Moritz Lenz)++ | src/spesh/dump.c Initialize another variable again, found by dogbert17++ through cppcheck |
20:57 | |
moritz | dogbert17: what was your process for plugging cppcheck into the build? | 20:58 | |
20:58
pyrimidine joined
|
|||
dogbert17 | I just ran 'cppcheck . 2> err.txt' from within /home/dogbert/repos/rakudo/nqp/MoarVM/src. Not sure if it's the right way to do it though. | 20:59 | |
moritz | dogbert17: ah, nice. I thought it might require more integration with the build system | 21:01 | |
dogbert17 | the version included in my Linux dist is 1.61 which is a bit old I think, the newer versions might be better | 21:03 | |
moritz | ubuntu ships with 1.72 | 21:04 | |
[src/core/interp.c:110]: (error) Expression 'op=*(MVMuint16*)(cur_op),cur_op+=2,op' depends on order of evaluation of side effects | 21:05 | ||
looks genuine; don't know how picky compilers are | |||
[src/profiler/log.c:195]: (error) Possible null pointer dereference: sfs | |||
that looks also genuine | 21:06 | ||
dogbert17 | uh oh | ||
moritz | ah no, there's a conditional initialization above it that's always run on the first iteration of the loop it's in | 21:07 | |
but I understand why the tool doesn't comprehend that :-) | 21:08 | ||
dogbert17 | perhaps you're underestimating your knowledge of C :) | ||
moritz | not really; I'm just not scared of reading code where I'm not sure I understand it all | 21:10 | |
dogbert17 | for me the tool wasn't blazing fast | 21:11 | |
dogbert17 is interested in the upcoming Ryzen CPU's | 21:12 | ||
moritz | faster than eyeballing the same amount of code :-) | 21:13 | |
dogbert17 | :-) | ||
moritz | I'm kinda amazed that it manages to produce somewhat useful results without any up-front configuration | ||
if you think about how much configuration moarvm's build system does... | 21:14 | ||
dogbert17 | it's impressive indeed | ||
are you getting a larger list with the newer version? | 21:16 | ||
timotimo | i should run coverity over moar again | ||
dogbert17 | timotimo, how's your C fu? | ||
timotimo | it's all right | 21:17 | |
dogbert17 | what is your opinion on [core/nativecall_libffi.c:420]: (error) Memory leak: values | ||
timotimo | i don't have something on that line | ||
oh, that's just the end of the block | 21:18 | ||
dogbert17 | it seem as if values is allocated but never used (to my untrained eyes) | ||
timotimo | yeah, looks the same way to me | 21:19 | |
maybe it was copypasted from nativecall_invoke | |||
which uses macros to do stuff with values | |||
dogbert17 | ah the dreaded copy 'n paste error | ||
timotimo | it was added in one gigantic commit where libffi support was added | 21:20 | |
in 3h i'll've finished downloading the coverity sdk thingie | 21:27 | ||
dogbert17 | that sounds kinda slow | 21:28 | |
timotimo | almost 500mb | 21:31 | |
and someting's wrong with the connection i guess | |||
11 mins left | |||
dogbert17 | is it Coverity Scan you're downloading? | 21:52 | |
timotimo | yup | ||
dogbert17 | cool | ||
22:08
camelia joined
22:09
MasterDuke joined
|
|||
timotimo | i forgot how to get git metadata into the results | 22:14 | |
dogbert17 | do you find anything or haven't you started yet? | 22:15 | |
timotimo | haven't started yet | 22:19 | |
done. now we just have to wait. | 22:27 | ||
well, and i have to upload the thing | |||
which is 7 megs big and internet connections in germany always have super shitty upstream bandwidth | |||
samcv | good day everybody | ||
timotimo | greetings samcv | 22:28 | |
samcv | :) | 22:29 | |
timotimo | 60% | ||
Last Build Status: In-queue. Your build is in the queue to be analyzed. There are 25 builds ahead of it. | 22:31 | ||
samcv | we using cppcheck? | 22:32 | |
timotimo | that's cppcheck | ||
samcv | nice | ||
timotimo | er | 22:33 | |
i meant to say | |||
that's coverity | |||
samcv | kk | ||
timotimo | the defect density has gone down even more | 22:36 | |
scan.coverity.com/projects/paultcochrane-moarvm | |||
we're too good. | 22:57 | ||
if y'all give me an email address i'll forward the details that coverity sent me | |||
i can just gist it! | 22:58 | ||
gist.github.com/timo/aa786e6fe415b...659391e841 | |||
why in the everliving fuck does it report the exact same issue on the exact same line four times? | 22:59 | ||
dogbert17 | do you see anything particularly nasty? | 23:08 | |
timotimo | i have to fire up the analysis frontend | 23:09 | |
huh, something must have gone wrong | |||
i only see a single defect, and it's one i marked "fix submitted | |||
" so what the hell? | |||
gotta look further into this later, for now i gotta go AFK | 23:11 | ||
sign in to scan.coverity.com with your github users and request access so you can help out | |||
dogbert17 | done | 23:18 | |
23:26
pyrimidine joined
|
|||
samcv | how does it know if there's a missing break or not | 23:33 | |
what if it is intentional? how does it discern? | 23:34 | ||
geekosaur | traditionally one includes a comment /*FALLTHROUGH*/, because that's what AT&T lint used | 23:35 | |
fwiw | 23:36 | ||
samcv | ah kk. makes sense | 23:37 | |
geekosaur | that said, dataflow analysis can make a guess that if most paths that break; do some initialization and any blocks that don't are followed by one that does, then a block that does that initialization but doesn't break; is a likely bug | ||
samcv | yeah thta last one isn't a bug | 23:38 | |
i'll fix that warning though | 23:40 | ||
geekosaur, do i have to make it all caps though | 23:49 | ||
geekosaur | that I couldn't say. AT&T lint required it that way (both caps and lack of spaces), but we're a long way from 1970s heuristic analyzers :) | ||
samcv | yeah | ||
geekosaur | might do better to contact the person running coverity and ask them to check the manual | 23:50 | |
Geth | MoarVM: samcv++ created pull request #539: Streamline some switches and try to suppress Coverity warnings |
||
geekosaur | unless you can find a copy of it online | ||
23:59
BenGoldberg joined
|