harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vera Petrashkova (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-4443) [buildtest][func] There are issues in vm/verifier/field[local][stack]/Test09 tests
Date Thu, 12 Jul 2007 14:12:05 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-4443?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Vera Petrashkova updated HARMONY-4443:
--------------------------------------

    Attachment: control_flow_graph_9.gif

> [buildtest][func] There are issues in  vm/verifier/field[local][stack]/Test09 tests
> -----------------------------------------------------------------------------------
>
>                 Key: HARMONY-4443
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4443
>             Project: Harmony
>          Issue Type: Bug
>          Components: build - test - ci
>            Reporter: Vera Petrashkova
>         Attachments: control_flow_graph_9.gif
>
>
> 1) The following tests
>     functional/org/apache/harmony/test/func/vm/verifier/field/Test09/Test0901/fieldTest0901.xml
>     functional/org/apache/harmony/test/func/vm/verifier/local/Test09/Test0901/localTest0901.xml
>     functional/org/apache/harmony/test/func/vm/verifier/stack/Test09/Test0901/stackTest0901.xml
>     are incorrect.
>     The changes of J2SE VM specification (see [1] after Verification by Type Interface)
says:
>      To merge two operand stacks, the number of values on each stack must be identical.

>      The types of values on the stacks must also be identical, except that differently
typed reference values may appear at corresponding places on 
>      the two stacks. 
>      In this case, the merged operand stack contains a reference to an instance of the
first common superclass of the two types. 
>      Such a reference type always exists because the type Object is a superclass of all
class and interface types. 
>      If the operand stacks cannot be merged, verification of the method fails. 
>      But all listed tests incorrectly put the values of the different types (int, float,
Object) to stack
>      before putfield, aload and new instructions with different elements.
>      Then they put the values of the different types (int, float, Object) to stack once
more.
>      These tests expect that VM will not throw VerifyError.
>      But according to specification verifier rejects these incorrect classes and these
3  tests fail on RI and on Harmony.
>      These tests should be redesigned.
>     
>      
> 2) There are additional issues in the tests
>       functional/org/apache/harmony/test/func/vm/verifier/field/Test09/Test0901/fieldTest0901.xml
>       functional/org/apache/harmony/test/func/vm/verifier/local/Test09/Test0901/localTest0901.xml
>       functional/org/apache/harmony/test/func/vm/verifier/stack/Test09/Test0901/stackTest0901.xml
>       functional/org/apache/harmony/test/func/vm/verifier/field/Test09/Test0902/fieldTest0902.xml
>       functional/org/apache/harmony/test/func/vm/verifier/local/Test09/Test0902/localTest0902.xml
>       functional/org/apache/harmony/test/func/vm/verifier/stack/Test09/Test0902/stackTest0902.xml
>       Source code for Test0901B classes in all tests does not contain  should be fixed.
>       Stack and locals size should be added to the method test
> ----------------    
> ;
> ; test method
> .method public test()V 
> .limit stack 1        <<<<<          should be added
> .limit locals 1       <<<<<          should be added
> --------------
>       It is needed because when these  class files are created  with jasmin tool 2.2
release then Code attributes are absent in
>       method test() and all listed tests fail with ClassFormatError:
>                          java.lang.ClassFormatError: Test0902B : Method test()V should
have Code attribute present
> 3) The descriptions of all following tests
>      functional/org/apache/harmony/test/func/vm/verifier/field/Test09/Test0901/fieldTest0901.xml
>      functional/org/apache/harmony/test/func/vm/verifier/local/Test09/Test0901/localTest0901.xml
>      functional/org/apache/harmony/test/func/vm/verifier/stack/Test09/Test0901/stackTest0901.xml
>      functional/org/apache/harmony/test/func/vm/verifier/field/Test09/Test0902/fieldTest0902.xml
>      functional/org/apache/harmony/test/func/vm/verifier/local/Test09/Test0902/localTest0902.xml
>      functional/org/apache/harmony/test/func/vm/verifier/stack/Test09/Test0902/stackTest0902.xml
>       refer to ../control_flow_graph_0.gif files
>       But these gif files are incorrect and it is not possible to show them and know
what these tests do in fact.
>       Attached control_flow_graph_0.gif files should be placed to the following directories:
>       functional/org/apache/harmony/test/func/vm/verifier/field/Test09
>       functional/org/apache/harmony/test/func/vm/verifier/local/Test09
>       functional/org/apache/harmony/test/func/vm/verifier/stack/Test09
> [1] http://java.sun.com/docs/books/vmspec/2nd-edition/UpdatedClassFileFormat.pdf

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message