Sat, 17 Dec 2005:
Highlights were discussions on libjit.
21:56] rhysw (n=rweather@CPE-149-167-179-155.qld.bigpond.net.au) joined #dotgnu. [21:56] <t3rmin4t0r> meeting in 8 minutes [21:57] <rhysw> hi everybody! [21:57] <t3rmin4t0r> hi doctor ned [21:57] <rhysw> :) ... [22:07] <avdicius> so do we have only one jit_cache_method per function ? [22:07] <rhysw> I believe so [22:08] <avdicius> So we need to change the misleading comment in jit_cache.c [22:10] <rhysw> as to the finally/catch question, have a look at pnet/engine/verify_except.c - it generates the right code for each block, with the right finally calls. When execution jumps off the end without a match, it should call jit_insn_rethrow_unhandled to throw the exception up to the next level. ... [22:21] <t3rmin4t0r> newl: nope, the ILJITCoder stubs [22:21] <KlausT> it's build with a configute switch :) [22:21] <KlausT> configure [22:22] <KlausT> --enable-jit [22:22] <newl> neat ... [22:31] <avdicius> rhysw: ok, thanks. Another question is about copying 1-byte data between memory and register. [22:32] <avdicius> We could use in this situation only y ax, bx, cx, and dx registers. The si and di do not work. [22:34] <rhysw> Use x86_widen_membase to load the value and widen it to a full word - then you can use any register. [22:34] <t3rmin4t0r> avdicius: load at COP_BLOAD on unroll.c
Of course, Christmas is in the air ... but a lot different for people involved
[22:40] <rhysw> festivus baby - get out the pole! [22:40] Action: KlausT wishes there was heat ... it just started to snow [22:41] <t3rmin4t0r> KlausT: always greener on the other side [22:41] <KlausT> lol ... yep :) [22:41] <rhysw> Try sitting through an Aussie Christmas day, with 40C heat, and you'll just love snow! [22:41] <t3rmin4t0r> and by that I mean, really the other side of the globe [22:42] <rhysw> as my grandmother used to say: you can always put another jacket on in winter, but there is only so much you can take off in summer before you get arrested [22:43] <scandium> lol [22:43] <newl> rhysw: you forgot to mention that they're normally held at the beach. :) [22:43] <avdicius> A few days ago I could not start my car because it was frozen [22:44] <newl> That's always a good excuse to NOT go to work. :)
Had to quit early for the blug meet and a pretty boy photo (hair oiled up and clean shaven... heh) for my visa ;)
[22:54] <aathitude> i was looking at arrays in dpas [22:54] <aathitude> the way i am doing it i am ending up using jit_insn_add and jit_insn_mul to compute the effective address [22:55] <aathitude> the reason is this.. [22:55] <aathitude> jit_insn_load_elem_address uses the type paramter passed to it [22:56] <aathitude> for arrays with more than one dimension, sizeof(type) will not amount to range_size*sizeof(elem_type) [22:56] <aathitude> is it making sense? [22:57] <rhysw> yes - multi-dimensional arrays will probably need manual computation. The load_elem instructions are designed for the common single-dimension case. [22:57] <t3rmin4t0r> aathitude: like I said, you've got to calculate offset = ((index1 * multiplier) + index * multiplier) + base_addr [22:57] <aathitude> yes thats what i am doing now [22:57] <t3rmin4t0r> finally, doing a load_elem with the final offset ? [22:58] <rhysw> t3rmin4t0r: just what I was about to sugest :) [22:58] <t3rmin4t0r> also there's the part about what to do when bounds check fails :) [22:58] <aathitude> that is what i am doing.. [22:58] <t3rmin4t0r> rhysw: when I meet you, I'm going to give you hell for the Check2DArray in unroll_ptr.c [22:58] <aathitude> yes bounds failure..
A productive one hour meeting... After a long time. Btw, got contacted by FSF for my christmas present. After all it is the season to give.
--'Tis the season to advertise
-- Calvin