www.parrot.org | 1.5.0 "TEH PARROTZ!" Released! | Weekly development focus: Bugfixing and stability. Keep those branches merging!
Set by moderator on 26 August 2009.
mikehh partcl r639 builds on parrot r40820 - make test - Most tests file with no subtests run or segmentation fault - Files=74, Tests=95 00:03
cardinal builkds on p[arrot 40820 - make test fails after running a few tests - get_pmc_keyed() not implemented in class 'String - rake aborted 00:10
darbelo: I will try that patch later - need some sleep - bbl 00:11
bacek_at_work darbelo: (nopasted patch) just cast it explicitly. Something like "PARROT_DECNUMCONTEXT(SELF)->ctx->round = (rounding)rnd" 00:16
00:17 patspam joined
dalek cnum-dynpmcs: r176 | darbelo++ | trunk/src/pmc/decintcontext.pmc:
Undo r175, it broke DecIntContext for some reason.
00:38
darbelo mikehh: no need to patch, just svn up ro r176 00:39
msg mikehh no need to patch, just svn up to r176 00:40
purl Message for mikehh stored.
darbelo msg Well, r177 actually. 00:43
purl Sorry, I've never seen well, before.
dalek cnum-dynpmcs: r177 | darbelo++ | trunk/src/pmc/decnumcontext.pmc:
Add explicit casts to a few lines. This should help the c++ build.
darbelo msg mikehh Well, r177 actually.
purl Message for mikehh stored.
jrtayloriv What is the proper way to go about converting a test to use test_more.pir when the tests just check to make sure a certain point in the code is reached, for instance in this test -- pastebin.com/d7aaff738 -- in the sub 'init', where it is just checking that "init" gets printed, should I just replace the print statement with an ok(1==1, 'entered init()') ? 01:05
cotto ok(1, "...") is fine for that purpose
darbelo also, jrtayloriv check out nopaste, it automatically puts likns your pastes to this channel (if you tell it to). 01:13
nopaste.snit.ch is the cannonical url 01:14
jrtayloriv darbelo, thanks -- will do
darbelo or you can ask purl:
nopaste?
purl nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo
TonyC put the channel name on the end of the url and it selects that channel by default
so nopaste.snit.ch/parrot (not in the factoid, or you'd get all the random pastes in here) 01:15
cotto anyone on windows care to try a patch? 01:16
darbelo Failed 17/17 test programs. 0/14629 subtests failed. 01:18
I just love order of destruction bugs.
jonathan cotto: I need to sleep now, I'm afraid.
cotto: But I may have time tomorrow. 01:19
cotto I'll bug you if nobody else volunteers.
darbelo I've been meaning to set up a windows environment to see how badly decnum-dynpmcs fails there. 01:20
TonyC the certicate is received as part of the https handshake, but it doesn't look like LWP exposes it
darbelo I'll let you know if I get one going.
TonyC wrong channel
nopaste "jrtayloriv" at 67.246.145.82 pasted "yet another question about converting tests :)" (59 lines) at nopaste.snit.ch/17697 01:34
bacek_at_work jrtayloriv: yes. This is correct. 01:37
jrtayloriv thanks
darbelo Hmm. Smolder is reporting my failures as passes. 01:41
Is tehere a particular way/place to repport that? 01:42
cotto particle, can you test a patch against pluggable_runcores on windows? 01:43
treed Coke: Planet Parrot doesn't seem to have picked up the update yet. 01:55
dalek TT #953 created by darbelo++: [gc] t/op/copy.t failure in OpenBSD amd64 01:59
01:59 darbelo left
cotto Coke, are you on windows? 02:00
02:12 theory joined
bacek_at_work Yay! t/op/copy.t failure! I spent 4 hours yesterday thinking it was my fault in context_pmc3 branch... 02:12
with exactly same backtrace... Sigh. 02:13
dalek rrot: r40821 | cotto++ | branches/pluggable_runcore (8 files):
[profiling] first attempt at an abstraction layer for high-resolution timing, including an untested win32 implementation
02:14
cotto anyone on win32, please check out pluggable_runcore, lmk if it builds and see if parrot.pprof is generated when you pass parrot -Rprofiling . 02:20
Happily there's about 4 lines of windows-specific code, so it should be pretty easy to fix if I messed it up. 02:21
dalek rrot: r40822 | cotto++ | branches/pluggable_runcore/config (7 files):
[config] use hints instead of #defines to try to figure out the best available timing method

  darbelo++ for putting together most of the patch
02:24 mokurai joined 02:28 TiMBuS joined
cotto Now the only excuse I have for not merging is that my code is crappy and doesn't work, rather than being crappy, not working and not being cross-platform. 02:30
02:36 janus joined 02:37 skv_ joined
dukeleto cotto: that is a start 03:00
msg darbelo i helped fix a bug in smolder a while ago that didn't correctly see that some tests coredump. you may have found another bug. mpeters is the person to talk to, but I know where in the code to look, can you show me a nopaste of the error that is not caught correctly? 03:02
purl Message for darbelo stored.
dukeleto how do I tell purl to delete messages once I have seen them? 03:04
cotto messages erase 03:05
you don't even have to read them first ;)
dukeleto cotto++ 03:07
nopaste "jrtayloriv" at 67.246.145.82 pasted "Why are the regsave_marked() tests being ignored?" (130 lines) at nopaste.snit.ch/17698 03:08
dukeleto jrtayloriv: can i see the output you get from "prove -v t/op/gc.t" and the entire file as well? 03:11
jrtayloriv dukeleto, yes -- one moment 03:12
treed has successfully managed to get rake test:all to keep running other tests when something bails out. 03:14
nopaste "jrtayloriv" at 67.246.145.82 pasted "There are actually 117 tests." (270 lines) at nopaste.snit.ch/17699 03:15
jrtayloriv And, for instance, if you add an ok(1) as the first instruction in regsave_marked() it doesn't see the new test. 03:16
It still only sees 115 tests.
And it properly counted everything before regsave_marked, so I think it has something to do with my use of .namespace in vanishing_ret_continuation() 03:17
dukeleto jrtayloriv: the -v on prove is somewhat important :) 03:18
jrtayloriv dukeleto, oops -- didn't see that, sorry -- I'll post it up again. 03:19
dukeleto jrtayloriv: is it possible to put all of your tests before the namespaces that you declare?
jrtayloriv: what happens if you move the regsave_marked test to the top of the file ? 03:20
jrtayloriv: you probably have found a bug, but not the one you are testing for :) Those are the best kind
nopaste "jrtayloriv" at 67.246.145.82 pasted "jrt4@localhost ~/code/parrot-t" (16 lines) at nopaste.snit.ch/17700 03:22
jrtayloriv dukeleto, it might also just be that I mistranslated it from PASM to PIR -- I'll post up the original test ... one sec 03:23
dukeleto jrtayloriv: your test is throwing an exception that you are not catching
03:25 Andy joined
nopaste "jrtayloriv" at 67.246.145.82 pasted "====================== Origina" (113 lines) at nopaste.snit.ch/17701 03:26
jrtayloriv dukeleto, Is the uncaught exception something I did wrong, or a bug? 03:27
dukeleto jrtayloriv: not sure yet 03:29
jrtayloriv: can you atttach the entire gc.t file to the ticket at trac.parrot.org/parrot/ticket/950 so that others can test it out? you can try running the PIR test under the debugger and getting a backtrace. then you can break out gdb if you really want to nuke the embankment :) 03:31
jrtayloriv: ./parrrot_debugger t/op/gc.t 03:32
jrtayloriv dukeleto, Should I attach the current copy (i.e. with regsave_marked() at the top of the file), or the original, or both?
dukeleto jrtayloriv: do they both have the same behavior? if so, one should be fine
jrtayloriv: then type "c" then enter 03:33
jrtayloriv: "h" or "help" to get a basic description of the parrot debugger commands
jrtayloriv parrot_debugger just gave me exactly the same output as prove -v (namely --> pastebin.com/d6db83426) 03:35
I'll play around with the debugger for a moment, and then attach gc.t to the ticket. 03:36
03:37 payload joined
treed purl: msg jdv73 I fixed the Rakefile so that the test suite (and therefore "rake report") will complete even when individual tests bailout. When bailout occurs, the output from that test will simply be "FAILED TO COMPILE". Let me know if something else would work better with smolder. 03:45
purl Sorry, I've never seen jdv73 before.
treed huh.
purl: msg jdv79 I fixed the Rakefile so that the test suite (and therefore "rake report") will complete even when individual tests bailout. When bailout occurs, the output from that test will simply be "FAILED TO COMPILE". Let me know if something else would work better with smolder.
purl Message for jdv79 stored.
treed Aha. 03:46
purl: msg mikehh Latest update to cardinal will cause the test suite complete after the point where compilation fails.
purl Message for mikehh stored.
dalek rdinal: 8d2377f | treed++ | Rakefile:
Fix the Rakefile so that test suites will still complete if individual files bail out.
dukeleto jrtayloriv: you may want to try "gdb parrot" then "run t/op/gc.t" then "bt full" 03:49
jrtayloriv dukeleto, I'm trying to set a breakpoint in parrot_debugger at line 26 with 'break 26', but then when I do 'continue', it just runs until exit and doesn't stop at my breakpoint. 03:50
dukeleto jrtayloriv: yeah, breakpoints don't work. Forgot to tell ya'. Here is your gold watch :) Want to add a ticket for it? 03:51
jrtayloriv 'bt full' in gdb gave "no stack"
treed purl: msg coke that Coding Red still isn't on planet parrot 03:52
purl Message for coke stored.
dukeleto jrtayloriv: there are lots of tests (that I wrote) for breakpoints, but the debugger lies and *says* it is setting breakpoints, and that is what the tests test, but it just goes ahead and doesn't do that. We need a test that physically verifies that the breakpoint is stopped at, not that the debugger says it has set one
msg coke i would like to get on planet parrot, do you have a preferred flavor of rss/atom feed? 03:53
purl Message for coke stored.
03:53 mrsaturn joined
dukeleto jrtayloriv: i guess we need to set the proper gdb breakpoint to get proper bt 03:55
jrtayloriv I just set one for null_pmc_access 03:56
Is that a good place to start? 03:57
Here is what I got with that --> pastebin.com/d458513f9 04:00
dukeleto jrtayloriv: the function before null_pmc_access is Parrot_set_p_sc, that means a PMC is being set to a constant string, but the PMC seems to be NULL 04:02
04:10 allison joined
jrtayloriv dukeleto, Should I post any of the gdb session on the ticket along with the gc.t file and the error from prove -v? 04:13
dukeleto jrtayloriv: yes please and thank you
04:15 kyle_l5l joined 04:20 mokurai joined 04:21 mrsaturn joined
jrtayloriv dukeleto, posted up everything on the ticket -- sorry for pestering you :) 04:25
dukeleto jrtayloriv: no pestering, it was fun. good work on the gdb stuff 04:26
bacek_at_work jrtayloriv: you missed 'newclass' on line 45 in gc-broken 04:35
jrtayloriv: it probably cause failure on line 61 04:36
dukeleto bacek: that would do it
jrtayloriv doh :) 04:37
bacek_at_work Sorry to tell it so late :) 04:38
dukeleto bacek++ 04:39
bacek_at_work __get_string should be marked with ":vtable". Double underscores are deprecated afaik
04:40 skv_ joined
jrtayloriv bacek_at_work, Thanks :) -- but now I'm getting this --> pastebin.com/d707e07ae 04:43
bacek_at_work try :method :vtable 04:45
and remove "get_params". 04:47
bah. sorry
get_params/set_params is PASM. Just use .param and .return(value) 04:48
in regsave you don't need params. Just use "self" 04:49
jrtayloriv bacek_at_work, I saw some tests in t/op/calling.t that use get_params in PIR -- is this not right?
bacek_at_work jrtayloriv: you can use get_params in pir 04:50
but .param is cleaner and easy to understand
jrtayloriv got it -- thanks again.
bacek_at_work pir is just syntax sugar for pasm. But very nice sugar :) 04:52
04:59 beta left
jrtayloriv bacek_at_work, I'm not understanding what you mean by "just use self" -- could you point me to something that I could read to understand this? 04:59
dukeleto jrtayloriv: methods get a variable called "self" 05:00
jrtayloriv dukeleto, right -- but how would I replace the get_params 0, $P2 statement by using self? -- I think my problem must be that I'm not understanding what get_params 0 is doing there. 05:01
I'm pretty understand what "self" is -- basically, it just refers to the object that the method is being invoked from, right? 05:03
dukeleto jrtayloriv: are there docs for get_params?
jrtayloriv dukeleto, very little -- pdd03 and the docs/op/core.pod 05:04
dukeleto jrtayloriv: yes, I see that 05:05
jrtayloriv I couldn't figure out what the 0 flag did for get_params
dukeleto jrtayloriv: it gets the 0-th argument to the method. i think you can just replace $P2 with self 05:11
and get rid of the get_params call
jrtayloriv dukeleto, OK, so the 0th arg to every method is self, followed by the parameters that are passed in? 05:12
dukeleto jrtayloriv: bingo
jrtayloriv thanks :) ... I might add that to the docs somewhere later, if it's not in there somewhere -- that would have been very helpful to know. 05:13
dukeleto jrtayloriv: from docs/pdds/pdd19_pir.pod 'The variable "self" automatically refers to the invocating object, if the 05:16
subroutine declaration contains "method".'
jrtayloriv well there we have it :)
I converted it to not use params, and just use self, but now it's back to another Null PMC error again ... pastebin.com/d4f2254fa 05:21
05:22 marius joined
jrtayloriv nm 05:24
dukeleto jrtayloriv: hmm, i don't think you can assign to self. you can use an unused $P* register 05:25
jrtayloriv: this is what is blowing up : getprop $P12, "buffer", self
jrtayloriv: hmm, that is assigning to $P12 actually, right ? 05:26
jrtayloriv yes
dukeleto jrtayloriv: but the order of the args may be wrong
i have never used getprop
jrtayloriv it was actually the line 'setprop $P2, "buffer", $P12' should have been 'setprop self, "buffer", $P12' 05:27
the order was right for getprop
dukeleto this makes me want to type "parrotdoc -f getprop" or somesuch. maybe someone should write that
jrtayloriv: nice work
jrtayloriv: so the test works now?
jrtayloriv nope :)
pastebin.com/d1ea092e3 05:30
I still think I might be doing something wrong with .namespace too -- see how it says the bit about 'nonexistent sub sweep_1' ? That's the sub defined right below regsave_marked() 05:31
bacek_at_work jrtayloriv: more sugar! "getprop $P12, "buffer", self" is same as '$P12 = getprop self, "buffer"'
jrtayloriv bacek_at_work, same w/ setprop as well? 05:33
i.e. setprop $P12, "buf", $P14 ----> $P12 = setprop "buf, $P14
dukeleto jrtayloriv: yes 05:35
jrtayloriv: all opcodes follow that convention. "opcode arg1, arg2, arg3" is the same as "arg1 = opcode arg2, arg3" 05:36
jrtayloriv: the opcodes are actually implemented as the 3 arg versions, and then the "a = b" syntax in sugar in PIR
cotto sweet sweet sugar 05:37
seen chromatic 05:38
purl chromatic was last seen on #parrot 2 days, 9 hours, 10 minutes and 46 seconds ago, saying: will not be at the meeting tomorrow. [Aug 24 20:21:11 2009]
cotto unusual, that
bacek_at_work dukeleto: "all" is deprecated. Only opcodes which returns value
dukeleto cotto: it is nice weather in portland :) 05:39
bacek: touché 05:40
jrtayloriv: funky stuff 05:46
jrtayloriv: do you have the latest version attached to the ticket, with the getprop/setprop fixes? 05:47
jrtayloriv dukeleto, no -- I'll post it up and overwrite the old version of gc.t--broken (since it is still broken) 05:48
dukeleto sounds good 05:49
jrtayloriv done. 05:50
05:51 mokurai left
dukeleto jrtayloriv: moving the namespaces to the end of the file makes all the tests run, but the first 2 still fail 05:57
jrtayloriv: looks like it wants namespace [ ] instead of namespace [""] 06:01
jrtayloriv: just attached my version to the ticket 06:05
jrtayloriv dukeleto++ 06:08
dukeleto jrtayloriv: it seems that the giving .namespace an empty string versus nothing is a whole different ball-game 06:09
anybody know if that is a bug or a feature?
bacek_at_work [] and [""] different namespaces
dukeleto bacek_at_work: danke. so [] is the root namespace while [""] is the namespace formerly known as an empty string? 06:10
jrtayloriv What would [""] be useful for? 06:11
06:12 uniejo joined
dukeleto jrtayloriv: if you wanted a namespace called "" :| 06:13
jrtayloriv: it does not reset to the normal root namespace. that is the important part
jrtayloriv yep, just wandering what type of situation that might come up in -- thanks for figuring that out. 06:14
dalek rrot: r40823 | NotFound++ | trunk/t/pmc/undef.t:
[t] add a new assign to undef test and modify check on the existing ones
06:32
dukeleto jrtayloriv: do you know why the first 2 tests fail?
jrtayloriv dukeleto, no idea -- I'm trying to figure that out right now 06:34
06:36 HG` joined 06:43 UltraDM joined
jrtayloriv dukeleto, Since the return values from newclass aren't getting used anywhere, I can just throw both of them into $P0, right? 06:45
instead of $P9 = newclass "Source" and $P10 = newclass "Source::Buffer"
(I don't understand why the author of the test did that) 06:46
dukeleto jrtayloriv: there is a difference to the garbage collector probably. i would leave it the same :) 06:47
jrtayloriv ok
dukeleto jrtayloriv: got it 06:49
jrtayloriv duk3leto, As far as numbering, would it matter if I changed the PMC registers to be all single digits to improve readability? There are only 7 PMC registers used in the test, so can I just use $P1 ... $P7 instead? 06:50
dukeleto jrtayloriv: i found the issue. we were trying to return things in a pasm style instead of ".return(foo)"
jrtayloriv: in theory, yes. in practice, watch out for macros, because they can alter the behavior of registers in odd ways 06:51
jrtayloriv: i will give you a working file and you can refactor it :)
jrtayloriv: i just attached the working version at trac.parrot.org/parrot/ticket/950 06:52
jrtayloriv dukeleto, Thanks :) 06:53
dukeleto jrtayloriv++ for doing most of the hard work
jrtayloriv bah
moritz allison++ # context_pmc3 review 06:58
allison moritz: :)
moritz I don't understand it all, but it sounds thorough and sensible
bacek_at_work allison: hi
purl hello, bacek_at_work.
moritz (and it also sounds like a lot of work to me) 06:59
allison bacek: hi
purl what's up, allison.
bacek_at_work allison: CONTEXT_FIELD and CURRENT_CONTEXT_FIELDS macros are temporary. I'm in progress of replacing them with proper functions.
allison bacek: okay, that'll work 07:01
bacek_at_work allison: I put '//' and 'XXX' specially to quick find broken stuff.
just to remind my self where I cut corner.
allison bacek: as long as they don't make it back into trunk, that's fine (we've just had a lot of XXX leak back into trunk over the years, with some major clean up work required to get rid of it) 07:02
bacek_at_work And I tend to disagree with CONTEXT macro. It backward incompatible anyway. Because Parrot_Context structure is changed.
allison: (XXX) yep. 07:03
allison bacek: what's changed in the structure?
bacek: you should be able to keep the structure the same
bacek_at_work I store PMC* instead of Parrot_Context*.
allison that's the interpreter structure
bacek_at_work no 07:04
allison I mean what's changed in the Parrot_Context structure that's stored as the data element of the Context PMC?
bacek_at_work caller_ctx and outer_ctx
they were Parrot_Context* before.
allison that's fine, it's pretty minor
and, you already have functions to replace it 07:05
bacek_at_work s/to replace/to fetch content/ - yes
allison we're going to deprecate CONTEXT(interp) anyway, so there's no reason to change it to return a PMC
bacek_at_work ok 07:06
I'll replace cx prefix with pcc over weekend. CONTEXT_FIELD and CURRENT_CONTEXT_FIELD will be finally removed too.
allison bacek: the biggest thing I was concerned about going into the review was possible modifications to extend/embed API functions, but you 07:08
managed to avoid those
bacek_at_work btw, what "cx" prefix stand for? 07:09
allison Concurrency Xheduler 07:10
'cs' was already taken
bacek_at_work heh :)
anyway, I hit big roadblock with GC... TT#953... 07:13
07:27 iblechbot joined
NotFound I think I got it! Cross your fingers... 07:36
mikehh messages 07:39
dalek rrot: r40824 | NotFound++ | trunk/src/ops/set.ops:
[ops] fix copy opcode. Should fix all recent double-free errors
07:43
NotFound rakudo spectest PASS :) 08:22
mikehh NotFound++ 08:24
examples_tests PASS
08:31 masak joined
mikehh All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40824 - Ubuntu 9.04 amd64 (g++) 08:35
NotFound Gooooooood :) 08:36
mikehh rakudo (ec2f831) builds on parrot r40824 - make test / make spectest (up to r28077) PASS - Ubuntu 9.04 amd64 (g++) 08:42
08:47 skv_ joined
mikehh partcl r639 builds on parrot r40824 - make test fails the same 6 tests but all subtests PASS - Ubuntu 9.04 amd64 (g++) 08:48
cardinal (8d2377f) builds on parrot r40824 - make test - 593 tests were run, from 98 files, 510 tests passed, 0 of which were unexpected. 82 tests failed, 82 of which were expected. 08:58
cardinal There was 1 test file that reported fewer results than were planned: gen_time.pir, There were 3 complete failures: gen_08-class.pir, gen_alias.pir, gen_freeze.pir 09:01
decnum_dynpmcs r177 builds on parrot r40824 (g++) - make test gives a fail but all subtests PASS (Failed 17/17 test programs. 0/14629 subtests failed) - Ubuntu 9.04 amd64 (g++) 09:10
bacek_at_work Yay! NotFound++! 09:18
09:20 Whiteknight joined
NotFound Whiteknight: Have you seen r40824 ? 09:21
Whiteknight no 09:23
NotFound Whiteknight: looks like the copy opcode was the root of all evil 09:24
Whiteknight bacek has been having problems with the t/op/copy.t test in his branch 09:26
I bet this will help him out too
jonathan Ah, broken copy op woulda caused problems in Rakudo for sure. It's used very heavily. 09:30
dalek tracwiki: v34 | kjs++ | PIRCDevelopment
tracwiki: info about AST node types
tracwiki: trac.parrot.org/parrot/wiki/PIRCDe...ction=diff
09:44 skv_ joined
Whiteknight NotFound: so are all the bugs fixed now? 10:01
bacek_at_work Whiteknight: you wish :) 10:03
Yay! Only one test failing in my branch after merge with latest trunk!
NotFound Whiteknight: looks like they are, yes 10:04
Whiteknight NotFound++ 10:06
bacek_at_work: awesome!
purl i think awesome is a window manager or at awesome.naquadah.org or awesome!
Whiteknight which test, the exceptionhandler one?
bacek_at_work t/op/annotate. 10:08
but it based on exceptions 10:09
ok 16 - backtrace has enough elements 10:10
Null PMC access in get_string()
current instr.: 'backtrace_annotations' pc 428 (t/op/annotate.t:113) (loo.py:3)
mikehh partcl make spectest (completed in 43 minutes) (logged) 10:12
Whiteknight bacek: you saw allison's email? 10:15
10:17 PacoLinux joined
bacek_at_work Whiteknight: we've discussed it couple of hours ago 10:19
Whiteknight ok
I have to go get ready for work. Later 10:20
10:37 donaldh joined 11:00 MoC joined 11:21 donaldh joined 11:52 whiteknight joined 11:55 payload joined 12:21 Taulmarill joined 12:23 ruoso joined
dalek rrot: r40825 | NotFound++ | trunk/src/oo.c:
fix a leak due to a forgotten item in the conversion of Object PMC to auto_attrs
13:16
Coke msg cotto I am not normally on windows, but can be if the need is great. 13:36
purl Message for cotto stored.
Coke treed: pinged Ask about planet parrot, will let you know. 13:41
Right now tcl skips spec tests where all the tests fail or skip. 14:00
I'm thinking of re-enabling all the tests that run to completion; this should help catch more segfaults before they're introduced. 14:01
s/before/when/
I think this will impact me and mikehh and no one else. =-P 14:02
14:03 whiteknight_ joined
whiteknight good morning #parrot 14:13
Coke hey. 14:20
whiteknight hello Coke 14:22
14:22 Psyche^ joined
mikehh All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40825 - Ubuntu 9.04 amd64 (gcc) 14:25
14:34 bacek joined
Coke error:imcc:syntax error, unexpected DOT ('.') in file 'EVAL_132522' line 46 14:37
14:37 JimmyZ joined
Coke ugh. I get 97% of the way through expr.test now before a memory panic. 14:39
(which is much further than before. just so close. :|
14:39 MoC joined
dalek rrot: r40826 | NotFound++ | trunk/src/pmc/scheduler.pmc:
[pmc] enable mutex destroy in scheduler
14:43
14:44 iblechbot joined 14:50 kjeldahl joined
jrtayloriv I am working on converting a test from using pir_output_is to using test_more.pir. I am having an off-by-one problem that I think has to do with a check for recursion_depth/recursion_limit --pastebin.com/d1cc9ad8b ... Is the problem here due to the fact that the pir_output_is statement starts in :main while the test_more.pir test function is a sub that is called from :main? 14:51
14:53 MoC joined
jrtayloriv Basically, I could just lower the check to look for 8 instead of 9, or raise recursion_limit to 11, right? 14:53
bacek jrtayloriv: either way will work
jrtayloriv bacek, thanks 14:54
mikehh partcl r639 builds on parrot r40825 - make test same as before - Ubuntu 9.04 amd64 (gcc) 14:56
rakudo (ec2f831) builds on parrot r40825 - make test / make spectest (up to r28079) PASS - Ubuntu 9.04 amd64 (gcc) 14:57
Coke mikehh++ 14:58
15:07 kjeldahl joined 15:09 HG` joined 15:11 kjeldahl joined 15:20 donaldh joined 15:23 payload joined
Coke wanders out. Ping me via email. 15:26
15:26 rdice joined 15:28 payload1 joined 15:31 desertm4x joined
dukeleto msg jrtayloriv let me know if you want me to commit the version of gc.t that I attached or wait for your changes 15:32
purl Message for jrtayloriv stored.
jrtayloriv dukeleto, I'm on the last test right now 15:33
dukeleto jrtayloriv: sweet 15:34
jrtayloriv that way, we won't have to have two files
dukeleto jrtayloriv: yes, less churn is better
jrtayloriv I'm just reading up about how coroutines are dealt with so that I make sure I convert this one correctly 15:35
dukeleto, And there was an error (mine) left over in the version you attached (vanishing_ret_continuation() had a leftover 'end' from PASM -- which is why we had to move regsave_marked to the top) 15:38
15:38 darbelo joined
dukeleto jrtayloriv: yes, get rid of those "end" statements 15:38
jrtayloriv What does --> get_params ' ' <-- do? Does it just pop a parameter off of the stack and throw it away? 15:47
15:53 theory joined
dalek rrot: r40827 | jkeenan++ | branches/tt936_install_pct:
Creating branch to work on tt936.
15:57
darbelo dukeleto: saw your msg. There's an example of smolder mis-detecting failures in TT #953, which is where I first noticed it. 15:58
dukeleto darbelo: yes, i saw that ticket. looks like smolder is goofing on detecting the return code 16:00
16:01 kid51 joined
jrtayloriv dukeleto, I attached a patch to the ticket 16:02
dukeleto, gc.2.t is supposed to be the finished version of gc.t -- type
gc.t--patch is the patch from svn diff
kid51 I just had 5 minutes of trouble joining ircperlorg. Has anyone else experienced this?
moritz kid51: sometimes (only seldom for me) the DNS round robin suggests a server that's a bit broken 16:03
kid51: in that case I pick a different IP
jrtayloriv lol -- typo talking about my typo ... let's try that again ... dukeleto, gc.2.t is supposed to be the finished version of gc.t -- typo 16:04
dukeleto jrtayloriv: i will look at it later today 16:08
jrtayloriv dukeleto, great -- thanks again for helping me work through it.
16:17 MoC joined
dalek rrot: r40828 | jkeenan++ | branches/tt936_install_pct/MANIFEST.generated:
Change package for 4 PCT-related .pbc files from [pct] to [main] so that they install with 'make install' rather than 'make install-dev'.
16:19
purl dalek: that doesn't look right
darbelo mikehh: ping 16:31
16:45 whiteknight joined 17:01 buildbot joined 17:03 mokurai joined
duk3leto jkeenan++ for making pct part of the normal install and making rakudo happy 17:07
17:09 HG` joined
dalek cnum-dynpmcs: r178 | darbelo++ | trunk/src/pmc/decbase.pmc:
Hmm. Look at what sneaked in in a previous commit.
17:14
jrtayloriv I was going to start working on converting t/op/jit.t from pasm/perl to pure PIR, but I had a question involving how PIR does register allocation. Is 'set $I0, 1' in PASM exactly the same as '$I0 = 1' in PIR? I was wondering if it might not always be the same since PIR has unlimited # of registers. As long as I am only talking about registers that exist in PASM, will the set statements in PIR always be equivalent? 17:30
for example, do these do the same thing --> pastebin.com/d34f88040
mikehh darbelo: pong 17:32
whiteknight jrtayloriv: no 17:35
in PIR "$I20" is automatically allocated and mapped. in PASM, "I20" is the 20th register 17:36
the $ symbol is used in PIR, not PASM, and indicates that it is automatically managed 17:37
darbelo mikehh: Can you tell me what tests failed for you on decnum-dynpmcs?
jrtayloriv whiteknight, sorry I meant 'set I0, 1' for the PASM example.
whiteknight yeah, okay
duk3leto jrtayloriv: they do the same thing, but they have different workings behind the scenes 17:38
jrtayloriv right, so since these are trying to test something that is automatically taken care of in PIR, they need to be left as PASM correct?
mikehh darbelo: all failed I think but all subtests passed - they exited with code 11 which I think is a segfault
darbelo Did one of the few last lines look like 'Failed 17/17 test scripts. 0/14629 subtests failed.' 17:39
mikehh exactly 17:40
duk3leto jrtayloriv: you may want to keep using the "add" function instead of +. whether to use the 2 or 3 arg form is up to you
mikehh Failed 17/17 test programs. 0/14629 subtests failed
darbelo Then it's parrot's fault ;) 17:41
mikehh in other words passed all 14629 subtests
exit from t/harness
all test had Non zero wait status 11 17:43
darbelo It's a segfault during interpreter destruction. If you look at the coredump you'll se it dies at Parrot_pmc_destroy called (ultimately) from Parrot_exit.
jrtayloriv duk3leto, Well, I was going to just move on to something else if those tests need to remain in PASM -- thanks for pointing out about the 2 arg version of add, though -- didn't know I could do that. 17:44
mikehh darbelo: that's right - I am re-running with latest parrot now 17:45
darbelo mikehh: What platform are you on? I hadn't seen that happen outside of OpenBSD so far.
mikehh Ubuntu 9.04 amd64 17:47
17:47 mberends joined
mikehh darbelo: same story at r176 on parrot r40825 built with gcc 17:49
darbelo Hmm. Nevermind, I haven't tested on linux after the Great Merging took place, and this was introduced there.
mikehh yeah - a lot of problems have been fixed - but not all 17:50
whiteknight this is why it's good to merge things so early in the release cycle: so we have plenty of time to fix bugs
mikehh whiteknight :-} 17:51
I am going to switch to i386 (have to re-boot at the moment) I still can't get VirtualBox to work properly with my wireless connection 17:52
darbelo whiteknight: Definitely. Of course, parrot releases so often that 'early in the release' is, at most, a week. 17:53
mikehh still trying though
NotFound Most destroy problems should be fixed at head now 17:56
duk3leto jrtayloriv: i am not sure if that test requires pasm, but it was using the add function initially, so best to keep it the same 17:59
jrtayloriv: which test file are you attacking next?
18:01 jan joined
jrtayloriv duk3leto, Not sure yet. 18:02
mikehh anyway bbiab 18:04
cotto jonathan, ping 18:06
18:08 mikehh joined
mikehh ok back - on Ubuntu 9.04 i386 for a bit 18:09
darbelo NotFound: most, but not mine :) 18:11
duk3leto jrtayloriv: i am working on t/pmc/integer.t, anyelse else is fair game 18:12
18:12 iblechbot joined 18:13 kid51 joined
darbelo NotFound: I can confirm that TT#953 does looks fixed here, tough. 18:16
cotto msg jonathan When you have a few minutes, please checkout pluggable_runcore and let me know if it builds and if it generates a sane parrot.pprof when run with -Rprofiling . 18:26
purl Message for jonathan stored.
dalek rrot: r40829 | cotto++ | branches/pluggable_runcore (2 files):
[profiling] remove some redundant info from the profile and a minor cleanup
cotto msg jonathan Here "sane" means that the second column of numbers looks like it could represent the time taken by the specified opcode. examples/pir/sudoku.pir is a good test if you don't have any complex pir lying around. 18:30
purl Message for jonathan stored.
mikehh All tests PASS (pre/post-config, smoke, nqp_test, fulltest) at r40828 - Ubuntu 9.04 i386 (g++) 18:41
dalek rrot: r40830 | cotto++ | branches/pluggable_runcore (186 files):
bring profiling_runcore up-to-date with trunk
18:42
cotto s/profiling/pluggable/g 18:44
18:46 mberends joined
mikehh rakudo (ec2f831) builds on parrot r40828 - make test / make spectest (up to r28081) PASS - Ubuntu 9.04 i386 (g++) 18:48
partcl r639 builds on parrot r40828 - make test 6 tests fail, but all subtests PASS - Files=74, Tests=1325 - Ubuntu 9.04 i386 (g++) 18:53
18:54 jrtayloriv joined
particle q: does parrot check interrupts while sleeping? 18:54
whiteknight depends what you mean by both those things 18:57
particle sleep 10000; # can parrot detect sigint during this time? 18:58
apparently perl 5 can't, but ruby can
whiteknight I don't think so
particle that stinks :(
whiteknight I'm not 100% sure, you might want to add some tests and maybe file a ticket
the sleep opcode basically defers to the sleep() function internally, which is OS-dependent 18:59
particle that'd be an interesting test to write....
mikehh decnum_dynpmcs r178 builds on parrot r40828 - make test - same story all subtests PASS - Failed 17/17 test programs. 0/14629 subtests failed - Ubuntu 9.04 i386 (g++)
particle checks out pluggable_runcore for cotto 19:00
19:01 desertm4x joined
darbelo cotto: pluggable_runcore (r40830) reports "All tests successful." and apparently sane values for 'parrot -Rprofiling examples/pir/sudoku.pir' on OpenBSD amd64 19:01
19:03 HG` joined
moritz CLA? 19:09
purl i think 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
Tene particle: from what I remember of the pdds, parrot *should*, but it currently doesn't comply with that. 19:10
mikehh cardinal (8d2377f) builds on parrot r40828 - make test - 593 tests were run, from 98 files, 511 tests passed, 0 of which were unexpected, 82 tests failed, 82 of which were expected
19:11 davidfetter joined
mikehh cardinal There were 3 files that completely failed to compile: gen_08-class.pir, gen_alias.pir, gen_freeze.pir 19:11
cardinal - that's on Ubuntu 9.04 i386 (g++) (there was a partial failure on amd64 that didn't occur here) 19:13
cotto particle, thanks. 19:16
19:16 Andy joined
mikehh lua (47c85a4) fails to build on parrot r40828 - Ubuntu 9.04 i386 - first error ./luanumber.pmc:310: error: uninitialised const ‘n’ 19:23
particle cotto: src\\runcore\\cores.c(677) : error C2065: 'Parrot_DynOp_core_cgp_1_5_0' : undeclared identifier 19:27
same for _cg_ 19:28
cg and cgp are gcc-only
mikehh I need to switch back to amd64 - bbiab 19:35
cotto particle, does that mean those runcores should be #ifdef'd away on win32? 19:38
particle ayep 19:40
i believe there's already runcore detection you can use
check parrot_config
19:42 nixfreak_ joined
particle they should be ifdef'd away for non-gcc, not on win32. we have gcc on win32, but i'm using msvc 19:43
nixfreak_ using win32 , installed parrot , I looked its saved on the Env variables. ran news.pasm didn't work
do I need to have perl6 as a depend or is perl already in the win32 package ? 19:44
cotto is HAVE_COMPUTED_GOTO what we're looking for? 19:47
darbelo cotto: Most likely. That's passed as a -D on the Makefile CFLAGS 19:48
nopaste "cotto" at 74.61.2.46 pasted "#ifdef away cp* runcores on platforms without computed goto" (21 lines) at nopaste.snit.ch/17703 19:49
cotto particle, how's that patch?
particle cotto: HAVE_COMPUTED_GOTO doesn't exist in my lib/Parrot/Config/Generated.pm
i don't have parrot_config since parrot didn't build.
looking...
that'll probably work... applying and rebuilding 19:51
nixfreak_ anyone have an idea about win32 ? 19:58
treed So I'm on Windows right now. 19:59
How kind of environment is used to work with parroty stuff on Windows?
Also, how do I delete messages from purl's queue? 20:00
moritz treed: you can either use the cygwin stack, or msvc++
20:00 mikehh joined
moritz 'delete messages' or 'messages delete' 20:00
treed Probably better to do cygwin.
it's "messages eras" 20:01
erase
darbelo treed: I think mingw was also an option. 20:02
particle treed: i use msvc
some folks use strawberry perl
treed Is itfree?
cotto If you want the ms toolchain, you can use express edition for no cost.
particle yes, msvc 2008 express is free
and it has a visual debugger that's quite good
treed Neat. 20:03
particle but, translationparty.com/#3531871
treed Although I want to get cardinal running on it. 20:04
Can you integrate other build systems with it?
The idea here is to make sure that the Rakefile works on Windows.
So that I feel better about deleting the old makefile. 20:05
darbelo treed: Kill now. Apologise later.
particle i know nothing of rakefiles. what's the make engine for that?
treed It uses Rake, which is ruby.
particle well, there's native ruby on windows, so you should be fine 20:06
treed But installing rake?
I guess I should see if that requires cygwin or something.
Or if rubygems works without cygwin.
It's been ages since I've done any dev work on Windows. 20:07
darbelo treed: Doesn't that put you into a chicken-and-egg situation with you own build system? 20:08
treed Hm? 20:09
Rake isn't running on Cardinal
Cardinal's not that advanced yet.
And that would make builds even slower. 20:10
darbelo I mean that you need a working Ruby to build your Ruby :) 20:11
treed Sure.
You need a working C compiler to compile GCC, too.
But fortunately, you should be able to build Cardinal on any platform and use it anywhere Parrot works. 20:12
So even if Ruby somehow doesn't work, but Parrot does, once Cardinal's sufficiently advanced, it's all good.
darbelo is baffled by the idea of bootstrapping interpreters, but is sure he will get over it eventually. 20:15
duk3leto treed: is cardinal implementing ruby 1.8.x or 1.9.x ?
particle almost all c compilers are written in c
treed It's targeting 1.9 + future. 20:16
So it has at least one feature that's only in ruby SVN.
darbelo particle: Yeah. And once you get your C compiler going you write everything else in C, paying the bootstrap tax only once. 20:17
treed I made that call on the basis of the fact that it'll probably be a year or two before Cardinal gets into a reasonable beta state.
And I'd rather not have to continually play catch-up.
So we'll start forward looking and hopefully converge with the feature-set at somepoint.
Although some non-Ruby features are targetted as well. 20:18
We have gather/take, and I'd like to get P6 regex available, too.
(But behind require statements.)
(Although gather isn't behind that yet.)
I want cardinal-only features to require positive acknowledgement.
So "require 'cardinal/gather'" etc
So that the coder realizes when he's using them that these features are not portable to other Rubies. 20:19
duk3leto treed: interesting. thanks for the info, my cow-orker was asking about it. I am trying to recruit new hackers for you :) 20:20
treed Awesome, thanks.
I intend to write out this policy at some point.
It's mostly been kicking around in my head. 20:21
I also want to write a timeline policy.
ie, what circumstances must hold before I'll consider an alpha release, etc.
cotto particle, does the win32 build work? 20:22
particle checks the vm, running in the background
cotto: smolder.plusthree.com/app/public_pr...port/26649 20:23
it compiles, and tests rather well
cotto how does it work when run with -Rprofiling ?
duk3leto treed: what you just told me about ruby 1.8/1.9/extra features would make a good blog post ;) 20:24
cotto using examples/pir/sudoku.pir for example
particle c:\\Users\\particle\\dev\\parrot\\pluggable_runcore>parrot -R=profiling examples\\pir\\hanoi.pir
main: Unrecognized runcore '=profiling' specified.
treed duk3leto: Yeah, that's kinda what's been kicking in my head waiting to be written.
cotto -Rprofiling should work
(no =)
particle why does that work? 20:25
and you need to update parrot -h
it does work, btw.
cotto will do
particle i got 1301 lines in parrot.pprof 20:26
cotto -h doesn't mention = (but I'll add profiling)
particle yeah, forgot parrot doesn't like =, but it does like -R profiling 20:27
whichithinkismoreclear
20:28 theory joined
cotto That's suspiciously short. Mine's at 1M lines and growing. 20:29
Can you nopaste the first 50 or so lines?
particle i ran hanoi
much shorter :)
darbelo $ wc -l parrot.pprof 20:30
1566075 parrot.pprof
cotto That's the same length I get. Could you nopaste?
darbelo *all* of it ? 20:31
cotto particle, not darbelo
nopaste "particle" at 76.121.106.245 pasted "hanoi.pir profiling output" (1301 lines) at nopaste.snit.ch/17704 20:32
particle nopaste.pl++
cotto well crap. 20:33
That second column should be the per-instruction timing, not 0.
darbelo cotto: examples/pir/sudoku.pir might not be the best thing to ask people to run.
cotto darbelo, agreed.
I guess I'll use parrot 20:40
Parrot_floatval_time until I figure out something less broken.
particle gimme a simple c program to compile and run here 20:41
nixfreak_ treed there is a win32 binary for parrot
treed was just going to build it from source. 20:43
Since Cardinal needs a build_dir still.
cotto particle, the code I was trying to use is in config/gen/platform/win32/hires_timer.c
it should be easy to adapt
nixfreak_ in perl installed with the win32 package ? 20:44
or do I need to grab perl6 for windows ?
particle the parrot windows binary does not install any hlls
nixfreak_ I heard cardinal is faster then python using the VM is that true ? 20:45
treed Very, very unlikely.
Unless you mean once it's been parsed.
Even still, very unlikely.
The parser is hideously slow.
nixfreak_ bummer
how about pynie
purl it has been said that pynie is code.google.com/p/pynie/ or a Python implementation for the Parrot virtual machine
treed The test suite takes 8 minutes for me.
7:30 can be shaved off if you pre-compile 20:46
nixfreak_ interesting
treed If you run that same suite with just ruby, it's 2 seconds.
And I'm pretty sure Python's supposed to be faster than Ruby.
I haven't tried pynie.
nixfreak_ so there really isn't any benefit to parrot yet then ?
treed I hope sometime soon we can start fixing Cardinal's parser.
Not with Cardinal.
nixfreak_ please correct if I am wrong
treed I can't speak for the other HLLs.
Cardinal is still very pre-alpha. 20:47
Rakudo seems fairly advanced.
Tene treed: I'm waiting for the PGE refactors to happen before I start working on Cardinal's parser.
treed But I haven't played with it much, and I'm not a perl guy.
Tene: *nod*
nixfreak_ me either
darbelo Lua was pretty advanced too IIRC
nixfreak_ yep I heard that is the most stable one 20:48
what depends do I need to run pasm files ?
treed Just the parrot binary, I think.
Unless it references other files.
When cardinal enerates a pir file, the generated files need cardinal.pbc available to run. 20:49
nixfreak_ its not working for me
all I am trying to do is run news.pasm
treed Dunno what that is.
nixfreak_ one sec
treed And I don't have a working parrot onmy W7 partition.
20:49 payload joined
nixfreak_ Running Parrot 20:50
Once you've installed Parrot, run it. Create a test file called news.pasm. .pasm files contain Parrot Assembly Language (PASM) instructions; this is a low-level language native to the Parrot virtual machine.
say "Here is the news for Parrots." end
Here is the news for Parrots.
Now run this file with:
$ parrot news.pasmwhich will print:
treed say and end on the same line?
treed doesn't do PASM directly much. 20:52
Try this as news.pir:
nixfreak_ no its not two lines
treed .sub main :main
say "Here is the news for Parrots."
.end
That's the PIR equiv. 20:53
nixfreak_ how do compile that ?
treed no need 20:54
parrot can run it directly
If you wanted to see it as pasm, I think you could do "parrot --target=pasm news.pir"
treed can't test this, though.
particle you can compile to bytecode with parrot -o whatever.pbc
nixfreak_ ??? whats the interperter command
treed just parrot
particle nixfreak_: parrot foo.pir
that will run your pir file 20:55
Tene treed: --target is a PCT thing
particle --target=pasm is a ...
yep
nixfreak_ yeah parrot isn't recognized
but the env is correct , I hate windows
Tene parrot -o foo.pasm foo.pir
will work
nixfreak_ k
particle nixfreak_: do you have activestate perl installed? 20:56
treed Tene: I use --target on parrot all the time. Do you mean that you need to specify an HLL pbc?
20:56 theory joined
nixfreak_ lol thats what I was trying to ask you guys 20:56
Tene treed: no, you don't. you pass a --target option to a program running on parrot.
treed Oh, I see.
Tene treed: everything after the .pbc or .pir or whatever are arguments to the program. 20:57
particle nixfreak_: activestate perl 5.*
there is no perl 5 running on parrot
anyway, AS perl has a batchfile called 'pwhich' which is a 'which' equivalent
pwhich parrot
20:58 hercynium joined
particle should tell you where parrot.exe is found in your path 20:58
21:05 rdice joined 21:10 Whiteknight joined
cotto particle, can you tell me the return value of GetProcessTimes in the profiling code? It may be a configuration issue. I'd assumed that a process would always have permission to query information about itself. 21:14
nixfreak_ ok ahh makes sense C:\\Parrot-1.4.0>parrot -o news.pasm 21:16
'parrot' is not recognized as an internal or external command,
damn 21:17
I bet I have to install perl6
treed That's not what that error message indicates.
It's not "Parrot tried to start and failed because something's missing"
It's "I can't find Parrot."
particle nixfreak_: dir parrot.exe 21:19
dalek kudo: 3a274d9 | pmichaud++ | (9 files):
Move infix:<+> into the setting, making it available for operator

