|
HTTPS CERT EXPIRED | www.parrot.org | Improve test coverage for FixedPMCArray and NameSpace / Fix Segfaults for Coke / Port Tests to PIR / Merge Stable Branches for 1.6 SOON Set by moderator on 2 September 2009. |
|||
| jonathan | chromatic: Nah, then we fix Rakudo, and Rakudo goes on to be very very happy that contexts are now PMCs. | 00:00 | |
| chromatic | Note that this problem *goes away* with Lorito. | ||
|
00:01
rbaumer joined
|
|||
| bacek_at_work | jonathan: mikehh should have my patch for Rakudo. | 00:02 | |
| jrtayloriv | Can someone with some free time and a commit bit take a look at TT#958 and TT#968 -- I'm pretty sure they're both ready to be commited. | 00:03 | |
| (the patches attached to them that is) | |||
| chromatic | Looking at both. | 00:04 | |
| jrtayloriv | thank you | ||
| dalek | rrot: r40934 | chromatic++ | trunk/src (3 files): [PMC] Ensure that all accesses to PMC_sync check the PMC shared flag first, to |
00:13 | |
| rrot: r40935 | chromatic++ | trunk (6 files): [docs] Updated documentation to reflect PObj layout changes. Patch by |
|||
| TT #968 closed by chromatic++: Rename PObj_active_destroy_foo to PObj_custom_destroy_foo | |||
| TT #958 closed by chromatic++: [PATCH]: Doc fixes related to GC and UnionVal | |||
| chromatic | Oops. | 00:15 | |
| Sigh. Oh well, fair enough. | 00:23 | ||
| dalek | rrot: r40936 | chromatic++ | trunk (35 files): [HLL] Fixed two compilation-breaking typos accidentally committed in r40934. |
||
|
00:26
kid51 joined
|
|||
| chromatic | Turns out svn dcommit commits changes that aren't even in the index. | 00:32 | |
| Just when I thought I understood things. | |||
| Whiteknight | you're on fire tonight, chromatic | 00:36 | |
| cotto | I think it works! | 00:37 | |
| chromatic | (Hate Driven Development)++ | 00:38 | |
| jonathan | So, IIUC, profiling branch is getting merged probably quite soon? | 00:39 | |
| jonathan looks forward to applying it to Rakudo :-) | 00:41 | ||
| Tene | chromatic: can I see your shell history? dcommit *shouldn't* be committing things not added to commits. | ||
| cotto | jonathan, I (literally) just got a decent-looking profile in KCachegrind, so yet. | 00:42 | |
| dalek | tracwiki: v7 | whiteknight++ | JITRewrite | ||
| tracwiki: +info I've received about nanoJIT | |||
| tracwiki: trac.parrot.org/parrot/wiki/JITRew...ction=diff | |||
| jonathan | cotto: Are there analysis tools for on Windows too, out of interest? | ||
| cotto | s/yet/yes/ | ||
| jonathan | I'm guessing KCachegrind doesn't run there... | ||
| cotto | no idea | 00:43 | |
| jonathan | oh, I'm wrong | ||
| Runs anywhere KDE does in theory. | 00:44 | ||
| Yay. :-) | |||
| cotto | It looks like it'll work through cygwin. | ||
| chromatic | $ git add src/hll.c | 00:45 | |
| $ git ci | |||
| $ git svn dcommit | |||
| But I must first... /away | 00:46 | ||
| jonathan | Sleep time - night all | 00:47 | |
| cotto | committed | ||
| treed | ere break of day? | ||
| dalek | rrot: r40937 | cotto++ | branches/pluggable_runcore (2 files): [profiling] initial working version of pprof2cg |
00:50 | |
| dukeleto | whiteknight++ on the JITRewrite wiki page. very informational | 00:54 | |
| cotto | Whiteknight++ indeed, especially for emailing the devs of the various projects. | 00:55 | |
| dukeleto | msg chromatic what is your git ci alias ? | ||
| purl | Message for chromatic stored. | ||
| Whiteknight | I was actually surprised to hear about Lightning. It's not too active, but it's still stable and useful | 00:57 | |
| I was expecting to hear that it was dead and buried and unusable | |||
| cotto | CPUs don't really change that much (on that level). | 00:59 | |
| dalek | rrot: r40938 | cotto++ | branches/pluggable_runcore/tools/dev/pprof2cg.pl: [profiling] don't require perl 5.10 just for the say function |
01:04 | |
|
01:04
payload joined
|
|||
| jrtayloriv | Whiteknight, I don't see anything further that I can do with the kill_parrot_cont branch. So I think it's done for now, unless somebody can point me to something else that needs to be done with it. All tests are passing on OpenBSD amd64 and Linux amd64, but I don't know about any other platforms. | 01:08 | |
| Whiteknight | jrtayloriv: It's good as-is, don't do any more with it | ||
| great job on it, by the way! | |||
| jrtayloriv | ok. thanks :) | 01:09 | |
| Whiteknight | bacek has a branch that sort of overlaps with some of this, so if he is able I want to get him to merge his first | ||
| his is a bigger change and an older branch, so the merge will be messier | |||
| I'll send a message to the list about both branches. We can do one right after the other if we all get the thumbs up | |||
| jrtayloriv | baceks change is much more complicated, so I agree -- mine would be pretty simple to alter to work with his, rather than the other way around | ||
| Whiteknight | now if his branch doesn't get the green light, we'll merge yours first instead | 01:10 | |
| jrtayloriv | Whiteknight, What do you think the first steps might be towards getting it so that we can choose which GC system when we create an interpreter rather than at compile time? What are the major obstacles at this point? | 01:16 | |
| cotto | jonathan, pluggable_runcore was last synced with trunk at r40830. Would testing profiling with rakudo be easier if I synced again? | ||
| Whiteknight | jrtayloriv: Good question. I think the only thing missing is a mechanism to select it | ||
| all the GC core functions are called by function pointers now, we just need a way to select which pointers we load | 01:17 | ||
| check out the preprocessor nonsense in src/gc/api.c:Parrot_gc_initialize() | |||
| jrtayloriv | yes I saw it. | 01:18 | |
| Whiteknight | so we need to replace those #ifdefs with a switch or something, and pass in a parameter to select | ||
| jrtayloriv | looks like it would be easy to move out of there though. | ||
| (or at least, not extremely difficult) | |||
| Whiteknight | A path of least resistance is to do that in place, but if you can think of a better way I would love to see the patch | 01:19 | |
| jrtayloriv | I meant out of the #ifdefs not out of the function, sorry. | ||
| OK, I'll start playing around with it. And asking you a lot of questions :) | 01:20 | ||
| Whiteknight | that's fine, questions are good | 01:21 | |
| darbelo | I'm slowly killing ->strstart use, but the whole thing would be a monster of a patch, does anyone care to review a first chunk of this work? | 01:22 | |
| cotto | darbelo, I can do that. | ||
| Whiteknight | darbelo: can you break it into chunks? | ||
| that is, does it have to be done in one shot, or can it be done over multiple commits? | 01:23 | ||
| darbelo | I can throw the low hanging fruit (pmcs and a few other places) pretty much on a file by file basis. | ||
| nopaste | "darbelo" at 200.49.154.172 pasted "VERY low-hanging fruit." (119 lines) at nopaste.snit.ch/17789 | 01:26 | |
| darbelo | Every file on that patch is independant of each other. And I have a few more of those, I can paste the whole thing or make a separate paste for each file. | 01:28 | |
| $ svn diff | wc -l | 01:29 | ||
| 233 | |||
| Spread across 8 files. | 01:30 | ||
| And, just tested it, doesn't break partcl :) | 01:32 | ||
| dukeleto | the parrot_debugger uses strstart too. please kill that usage if you can as well | ||
| kid51 | kill_parrot_cont branch: Smolder test on Linux/i386: smolder.plusthree.com/app/public_pr...ails/26801 | 01:34 | |
| darbelo | dukeleto: Okay, I'll go there tomorrow. I have to catch Z's today :) | ||
| nopaste | "darbelo" at 200.49.154.172 pasted "Another batch of low-hanging fruits" (114 lines) at nopaste.snit.ch/17790 | ||
| darbelo | Two pastes so Whiteknight and cotto don0t have to fight :) | 01:35 | |
| dukeleto | darbelo: sounds good. the parrot_debugger needs some love | ||
| darbelo | dukeleto: Eventually I want to kill strstart wholesale, but I really can't do that if it's used all over tha place. | 01:36 | |
| cotto | I'll take the first one then. I'd like some fruit. | ||
| Whiteknight | parrot-dev? | 01:37 | |
| purl | i heard parrot-dev was mailto:parrot-dev@lists.parrot.org or lists.parrot.org/mailman/listinfo/parrot-dev | ||
| dukeleto | darbelo: the parrot_debugger should be an isolated/easy place to fix it. other things don't rely on the parrot_debugger, it is mostly just that the parrot_debugger doesn't adhere to an external API | ||
| darbelo++ for killing - | 01:40 | ||
| >strstart | |||
| darbelo | dukeleto: Not dead yet, just less visible :) | ||
| dukeleto | darbelo: behind an API i guess it what I mean. | ||
| darbelo | And some places are going to need a bit more that simple encapsulation. | 01:41 | |
| I commented on one example at irclog.perlgeek.de/parrot/2009-09-02#i_1459378 | |||
| Whiteknight | darbelo: are you a committer for parrot? | 01:43 | |
| darbelo | Whiteknight: Nope. | 01:44 | |
| Whiteknight | that's no good. Should have brought that up in the last #ps | 01:45 | |
| kid51 | CLA? | 01:46 | |
| purl | CLA is Contributor License Agreement or www.perlfoundation.org/contributor_..._agreement or www.parrot.org/foundation/legal or www.parrot.org/files/parrot_cla.pdf | ||
| darbelo | I wasn't arround last #ps. | ||
| 'All your code are belong to the PaFo' | 01:48 | ||
| cotto | darbelo, first patch committed. | ||
| darbelo | That CLA is pretty tame, It didn't even ask for my undying soul. | 01:50 | |
| cotto | darbelo, the first chunk of the second patch leaks if one of those exceptions get thrown. | 01:51 | |
| dalek | rrot: r40939 | cotto++ | trunk/src (5 files): [strings] first of many patches from darbelo++ getting rid of ->strstart abuse |
||
| darbelo | cotto: Which file? | ||
| purl | i heard Which file was that error in | ||
| cotto | istr that you can use STRINGs in Parrot_ex_throw_from_c_args. | ||
| treed | purl: Forget Which file | 01:52 | |
| purl | treed: I forgot which file | ||
| cotto | src/interp/inter_cb.c | ||
| %Ss is for STRINGs, iirc | |||
| kid51 | kill_parrot_cont branch: Smolder test on Darwin/PPC: smolder.plusthree.com/app/public_pr...ails/26802 | 01:53 | |
| darbelo | crap, it DOES leak a string. | ||
| I'll fix it in a sec. I'm waiting for make | 01:55 | ||
| cotto | src/pmc/string.pmc has a similar leak | ||
| darbelo | cotto: "unhandled signature '%Ss' in make_cb", cb_signature); works? | 01:57 | |
| nopaste | "kid51" at 70.85.31.226 pasted "svn diff between trunk (at fork) and kill_parrot_cont branch (at HEAD)" (996 lines) at nopaste.snit.ch/17791 | 01:58 | |
| cotto | I think so. You should probably test it to make sure. | ||
| (or check for similar uses) | |||
| darbelo | I'm running make test, but I'm not sure it exercises that code path. | 01:59 | |
| cotto | probably not | ||
| darbelo | Ah, %Ss works for STRING *, yes. | 02:01 | |
| nopaste | "darbelo" at 200.49.154.172 pasted "revised "src/interp/inter_cb.c" patch for cotto++" (44 lines) at nopaste.snit.ch/17792 | 02:03 | |
| darbelo | I'll check the other patches for leaks later, I need to sleep now. | 02:04 | |
| cotto | good night | 02:05 | |
| darbelo | night | ||
|
02:05
darbelo left
|
|||
| jdv79 | Can't read '/usr/local/runtime/parrot/include/config.fpmc' : No such file or directory | 02:07 | |
| look familiar? | |||
| partcl build fails with that | |||
|
02:08
theory joined
|
|||
| Whiteknight | goodnight | 02:09 | |
| dalek | rrot: r40940 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c: [string] avoid ->strstart abuse in profiling runcore |
02:21 | |
| rrot: r40941 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c: [nits] minor code tidying |
|||
| jdv79 | i think its from an old installed parrot:( | 02:25 | |
| dalek | rrot: r40942 | cotto++ | trunk/src/interp/inter_cb.c: [string] replace more ->strstart abuse, patch from darbelo++ |
02:28 | |
|
02:35
janus joined
02:43
sri joined
|
|||
| jdv79 | yup. yay. | 02:45 | |
|
02:59
Zak joined
03:15
rbaumer joined
|
|||
| Coke | jdv79: how are you building parrot? | 03:20 | |
| (and did you run "make install-dev" for parrot? | |||
|
03:21
donaldh joined
|
|||
| Coke | seen jdv79 ? | 03:26 | |
| purl | jdv79 was last seen on #parrot 41 minutes and 22 seconds ago, saying: yup. yay. | ||
| Coke | msg jdv79 - please file a bug report with partcl showing what version of parrot you're using, how you installed it, how you configure'd partcl. Best guess at the moment is that you forgot to do install-dev". | 03:38 | |
| purl | Message for jdv79 stored. | ||
| dalek | rrot: r40943 | cotto++ | branches/kill_parrot_cont (3 files): [codingstds] rerun headerizer and fix some codingstd nits |
03:46 | |
| cotto | looks like the profiling runcore explodes on a rakudo hello world | 04:16 | |
|
04:20
dukeleto joined
|
|||
| dalek | rtcl: r675 | coke++ | trunk/runtime/builtin/read.pir: flesh out [read] a little; |
04:23 | |
| rtcl: r676 | coke++ | wiki/SpecTestStatus.wiki: Fixed one hang, another file gets further. |
|||
| rrot: r40944 | NotFound++ | trunk/src/pmc (2 files): [cage] c++ fixes |
04:34 | ||
|
04:51
mokurai joined
|
|||
| mikehh | ha NotFound++ fixed that before I could - but some codetest fixes as well | 05:09 | |
| dalek | rrot: r40945 | mikehh++ | trunk/src (4 files): fix codetest failures - tabs in leading whitespace and Trailing space or tab char |
05:11 | |
|
05:21
kyle_l5l joined
|
|||
| cotto | How can I tell from C if I'm in an :init sub? | 05:28 | |
| NotFound | cotto: I hope we never need to know that | 05:30 | |
| cotto | I do. | 05:31 | |
| dalek | rrot: r40946 | NotFound++ | trunk/src/pmc (5 files): [cage] some remaining items from auto_attrs conversions |
||
| cotto | It makes the profiling runcore sad to be in an :init sub without knowing that it's there. | ||
| Nobody likes a sad runcore. | 05:36 | ||
| NotFound | And I suppose is even worse if that :init sub is run from another :init sub | 05:37 | |
| cotto | I doubt it. If I can figure out if I'm in an :init sub I can also figure out when I've left that sub. | 05:39 | |
| Hopefully it's just a flag imcc sets somewhere. | |||
| NotFound | Uh, that's another problem. You need to know if the sub has the :init flag, or if is actually running from fixup subs? | 05:40 | |
| mikehh | All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40945 - Ubuntu 9.04 amd64 (g++) | 05:41 | |
| cotto | I suspect Packfile_fixup_subs, but my knowledge of what I need to know starts to get shaky at this point. | 05:43 | |
| cheating may be a valid option | 05:44 | ||
| Coke has another test file that isn't run by default turn out to be a segfault. | |||
| Coke hopes NotFound++ can work more magic soon. =-) | |||
| NotFound | cotto: And what about :immediate? | 05:45 | |
| Coke: A parrot test? | 05:46 | ||
| purl | i guess a parrot test is failing anyway ;-) | ||
|
05:47
he__ joined
|
|||
| Coke | NotFound: no, tcltest.tcl is now segfaulting. | 05:47 | |
| (same backtrace as another one of the reported segfaults) | |||
| cotto | That's why cheating may be a valid option. The problem is that some iglobals aren't initialized, so I can probably just check the ones I need before trying to use them. | ||
| dalek | rtcl: r677 | coke++ | trunk/ (4 files): Add opt from the standard library, and let [package require opt] work. |
||
| rtcl: r678 | coke++ | wiki/SpecTestStatus.wiki: allowing load of [opt] consolidates our failure mode on 2 files. |
|||
| NotFound | cotto: uh... that may be a parrot bug | 05:48 | |
| cotto | It doesn't smell like one, but my nose is stuffy. | 05:52 | |
| NotFound | cotto: What iglobals? | 05:54 | |
| Coke | in a PIR subclass of a PIR class, I override 'get_pmc_keyed' - at the end, I wish to invoke my parent's copy of that vtable. If my parent were a PMC, I could poke at the 'proxy' attribute - what do I do in this case? | ||
| cotto | argv | ||
| pmichaud | can someone remind me of the correct procedure for adding an opcode to Parrot (esp. for the ops.num file)? | 05:55 | |
| Coke | put it in experimental and you can ignore the ops file. | ||
| "ops.num" | |||
| pmichaud | I'm not sure it belongs in experimental, but yes, I can put it there for now I guess. | 05:56 | |
| Coke | but otherwise, i think you need to configure, run 'make opsrenumber', and then reconfigure. | ||
| pmichaud | I'll put it in experimental for now. | ||
| Coke | (I think that'll invalidate the bytecode). | 05:57 | |
| (and there may be a small chance you have to run renumber anyway. =-) | |||
| sorry I'm not definitive. | |||
| NotFound | Coke: make test doesn't segfault for me | ||
| pmichaud | putting it in experimantal will invalidate the bytecode? | ||
| Coke | NotFound: where? | ||
| partcl? | |||
| purl | i guess partcl is tcl on parrot or code.google.com/p/partcl | ||
| NotFound | Coke: partcl | ||
| Coke | Yes, it doesn't. | ||
| pmichaud | actually, let's start with a larger question... eta to the context_pmc3 branch merge? | ||
| because this is definitely impacted by that merge | 05:58 | ||
| Coke | neither doesn 'make spectest', as I've skipped all the segfaulters. | ||
| NotFound: code.google.com/p/partcl/wiki/SpecTestStatus //segfault | |||
| those point to partcl issues which should point to parrot trac tickets. | |||
| (or you can just look at the parrot tickets.) | |||
| Danke! | |||
| NotFound | Coke: but what is the new one you said a few lines ago? | 05:59 | |
| Coke | tcltest.tcl | 06:00 | |
| purl | tcltest.tcl is now segfaulting. | ||
| Coke | similar backtrace for binary.test | ||
| (both point to Trac #964 | |||
| the test was already not completing before. it's possible I missed it during the last round of cleanup/id. | 06:01 | ||
| NotFound | Coke: The backtrace in #964 is from an --optimize build? | 06:02 | |
| Coke | NotFound: yes. | ||
| I'm building with --optimize --ccflags=-g | 06:03 | ||
| NotFound | Note that s=0 but the arg is not NULLOK | ||
| In Parrot_str_copy | |||
| cotto | pmichaud, my impression is that bacek has the green light to merge as his earliest convenience. | 06:08 | |
| Coke | NotFound: added a simple PIR test case for you. | 06:09 | |
| (based on your clue, Thanks.) | |||
| NotFound | Coke: thanks, I was about to try to write that | 06:10 | |
| Coke | (probably don't even need the say) | ||
| NotFound | We need to add that code to the string pmc tests | ||
| Uhhh... Is a string, not a pmc :o | 06:11 | ||
| Coke | right, but a string PMC clones its native string when cloning. | 06:12 | |
| s/clone/COWs/ | |||
| NotFound | I'm not sure, but I think we fixed that long time ago... I suspect someone re-broke it | 06:13 | |
| moritz | then you didn't commit enough tests :-) | 06:14 | |
| Coke | NotFound: there you go, added a PMC version to the ticket. | ||
| NotFound | An attempt of quick fix makes t_tcl/binary.test coredump in a diffrerent way ;) | ||
| Coke | NotFound: that's entirely possible. | ||
| try tcltest.tcl instead; ISTR that one was not segfaulting previously. | 06:15 | ||
| NotFound | Must go to dayjob, will work on that later | ||
| Coke | (whereas binary is doing evil nasty things to strings in C) | ||
| I imagine the quick fix would be to make a COW just set the new one to NULl too. | |||
|
06:15
HG` joined
|
|||
| NotFound | Coke: no, it was a check for null in String.clone | 06:16 | |
| Coke | I would expect that to still segfault when cloning a string (not a String), then. | ||
| no> | |||
| ? | |||
| not that tcl probably ever clones a non-pmc string. | 06:17 | ||
| anyhoo, thanks for any potential fixes. | |||
|
06:18
dukeleto joined
06:21
jan joined
|
|||
| ttbot | Parrot trunk/ r40935 i386-linux-thread-multi make error tt.ro.vutbr.cz/file/cmdout/78740.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 06:23 | |
| mj41 | ttbot was paused because of Error validating server certificate ... - Hostname: *.parrot.org - Valid: from Aug 29 16:54:34 2008 GMT until Aug 29 16:54:34 2009 GMT | 06:30 | |
| cotto | we're allegedly working on that | 06:32 | |
| bacek_at_work, are you planning on merging context_pmc3 soon? | 06:38 | ||
|
06:43
chromatic joined
|
|||
| dalek | rrot: r40947 | NotFound++ | trunk/t/op/string.t: [t] add a TODO for clone null string |
06:49 | |
| chromatic | duk3leto, my .gitconfig has (per your suggestion) an alias for 'git ci' of 'commit -a', which is probably what happened. | 07:04 | |
| Perhaps it was Schwern's suggestion. It was at OSBridge anyway. | 07:06 | ||
| pmichaud | (merging context_pmc3) +1 | 07:15 | |
| chromatic fixes TT #964 for the NULL STRING case. | 07:18 | ||
|
07:21
donaldh joined
|
|||
| pmichaud heads off to bed | 07:22 | ||
| bacek_at_work | cotto: tonight. In next few hours. | 07:24 | |
| cotto | great! bacek++ | 07:25 | |
| bacek_at_work | I'll send big warning message before doing. I'll need clear way to merge it for about 0.5-1 hour | 07:26 | |
| (Mean no commits to trunk) | |||
| chromatic | Give me a few moments; I have another commit to fix a segfault. | ||
| bacek_at_work | chromatic: it will not happen in next couple of hours. I'm still @work | 07:29 | |
| dalek | rrot: r40948 | chromatic++ | trunk/t/op/string.t: [t] Fixed new null STRING clone test added in r40947, lest its passing appear segment. Moral of the story: always add C<end> to PASM or just use PIR. |
||
| rrot: r40949 | chromatic++ | trunk (2 files): [ops] Fixed clone S, S op to create a new empty STRING when attempting to clone |
|||
| chromatic | As soon as dalek unblocks, CLEAR! | 07:32 | |
| dalek | TT #964 closed by chromatic++: segfault in Parrot_str_new_COW | ||
|
07:32
fperrad joined
|
|||
| dalek | rrot: r40950 | chromatic++ | trunk (2 files): [PMC] Made String PMC's set_string_native() promote NULL STRINGs to empty boxed NULL STRINGs. |
07:33 | |
|
07:49
iblechbot joined
07:55
mberends joined
|
|||
| cotto | chromatic, I'm finding bugs with the profiling runcore and postprocessing script. Currently I can't get a profile of -e "1". Should I merge anyway, once you've done your review or should I get the code a little more usable first? | 07:56 | |
|
07:57
jimmy joined
|
|||
| fperrad | mikehh, what is your problem with Lua ? | 08:02 | |
| chromatic | Let's let bacek merge the context_pmc branch first. | ||
| cotto | of course. I'm just thinking about after he's merged. | 08:04 | |
| cognominal | what is the auto_attrs flag in a pmc? | 08:06 | |
| cotto | It's a recent addition that means the struct for ATTRs will be automatically allocated and freed. | 08:07 | |
| cognominal | meaning no need to mark them? | 08:08 | |
| nice | |||
| cotto | They still need to be marked afaiu. | 08:09 | |
| cognominal | afaiu? | 08:10 | |
| as far as I u(?) | |||
| cotto | understand | ||
| afaiu is as far as I understand | 08:11 | ||
| chromatic | Crazy initialization thought: add an API to fetch the vtable for a type. | 08:12 | |
| Use that in get_new_pmc_header. | |||
| (Use that also in class_init within PMCs) | 08:13 | ||
| The first time you fetch an uninitialized PMC's vtable, initialize it. | |||
| BOOM! | |||
| Lazily initialized PMCs. | |||
| Startup speed could drop by 35%. | |||
| cognominal | nice | 08:17 | |
| I hate the java startup time, nice if we do better | |||
| chromatic | There are a *lot* of references to interp->vtables though. | 08:21 | |
| cotto | chromatic, what's your thinking: should the profiling runcore be merged (a) when it's alpha-quality with significant known issues, (b) when mostly works but has a few known bugs or (c) when it has no known major bugs? | ||
| chromatic | (b) | 08:23 | |
| I don't expect to report HLL annotations correctly yet. | |||
| I also don't expect to get really complex control flow right yet. | |||
| I think we'll need to find edge cases to turn into test cases. | 08:24 | ||
| cotto | good | ||
| mikehh | fperrad - it fails on make | ||
| fperrad | mikehh, with Parrot trunk ? | 08:27 | |
| mikehh | fperrad: yes | ||
| cotto | I'm out. Happy merging. | 08:28 | |
| dalek | rrot: r40951 | cotto++ | branches/pluggable_runcore (2 files): [profiling] be smarter about checking that Parrot's argv iglobal is initialized before using it |
||
| mikehh | on Ubuntu 9.94 - both amd64 and i386 | ||
| 9.04 | |||
| I have just built r40950 - will try Lua and report the error | 08:30 | ||
| fperrad | mikehh, Lua needs : make install-dev | ||
| mikehh | fperrad: yes | ||
| bacek_at_work | fperrad: I have patch for Lua to build after context_pmc3 merge. Send it to you or just fork lua repo and commit? | 08:32 | |
| fperrad | bacek_at_work, an email with patch is fine | 08:34 | |
| bacek_at_work | fperrad: ok, deal | ||
| mikehh | fperrad: make fails at -> /usr/local/bin/parrot -o lua.pbc lua.pir - error:imcc:make_pmc_const: no such pmc - in file 'lua.pir' line 307 - make: *** [lua.pbc] Error 1 | 08:35 | |
| All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40950 - Ubuntu 9.04 amd64 (gcc) | 08:41 | ||
| rakudo (c9a9300) builds on parrot r40950 - make test / make spectest (up to r28175) PASS - Ubuntu 9.04 amd64 (gcc) | 08:57 | ||
| decnum-dynpmcs builds on parrot r40950 - make test PASS - Ubuntu 9.04 amd64 (gcc) | 09:10 | ||
| that's decnum-dynpmcs r181 | 09:11 | ||
| fperrad | mikehh, on Ubuntu 9.04 x86, I always configure Parrot with --prefix=/home/user/local and Lua builds fine. | 09:16 | |
| Now without --prefix, I reproduce your problem | |||
| mikehh | cardinal - builds on parrot r40950 - rake test:all same 3 failures - Ubuntu 9.04 amd64 (gcc) | ||
| fperrad; ok will try that | |||
|
09:17
Whiteknight joined
|
|||
| mikehh | I used -> perl Configure.pl --parrot-config=/usr/local/bin/parrot_config before | 09:18 | |
|
09:21
cognomore joined
|
|||
| mikehh | fperrad: I get the same result - error:imcc:make_pmc_const: no such pmc (about 4 times - before it fails with make: *** [lua.pbc] Error 1 | 09:31 | |
|
09:31
HG` joined
|
|||
| fperrad | mikehh, try this : | 09:35 | |
| cd lua | |||
| mkdir dynext | |||
| cp src/pmc/*.so dynext/ | |||
| make | |||
| mikehh | fperrad: ok that builds - now it can't find Parrot/Test.pm | 09:41 | |
| partcl r678 builds on parrot r40950 - make test PASS | 09:42 | ||
| fperrad - it's there in /usr/local/lib/parrot/1.5.0-devel/tools/lib/Parrot/Test.pm | 09:49 | ||
|
09:51
payload joined
09:52
bacek joined
09:56
payload joined
|
|||
| bacek | o hai | 09:59 | |
| mikehh: around? | 10:00 | ||
| moderator | Please don't commit in trunk in next half an hour. context_pmc3 branch merging | HTTPS CERT EXPIRED | www.parrot.org | 10:09 | |
| bacek | "Please don't commit in trunk in next half an hour. context_pmc3 branch merging" | 10:09 | |
| mikehh | bacek: yo | ||
| bacek | mikehh: can you boot to amd64? I want final test of context_pmc3 after merging from trunk. | 10:10 | |
| Commit is coming in next few minutes, so no hurry | |||
| mikehh | I am there - Ubuntu 9.04 amd64 | 10:11 | |
| bacek | mikehh: ok. | 10:12 | |
| Anyone on here not on Linux? | 10:14 | ||
| mikehh: ok, dcommiting now. | 10:15 | ||
| r40952 | 10:18 | ||
| make test passed on linux/i386 | |||
| bacek reviewing diff to trunk | |||
| dalek | rrot: r40952 | bacek++ | branches/context_pmc3 (75 files): Last merge from trunk before mergin back. \tMANIFEST \tdocs/pdds/pdd17_pmc.pod \tinclude/parrot/pmc.h \tsrc/gc/api.c \tsrc/ops/set.ops \tsrc/pmc.c \tsrc/pmc/eventhandler.pmc \tsrc/pmc/exception.pmc \tsrc/pmc/nci.pmc \tsrc/pmc/sub.pmc \tt/op/gc.t |
10:21 | |
| purl | i think MANIFEST is used for a ton of things, yes. | ||
| purl | it has been said that t/op/gc.t is going to cause problems because I dont think I faithfully reproduce the interface | ||
| mikehh | bacek: g++ build fails on src/pmc.c | 10:33 | |
| bacek: gcc build ok make test PASS | 10:34 | ||
| bacek | mikehh: ok. nopaste output of g++. I'll check it | ||
| mikehh | bacek: still got *** glibc detected *** ./parrot_debugger: double free or corruption (!prev): 0x000000000105b9d0 *** + backtrace with t/tools/parrot_debugger.t although it passes | 10:36 | |
| jdv79 | Coke: i did install-dev. its that i think i did install a long time ago and that was interfering. its fixed now. i had to delete some directories. | 10:37 | |
| mikehh | bacek: just as follows: | ||
| src/pmc.c | |||
| ./include/parrot/pmc.h: In function āvoid Parrot_pmc_destroy(parrot_interp_t*, PMC*)ā: | |||
| ./include/parrot/pmc.h:56: error: previous declaration of āvoid Parrot_pmc_destroy(parrot_interp_t*, PMC*)ā with āC++ā linkage | |||
| src/pmc.c:108: error: conflicts with new declaration with āCā linkage | |||
| make: *** [src/pmc.o] Error 1 | |||
| bacek: svn properties need setting on t/pmc/integer-old.t and tools/dev/parrot_shell.pl | 10:44 | ||
| otherwise codetest PASSes | 10:45 | ||
| bacek | mikehh: I'll fix g++ failure. svn properties can be fixed after merge. And I actually can't fix them before :) | ||
| mikehh | bacek: I'll do that | ||
| bacek | mikehh: ok, thanks | 10:46 | |
|
10:50
masak joined
|
|||
| dalek | kudo: 2f22b87 | moritz++ | src/setting/Any-num.pm: use Nums instead of Rats in !to-radians |
10:51 | |
| rrot: r40953 | mikehh++ | branches/context_pmc3 (2 files): set svn properties on t/pmc/integer-old.t and tools/dev/parrot_shell.pl |
10:55 | ||
| rrot: r40954 | bacek++ | branches/context_pmc3/src/extend.c: [cage] Replace few interp->ctx with CURRENT_CONTEXT macro for simplify grepping in future. |
10:58 | ||
| rrot: r40955 | bacek++ | branches/context_pmc3/src/runcore/cores.c: Remove check of 'pc' in fastcore. Put TOD mark instead |
|||
|
10:59
quek joined
|
|||
| dalek | a: 4093f18 | fperrad++ | (2 files): fix build with default --prefix |
11:00 | |
| a: 9ed409a | fperrad++ | config/makefiles/pmc.in: install PMC in languages/lua/dynext |
|||
| a: e1bcbe4 | fperrad++ | .gitignore: fix .gitignore |
|||
| bacek | mikehh: ok. Time to retest. I'll check parrot_debugger now | ||
| dalek | rrot: r40956 | bacek++ | branches/context_pmc3/include/parrot/pmc.h: Restore lost PARROT_EXPORT on Parrot_pmc_destroy. |
11:02 | |
| rrot: r40957 | bacek++ | branches/context_pmc3/lib/Parrot/OpTrans/CGoto.pm: [cage] Drop useless #include "parrot/interpeter.h" |
|||
| bacek | mikehh: erm... I can't reproduce parrot_debugger failure... | 11:04 | |
| mikehh | bacek: I'll nopaste it in a bit | 11:07 | |
| bacek | mikehh: ok | 11:08 | |
| mikehh | bacek: fulltest PASSes at r40953 | ||
| bacek | mikehh++ #Hooray! | ||
| bacek rebuilding rakudo. | |||
| nopaste | "mikehh" at 94.3.240.143 pasted "prove -v t/tools/parrot_debugger.t in context_pmc3 branch" (128 lines) at nopaste.snit.ch/17794 | 11:14 | |
| mikehh | bacek: the backtrace comes from test 41 - print string registers when none exist - it does not happen in trunk | 11:17 | |
| the backtrace I mean | 11:18 | ||
| bacek | mikehh: hmm... I'll try to fix it. | ||
| mikehh | it did but got fixed | ||
| I think it was dukeleto | 11:19 | ||
| bacek | mikehh: do you remember revision? | ||
| mikehh | I'll see if I can find it | 11:20 | |
| bacek | mikehh: ok. | 11:21 | |
| rakudo's make test passed on my box. | |||
|
11:23
donaldh joined
|
|||
| bacek | fperrad: ping | 11:25 | |
| fperrad | bacek, pong | ||
| bacek | fperrad: how I can test lua? It builds, but complains about Test::More | 11:26 | |
| nopaste | "bacek" at 122.110.41.34 pasted "Lua patch for fperrad++" (30 lines) at nopaste.snit.ch/17795 | 11:27 | |
| bacek | fperrad: with nopasted patch. | ||
| fperrad | bacek, 'make test' uses files in build tree with relative path | 11:30 | |
| remember when all languages were in languages/ subdir | |||
| bacek | so I just have to move it into languages and rebuild? | ||
| partct make test passed | 11:31 | ||
| fperrad: some conflicts with installed parrot... | 11:32 | ||
| fperrad: nm. softlink problem | 11:33 | ||
| fperrad | bacek, no conflict, just never migrated | ||
|
11:33
kid51 joined
|
|||
| bacek | fperrad: there is couple of warning about casting FLOATVAL to long int. Ignore them? | 11:34 | |
| fperrad | bacek, yes | 11:35 | |
|
11:37
szabgab joined
|
|||
| bacek | fperrad: do you use custom Exceptions in lua (inherited from Exception PMC)? | 11:39 | |
|
11:40
whiteknight joined
|
|||
| whiteknight | bacek: how goes it? | 11:42 | |
| bacek | parrot fulltest, rakudo test, partcl test passed. | 11:43 | |
| fperrad | bacek, no, just common die $S0 | ||
| bacek | Checking lua atm | ||
| fperrad: thanks | |||
| fperrad: lua's make test should pass on trunk? | 11:46 | ||
| fperrad | bacek, no ~150 errors, see smolder.plusthree.com/app/public_pr...reports/12 | 11:48 | |
| dalek | tracwiki: v8 | whiteknight++ | JITRewrite | 11:49 | |
| tracwiki: +some info about LLVM from the website. | |||
| tracwiki: trac.parrot.org/parrot/wiki/JITRew...ction=diff | |||
| tracwiki: v9 | whiteknight++ | JITRewrite | |||
| tracwiki: trac.parrot.org/parrot/wiki/JITRew...ction=diff | |||
| bacek | fperrad: Hooray! I didn't broke it. | 11:50 | |
| whiteknight | LLVM? | ||
| purl | hmmm... LLVM is a big huge thing with not much docs, but it works or low-level virtual machine or at www.llvm.org | ||
| bacek | fperrad: thanks! (But we definitely need more tests in parrot...) | ||
| whiteknight | who was supposed to be doing that for GSoC, Tewk? | 11:51 | |
| bacek | ok. | ||
| LAST CALL. | |||
| whiteknight | bacek: DO IT! | ||
| bacek hides | 11:57 | ||
| r40958 | |||
| whiteknight | EVERYBODY PANIC! | ||
| purl | i guess everybody panic is web.archive.org/web/20070216080911/.../panic.gif | ||
| moderator | HTTPS CERT EXPIRED | www.parrot.org | Improve test coverage for FixedPMCArray and NameSpace / Fix Segfaults for Coke / Port Tests to PIR / Merge Stable Branches for 1.6 SOON | 11:57 | |
| dalek | rrot: r40958 | bacek++ | trunk (77 files): Merge context_pmc3 branch into trunk. |
11:58 | |
| bacek | purl++ # YAY! | 12:00 | |
| whiteknight | bacek++ | 12:01 | |
| bacek | fperrad: I've attached my patch for Lua into mailing list message. Same as in nopaste | ||
| moritz | any paptches for rakudo necessary? | 12:02 | |
| whiteknight | yes, he attached it to his last email | ||
| doesn't look too bad though | 12:03 | ||
| bacek | moritz: attached to same message as well | ||
| moritz | ok | ||
| bacek | Hmm... It took longer than I expected... 1.5 hours instead of 0.5 | 12:04 | |
| bacek getting old | |||
| purl | it has been said that getting old is tough but it beats the alternative | ||
| whiteknight | lots of cleanups and refactors to do still, but this was an excellent first step | ||
| bacek | botsnack | ||
| purl | :) | ||
|
12:05
Zak joined
|
|||
| whiteknight | that is a gigantic freaking diff | 12:06 | |
| bacek | ~8k lines | ||
| 7.5 | |||
| whiteknight | purl msg jrtayloriv bacek merged his branch in this morning. We will merge the kill_parrot_cont branch in over the weekend, to give time for this to settle. | 12:07 | |
| purl | Message for jrtayloriv stored. | ||
| whiteknight | 1.6.0 is going to be the most eventful release ever | 12:08 | |
| whiteknight should start updating NEWS now | |||
|
12:08
payload joined
|
|||
| bacek | Who is release manager of 1.6? | 12:08 | |
| jonathan | particle, iirc | 12:09 | |
| whiteknight | yes, particle | ||
| purl | The most abundant particle in the universe is the moron. or spin 1/2, charge 2/3 or jerry gay or a boson. or a bozon. or a bogon or one bad mobo. or full of lies or mailto:jerry.gay@gmail.com or thinking that others are boring | ||
| dalek | TT #970 created by bacek++: [todo] Remove Parrot_Context structure in favor of ATTRibutes in Context ... | ||
| whiteknight | bacek: so you created the PMC as a wrapper around Parrot_Context, and you created a proper API? | 12:11 | |
| bacek | fsvo "proper" | ||
| whiteknight | so the next step is TT #970 to kill the struct and just use ATTRs? | ||
| dalek | TT #971 created by bacek++: [todo] Add "current" versions of Parrot_pcc_get_foo and Parrot_pcc_set_foo ... | 12:12 | |
| bacek | whiteknight: there is more steps than one :) But ATTRs is obviously first | 12:13 | |
| whiteknight | yes, many steps | 12:15 | |
|
12:16
rbaumer joined
|
|||
| dalek | TT #972 created by bacek++: [todo] Remove "old" context related function such as "parrot_gc_context" | 12:16 | |
| whiteknight | testing trunk on win32 now | 12:18 | |
| (I haven't done this in a long time) | |||
| I need to look at win64 too, before the release | |||
| It amazes me how much slower "make -j3 coretest TEST_JOBS=3" runs on win32 then on linux32 | 12:21 | ||
| dalek | rrot: r40959 | mikehh++ | trunk (4 files): fix svn properties |
12:22 | |
| moritz | whiteknight: uhm, does it even start 3 parallel jobs on windows? | ||
| whiteknight | it starts at least two | ||
| moritz | also for the tests? | 12:23 | |
| whiteknight | yes sir | ||
| dalek | TT #973 created by bacek++: [todo][rfc] Review content of src/gc/alloc_register.c and ... | ||
| whiteknight | I'm using the mingw32-make that comes with strawberry, not stupid nmake | ||
| bacek | ok, I've dumped next steps for Context cleanups as trac tickets. EVERYONE JOIN THE PARTY! | 12:25 | |
| dalek | TT #974 created by bacek++: [todo] Mark publicly exposed functions in src/call/context.c with ... | 12:26 | |
| whiteknight | excellent work bacek! | ||
| jonathan | bacek++ | ||
| bacek "JFDI" robot :) | 12:28 | ||
| Coke | msg jdv79 awesome | 12:29 | |
| purl | Message for jdv79 stored. | ||
| Coke | msg jdv79 (if you're adding to smolder, I guess I can't drop TAP support in make test just yet. =-) | ||
| purl | Message for jdv79 stored. | ||
| jonathan afk for a while | |||
| Coke fears to update partcl's parrot. | 12:31 | ||
| whiteknight | Coke: The old one wasn't doing you any favors | ||
| moritz | bacek: rakudo with latest parrot + your patch fails a few tests | ||
| t/spec/S06-advanced_subroutine_features/wrap.rakudo ............ Failed 57/60 subtests | |||
| t/spec/S06-multi/lexical-multis.t .............................. Failed 12/14 subtests | |||
| bacek | Coke: Files=74, Tests=1378, 390 wallclock secs ( 0.66 usr 0.12 sys + 346.42 cusr 4.87 csys = 352.07 CPU) | ||
| Result: PASS | |||
| moritz: looking | 12:32 | ||
| Coke | bacek;awesome. now I just need torun spec test to be sure. =-) | ||
| ./src/pmc/sub.pmc: In function 'Parrot_Sub_nci___get_regs_used': | 12:33 | ||
| ./src/pmc/sub.pmc:901: warning: logical '&&' with non-zero constant will always evaluate as true | |||
| moritz | t/spec/S12-class/interface-consistency.rakudo .................. Failed 2/8 subtests | 12:34 | |
|
12:37
whiteknight_ joined,
ruoso joined,
wknight8111 joined
|
|||
| wknight8111 | I call #973 | 12:38 | |
| bacek | wknight8111: and naming is slightly inconsistent too | 12:39 | |
| but "register" functions shouldn't be exposed anyway | |||
| wknight8111 | the whole alloc_register.c file needs to disappear | 12:40 | |
| bacek | wknight8111: +1 | ||
| purl | 1 | ||
| whiteknight | I would like to add VTABLE_get_*_keyed_int to access registers | 12:41 | |
| bacek | looks about all right | 12:42 | |
| mikehh | All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40959 - Ubuntu 9.04 amd64 (g++) | 12:44 | |
| bacek | mikehh: thanks for fixing svn props. | ||
| moritz: hmm... t/spec/S06-advanced_subroutine_features/wrap.rakudo passed on my box. | 12:46 | ||
| moritz: and "lexical-multis.t" too | 12:47 | ||
| moritz: "interface-consistency" failing todoed test. | 12:48 | ||
| mikehh | got to take a break for a bit - bbiab | ||
| moritz | bacek: I created tt #975 with a more extensive summary | ||
| bacek | moritz: ok, thanks. | ||
| moritz | bacek: I'm on amd64 here | ||
| bacek | moritz: ah, ok. | 12:49 | |
| dalek | rtcl: r679 | coke++ | wiki/SpecTestStatus.wiki: Resolve Issue #101 |
12:50 | |
| TT #975 created by moritz++: Failed Rakudo tests due to context_pmc3 merge | |||
| bacek | moritz: ouch. Looks like segfaults on amd64. | 12:51 | |
| moritz | bacek: I'm now trying again, this time deleting parrot's install location first | 12:54 | |
| if the problem persists, I can try to give you backtraces | |||
| bacek wonder why most of his refactors causing major failures in unexpected places... | 12:55 | ||
| moritz: it will be helpful. | 12:57 | ||
| moderator | HTTPS CERT EXPIRED | www.parrot.org | Add test after fixing bugs | Improve test coverage for FixedPMCArray and NameSpace / Fix Segfaults for Coke / Port Tests to PIR / Merge Stable Branches for 1.6 SOON | 12:59 | |
| moderator | HTTPS CERT EXPIRED | www.parrot.org | Add test after fixing bugs after context_pmc3 merge | Improve test coverage for FixedPMCArray and NameSpace / Fix Segfaults for Coke / Port Tests to PIR / Merge Stable Branches for 1.6 SOON | ||
| moritz | bacek: after deleting parrot_install/ everything looks clean again | 12:59 | |
| bacek: I'm running a full spectest again, so expect results in 30 minutes :-) | 13:00 | ||
| bacek | moritz: I will not survive for 30 minutes :) I had 5 meetings today at $dayjob... | 13:01 | |
| And they almost killing me... | 13:02 | ||
|
13:03
sri_ joined
|
|||
| moritz | contrary to common believe, meetings and not premature optimization is the root of all evil | 13:03 | |
| bacek | moritz: +1 :) | 13:04 | |
| szbalint | purl: litany against meetings? | 13:08 | |
| purl | "I must not attend meetings. Meetings are the mind killer. Meetings are the little-death that brings total obliteration. I will face my meeting. I will permit it to pass over me and through me. And when it has gone past I will turn the inner eye to see its path. Where the wasted time has gone there will be nothing. Only I will remain." | ||
| particle | whiteknight: thanks for taking responsibility for these merges | 13:10 | |
| whiteknight | it's the open source way. If you want something done, do it | 13:13 | |
| bacek looking in context_pmc3 branch and checking discussions about converting contexts to PMC for last couple of year | 13:14 | ||
| NotFound | Looks like 1.5 - 1.6 will put very high the mark of changes between releases. | 13:16 | |
| particle | great work, bacek. hopefully you folks will be able to squash any remaining bugs quickly and without much pain. | 13:17 | |
| bacek | particle: I hope so. This branch was little bit more painful than I expected... | 13:18 | |
| particle | you have been doing a fair amount of exploratory surgery here, i see | 13:19 | |
| i'm interested in seeing coverity scan results on parrot | 13:20 | ||
| we've made major changes to the core this month | |||
| bacek start thinking about implementing Generational GC (or plug existing one) for Parrot. | 13:27 | ||
|
13:28
Zak joined
|
|||
| bacek | ok. $bed time. | 13:31 | |
| I'll try to fix any failures tomorrow and over weekend caused by branch merge. Simple PIR files attached to trac tickets will be very helpful. | 13:32 | ||
| Coke | (litany) wow, that's pretty close to the original... not that I memorized it or anything. | 13:33 | |
| whiteknight | bacek: how do I apply that rakudo_ctx.diff patch to rakudo? | 13:38 | |
| moritz | whiteknight: 'git apply rakudo_ctx.diff' | ||
| whiteknight: then 'echo 40958 > build/PARROT_REVISION' | 13:39 | ||
| whiteknight | thanks moritz++ | ||
|
13:43
szabgab joined
|
|||
| dalek | kudo: 1cb71e4 | moritz++ | src/setting/Any-num.pm: fix typo found by Jimmy++, moritz-- |
13:46 | |
| TT #975 closed by moritz++: Failed Rakudo tests due to context_pmc3 merge | 13:50 | ||
| Coke | "why doesn't this bisect work" (turns out my "run the the test" script was doing a git svn update. | ||
| NotFound | Why the empty string is the desired result of cloning or boxing a null string? They are different things. | 13:51 | |
| Coke | good question. | 13:52 | |
| purl | Yeah, it is. I'm stumped. | ||
| pmichaud | initial spectest shows about a 20% speed loss after context_pmc3 branch merge | 14:00 | |
| I'll do a more precise set of runs to get a better estimate | |||
| jdv79 | Coke: you wanna add the smoldering code to partcl or you want me to? | 14:04 | |
| dropping TAP (just got your message)... could be a problem. | 14:05 | ||
| what other format would it be? could we write an adapter? | 14:06 | ||
| Coke | jdv79: it'd be in tcl-native testing format. | 14:09 | |
| try "make t_tcl; ./tclsh t_tcl/if.test" | 14:10 | ||
| but that's not for ages. | |||
| jdv79 | is there a name i can google for a spec or something? | ||
| Coke | holy crap. if I google for "tcl test output format" 2 of the top 5 hits are partcl related. =-) | 14:11 | |
| jdv79 | yeah, nice | ||
| jrtayloriv | Has anyone else already reported segfaults in t/tools/parrot_debugger.t? | ||
| Coke | jdv79: I don't think there's a spec. | 14:12 | |
| jdv79 | ok | ||
| i'll peek at it then | |||
| for now i guess it'll work cause its TAP | |||
| nopaste | "jrtayloriv" at 96.238.199.12 pasted "Segfaults in t/tools/parrot_debugger.t" (89 lines) at nopaste.snit.ch/17796 | 14:13 | |
| NotFound | jrtayloriv: I also have that, but is a TODOed test, so it pass | ||
| jrtayloriv | NotFound, I was wondering why the test was passing for me. OK -- thanks | 14:14 | |
|
14:15
Psyche^ joined
14:16
MoC joined
|
|||
| jrtayloriv | msg dukeleto -- Which version of gc.t are you talking about? I didn't know there was something waiting on me, sorry. | 14:19 | |
| purl | Message for dukeleto stored. | ||
|
14:26
rdice joined
|
|||
| Coke | does bacek's mergeback potentially reduce memory usage? | 14:26 | |
| (by stopping context leaks?) | |||
| jonathan | In theory, I'd expect so. | 14:28 | |
| Coke | k. i'll try my one memory hog that >almost< passed before. | ||
| trac.parrot.org/parrot/ticket/732 might be closable, then. | 14:31 | ||
|
14:32
theory joined
|
|||
| he__ | src/jit/ppc/core.jit:1299: error: 'Parrot_Context' has no member named 'state' | 14:34 | |
| (with -current source just updated, building on NetBSD/macppc 5.0) | |||
| whiteknight | we shouldn't have jit support on ppc | 14:36 | |
| at least, not that I was aware of | |||
| he__ | parrot has had that for a considerable time. | ||
| NotFound | Why the frac some configure probes "Does your platform support..." says "done" instead of yes or no? | 14:37 | |
| Coke | NotFound: all handrolled. | 14:39 | |
| probably simple enough to fix. | |||
| NotFound | Coke: With the left hand by a dexter? ;) | 14:40 | |
| he__ | whiteknight: smoke test on NetBSD/macppc 5.0 with jit completed OK last on Aug 7 2009, rev. 39951. | 14:41 | |
| (yes, I crank my tests manually) | 14:43 | ||
| NotFound | parrot_debugger segfault is at Context.destroy | 14:46 | |
| Coke | jdv79: sadly, expr.test still memory panics. | 14:50 | |
|
14:50
sri_ joined
|
|||
| Coke | error:imcc:syntax error, unexpected DOT ('.') in file 'EVAL_131362' line 71 | 14:50 | |
| (that's a lot of eval, yo.) | |||
| mikehh | jtayloriv: We had the problem before - I am not sure it is from a TODE test - I think it is test 41 - see nopaste.snit.ch/17794 | 14:51 | |
| TODO | |||
| jand we had the problem in trunk fairly recently but it got fixed but occured in the context_pmc3 branch which has been merged | 14:53 | ||
| dalek | a: a58a573 | fperrad++ | (2 files): fix build after trac.parrot.org/parrot/changeset/40958 |
||
| a: 1ab8538 | fperrad++ | src/pmc/luathread.pmc: Parrot_Context is gone |
|||
| Coke | the double free usually happens at process exit time. | ||
| Coke | the todo test is probably a red herring. | ||
| dalek | rtcl: r680 | coke++ | trunk/config/PARROT_VERSION: This revision has some segfault fixes. |
14:55 | |
|
14:55
quek joined
|
|||
| mikehh | Coke: I just built and tested r679 - it PASSes - I'll try at the new revision | 14:56 | |
| partcl r679 builds on parrot r40959 - make test PASS - Ubuntu 9.04 amd64 (g++) | 14:58 | ||
| Coke | mikehh: all 680 does is bump the minimum required parrot version to 40959 | 14:59 | |
| ... so you don't have to test that revision, since you already did that. | |||
| mikehh | Coke: I am running make spectest at the moment | 15:01 | |
| Coke | danke. | 15:02 | |
|
15:03
iblechbot joined
15:07
sri joined
|
|||
| he__ | Hmm, simply removing the offending line made "make test" pass. | 15:12 | |
|
15:21
donaldh joined
|
|||
| Coke | our jesse hit boing boing. | 15:24 | |
| gadgets.boingboing.net/2009/09/02/p...iptio.html | |||
| mikehh | rakudo (1cb71e4) builds on parrot r40959 - make test / make spectest (up to r28178) PASS - Ubuntu 9.04 amd64 (g++) | 15:30 | |
| pmichaud | Looks like context_pmc3 gives ~ 13% slowdown over what we had previously | ||
| not bad | 15:31 | ||
|
15:36
dukeleto joined
|
|||
| Coke | gah, SLOWER? | 15:42 | |
| mikehh | cardinal - builds on parrot r40959 - rake test:all - same 3 failures - Ubuntu 9.04 amd64 (g++) | 15:43 | |
| decnum-dynpmcs r181 builds on parrot r40959 - make test PASS - Ubuntu 9.04 amd64 (g++) | 15:48 | ||
|
15:50
GeJ_ joined
|
|||
| whiteknight | I can't build Rakudo | 15:52 | |
| ah nevermind, I have the wrong parrot version somehow | 15:53 | ||
| I have to look at the diff again. the new Context PMC might not be recycling frames anymore. Once we convert it to use ATTRs properly, and allocate through the fixed-size allocator we should see performance come back to where it was | 15:56 | ||
| whiteknight hopes | 15:57 | ||
| Coke | (1.8 * 1.13) | 16:01 | |
| purl | 2.034 | ||
| Coke | (rought guess at how many hours it'll now take to run 'make spectest' for tcl.) | ||
|
16:05
marius joined
16:07
kjeldahl_ joined
16:09
theory joined
16:10
HG` joined
|
|||
| dukeleto | bacek++ for merging context_pmc3 and the hilarious commit message | 16:12 | |
| whiteknight | Coke: those are hours of your life you will never get back | ||
|
16:15
quek left
|
|||
| Coke | whiteknight: I swear sometimes you're just trying to depress me. | 16:21 | |
|
16:22
szabgab joined
|
|||
| whiteknight | Coke: I would never! I want you to be happy | 16:22 | |
| mikehh | partcl make spectest has been running for about 90 minutes so far - still on string | 16:25 | |
| jrtayloriv | Is there any way to look up which architecture the interpreter is running on? | 16:26 | |
| mikehh | mind you i built and tested rakudo, cardinal, decnum_dynpmcs while it was running | ||
| jrtayloriv | I see that iglobals has a "Config Hash" but I can't find out how to get to it, or whether it even contains what I want. | ||
| interp->iglobals, that is | |||
| particle | jrtayloriv: in pir or c? | 16:28 | |
| jrtayloriv | particle, c | ||
| whiteknight | jrtayloriv: check out the logic behind the interpinfo opcode | 16:29 | |
| whatever functions it calls do what you need | 16:30 | ||
| jrtayloriv | whiteknight, ok -- thank you. | ||
| particle | yeah, i was hoping to provid emore info, but i haven't made ctags-vi in a while | ||
| *provide | |||
| did pluggable_runcore merge? | 16:31 | ||
| whiteknight | no | ||
| at least, not that I know of | |||
| particle | damn, that's another potential merge this month | ||
| i'd like to see it happen, but time is getting short | 16:32 | ||
|
16:32
darbelo joined
|
|||
| Coke | particle: so let's merge them. | 16:33 | |
| he__ | Hmm, under "make fulltest", test 3 of t/op/string.t fails, but when I run it manually with "perl -t t/harness t/op/string.t" all the tests succeed. Hints? | ||
| Coke | the "day or two to sort out a merge" is kind of silly when we can test each merge in order, no? | ||
| s/silly/unneeded/ | |||
| he__: which core is running when the test fails? | |||
| whiteknight | it is pretty impressive the amount of work we can do in a month | ||
| particle | coke: there are auto-smokers out there that may miss some revisions | ||
| Coke | you'll need to insure you're invoking the harness properly to run teh core. | 16:34 | |
| particle | whiteknight: all we need is a few people without other work, and a few slackers willing to volunteer :) | ||
| Coke | particle: happy path: the combined merges work. | ||
| sad path: we can back up and test teh individual revisions. | |||
| whiteknight | I have plenty of other work to do. I just choose not to do it :) | ||
| particle | coke: i expect these merges will affect each other, so there will have to be fixups to each branch before they can merge to trunk | 16:35 | |
| whiteknight | happy/sad path: we can back up and make bacek test the individual revisions | ||
| Coke | particle: sure. | ||
| particle | whiteknight: yes, you're one of the slackers i'm talking about | ||
| Coke | why should we pad that with 2 days? | ||
| he__ | Coke: how do I tell which core it's running with? | 16:36 | |
| whiteknight | this context_pmc3 branch is already showing signs of some fallout | ||
| we want all the time we can get to smooth things out | |||
|
16:37
skeeterbug joined
|
|||
| whiteknight | I honestly had no idea that we had a working JIT on PPC | 16:37 | |
| Coke | he__: look at the output of 'make test'. | ||
| particle | leo++ | ||
| Coke | er, fulltest | ||
| he__ | Coke: that's what I did... | ||
| Coke | ok. in there it'll say it was running 'testj' or something. | 16:38 | |
| if you nopaste it, I can show you. | |||
| whiteknight: but we have /version control/ | |||
| he__ | The invocation of the pass where it failed was "perl t/harness --gc-debug --running-make-test -j --runcore-tests" | ||
| Coke | he__: ok; use those options, and add the name of the test on the end. | 16:39 | |
| he__: (you might need to/be able to remove runcore tests and running make test) | |||
| he__: (but keep gc-debug and -j) | |||
| he__ | OK, I also see in the output "src/string/api.c:1051: failed assertion 's'", followed by a core dump. | 16:40 | |
| jrtayloriv | whiteknight, interpinfo doesn't seem to contain any information about the architecture in it -- it's all GC-related data. What I need is some sort of enum that tells me whether they are using i386, i686, sparc, ia64, etc. | ||
| Coke | jrtayloriv: that's in the config. | ||
| look at: | |||
|
16:40
MoC joined
|
|||
| whiteknight | I'm sorry, I swore that was in interpinfo somewhere | 16:40 | |
| Coke | code.google.com/p/partcl/source/bro...ib.pir#135 | 16:41 | |
| particle | i'm wondering, do we generate a c header with parrot config info? | ||
| jrtayloriv | whiteknight, no prob | ||
| Coke, thanks | |||
| Coke | jrtayloriv: np | 16:42 | |
| particle | we generate pir/pasm, and pm files, but .h? | ||
| Coke | particle: if you can get it from PIR, you can get it from C, no? | 16:43 | |
| whiteknight: technically, the config info lives in the interp. =-) | |||
| particle | if you call a pir op from c, i guess | ||
| Coke | config = interp[.IGLOBALS_CONFIG_HASH] | ||
| (whoops - look at line 124, jrtayloriv ) | 16:44 | ||
| jrtayloriv | Coke, right, I saw it -- thanks again. | ||
| he__ | OK, so that's the jit variant, and ... this may prove that simply commenting out the offending line which prevented the build in src/jit/ppc/core.jit, line 1299 was not the right course of action. | 16:46 | |
| dalek | kudo: c6bf7b8 | moritz++ | (3 files): make Rakudo build on parrot after context_pmc3 branch merge |
16:52 | |
| mikehh | partcl make spectest (took 1 hour 45 minutes + a few seconds) no segfaults - log file = 1040114 | 16:53 | |
| Coke | mikehh++ - did all files have a "Passed" line near the end? | 16:56 | |
| (how are you running the tests, 'make spectest' ?) | |||
| (if you use 'make specinfo', it does the same thing, but also captures output into docs/) | |||
| mikehh | Coke: make spectest 2>&1 | tee spectest.679.40979.log | 16:58 | |
| Coke: I try that next time | |||
| Coke either that or skipped | 16:59 | ||
| Coke | then you can do an svn diff to see if there were any regressions. | ||
| mikehh++ | |||
| (I'd be happy to give you commit bits to update the spec test results. =-) | 17:00 | ||
| mikehh | I don't think I'll be running it every test run - maybe a couple of times a week | 17:01 | |
|
17:02
Andy joined
17:05
fperrad_ joined
|
|||
| dalek | rrot: r40960 | fperrad++ | trunk/tools/dev (2 files): [languages] install dynops & dynpmc in languages/lang/dynext |
17:06 | |
|
17:12
mokurai joined
17:20
iblechbot joined
|
|||
| dalek | rtcl: r681 | coke++ | trunk/docs/spectest- (2 files): Update spectest status , notably: - new record passing tests, up 37. - run against a parrot post context mergeback. - this run took 31% longer than the last run. (!!) (partially due to the 2 new test files) |
17:27 | |
|
17:30
joeri joined
|
|||
| duk3leto | 'ello | 17:32 | |
|
17:33
cotto joined
|
|||
| Coke | I eagerly await our new profiling overlords. | 17:35 | |
| cotto | ohai | 17:37 | |
| Coke | cotto: any blockers on mergeback? | 17:46 | |
| I'm running one of the small spec tests for tcl now to see what happens. (of course, that loads tcltest.tcl and init.tcl, which is a LOT of code.) | 17:47 | ||
| cotto: do you keep the pprof output in memory before dumping it, or somewhere in /tmp? | |||
| ah, there it is. | |||
| cotto | it's currently written to a file as it's collected. | 17:49 | |
| nopaste | "coke" at 72.228.52.192 pasted "cotto: memory pig." (22 lines) at nopaste.snit.ch/17797 | 17:50 | |
| Coke | (that runs to completion on trunk.) | ||
| cotto: "profile will usually be named parrot.pprof.XXXX" - XXXs in teh wrong spot? | 17:51 | ||
| also, how did you get the parrot PID? | |||
| cotto | nope. I recently changed it. | ||
| getpid() | |||
| Coke | ah. that's not exposed to PIR, is it. | ||
| (nope) | 17:52 | ||
| cotto | That runcore still has some bugs that I need to fix, so it's not surprising that it breaks with tcl. I'll be merging back once it's a little more useful. | 17:53 | |
| Coke | ok. I've (previously) found it ok with smaller test files, FYI. | ||
| is getpid c89? | 17:56 | ||
| jrtayloriv | Coke, Don't think so -- seems like that would be part of a POSIX/BSD standard, rather than a C Language standard. | 17:59 | |
| Coke, my man pages aren't showing it as c89, anyway. | |||
| darbelo | Coke: www.opengroup.org/onlinepubs/009695...etpid.html | ||
| cotto | Coke, good point. I should check if windows has that function. | 18:00 | |
| Coke | cotto: if it doesn't, i suggest writting a Parrot_* function that we can then invoke from pir. | ||
| cotto | Yup. They just spell it with a leading underscore. | 18:01 | |
|
18:02
chromatic joined
|
|||
| whiteknight | getpid is not c89 | 18:02 | |
| cotto | Hmmm. src/gc/malloc_trace.c uses it without the leading underscore. | ||
| whiteknight | that file should be deleted | 18:03 | |
|
18:03
skeeterbug left
|
|||
| cotto | It exists, it's just deprecated. A #define should suffice. | 18:03 | |
| dalek | rrot: r40961 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c: [profiling] #define getpid to _getpid on windows and get rid of some macros that are taken care of by hints |
18:17 | |
| Coke | from pir, if I do a dlfunc, that define isn't going to help, yes? | 18:24 | |
| cotto | correct; it won't | 18:25 | |
|
18:36
rbaumer joined
18:39
silug joined
18:41
jan joined
18:59
theory joined
|
|||
| darbelo | Ayone familar with the unmanagedstruct PMC: ping | 19:14 | |
| NotFound | whiteknight: looks like #define GC_USE_FIXED_SIZE_ALLOCATOR 1 is working now | 19:15 | |
| whiteknight | really? on all platforms? | 19:16 | |
| I remember it had the most problems on win32 | |||
| NotFound | amd64 | ||
| darbelo | Where do I #define that to test it? | ||
| whiteknight | should be in include/parrot/gc_api.h I think | ||
| NotFound | darbelo: include/parrot/gc_api.h | ||
| whiteknight | If it's working, we can try enabling it and see if it gives us a performance boost | 19:17 | |
| NotFound | whiteknight: partcl and rakudo pass make test | ||
| whiteknight | okay, that's a good sign | ||
| darbelo | ok, running make test on OpenBSD amd64 | 19:18 | |
| whiteknight | I'm testing on win32 now | 19:19 | |
|
19:20
donaldh joined
|
|||
| whiteknight | doesn't build on win32 with the flag | 19:23 | |
| no idea why either, it doesn't spit out any error messages | 19:30 | ||
| make just stops at miniparrot | |||
| NotFound | Building now in linux 32 | 19:34 | |
| whiteknight | If we can get it working on win32, that should be it | 19:36 | |
| I know it works elsewhere | |||
| Or, I'm reasonably sure about it | 19:37 | ||
| NotFound | There is some difference in the code for windows? | ||
| darbelo | whiteknight: make test is chugging along fine in OpenBSD. | ||
| whiteknight | NotFound: none that I know of. I'm staring at the code now and don't seen any reason why it should fail | 19:38 | |
| It just doesn't wok | |||
| work | |||
| how would I even go about debugging something on Windows? I have Visual Studio, but if I'm notbuilding Parrot in VS it's basically worthless as far as I can see | 19:44 | ||
| NotFound | whiteknight: I use printf debugging ;) | ||
| jrtayloriv | whiteknight, looks like gdb is available for windows | 19:49 | |
| whiteknight | yeah, I'll have to look at that later | ||
| because I hate printf debugging | 19:51 | ||
| it's only good to tell you where a problem is happening, not what causes it | 19:55 | ||
|
20:03
rbaumer joined,
MikHel joined
|
|||
| whiteknight | okay,the problem appears to be happening somewhere in Parrot_gc_get_attribute_pool | 20:09 | |
| It allocates sets of PMCs with attribute sizes 24, 4, 12, 8, and then it breaks when it tries to allocate an object of size 32 | 20:12 | ||
| NotFound | What is GC_ATTRIB_POOLS_HEADROOM ? | 20:17 | |
| whiteknight | got it! | ||
| it's like a buffer, so we allocate space for more pools then we need | |||
| the goal is to try to reduce the number of resizes for the pool | |||
| I think it's value is 8 | |||
|
20:18
bacek joined
|
|||
| bacek | Good morning | 20:18 | |
| purl | And good moroning to you, bacek. | ||
| whiteknight | hello bacek | 20:19 | |
| bacek | whiteknight: hi. | ||
| How many complains after merge? | |||
| whiteknight | I think I have my fixed-size gc problem solved | ||
| yes, apparently PPC has JIT, and it's broken | |||
| chromatic | PPC JIT is probably fixable, but I don't know how worthwhile it is. | 20:20 | |
| whiteknight | I'm not able, so I'm not going to give any opinion on it | ||
| chromatic | It's usually something minor, like changing the way you access a struct member. | 20:21 | |
| whiteknight | yeah, I just don't know PPC asm very well | ||
| chromatic | I fixed that up on the context branch before it merged, but I didn't fire up the PPC box to test. | ||
| whiteknight | although I probably have a book about it somewhere | ||
| NotFound | whiteknight: Do you have a patch? | 20:23 | |
| moritz | opbots: trust whiteknight | 20:24 | |
| slavorg | But I already trust whiteknight | ||
| slavorgn | But I already trust whiteknight | ||
| dalek | rrot: r40962 | whiteknight++ | trunk (2 files): Fix and enable the fixed-size object allocator on windows. Also, enable it on Linux. The problem was that I wasn't initializing the pools array properly, leaving the last item in the array non-null, which caused some issues later. |
20:26 | |
| whiteknight | NotFound: better, and more reckless! committed in r40962 | ||
| NotFound | Ah, good :) | ||
| whiteknight | I'm testing on TEH LUNIX now | 20:28 | |
| Coke | opbots, names | ||
| (that's how you get them to re-trust) | |||
| bacek: full spect test on partcl had no (major?) regressions. | |||
| (we dropped one test in one file, but that was probably me.) | 20:29 | ||
| whiteknight | ...and tests pass on Linux64 | ||
| NotFound | bacek: there is a segfault in a parrot_debugger test, but is a TODOed test for a feature that doesn't work since long time | ||
| Coke | NotFound: the segfault you found in binary after clone null string fix is already reported in trac for another test file. | ||
| in binary.test for partl. | 20:30 | ||
| (partcl) (AIGH) | |||
| chromatic | I fixed a couple of those last night. | ||
| NotFound | Coke: I'm having a mix of segfaults in my head and no longer know what is what %-) | ||
| bacek | NotFound: I hope dukeleto can fix it | 20:31 | |
| Coke: good! | |||
| whiteknight | and with that, gentlemen, I'm leaving. | ||
| NotFound | chromatic: I'm not sure that an empty string is a good clone of a null string | ||
| chromatic | I'm not either, but what are the other options? | 20:32 | |
| whiteknight | STRINGNULL | ||
| NotFound | A null styring | ||
| chromatic | We should have a STRINGNULL. That'd solve so many problems. | ||
| pmichaud | Null String exception | ||
| what happens if we clone a Null PMC ? | |||
| whiteknight | #define STRINGNULL 0x01 | ||
| #define STRINGNULL (STRING *)0x01 | |||
| chromatic | I don't like that #define; I say we make a real STRING and consider it STRINGNULL. | 20:33 | |
| whiteknight | It's not the same as NULL, but it's definitely not a valid string | ||
| chromatic | Null object pattern. | ||
| whiteknight | that's fine too. Whatevs | ||
| NotFound | What will be the benefit? As long as string don't have a function table, I don't see any. | ||
| particle | i got so damned much pushback years ago when i tried to add STRINGNULL | ||
| whiteknight | and now you are getting a pushforward! | ||
| chromatic | How do you tell a NULL pointer (probably an accident) from a NULL STRING (possibly on purpose)? | 20:34 | |
| whiteknight | later | ||
| particle | chromatic: by the length of its tail. | ||
| chromatic | This all smells like a semi-predicate problem to me. | 20:35 | |
| If we continue to treat NULL and NULLSTRING as equivalent, our function annotations in C won't help us find real bugs. | |||
| particle | please create STRINGNULL. | 20:36 | |
| NotFound | If we annotate as non null functions called directly with the content of string registers that can be null, surely they don't help. | 20:37 | |
| chromatic | Let me think about how to do that easily and sanely. | ||
| If we have STRINGNULL, we can initialize STRING registers to it directly, same as we do PMC registers to PMCNULL. | |||
| NotFound | Don't forget that this may imply to change a lot of init vtable functions to initialize STRING * attrs | 20:38 | |
| particle | autoattrs should do that | ||
| NotFound | autoattrs just allocate space and zero fills right now | ||
| particle | right, but it can be made smarter, to fill with PMCNULL or STRINGNULL as appropriate | 20:39 | |
| chromatic | That's definitely a benefit of autoattrs. | 20:40 | |
| NotFound | Not a bad idea, it may allow to delete several init | 20:41 | |
| chromatic | Hopefully! | 20:43 | |
| Coke | Or, we could re-examine the proposal to eliminate strings in place of Strings. =-) | ||
|
20:44
rbaumer left
|
|||
| dalek | rrot: r40963 | chromatic++ | trunk/src/jit/ppc/core.jit: [JIT] Removed a mistake in PPC JIT introduced in a fixup for the context_pmc3 |
20:47 | |
| NotFound | What's store_global ? Old version of set_hll_global ? | 21:07 | |
| chromatic | Sounds right. | ||
| dalek | kudo: b51d94c | (Solomon Foster)++ | src/setting/Complex.pm: Add Complex.sin and Complex.cos functions. |
21:18 | |
|
21:24
joeri left
|
|||
| Coke | didn't I rip those out? | 21:27 | |
|
21:27
bacek joined
|
|||
| dalek | rrot: r40964 | NotFound++ | trunk/t/pmc/threads.t: [cage] make some TODOed test at least compile |
21:32 | |
| Coke | NotFound: ah, guess not. danke. | 21:34 | |
| NotFound | Anyway one of that tests seem to depend on gone with the wind features | 21:35 | |
| Coke | yah, those are harder to catch when ripping things out (skip/todo) | 21:39 | |
| ok, committing a massive hack to partcl's [regexp] to avoid the recursion on the regexp '($|^X)*' {} | 21:40 | ||
| (it's really a very teeny hack, but still.) | |||
| code.google.com/p/partcl/issues/detail?id=102 if anyone can remember the original PGE ticket I can link to it. | |||
|
21:41
Whiteknight joined
|
|||
| Coke | are events working for parrot yet, anyone using them? | 21:42 | |
| bacek | Coke: I don't think that events are working... | 21:43 | |
| chromatic | They should be. | ||
| If they aren't, the timer tests will start failing. | |||
| Coke | (need to support [after], [bgerror], [vwait]...) | 21:44 | |
| Whiteknight | we need to get some benchmarks for pre- and post-40962 | 21:45 | |
| Coke | yay, that hack adds at least 168 more PASS. | ||
| Whiteknight | to see if the fixed-size allocator really does save us anything | ||
| dalek | rtcl: r682 | coke++ | trunk/runtime/builtin/pid.pir: improve [pid] stub. |
21:49 | |
| rtcl: r683 | coke++ | trunk/runtime/builtin/regexp.pir: Update issue 102 hang. |
|||
| Coke still has 9 segfaults in the spec run. | 21:52 | ||
| jrtayloriv | Is GMS garbage collection supposed to be building without errors? If so, it supposed to be *working*? | 21:53 | |
| bacek | jrtayloriv: no... | 21:54 | |
| jrtayloriv | bacek, ok thank you. | ||
| dalek | rtcl: r684 | coke++ | wiki/SpecTestStatus.wiki: workaround committed for issue #102 lets these files run to completion. |
||
| bacek | Whiteknight: now much effort to make GC pluggable? | ||
| (And plug Harmony's gc for example) | 21:55 | ||
| Whiteknight | bacek: I really have no idea. I suspect it shouldn't be too hard. See what I did in one evening with the INF collector | ||
| However, the bigger issue is the string allocator, which is an evil mess | |||
| bacek | Whiteknight: good point. | ||
| Just throw it away. | 21:56 | ||
|
21:56
japhb joined
|
|||
| Whiteknight | bacek: that might not be such a bad idea, except I don't think it's well-encapsulated | 21:59 | |
| darbelo | Whiteknight: encapsulate it, then throw it away :) | 22:02 | |
| Whiteknight | that's not too far off the mark | 22:03 | |
|
22:05
beta joined
|
|||
| Coke | huh. [string repeat {;incr i;} 1500000] finishes pretty quickly. if I turn that around and pass it to [proc] to build a sub with, performance goes all to hell. | 22:05 | |
| chromatic | Does [proc] reevaluate its body on every invocation? | 22:10 | |
| Coke | proc builds the sub. | ||
| I'm not even getting to the invocation. | 22:11 | ||
| chromatic | Does said sub reevaluate? | ||
| Coke | the top level does not, IIRC. anything nested does. | ||
| but we're not even getting that far. | |||
|
22:12
beta left
|
|||
| chromatic | Okay. | 22:12 | |
| Coke | a proc that has about 1000 * that length takes about 8s to compile. | ||
| chromatic | Wow. | ||
| Coke | a proc that has about 2000 * that length takes about 35s to compile. | ||
| chromatic | Big O, Little O... I'm the one with the gun. | ||
| Coke | the test is trying to compile one with 1,500,000 | ||
| This is my bOOmstick. | |||
| I think I'll avoid trying to fix that one until the profiler is working. | 22:13 | ||
| chromatic | Agreed. | 22:14 | |
| Coke | lesse, expr.test was running out of memory, but that was after emitting a bunch of PIR compilation errors, wonder if I can avoid the memory explosion by fixing that. | 22:18 | |
| dear god, I'm using THREE CVSs to hack on partcl. | 22:19 | ||
| s/CVS/VCS/ | |||
| (though one is cvs) | |||
| dalek | rtcl: r685 | coke++ | wiki/SpecTestStatus.wiki: document a hang. |
||
|
22:25
kid51 joined
22:41
rg1 joined
22:42
payload joined
22:46
payload joined
|
|||
| Whiteknight | Coke: what are you using CVS for? | 22:59 | |
| darbelo | Whiteknight: I think TCL uses it, and coke pulls the spectest from there. | ||
|
23:03
ruoso joined
|
|||
| Whiteknight | ok | 23:08 | |
|
23:20
donaldh joined
|
|||
| darbelo | Does anyone know where I can find the docs on the format string for the parrot printf functions? | 23:23 | |
| chromatic | I'm not sure we have any. | 23:25 | |
| darbelo | Oh, does anyone know what "%.*s" is supposed to do then? | 23:27 | |
| chromatic | That looks like a standard POSIX sprintf format to me; maybe man sprintf would help you. | 23:29 | |
| jonathan | I think it takes a length as well as a char pointer and outputs that many chars or something like that. | 23:35 | |
| duk3leto | darbelo: man 3 printf | 23:51 | |
|
23:58
Whiteknight joined
|
|||
| pmichaud | "%.*s" would be the same as "%.10s" except the "10" comes from an argument instead of being coded in the format | 23:58 | |
|
23:59
Limbic_Region joined
|
|||