|
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 | ||