01:30
colomon joined
02:01
woosley joined
02:15
colomon joined
03:06
colomon joined
03:12
woosley joined
03:13
colomon joined
03:50
ssutch joined
04:17
colomon joined
04:20
ggoebel17 joined
|
|||
lue | trying to compile MoarVM, I just got "/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.1/../../../../x86_64-pc-linux-gnu/bin/ld: 3rdparty/linenoise/liblinenoise.a(linenoise.o): relocation R_X86_64_32 against `.rodata' can not be used when making a shared object; recompile with -fPIC" | 05:33 | |
Is this a common-ish thing to run into? | |||
(I see -fPIC flags here and there in the top-level makefile, so I'm not entirely sure what's happening.) | 05:35 | ||
Ah, it appears linenoise is provided precompiled (and I'm not well-versed in re-creating an .a file, alas :/) | 05:39 | ||
(after switching to readline) aaaaand now libuv is killing the compilation. I guess somebody didn't compile these (on a 64-bit system|with -fPIC) :) | 05:43 | ||
Or this is just me not using --static and seeing no good reason to :) . | 05:55 | ||
TimToady | don't ask me--I just work here | 05:57 | |
kind of a night-time janitor who doesn't actually ever clean anything | 05:58 | ||
more of a night-watchman, I guess | 06:00 | ||
lue | TimToady: I'm hoping somebody in a few hours will read the above and offer a solution. :) | 06:01 | |
TimToady | well, I supposed it's a good thing that we make different kinds of trouble from each other :) | 06:02 | |
*pose | 06:03 | ||
FROGGS | lue: make realclean in MoarVM, reconfigure and rebuild | 06:17 | |
then rebuild at least rakudo | |||
07:37
colomon joined
07:55
FROGGS joined
|
|||
FROGGS | morning | 07:56 | |
08:04
colomon joined
08:41
colomon joined
09:54
ssutch joined
|
|||
jnthn | morning | 09:57 | |
moritz | moarning, jnthn | 10:00 | |
nwc10 | morning | 10:41 | |
I get to this, which I assume is what you expect: | |||
p6store NYI | |||
Unhandled exception: Malformed UTF-8 at line 1 col 57 at gen/moar/stage2/NQPHLL.nqp:1219 (/home/nicholas/Sandpit/moar-g/languages/ | |||
... | |||
jnthn | The p6store bit, yes. The Malfmormed UTF-8 is a little worrying, though... | 10:43 | |
Memory corruption? | |||
The code that puts together backtrace lines is pretty retarded. I mean, the original code makes sense 'cus it was written for dumping out a backtrace to C. But that means it spits out C strings, which we then turn back into MoarVM ones... | 10:44 | ||
Mearning it's a bunch less efficient than it should be... | |||
Though if you bottleneck on creating backtrace strings, you have a weird program :D | |||
nwc10 | I'll see if valgrind throws up anything | ||
(chug chug chug) | 11:11 | ||
diakopter | jnthn: you're a backtrace string | 11:47 | |
(glug glug glug) | 11:48 | ||
jnthn | diakopter: Mostly, I was just too lazy to refactor the code :) | ||
diakopter | :) | 11:49 | |
FROGGS | who needs to refactor anyway when there is a perfect design in the first place :P | 11:50 | |
11:52
tgt joined
|
|||
dalek | arVM: 436c194 | (Tobias Leich)++ | src/strings/utf8.c: memset to zero so we can search for \0 safely |
12:06 | |
FROGGS | nwc10: ^^ | ||
jnthn | ah, good catch | 12:08 | |
nwc10 | FROGGS: working on it. I suspect it will take 60 minutes | 13:38 | |
take the computer, that is | |||
FROGGS | ahh | 13:39 | |
nwc10 | single thread for the yawn. | ||
FROGGS | I was slightly shocked :o) | ||
nwc10 | it took bloody ages to run the the main parse under valgrind | ||
jnthn | I can't imagine... | 13:40 | |
FROGGS | yeah, that sounds like valgrind :o) | ||
14:15
odc joined
|
|||
nwc10 | FROGGS: fixes that one. | 14:51 | |
real 58m41.077s | |||
user 58m27.594s | |||
sys 0m6.880s | |||
FROGGS | cool | ||
nwc10 | one remaining valgrind error - I don't think that it's related: | 14:52 | |
paste.scsys.co.uk/280278 | |||
jnthn: paste.scsys.co.uk/280278 might be relevant - it might be a real failure to ROOT issue. Or might not. | |||
FROGGS | hmmm | ||
nwc10 | actually, "Address 0x3f92fbe8 is 8 bytes before a block of size 32 free'd" is not a message I've seen previously | ||
FROGGS | ummm | 14:54 | |
we are pushing a null pointer here... github.com/MoarVM/MoarVM/blob/mast...rgs.c#L424 | 14:55 | ||
jnthn | FROGGS: No, we're not | 14:56 | |
FROGGS: We're pushign the address of a pointer that may be NULL | |||
14:56
jnap joined
|
|||
FROGGS | true | 14:56 | |
phew | |||
:o) | |||
jnthn likes that many of the stack traces we see from C land are quite shallow :) | 14:58 | ||
FROGGS | yeah :o) | 14:59 | |
jnthn | nwc10: That's a very weird error | ||
3259 is in the exit opcode | |||
oh, hang on... | |||
MVMint64 exit_code = GET_REG(cur_op, 2).i64; | |||
exit r(int64) | 15:00 | ||
It should be GET_REG(cur_op, 0) | |||
nwc10 | point me at at patch, give me another 58+ minutes, and I can verify that :-) | ||
jnthn | That may well explain why we've seen weird issues where it doesn't stop building when there's a failure | ||
nwc10 | (you will not be charged for the 58 minutes) | 15:01 | |
jnthn | it's 'cus it was reading a junk number for l'exit code... | ||
nwc10 | oh, complete aside. I've decided that Javascript docuentation makes about as much sense if I s/asynchronous/smurf/ but I don't get as stabby stabby angry) | ||
jnthn: that would be a bad thing :-) | 15:02 | ||
jnthn | you don't say! | ||
FROGGS | hehe | ||
dalek | arVM: d5c9efe | jnthn++ | src/core/interp.c: Fix exit op. nwc10++ for reporting issue, found thanks to valgrind++. |
15:03 | |
jnthn | nwc10: While you're having "fun" with JavaScript, my "fun" is with WPF... | 15:08 | |
At lesat I'm finding ways to amuse myself writing this stuff... | |||
enum Unpets { Manatee, PolarBear, Babirusa } | |||
moritz | WPF has a nice short hamming distance to WTF | 15:09 | |
nwc10 | WPF? | ||
moritz | windows presentation framework, I guess | 15:10 | |
s/framework/foundation/ | |||
jnthn | Yes, that :) | ||
And the distance to WTF is not lost on us. | |||
Works for WCF too, which deserves it far, far more. | 15:11 | ||
timotimo | at least you don't have to touch MFC any more | ||
jnthn | Phew, yes :) | ||
FROGGS | hey, don't talk bad about MFC, it is almost as old as Perl :o) | 15:24 | |
(20 years by now) | |||
diakopter | com+++ | 15:29 | |
timotimo | ole ole ... | 15:31 | |
15:37
eternaleye joined
|
|||
nwc10 | valgrind now clean | 16:30 | |
jnthn | \o/ | ||
diakopter | I always read that as vulgarind | 16:31 | |
jnthn | You're vulgar/ind... | 16:32 | |
16:52
ssutch joined
16:59
FROGGS joined
17:14
eternaleye joined
18:05
eternaleye joined
19:09
FROGGS[mobile] joined
|
|||
lue | FROGGS: realclean doesn't help :/ | 19:56 | |
FROGGS | hmm | 19:57 | |
you still get the -RPIC or -fPIC msg? | |||
lue | yep, still "recompile with -fPIC" on linenoise | 19:58 | |
FROGGS | then delete the linenoise folder from 3rdparties, reconfigure and rebuild | 19:59 | |
you only need to `make` in rakudo afterwards, no need to touch nqp | |||
jnthn | If yo'v enothing valuable around, a git clean -fdx . may help | ||
lue | Eh, I just ran make realclean and then make and it worked. Somehow the intermediate "configure" step caused the problem? | ||
FROGGS | errm, no | 20:00 | |
after realclean you should not be able to make | |||
(in theory) | |||
lue | OK, all of a sudden it works fine, and I have no clue why :/ | 20:01 | |
FROGGS | yeah, no lue either :o) | 20:03 | |
lue | but make realclean (some ls commands) make did work, which apparently it shouldn't've? | 20:04 | |
FROGGS | normally realclean deletes the Makefile | 20:05 | |
maybe it does not do that (yet) for MoarVM | |||
lue | I get a failure on trying to compile stage1/QAST.nqp. Can I assume this isn't just me being terrible with this procedure? :) | 20:21 | |
"Unable to parse expression in method_def; couldn't find final ')' at line 4403, near "MAST::Node"" to be precise | 20:22 | ||
jnthn | Argh, I thought we were free of those issues :( | 20:25 | |
lue | there's also an assertion failure after a bunch of "from location" bt lines, but that doesn't seem like the cause of all this. | ||
FROGGS | could well be | 20:26 | |
can you gist the version of moar and nqp-m together with you build output? | |||
lue | FROGGS: sure, just a minute | 20:28 | |
FROGGS | cool | ||
lue | FROGGS: gist.github.com/lue/766f22eb0ac9f9c4c816 | 20:31 | |
FROGGS | lue: your --prefix points to the MoarVM repo? | 20:35 | |
lue | FROGGS: yes, for the time being. | ||
FROGGS | k | ||
I have no idea what is going on :/ | 20:36 | ||
the assertion at the bottom is unrelated as you already said | 20:37 | ||
(and it shows up because printing to stderr) | 20:38 | ||
lue | that's strange; none of my incredibly simple changes have made a dent in the outcome so far :P | 20:53 | |
FROGGS: care to see a gdb 'bt' output from my end? | 21:04 | ||
FROGGS | sure | ||
maybe a valgrind run would be helpful too | |||
you'd just need to invoke the failing line | 21:05 | ||
lue | FROGGS: it's in the gist now (it would *appear* the libuv is the culprit, but don't trust my interpretations :P) | 21:06 | |
FROGGS | lue: that is just about the uv_loop_delete... the main problem is the parser error though | 21:07 | |
that is what gdb won't show | 21:09 | ||
lue | valgrind <build command> sure takes a while :) | 21:12 | |
FROGGS: gist updated with probably unhelpful memcheck results | 21:20 | ||
FROGGS | :( | 21:22 | |
lue | could this possibly be an issue with stage0 nqp? | 21:23 | |
FROGGS | I can't tell | 21:25 | |
lue | As a note, that offending line is the only one in the originating file that does InstructionList.new([$sigil-var] ... | 21:28 | |
I don't think that would be significant though :/ | |||
21:34
colomon joined
|
|||
FROGGS | I have no such line O.o | 21:44 | |
lue: what file+line exactly? | |||
lue | src/vm/moar/QASTCompilerMAST.nqp | 21:45 | |
:1241 | |||
(the build output should show the gen'd file location) | |||
FROGGS | nqp/src/vm/moar/QAST/QASTCompilerMAST.nqp:1241: MAST::InstructionList.new([$node], MAST::VOID, $MVM_reg_void) | ||
lue | that's the one | 21:46 | |
jnthn | lue: It's highly likely that you're looking at a GC bug... | ||
FROGGS | there is no $sigil-var | ||
lue | FROGGS: sigil-var is a placeholder name :) | ||
FROGGS | bah! | ||
don't do that while repoting a bug! | |||
NO PHANTASIE PERMITTED :P | |||
jnthn: true, sadly valgrind was useless | 21:47 | ||
lue | I meant originally that it's the only line to use the IL.new([$variable] ... format (with others using a similar IL.new([Node.new()] ... format) | ||
FROGGS: that was just memcheck though, i.e. sticking `valgrind' in front of the command. | 21:48 | ||
FROGGS | that is what I wanted, yes | ||
lue | not even the "re-run with --leak-check=full" bit was used! :) | 21:50 | |
[it should be noted for completeness' sake that the valgrind output I posted is only what occurs immediately after moar fails, which incidentally is the only interesting part.] | |||
FROGGS | nah, I dont think it will help | ||
as long as we operate in fromspace/tospace (even by accident), we are still in our memory area | 21:51 | ||
jnthn | Right. | ||
lue | jnthn: if it is in fact a GC bug, any setting I can fiddle with in the MoarVM build process to give it more memory space or something? | 21:52 | |
jnthn | The nursery size collect.h is what determines how "often" collections happen | 21:57 | |
lue | jnthn: I'll halve the nursery size and see how it goes with NQP. | 22:03 | |
jnthn | .oO( Well, that doubles the risk... ) |
22:04 | |
lue | oh. I thought the goal was to force it to do something more often. | 22:06 | |
lue doubles the original size instead :) | 22:07 | ||
jnthn | lue: Well, it depends if you want to explore the problem or hide the problem ;) | ||
lue | jnthn: I'm not sure how making it more likely to happen helps figure it out, for me at least :) | 22:08 | |
bah, size doubling fails anyway :/ | 22:14 | ||
jnthn | In the same place? | 22:15 | |
lue | jnthn: yes | 22:16 | |
jnthn | you certainly make install'd the change? | ||
Does a factor of 1.5 help? | 22:17 | ||
lue | jnthn: yes, I hit make install (and even reconfig'd in nqp). I'll reduce the change from x2 to x1.5 and see what happens though. | ||
gah, nope. I'm starting to think the nursery isn't the issue (unless you'd like me to x10 the original amount :P) | 22:21 | ||
jnthn | Hm, indeed. | 22:22 | |
lue | jnthn: I decided to add a preceding line saying "my @a := [$node];" and use @a in the next line, **and I got the exact same error!** can't find final ')' and everything! | 22:34 | |
lue & | |||
(to clarify: even the line number is the same, despite that number belonging to the my @a line) | 22:37 | ||
FROGGS | hmmm | 22:40 | |
I'd add more blank lines, so that at the given line number is nothing | |||
this file gets installed by moarvm btw | 22:41 | ||
22:55
BenGoldberg joined
|
|||
lue | FROGGS: still the exact same error, which means I'm a moron who doesn't realize how significant the "method_def" part of the error is: it has nothing to do with the file being compiled! | 22:59 | |
FROGGS: re-look at the "at " line of moar's backtrace: " at gen/moar/stage2/NQPHLL.nqp:371 (src/vm/moar/stage0/NQPHLL.moarvm:panic:108)" | |||
it is a stage0 problem after all, if that's to be believed. | 23:02 | ||
(Either that or somehow stage2 stuff is being touched during/before stage1 stuff, which seems a whole 'nother issue in that case) | |||
FROGGS, jnthn: could this be a slightly-too-outdated stage0 in NQP? (or was it, say, just updated 2 days ago?) | 23:10 | ||
I would try to generate a new stage0 myself, but, well... :) | 23:47 |