|
Parrot 1.0 Released | parrot.org | 380 RTs left! Set by moderator on 28 March 2009. |
|||
|
00:07
TiMBuS joined
00:08
acajou joined
00:09
AndyA joined
00:13
contingencyplan joined
|
|||
| GeJ_ | Good morning everyone | 00:54 | |
| Infinoid | morning GeJ_ | ||
|
01:14
amoc joined
02:00
Theory joined
02:05
jan joined
02:26
rdice joined
02:41
janus joined
02:43
bacek_ joined
03:13
TiMBuS joined
03:16
tetragon joined
03:34
Tene joined
|
|||
| dalek | rrot: r37918 | petdance++ | trunk/compilers/imcc/pbc.c: random consting |
03:35 | |
| rrot: r37919 | petdance++ | trunk/compilers/imcc/pbc.c: removed some extraneous code for dealing with nam->color |
03:42 | ||
| rrot: r37920 | petdance++ | trunk/compilers/imcc/pbc.c: more consting |
03:55 | ||
| cotto | What's the advantage of the consting that petdance is doing? | 04:04 | |
|
04:05
tuxdna joined
|
|||
| cotto | Is it just to prevent possible typos and misuses of variables, or is there more to it? | 04:06 | |
| GeJ | optimization? by consting a variable that you know won't change, you can instruct the compiler to do some optimization? | 04:09 | |
| but that's just an uninformed guess. | |||
|
05:15
amoc joined
|
|||
| dalek | rrot: r37921 | petdance++ | trunk/compilers/imcc/pbc.c: hoisted some convoluted dereferences |
05:20 | |
|
05:41
Theory joined
07:03
masak joined
07:19
iblechbot joined
07:48
baest joined
07:56
jan joined
08:01
TiMBuS joined
08:34
tuxdna joined
08:37
cognominal joined
09:05
cognominal joined
10:03
Fayland_logger joined
10:32
gaz joined
|
|||
| dalek | kudo: a04f610 | (Moritz Lenz)++ | build/Makefile.in: insert newline in Makefile.in, as suggested on p6c |
11:46 | |
| shorten | dalek's url is at xrl.us/benzq7 | ||
|
12:26
iblechbot joined
12:35
gryphon joined
|
|||
| Coke skips review. | 13:06 | ||
|
13:13
donaldh joined
|
|||
| Coke wonders why the make codetest smoke is failing. | 13:21 | ||
|
13:22
Util joined
13:27
Tene_ joined
13:38
iblechbot_ joined
13:45
riffraff joined
14:00
acajou left
14:13
davidfetter joined
14:14
Andy joined
|
|||
| Infinoid | Coke: (skip review) Does that mean you missed nopaste.snit.ch/16115? | 14:19 | |
| Coke | Yes. | 14:26 | |
| I talked to kjs - he's not going to have tuits soon; if you want to go ahead and apply that, that would be great. =-) | 14:27 | ||
| I had just gotten myself to the point where I was going to have to deal with all the 'make headerizer' warnings, which are beyond my level of C. | |||
|
14:30
pjcj joined
|
|||
| Coke | so if you add that in, awesome. =-) | 14:33 | |
| I /might/ be able to use the changes you made there to update the pirc fils | |||
| Infinoid | Can do. I made some minor changes since then, headerizer is *really* picky about having functions' opening curly braces on their own lines, and I missed a few | 14:34 | |
| (I don't particularly like that coding standard, but consistency is more important than appealing to my tastes.) | 14:35 | ||
| Coke | ditto. (I don't agree with all the coding std policies) | 14:36 | |
| Infinoid uploads AI::Evolve::Befunge 0.03 to CPAN and comes back to parroty things | |||
| davidfetter wonders whether Infinoid is 5 days late | 14:38 | ||
| Coke | I just checked, an earlier version is alreday there. | 14:41 | |
| davidfetter | eek | ||
| dalek | kudo: e83b2b8 | (Carl Masak)++ | src/ (2 files): implemented IO.ins |
14:43 | |
| shorten | dalek's url is at xrl.us/benz4p | 14:44 | |
| Infinoid | 5 days late to what? | 14:46 | |
| davidfetter | well, it's april 6 here | ||
| Infinoid | Ah. Well, this is a serious project :) | 14:51 | |
| Infinoid makes sure pirc still builds | |||
| Still fails tests, but doesn't fail any new ones. | 14:54 | ||
| dalek | rrot: r37922 | Infinoid++ | trunk (3 files): [cage] Headerize compilers/pirc/src/bcgen.c. |
||
| rrot: r37923 | coke++ | trunk/compilers/pirc/src/bcgen.c: [t/docs] fix pod-o, add doc stub, rerun through headerizer. |
15:04 | ||
| Coke | Infinoid: best we can hope for. =-) | 15:08 | |
| hopefully once we headerizer everything, we can turn it on to build all the time. | 15:09 | ||
|
15:09
Theory joined
|
|||
| Infinoid | And then we can start seriously thinking about *using* it :) | 15:09 | |
| Coke | Infinoid: did you find docs for what, say, ARGMOD means? | 15:12 | |
| Infinoid | Yeah, those are in c_functions.pod in docs/dev/ iirc | ||
| Coke | Infinoid++ | 15:13 | |
| Infinoid | however, pirc is *very* well consted, so it was fairly trivial to figure out which ones were ARGIN vs. ARGMOD | ||
| Coke | const implies IN ? | 15:14 | |
| Infinoid | yes. | ||
| I had to add a few NULLOKs after the fact to get tests passing, and I don't know how many of those are left... but better test coverage would reassure me of that | 15:15 | ||
| Coke | ah, so you added those like I would have. =-) | 15:16 | |
| rather than by analyzing the code to see. | |||
| Infinoid | well, I gave the functions a quick once-over, but all of that is best-effort unless I took the time to fully understand PIRC (which I haven't) | 15:17 | |
|
15:17
Santtu joined
|
|||
| Infinoid | I had the same issue when adding the ASSERT_ARGS stuff to Parrot. | 15:17 | |
| Good test coverage is the only way to be sure we've gotten that right :) | 15:18 | ||
|
15:19
cognominal joined
|
|||
| Infinoid | A quick rule of thumb is, if you see the argument being tested with an if() statement, it's NULLOK. If you see it being deferenced without a check, it's definitely not NULLOK | 15:20 | |
|
15:20
donaldh joined
|
|||
| dalek | kudo: 8f4dc52 | pmichaud++ | docs/spectest-progress.csv: spectest-progress.csv update: 349 files, 8436 passing, 0 failing |
15:22 | |
| shorten | dalek's url is at xrl.us/benz96 | ||
| Coke tries to figure out how to add UNUSED() to something. it seems to want ARGIN /too/ | 15:43 | ||
| Infinoid | You might want SHIM(). I think UNUSED() goes in the function body, not the arguments list | ||
| Coke | SHIM means never used. UNUSED means not used yet. | 15:44 | |
|
15:44
Tene joined
|
|||
| Coke | since I don't know pirc, I figured I'd assume the latter. | 15:44 | |
| (function just returns NULL right now) | |||
| Infinoid | ok. looking at other parrot sources, it looks like UNUSED is mainly used for local variables, not args | 15:45 | |
| Coke | ah, right. | ||
| Infinoid | even though the example in c_functions.pod is clearly using it for an argument | 15:46 | |
| So don't listen to me. | |||
| particle | i wonder if that example is wrong | 15:51 | |
| Infinoid | I imagine it's useful for arguments too. I'm just not sure how the distinction of "never used" vs "not used yet" helps | 15:52 | |
| I mean, should I feel guilty when I change SHIM_INTERP to PARROT_INTERP? (I've done that before.) | 15:53 | ||
|
15:58
Psyche^ joined
|
|||
| particle | no, you shouldn't | 15:58 | |
| the idea with SHIM_INTERP was that all macros should take an interp param | 15:59 | ||
| s/macros/functions/ | |||
| macros, too. | |||
| particle still has weekend-itis | |||
|
16:05
Whiteknight joined
16:08
cognominal joined
|
|||
| Infinoid | Weekends need to be longer. I wonder if someone's already opened a TT# for that | 16:14 | |
|
16:17
shucho joined
|
|||
| Coke sees www.h-online.com/open/What-happens-...res/112997 from perlbuzz++ | 16:33 | ||
| Infinoid: ok. I am now failing ASSERT_ARGS on one of the functions I'm trying to headerize. | 16:36 | ||
| also, headerizer isn't catching all my functions. hurm. | 16:39 | ||
| Infinoid | (headerizer not catching all functions) Make sure the opening curly brace is on it's own line, it (sometimes) ignores functions otherwise | 16:49 | |
| (failing ASSERT_ARGS) nopaste your current patch? | 16:50 | ||
| s/it's/its/ | |||
| Coke | Infinoid: moment. | 16:51 | |
| particle | does anyone else remember reading something about 5.8 not getting any new features? | ||
| moritz | I did | 16:52 | |
| in the release announcement for 5.8.9 | |||
| particle | fab. | ||
|
16:53
darbelo joined
|
|||
| Coke | particle: rejecting a SOC proposal? | 16:55 | |
| particle | adding weight to moritz++'s comments on one | ||
| moritz | particle++ | ||
| Coke | Infinoid: first I fixed the rest of the functions to get headerized, then fixed the warnings there... now no test failures. | ||
| Infinoid++ | 16:56 | ||
| moritz | I had a chat with Nicholas about that proposal | ||
| particle | and he's not interested, i imagine | ||
| Infinoid | Coke: cool. | ||
| moritz | particle: "not interested" is too strong, but he's not convinved of the usefulness, and would have no time to mentor it anyway | 16:57 | |
| particle | does devel::declare allow you to create new ops? | ||
| ~~ seems like a no-go in 5.8 | |||
| Coke | I imagine chromatic might have a thing to say about making the 5.8 line shinier. | 16:58 | |
| Infinoid: whoops, need to rerun codetest, fix a few things up, but looks promising. | |||
| particle | UPGRADE OR DIE</chromatic> | ||
| and i agree. | 16:59 | ||
| Coke | you need a semicolon there. =-) | ||
| moritz | I'd also like to know hoe accessible Devel::Declare is | ||
| for somebody who knows perl, but not all the gory details of the core | 17:00 | ||
| the student doesn't seem to have any experience with it | |||
| particle | yeah, and somebody forgot to document it | 17:03 | |
| moritz | my first impression of this proposal was "wow, this is a cool idea". But I don't think it's useful | 17:04 | |
| particle | my first impression was "hasn't perl 6 been backported far enough already?" | 17:07 | |
| Coke | without an anti-chromatic to support it internally, I don't think it'd last past the summer. | 17:09 | |
|
17:10
donaldh left
17:11
gryphon joined
|
|||
| dalek | rrot: r37924 | coke++ | trunk (3 files): [cage] headerize compilers/pirc/src/pircapi |
17:13 | |
|
17:24
rdice joined,
darbelo joined
17:30
acajou joined
17:59
barney joined
|
|||
| dalek | rrot: r37925 | coke++ | trunk (6 files): [cage] headerize compilers/pirc/src/pirop compilers/pirc/src/pirerr |
18:03 | |
| rrot: r37926 | coke++ | trunk/docs/dev/c_functions.pod: [docs] its vs it's |
|||
| rrot: r37927 | coke++ | trunk/config/gen/makefiles/pirc.in: [t] These files are already pod-checked via 'make codetest' |
18:10 | ||
| cotto | coke++ #apostrophe policing | 18:12 | |
|
18:17
cognominal joined
|
|||
| Whiteknight | particle: are the proposals posted anywhere? | 18:24 | |
| Coke | if you're a mentor, yes. | 18:28 | |
| socghop.appspot.com/org/list_propos...9/dukeleto | 18:29 | ||
| shorten | Coke's url is at xrl.us/ben2xx | ||
| Whiteknight | I'd be happy to be a mentor if an extra one was needed. I'm sure I've missed whatever signup was needed though | ||
| I've been very far out of the loop lately | 18:30 | ||
| Coke | who "owns" 5.8? | 18:33 | |
| rafael? | |||
| purl | rafael is probably known as rgs | ||
| particle | nick | ||
| iirc | 18:34 | ||
| yep, he did the 5.8.9 release | |||
| Coke | danke. | ||
| Whiteknight | particle: Does gsoc need any help this year? | 18:36 | |
| I've got a large tuit debt that I need to start paying down | 18:37 | ||
| particle | always! if you're interested in mentoring, i'll get you set up. | ||
| Coke | particle: <STAGE WHISPER>you should make him merge the GC GSOC branch to trunk first. </> | 18:38 | |
| Coke whistles innocently. | |||
| particle finds a student proposal that has that as a prereq ;) | 18:40 | ||
| Whiteknight | Coke, that branch is nowhere near ready to merge, and trunk has developed so much since last summer that any attempt would be a disaster | ||
| we learned a lot from it though, and that's the important thing | |||
| Coke | OOC, did that knowledge get written up? | 18:41 | |
| (i don't really know anything about GC, so that's not a snarky question, I promise.) | 18:42 | ||
| particle | snark factor five, mister cola. | ||
| Coke | ok, it's not /intended/ as snarky. | 18:44 | |
| I realize that given my history it's hard to tell. =-) | 18:45 | ||
| Whiteknight | Coke, It's an issue that hasn't been forgotten, I assure you | 18:48 | |
| Coke | I just figure if the lessons are written down, then someone else can pick up the task if it's shiny for them. | ||
| I am fairly certain that person won't be me. | |||
| Whiteknight | I keep hoping that person will be me | 18:50 | |
| But last time I tried, I wasn't a good enough programmer to make it work, so we will see | |||
| Coke | low bus number bad. | ||
| Whiteknight | a lot of the lessons learned were similar to Edison's "twenty thousand ways how not to make a lightbulb" lessons | 18:54 | |
| although I doubt we've made 20,000 attempts at a damn GC | 18:55 | ||
| plus I think chromatic would have a stroke if I coded so aimlessly | |||
| particle | that sounds like a fun challenge. | 18:57 | |
| Whiteknight | When Google starts a "lifetime of code" program, we'll put that in as a suggestion | 18:59 | |
| cotto | So instead of using a fuzzer to find bugs, we should be using it to write a GC? | 19:00 | |
| particle | i'm curious about fuzzing with ulimit | 19:01 | |
| cotto | The library (fusil) does a good job of running Parrot in a limited environment so it can't do much damage. | 19:02 | |
| particle | but can you control that environment, to limit the data segment size, or number of procs/threads | 19:03 | |
| i guess that there's limited application for fuzzing and constrained operating environments | 19:04 | ||
| these are usually tested separately | |||
| cotto | I haven't looked into how configurable it is. | 19:05 | |
| particle | 's great to have fuzzing, anyway. i don't think i've expressed that in karma until now: cotto++ | 19:06 | |
| Infinoid | fuzzing? | 19:23 | |
| purl | fuzzing is probably supplying intentionally malformed data into an application to detect vulnerabilities in the application's parsing of said data. | ||
| Infinoid | ah. | ||
| cotto | In that sense I'm not really fuzzing. tools/dev/parrot-fuzzer basically uses a rng to write short snippets of PIR, hoping to find something that explodes. | 19:37 | |
| There usually isn't anything malformed about it. | |||
| Infinoid | in this case, there's probably a lot more space to look for semantic bugs than syntactic ones | 19:39 | |
| Sounds awesome. | |||
| cotto | Feel free to play along at home. | ||
| BTW Infinoid, I'm checking what you could do to help with TT #519. | 19:40 | ||
| Infinoid is spending all his free cpu cycles generating random befunge code, hoping to evolve skynet | |||
|
19:42
luca joined
|
|||
| luca | I can't build parrot on xubuntu | 19:42 | |
| Infinoid | What's the error? | ||
| purl | Infinoid: .lib section in a.out corrupted | ||
| cotto | Figuring out TT #365 (which is related) would be really nice. I've looked several times but haven't figured out what code is looking at PMC_struct_val. | 19:43 | |
| What's the error? | |||
| purl | cotto: Disk quota exceeded | ||
| cotto | What's the error? | ||
| purl | cotto: Structure needs cleaning | ||
| luca | compilation failed with cc | ||
| Infinoid | cotto: How do you detect it? Got a test case? | ||
| luca, can you copypaste the whole error onto nopaste.snit.ch for us? | 19:44 | ||
| luca | yes | ||
| one moment | |||
| Infinoid | everything leading up to that, please | ||
| thanks | |||
| cotto: do you know if it's trying to write to PMC_struct_val, or just read from it? if it's being rewritten, a gdb watchpoint might work | |||
| cotto | luca, you can also use tools/dev/nopaste.pl | ||
| Infinoid, I don't think it's writing, but it's definitely reading. | 19:45 | ||
| Infinoid | Unfortunately I'm on x86-64, so I don't normally see much jit in action | ||
| I've got some other boxes I can appropriate for the purposes of tracking this down tho | |||
| Infinoid updates his parrot | 19:46 | ||
| Coke++ # you've been busy today! | |||
| nopaste | "luca" at 78.12.64.248 pasted "configure error on XUBUNTU" (14 lines) at nopaste.snit.ch/16146 | 19:49 | |
| Infinoid | Have you installed the "build-essential" package? | ||
| luca | well | 19:50 | |
| i have gcc | |||
| i have make | |||
| i have yacc | |||
| i have perl | |||
| what else do i need? | |||
| ah obviously make | |||
| Infinoid | you have make, you just said :) | ||
| you'd probably need -dev packages installed for any libraries you want to link with, like gcc | 19:51 | ||
| I think build-essential should cover all of that, though. | |||
| uh, s/gcc/glibc/ | |||
| luca | i am going with build-essential | ||
| Infinoid | Does a simple "hello world" c program compile successfully? I think that's all the failing configure step is doing | ||
| particle | isn't there a guide for ...oh, it's packaging... on ubuntu | 19:52 | |
| i bet that has the required packages, though | |||
| luca | no | ||
| it was because of that package missing | |||
| configure now it's going | |||
| thanks infinoid | |||
| Infinoid | np, let us know how the build goes :) | ||
| acajou was prompted to try to build Rakudo (& Parrot) for the first time by luca... build ongoing (Kubuntu 8.04.2). | 19:53 | ||
|
19:53
luca left
|
|||
| particle | pmichaud uses kubuntu to run parrot, and develop rakudo | 19:54 | |
| acajou | Ah, so I shouldn't expect hiccups... Indeed. make test reports all tests successful. | 19:56 | |
| particle | yay | 19:59 | |
| acajou | Is "./perl6 -V" *supposed* to work? | ||
| particle | i don't think that's been implemented yet | ||
| acajou nods. | 20:00 | ||
| particle | ./perl6 --help | ||
| or did i put a longname on that option? maybe it's just -h | |||
| acajou can't believe he has Perl6 on his machine! | |||
| particle | :) | ||
| now you should play with it! | 20:01 | ||
| acajou | I remember reading the first few apocalypses and being all excited... | ||
| --help works | |||
| particle | perlgeek.de/blog-en/perl-5-to-6/ | ||
| rakudo.org has some good content, too | 20:02 | ||
| acajou | I imagine/hope there'll be a "Programming Perl6" book... | 20:06 | |
| particle | i expect there will be more than one :) | ||
| Infinoid | Hopefully not one per implementation of perl6 | ||
| acajou | Is Rakudo going to be the "official" Perl or not? | 20:07 | |
| acajou is still getting used to the idea of multiple implementations... | |||
| Infinoid | The "official" perl is defined as "any implementation that passes The Enormous Perl6 Test Suite" | ||
| acajou | :) | ||
| Infinoid | I think | ||
| pmichaud | There's no such thing as an "official Perl 6" | 20:08 | |
| Infinoid | how relatively complete are the various implementations, pm? | 20:09 | |
| particle | see perlcabal.org/syn/S01.html#Project_Plan | ||
| pmichaud | From Synopsis 1: "What we can say here is that, unlike how it was with | ||
| Perl 5, none of these projects is designed to be the Official Perl. | |||
| Perl 6 is anything that passes the official test suite." | |||
| acajou wodners if that might create a PR "issue" - when do you tell the world "Perl 6 goes 1.0!"? | 20:10 | ||
| pmichaud | it's hard to judge relative completion. Arguably Rakudo is the most complete and up-to-date of the available implementations. | ||
| Infinoid | Rakudo has been making great and very consistent progress, too | ||
| Coke | acajou: i suspect it's going to be "perl 6.0 rakudo 1.0" | ||
| changes in perl6 version mean changes to the spec, IIUI. | 20:11 | ||
| er, AIUI. | |||
| Infinoid | acajou: I guess you'd say that when one implementation passes 100% of the test suite | ||
| nopaste | "pmichaud" at 72.181.176.220 pasted "Current rakudo spectest progress, 2009-04-06" (17 lines) at nopaste.snit.ch/16149 | ||
| pmichaud | The "pass" column says how many tests we pass. The "spec" column indicates how many tests are in the suite. | 20:12 | |
| (the others indicate the various ways in which we fail or skip tests) | |||
| particle | not enough, on both counts | ||
| acajou | That's just a text version of the graph at www.rakudo.org/status right? | 20:14 | |
| pmichaud | yes, but it's broken out by synopsis | ||
| acajou | Right. | ||
| pmichaud | the graph only shows the "Total" line. | ||
| Infinoid | What's the "spec" column? | 20:15 | |
| particle | #tests in spec test suite | 20:16 | |
| Coke guesses total # of spec tests. | |||
| pmichaud | The total number of tests in the sui.... what we all said :-) | ||
| It's an estimate derived from the 'plan' lines of each test file. | |||
| dalek | rrot: r37928 | coke++ | trunk/ports/macports/Portfile: [ports] update macport for 1.0.0 to install the dev tools by default. |
||
| acajou | BTW, the progress on the graph is impressive. Gives outsiders (like me) a pretty good impression. | ||
| pmichaud | thanks. I like measurable project. | 20:17 | |
| measurable progress. | |||
| particle | 319 days in that graph range | 20:18 | |
| 8436/319 | |||
| purl | 26.4451410658307 | ||
| moritz | 8436/319*30 | 20:19 | |
| purl | 793.354231974922 | ||
| Infinoid | So in not even a full year, the number of tests more than quadrupled | ||
| talk about a moving target... | |||
| particle | average 26 passing spectests per day | ||
| acajou | Hey, so project out to 16k to get the release date! ;) | 20:20 | |
| particle | ...or ~800 per month | ||
| that's where it stops being linear. | |||
| unless our number of workers grows exponentially | |||
| moritz | at some point, when there aren't enough new tests in the test suite, we'll see a phase transition | 20:21 | |
| particle | i'll be writing (mostly failing) S19 tests soon | ||
| acajou | Excuse my noobness, but I don't see a S19 on the synopses page...? | 20:22 | |
| particle | which synopses page? it's here: perlcabal.org/syn/ | ||
|
20:22
tuxdna joined
|
|||
| acajou | Ah, google led me to dev.perl.org/perl6/doc/synopsis.html | 20:23 | |
| particle | yikes, that's olden. | ||
| Coke | need to put in redirects in those files, or make the svn external smarter. | 20:24 | |
| I opened a macport ticket for that update. | 20:25 | ||
| acajou | the url (dev.perl.org/perl6) leads one to expect pretty official docs... | ||
| moritz | acajou: yes, but it's totally outdated | 20:27 | |
| like half of the Perl 6 websites :( | |||
| acajou | Thanks for pointing me in the right direction. | 20:28 | |
| Coke | the perl6/doc/synopsis.html file uses svn.perl.org/perl6/doc/trunk/design/syn for the behind the scenes stuff. | ||
| moritz | which hasn't been in use for... what? half a year? | 20:29 | |
| Coke | $ svn pg svn:externals | ||
| design svn.perl.org/perl6/doc/trunk/design/ | |||
| so tell me what that /should/ be? | 20:30 | ||
| (that design dir contains apo/syn/exe) | |||
| particle | i don't think the apo/exe have been moved to the pugs repo | 20:32 | |
| since they're strictly historical now | |||
| pmichaud | synopsis.html should likely forward to the perlcabal.org/syn address (as it does in the left sidebar) | 20:35 | |
| Coke | where should the APO/EXE files redirect to? | 20:36 | |
| pmichaud | I think they continue to live on dev.perl.org | ||
| moritz | yes | 20:37 | |
| they aren't updated anymore, so no need to make them more accessible | |||
| Coke | I just don't want to break the links. | 20:38 | |
| cotto | pmichaud, is there any reason rakudo doesn't use -j for make when using --gen-parrot? | ||
| pmichaud | cotto: do all make's support -j ? | ||
| cotto | good question | ||
| purl | Yeah, it is. I'm stumped. | ||
| Coke | nmake doesn't use it. not sure if it errors on it. | 20:39 | |
| pmichaud | anyway, that would be why. In general I tend to make pessimistic assumptions about availability of special options like that. | ||
| particle | NO | ||
| nmake doesn't support -j :( | |||
| Coke | resend: "nmake doesn't use it. not sure if it errors on it." | 20:40 | |
| particle | NMAKE : fatal error U1065: invalid option 'j' | ||
| Coke | so, it errors, is what you're saying? | ||
| danke. | 20:41 | ||
| pmichaud | afk for a bit | ||
|
20:58
iblechbot joined,
Maddingue joined,
dalek joined,
elmex joined
|
|||
| Coke | anyone building against an installed parrot with dynops? | 21:00 | |
|
21:01
davidfetter joined
|
|||
| Coke | parrot_config lies. :| | 21:02 | |
| ./parrot_config libparrot_ldflags # shows the BUILD path. | |||
| (*#&$ | 21:03 | ||
| particle | installed head, or installed 1.0.0? | 21:07 | |
|
21:08
bsdz joined
|
|||
| Coke | installed 1.0.0 | 21:14 | |
| bsdz | pmichaud: hi you around? | 21:39 | |
| Infinoid | Who's a good person to talk to about jit architectural issues? | 21:46 | |
| Hmm. By architectural I mean "design", not "porting" | |||
| Santtu++ has been working on his selinux/non-executable jit buffer issue (TT #18), and has decided to make a JitCode PMC which stores off the necessary extra data and calls the right free() function | 21:48 | ||
| As opposed to the current code which uses ManagedStruct (and as an alternative to a patch I cooked up to hack custom free function pointers into ManagedStruct, which didn't quite work) | 21:49 | ||
| cotto | I think tewk knows the jit code well. | 21:53 | |
| bsdz | also i recall japhb saying he worked on it. might have only been for opengl though. | ||
| japhb | huh-what | 21:55 | |
|
21:55
jan joined
|
|||
| japhb | ? | 21:55 | |
| bsdz | nci jit | ||
| purl | i guess nci jit is broken, even on Linux i386. It claims to work, and then does the wrong thing | ||
| japhb | ah, I see ... | 21:56 | |
| I've worked *with* the NCI JIT, not *on* it. | |||
| bsdz | ah sorry - oops | ||
| japhb | Oh, and while we're doing prepositions, I've argued *over* its design. ;-) | ||
|
21:58
schinkelm joined
21:59
schinkelm joined
|
|||
| bsdz | i must admit i've not looked closely at the nci jit internals but is suspect to handle dynamic function pointers with arbitrary arguments one has to do some cool trickery with the i386 stack. you know throw a load of pointers etc then do a jmp. i'm probably dreaming though. | 21:59 | |
| cotto | Infinoid, TT #519 is solved. I just need to run make test and commit. Any effort you could throw at TT #365 would be appreciated. | 22:17 | |
|
22:17
kid51 joined
|
|||
| Infinoid | I'll try to look at it when I get home, but I'm not really sure where to start | 22:17 | |
| cotto | Some code somewhere is running PMC_struct_val(x) as a function when it should be using an ATTR. | 22:20 | |
| I'm reasonably sure it's in the jit code, but I don't see any likely suspects. | 22:21 | ||
| s/don't/didn't/ | |||
| Infinoid | I suppose I can try h4x0ring PMC_struct_val to crash loudly for ManagedStruct PMCs | 22:22 | |
| But I seem to recall you already did that. | |||
| Anyway, if you can't find it by grepping, it seems likely that some jit code is assuming internal layout details of the PMC structure and just using some simple pointer+offset code | 22:24 | ||
| A gdb read watch (or awatch or whatever it's called) would be more useful for that, I think | 22:26 | ||
| Are there any simple examples that reproduce it without creating thousands of ManagedStructs in the process? | 22:27 | ||
| cotto | Let me find out. | 22:29 | |
| dalek | rrot: r37929 | cotto++ | trunk/tools/dev/parrot-fuzzer: [fuzzer] add frequently-segfaulting-when-misused Packfile-related PMCs to blacklist |
22:31 | |
| cotto | just need to get this commit done | ||
| Infinoid | I get to go home in half an hour, and then I can start digging into this stuff | ||
| Ohnoes, you're beating up my poor half-written Packfile PMCs? :) | 22:32 | ||
|
22:35
Aisling joined
|
|||
| cotto | The fuzzer is. | 22:35 | |
| Infinoid | Guess I'd better fix them at some point | 22:36 | |
| dalek | rrot: r37930 | cotto++ | trunk (6 files): [PMC] use an ATTR for *ManagedStruct's struct pointer |
22:38 | |
| cotto | aliasing maek to make doesn't get old | 22:49 | |
| Infinoid | hehe | ||
| mkae is more common here | |||
| dalek | rrot: r37931 | jkeenan++ | trunk/lib/Parrot/OpsRenumber.pm: Eliminate a commented-out 'use' statement. |
22:51 | |
| rrot: r37932 | jkeenan++ | trunk/tools/dev/opsrenumber.pl: Update documentation to reflect fact that program no longer behaves differently post-1.0 from pre-1.0. |
|||
| cotto | I'm seeing lots of nice segfaults when I remove the workaround in TT #365. I'll nopaste one when I find a nice minimal example. | 22:52 | |
| Infinoid | That sounds promising :) | 22:55 | |
| msg tewk Could you review Santtu's patches in TT #18? Rather than hacking up ManagedStruct to play around with custom free() pointers, he's decided to add a minimal JitCode pmc which DTRT and very little else. Seems cleaner to me, does it seem sane to you? | 22:56 | ||
| purl | Message for tewk stored. | ||
| cotto | found one, although I don't know why nci is even involved. | 22:57 | |
| nopaste | "cotto" at 96.26.202.243 pasted "minimal crashy test case for TT #365" (9 lines) at nopaste.snit.ch/16155 | 22:58 | |
| cotto | crashes without the workaround, works fine with | 22:59 | |
|
22:59
mikehh joined
|
|||
| Infinoid | yay, home time. back in 15m! | 23:00 | |
|
23:01
karatorian joined
|
|||
| karatorian | How come when I set stdin to unbuffered, it still acts as though it's line buffered? | 23:03 | |
| mikehh | kid51: you around | 23:04 | |
| I just got some interesting results running atan against the jit core on Kubuntu Intrepid i386 | 23:07 | ||
|
23:08
ruoso joined
|
|||
| mikehh | TT =530 my latest comment | 23:08 | |
| TT #530 my latest comment | 23:09 | ||
| I don't know if yhe latest changes to jit would have an eddect it was agaibst r37921 | 23:10 | ||
| I *HATE* this keyboard | 23:11 | ||
| cotto | karatorian, it might be a bug. | 23:12 | |
| Do you have enough information to file a tt? | 23:14 | ||
| karatorian | What's a tt? | 23:21 | |
| purl | a tt is, like, template toolkit or www.template-toolkit.org/ or #tt or usually n0t Text::Template | ||
| cotto | a ticket on Parrot's Trac instance | ||
| mikehh | Trac Ticket | 23:22 | |
| purl | Trac Ticket is good | ||
| cotto | trac.parrot.org/parrot/report/1 | ||
| karatorian | Oh, thanks. | ||
| kid51 looks up from keyboard and sees mikehh's posts | 23:23 | ||
| mikehh: 'interesting' results? I'd say: weird! | 23:25 | ||
| mikehh | kid51: Yes - Very!!! | 23:27 | |
| kid51 | Gimme a couple of minutes to see if I can reproduce. | 23:28 | |
|
23:29
Whiteknight joined
23:30
rg joined,
amoc joined
|
|||
| mikehh | I think it might be a timing problem on this particulat machine - it gives the occasional wierd result - but it is consistent | 23:30 | |
| I've had ssome differences when running on AMD64 that no one else seems to get | 23:32 | ||
| kid51 | mikehh: The OS/platform you were running on was ...? | 23:33 | |
| mikehh | Kubuntu Intrepid i386 | ||
| kid51 | Strange, because I get all tests passing. | ||
| mikehh | with gcc 4.3.3 | 23:34 | |
| Infinoid | argh. I keep forgetting I can't reproduce jit issues on x86-64. | 23:35 | |
| mikehh | I get all the other tests passing - just having problems with that one - and why I find very confusing | 23:36 | |
| nopaste | "kid51" at 71.247.54.220 pasted "trans13.pasm passing all on Linux/i386" (40 lines) at nopaste.snit.ch/16157 | 23:37 | |
| mikehh | I also can't find anyone else with the same problem | 23:38 | |
| kid51 | Was this the hand-compiled gcc 4.3.3 you mentioned a couple of days ago? | 23:40 | |
| kid51 had disastrous results hand-compiling gcc (on Darwin) a couple of years back | |||
| My test was at r 37932 (but I doubt that anything changed in the past 12 commits) | 23:44 | ||
|
23:44
tetragon joined
|
|||
| nopaste | "mikehh" at 90.206.38.51 pasted "myconfig" (23 lines) at nopaste.snit.ch/16158 | 23:44 | |
| kid51 must start to prepare dinner | 23:45 | ||
|
23:51
TiMBuS joined
23:58
ruoso joined
|
|||