have to modify the Whatever handling slightly (but not too badly). We also take a bit of a performance hit, but so far it doesn't seem too onerous in the spectests. Next step is to do the same for infix:<-> and see what happens.
kudo: 9976deb | moritz++ | docs/release_guide.pod:
[docs] Su-Shee++ volunteers for Feb 2009 release
kudo: 62f5110 | pmichaud++ | (7 files):
Move infix:<-> into the setting, making it overloadable as well.

builtins.
purl builtins are pure perl
kudo: 32e9d79 | pmichaud++ | (2 files):
Move the WhateverCode helper functions out of build/gen_whatever_pir.pl

With this change, we simply need to migrate the remaining operators into the setting, and when that's done, we can eliminate build/gen_whatever_pir.pl and build/gen_junctions_pir.pl entirely.
kudo: 93cd932 | moritz++ | :
Merge branch 'master' of git@github.com:rakudo/rakudo
treed Good god.
purl Great Googly Moogly!
particle cotto: int ret = GetProcessTimes(GetCurrentProcess(), &creation, &exit, &kernel, &user); 21:21
printf("\\n\\n<<<<<%d>>>>>\\n\\n\\n", ret);
rebuild parrot, nothing like that prints out anywhere
cotto I suspect it'll be non-zero
Only the profiling runcore uses that code. It won't be hit without -Rprofiling 21:22
particle non-zero means success, and that's what i'd suspect
>parrot -R profiling examples\\pir\\hanoi.pir
...just regular hanoi output...
cotto this is a joy 21:23
particle wrapped inside a happiness 21:25
particle needs a nap
darbelo particle: try with fprintf()
cotto If I were playing with it I'd try fprintf to stderr, but I don't have a clue why printf wouldn't work. 21:26
I'm so glad I don't regularly work with the windows api. Every time I get near it it makes me sad. 21:27
darbelo Or maybe 'fprintf(runcore->prof_fd, "\\n\\n<<<<<%d>>>>>\\n\\n\\n", ret);' just to make extra-sure.
21:27 bacek joined
particle fprintf(stderr... nada 21:28
nothing doing, darbelo :( 21:29
i'm beginning to think this function isn't called anywhere
cotto debuggering time? 21:30
particle after a nap, yes
particle buggers off &
cotto If a certain job possibility pans out, I'll have more access to windows boxes than I'll know what to do with. 21:31
Actually I can use QueryPerformanceCounter if GetProcessTimes doesn't work, but I'd really like to avoid the noise from context switches and other processes. 21:34
particle, let me know if the following patch yields a saner profile. 21:41
nopaste "cotto" at 74.61.2.46 pasted "patch to use QueryPerformanceCounter for profiling" (17 lines) at nopaste.snit.ch/17706
dalek rrot: r40831 | cotto++ | branches/pluggable_runcore/src/runcore/cores.c:
[profiling] #ifdef away some runcore init functions on unsupported platforms
21:44 payload joined 21:50 joeri joined
nixfreak_ sweet I got it now 21:53
I'm retarted
thanks particle
21:53 beta joined 22:02 japhb joined
bacek Good morning 22:04
purl And good moroning to you, bacek.
22:05 Whiteknight joined 22:09 theory joined, mokurai joined
Whiteknight NotFound++ # Kicking ass! 22:10
22:13 cognominal joined
dalek rrot: r40832 | bacek++ | branches/context_pmc3/src/pmc/exception.pmc:
[pmc] Fix check for NULL sub_pmc in Exception.backtrace.
22:15
rrot: r40833 | bacek++ | branches/context_pmc3 (19 files):
Bring branch up-to-date with trunk.
22:19
rrot: r40834 | bacek++ | branches/context_pmc3/t/native_pbc (4 files):
Rebuild native pbc...
22:41 rg1 joined 22:43 jan joined
dalek kudo: 4276205 | pmichaud++ | (7 files):
Move infix:<*>, infix:</>, and infix:<**> to setting.
22:43
treed Lots of rakudo work today 22:47
bacek Yay! TT#154! 23:00
Whiteknight: around? 23:01
NotFound: ping
Whiteknight hello 23:02
purl niihau, Whiteknight.
Whiteknight what do you need bacek?
bacek Whiteknight: world domination of course 23:03
Whiteknight: can you take a look at TT#154?
Whiteknight sure thing
dalek cnum-dynpmcs: r179 | darbelo++ | trunk/ (2 files):
Make the configuration of decTest a command line option of Configure.pl (default
bacek This is almost identical to my current problems in context_pmc3 23:04
Whiteknight really? 23:05
bacek YA RLY!
Whiteknight okay 23:06
bacek PIR "can_handle" method isn't invoked.
t/pmc/exceptionhandler.t, test 7
23:11 joeri left 23:12 michel__ joined
Whiteknight let me fire up GDB and see what I can find 23:12
bacek Whiteknight: ok, thanks!
$dayjob time. 23:14
See you soon!
23:21 mokurai joined
Whiteknight purl msg bacek get_handler IS getting called in test 7. It's returning 0. 23:27
purl Message for bacek stored.
Whiteknight purl msg bacek nevermind, you were right. can_handle is not getting called. Some other Sub is being called. I don't know what it is 23:32
purl Message for bacek stored.
23:34 bacek joined
Whiteknight nopaste? 23:35
purl nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo
nopaste "whiteknight" at 69.249.176.251 pasted "Parrot_PCCINVOKE snapshot for bacek++" (15 lines) at nopaste.snit.ch/17708 23:37
bacek Whiteknight: erm... Looks about all right... 23:39
Whiteknight bacek: I think I have it figured out
Parrot_PCCINVOKE only works for C-based methods, not PIR oes
ones*
bacek Yay! Whiteknigh++
Whiteknight if you look at Parrot_PCCINVOKE, it never calls runops() to run the PIR function
bacek Yeah... I spent a lot of time inside this function... 23:40
But how it works in trunk? Accidentally?
Whiteknight let me look
I don't know how it works in trunk
doesn't make any sense 23:41
bacek indeed... Some dark scary magic feel I.
Whiteknight UNLESS the context isn't being initialized, there is non-zero garbage in the registers, and that's being returned on failure
bacek valgrind conplains about using of uninitilised values in Parrot_cx_find_handler_local 23:42
So, you probably right.
cotto So it's so broken that it works. Wow.
bacek sigh... 23:44
Whiteknight fixed 23:45
bacek Whiteknight: you can add something like 'say "CAN I?"' into sub can_handle and run with -t4.
Whiteknight (temporary, hack fix)
incoming (you're gonna love this) 23:46
bacek hiding under desk 23:47
duk3leto runs for cover
cotto oh boy! I love train wrecks. 23:48
Whiteknight then you're going to love this next commit 23:49
bacek wrecking train into cotto
Whiteknight it's a perfect example of why we need Allison's PCC magic
"help me Allison-Kenobi, you're my only hope"
dalek rrot: r40835 | whiteknight++ | branches/context_pmc3 (2 files):
[context_pmc3] hack fix for bacek++. YOU CANNOT UNSEE MY EVIL ONCE YOU HAVE SEEN IT
treed o/` Instead of just Obi-Wan, you've got Obi-Two... o/` 23:50
Whiteknight ...probably should have put an XXX comment in there
find a unicode glyph of a middle finger
bacek Whiteknight: ☢☢☢☢ 23:51
Whiteknight perfect!
purl perfect is the enemy of good enough.
Whiteknight The packfile tests all fail on my machine now 23:53
cotto I ❤ Unicode.
Whiteknight but they are the only ones
bacek In ☭, ☢ and ☣ ☞☠
mk_native_pbc...
Whiteknight: t/compilers/pge/06-grammar failing on my box. But it always produce different results... 23:59