harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Weldon Washburn" <weldon...@gmail.com>
Subject [DRLVM/MMTk] remaining vmmagic bugs in jitrino.jet
Date Tue, 01 Aug 2006 17:41:46 GMT
All,

I added a bunch of missing regression tests.  The only ones missing at
this point are the atomic operations. The regression tests are
currently in the process of being donated.  Thus I can't simply post
these tests to Harmony JIRA :(

In any case below are the current tests that fail when running
jitrino.jet.  I am not certain about the sign extend tests.  I may
have constructed the test cases wrong.

    /*
     * Test method for '...unboxed.Address.toLong()'
     */
    public static boolean toLong() {
        Address adr = Address.fromInt(0xffFFffFF);
        long lon = adr.toLong();
        return lon == 0x00000000ffFFffFFL;
    }


    /*
     * Test method for '...unboxed.Address.attempt(int, int, Offset)'
     */
    public static boolean attemptInt() {
        boolean res = false;

        int i = adr.toInt();
        adr.store(i, Offset.zero());
        // JIT BROKEN res = adr.attempt(i, 0, Offset.zero());
        // JIT BROKEN WJW res &= !adr.attempt(i, 0, Offset.zero());

        return res;
    }

    /*
     * Test method for '...unboxed.Address.attempt(Word, Word)'
     */
    public static boolean attemptWord() {
        boolean res = false;

        Word word = Word.fromIntSignExtend(adr.toInt());
        adr.store(word);

        // JIT BROKEN WJW res = adr.attempt(word, Word.zero());
        // JIT BROKEN res &= !adr.attempt(word, Word.zero());

        return res;
    }


//  Extent.fromIntSignExtend() test

    public static boolean fromIntSignExtend()
    {
        boolean res = true;  //wjw is this test correct???
        //System.out.println("fromIntSignExtend " +
Long.toHexString(Extent.fromIntSignExtend(0xBABA).toLong() ) );
        res &= Extent.fromIntSignExtend(0xBABA).toLong() ==
0xffFFffFFffFFBABAL;
        res &= Extent.fromIntSignExtend(0xffffffff).toLong() ==
0xFFffFFffFFffFFffL;

        return res;
    }


// Word.fromIntSignExtend() test

    public static boolean fromIntSignExtend()
    {
        boolean res = true;  //wjw is this test correct???
        //System.out.println("fromIntSignExtend " +
Long.toHexString(Extent.fromIntSignExtend(0xBABA).toLong() ) );
        res &= Word.fromIntSignExtend(0xBABA).toLong() ==
0xffFFffFFffFFBABAL;
        res &= Word.fromIntSignExtend(0xffffffff).toLong() ==
0xFFffFFffFFffFFffL;
        return res;
    }

// Word.fromIntZeroExtend() test

    public static boolean fromIntZeroExtend()
    {
        boolean res = true;

        res &= Word.fromIntZeroExtend(0xBABA).toLong() == 0xBABA;
        res &= Word.fromIntZeroExtend(0xffffffff).toLong() == 0xFFffFFffL;

        return res;
    }

//Word.toLong()

    public static boolean toLong()
    {
        boolean res = false;
        Word wor = Word.one();
        res = (wor.toLong() == 0x01L);
        wor = Word.max();
        res &= (wor.toLong() == 0x00000000FFffFFffL);
        return res;
    }


-- 
Weldon Washburn
Intel Middleware Products Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message