You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Pavel Rebriy (JIRA)" <ji...@apache.org> on 2007/05/18 13:00:16 UTC

[jira] Created: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

[drlvm][verifier] VerifyError is reported for class in mpowerplayer application
-------------------------------------------------------------------------------

                 Key: HARMONY-3910
                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
             Project: Harmony
          Issue Type: Bug
          Components: DRLVM
            Reporter: Pavel Rebriy


There is a bug described by Chris Elford in HARMONY-3720.

Chris Elford [27/Apr/07 03:08 PM]
Note that I found another app that exhibits the data flow analysis error.

the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):

C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
mpowerplayer 2.0.1185

C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
Uncaught exception in main:
java.lang.reflect.InvocationTargetException
        at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
        at java.lang.reflect.Method.invoke(Method.java:382)
        at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
        at java.lang.ClassLoader.defineClass0(ClassLoader.java)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.findClassImpl(Unknown Source)
        at java.net.URLClassLoader$4.run(Unknown Source)
        at java.net.URLClassLoader$4.run(Unknown Source)
        at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
        at java.security.AccessController.doPrivileged(AccessController.java:64)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
        at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
        at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
        ... 2 more 

The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.



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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12505829 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

Gregory, thanks. The patch works as expected.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>            Assignee: Gregory Shimansky
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch, test_1.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12500398 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

While the patch fixes this case I found much worse problem during investigation. When we come to the subroutine second time, we do not traverse it's code, and a stack map is not initialized at the end.

A quick solution to solve it is as follows.
1. Allocate memory for entry -> sub path for each subroutine
2. Follow this path when a stack map needs to be transformed by means of this subroutine,

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: subtask_and_path_simplification.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12502862 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

I'm currently thoroughly testing the patch and will report results tomorrow.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12502860 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

test.patch (7 kb) and cumulative_short.patch (554 kb) should be committed to SVN, tools may remain in the report

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: cumulative_short_1.patch

A newly added assertion helped to discover another problem. The cumulative fix is attached.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: test.patch

Improved test.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: subtask_and_path_simplification.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Closed: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky closed HARMONY-3910.
--------------------------------------


VERIFIED

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>            Assignee: Gregory Shimansky
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch, test_1.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Resolved: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky resolved HARMONY-3910.
----------------------------------------

    Resolution: Fixed

Patch is applied at 546915. Newly added tests pass for me. Please check that the patch is applied as expected.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch, test_1.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12503092 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

Finally, all tests pass except the following one

$ build/win_ia32_msvc_debug/deploy/jdk/jre/bin/java  -cp ../working_classlib/depends/jars/junit_3.8.2/junit.jar\;build/win_ia32_msvc_debug/semis/vm/_smoke.tests/classes exception.FinalizeStackTest
PASS : java.lang.StackOverflowError
<error on the shutdown>

This is hardly a verifier problem. Please commit test_1.patch (7 kb) and cumulative_short_1.patch (586 kb) 

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch, test_1.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: format.sh

Simplified pure-Apache style formatter

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, format.sh, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12499791 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

My investigation shows that the problem is in the class loader. It doesn't set a correct number of handles (1) for com/mpp/player/mphc/<clinit> method, so verifer behaves incorrectly as well.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: test.patch

The test

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: subtask_and_path_simplification.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12503067 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

test.patch (7 kb) and cumulative_short_1.patch (586 kb) are to be committed to SVN if the tests I'm currently running show no degradation

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: test.patch

Here are six new tests and improvement of testing system to work with J9.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, format.sh, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: jcf2jasm.pl

Regression test generator with improved exception table parser.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: test_1.patch

Found mistake in the test patch (incorrect test name in the descriptor)

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch, test_1.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: subtask_and_path_simplification.patch

The fix.

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: subtask_and_path_simplification.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Assigned: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky reassigned HARMONY-3910:
------------------------------------------

    Assignee: Gregory Shimansky

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>            Assignee: Gregory Shimansky
>         Attachments: cumulative_short.patch, cumulative_short_1.patch, format.sh, jcf2jasm.pl, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch, test_1.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12500323 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

Further investigation shows the following facts:
1. there was a problem in my tool, not a class loader
2. verifier incorrectly added top level code to path
3. verifier handles m_path_fork updates differently and not always correctly



> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Commented: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12500415 ] 

Alexei Fedotov commented on HARMONY-3910:
-----------------------------------------

The good thing is that return addresses on stack cannot be merged, so if we come to already marked subroutine the return address is already in local variable.  In other words, if we come to already marked subroutine we need to follow the path till the entrance, and on return examine ret local variable index.

If we come to the top level code, than no analysis is required. What if we come to marked unknown code?

> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: subtask_and_path_simplification.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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


[jira] Updated: (HARMONY-3910) [drlvm][verifier] VerifyError is reported for class in mpowerplayer application

Posted by "Alexei Fedotov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-3910?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexei Fedotov updated HARMONY-3910:
------------------------------------

    Attachment: cumulative_short.patch

The patch contains data flow improvement which fixes the bug. We store maps for return nodes and merge them when needed. The big size is finally due to final agreement with Pavel R to use the same formatting for all code.



> [drlvm][verifier] VerifyError is reported for class in mpowerplayer application
> -------------------------------------------------------------------------------
>
>                 Key: HARMONY-3910
>                 URL: https://issues.apache.org/jira/browse/HARMONY-3910
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Rebriy
>         Attachments: cumulative_short.patch, format.sh, subtask_and_path_simplification.patch, test.patch, test.patch, test.patch
>
>
> There is a bug described by Chris Elford in HARMONY-3720.
> Chris Elford [27/Apr/07 03:08 PM]
> Note that I found another app that exhibits the data flow analysis error.
> the mpowerplayer.com player.jar file fails (http://mpowerplayer.com/download.jsp?build=1185):
> C:\java\test\mpp\mpp-sdk>c:\java\sun50_09_jre\bin\java -jar player.jar
> mpowerplayer 2.0.1185
> C:\java\test\mpp\mpp-sdk>c:\java\harmony-hdk-r532358\jdk\jre\bin\java -jar player.jar
> Uncaught exception in main:
> java.lang.reflect.InvocationTargetException
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         at java.lang.reflect.Method.invoke(Method.java:382)
>         at org.apache.harmony.vm.JarRunner.main(JarRunner.java:80)
> Caused by: java.lang.VerifyError: (class: com/mpp/player/mphc, method: <clinit>()V) Data flow analysis error
>         at java.lang.ClassLoader.defineClass0(ClassLoader.java)
>         at java.lang.ClassLoader.defineClass(ClassLoader.java:417)
>         at java.security.SecureClassLoader.defineClass(Unknown Source)
>         at java.net.URLClassLoader.findClassImpl(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.net.URLClassLoader$4.run(Unknown Source)
>         at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
>         at java.security.AccessController.doPrivileged(AccessController.java:64)
>         at java.net.URLClassLoader.findClass(Unknown Source)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:554)
>         at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:942)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:311)
>         at java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
>         ... 2 more 
> The problem is in analyzing subroutine bounds algorithm, verifier performs data flow analysis on a wrong basic block.

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