On the 0x2CA day of Apache Harmony Pavel Ozhdikhin wrote:
> Egor,
>
> Thanks for the patch! I needed to update it to run smoothly:
>
> < if ( dst &&
> > if ( dst && !dst->isNull() &&
oops :)
> and with the updated patch I've managed to pass the stress.Stack test.
> I'm re-running other tests to check if everything is fine now.
greater thanks!
> -Pavel
>
> On 02 May 2007 17:48:09 +0400, Egor Pasko <[EMAIL PROTECTED]> wrote:
> > On the 0x2CA day of Apache Harmony Pavel Ozhdikhin wrote:
> > > I've attached the stack trace, the compilation log and dot files in
> > > JIRA. Hope this'll help.
> >
> > Pavel, thanks for that. The bug is in the InequalityGraph creation
> > code that incorrectly assumes that integer results can be obtained
> > only by operations of type Integer. Which is not right for the inst,
> > where two unmanaged pinters are compared resulting in an int.
> >
> > Please, try this (untested) fix:
> > --- a/vm/jitrino/src/optimizer/abcd/classic_abcd.cpp
> > +++ b/vm/jitrino/src/optimizer/abcd/classic_abcd.cpp
> > @@ -211,6 +211,16 @@ void BuildInequalityGraphWalker::applyTo
> > Type::Tag inst_type = inst->getType();
> > if ( !Type::isInteger(inst_type) && inst_type != Type::Boolean &&
> > inst_type != Type::Char ) {
> > + // note: some operations of unsupported type can produce operands
> > of
> > + // supported (int) types, for example,
> > + // inst-compare-two-unmanaged-pointers, we need these operands as
> > + // unconstrained in the graph
> > + Opnd* dst = inst->getDst();
> > + if ( dst &&
> > + (dst->getType()->isInteger() ||
> > + dst->getType()->isBoolean() ) ) {
> > + addOldOrCreateOpnd(dst)->setUnconstrained(true);
> > + }
> > return;
> > }
> > if ( inst->isUnconditionalBranch() || inst->isConditionalBranch() ||
> >
> >
> >
> > hope this helps
> > not having windows, sorry
> >
> > > Thanks,
> > > Pavel
> > >
> > > On 01 May 2007 14:25:33 +0400, Egor Pasko <[EMAIL PROTECTED]> wrote:
> > > > On the 0x2C9 day of Apache Harmony Naveen Neelakantam wrote:
> > > > > On Apr 25, 2007, at 7:14 PM, Naveen Neelakantam wrote:
> > > > >
> > > > > >
> > > > > > On Apr 25, 2007, at 9:06 AM, Pavel Ozhdikhin wrote:
> > > > > >
> > > > > >> On 4/25/07, Pavel Ozhdikhin <[EMAIL PROTECTED]> wrote:
> > > > >
> > > > > <snip>
> > > > >
> > > > > >>> I've started looking into this patch. I've run into compilation
> > > > > >>> problems
> > > > > >>> on VS .NET 2003. I can update the patch and test it before
> > > > > >>> integration to
> > > > > >>> SVN, if you don't mind. Is there anything preventing us from
> > > > > >>> including the
> > > > > >>> new ABCD into the server optimization path? I can also update the
> > > > > >>> emconf
> > > > > >>> files to put classic_abcd in place of the old abcd pass.
> > > > > >>>
> > > > > >>
> > > > > >>
> > > > > >> Naveen,
> > > > > >>
> > > > > >> I've updated the patch but ran into the smoke test failure in -
> > > > > >> Xem:server
> > > > > >> mode. Please see details in the JIRA.
> > > > > >>
> > > > > >> Thanks,
> > > > > >> Pavel
> > > > > >
> > > > > > I'll take a look, but I need to setup a Windows dev environment
> > > > > > first.
> > > > >
> > > > > There goes that plan. I've tried building on two completely
> > > > > different windows setups (Windows 2003 + .NET 2003, Windows XP + .NET
> > > > > 2005) and couldn't get harmony built on either.
> > > > >
> > > > > So, I'm stalled trying to reproduce the failure.
> > > >
> > > > I think, if would be great if Pavel gave us a log with the stack
> > > > trace...
> > > >
> > > > --
> > > > Egor Pasko
> > > >
> > > >
> > >
> >
> > --
> > Egor Pasko
> >
> >
>
--
Egor Pasko