[Bug 324] Shark assert(is_jarray(), "should be") during Java2Demo demos.Mix.JavaMedia

bugzilla-daemon at icedtea.classpath.org bugzilla-daemon at icedtea.classpath.org
Thu Jun 11 02:27:13 PDT 2009


http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=324


gbenson at redhat.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at icedtea.classpath|gbenson at redhat.com
                   |.org                        |




------- Comment #3 from gbenson at redhat.com  2009-06-11 09:27 -------
Ok, I found the bug.  It happens at the arraylength instruction at bci 484 in
com.sun.media.sound.SoftMainMixer::processAudioBuffers, in typeflow block #83
rpo#33 [479 - 493):

  479: aload 5
  481: dup
  482: astore 15
  484: arraylength
  485: istore 14
  487: iconst_0
  488: istore 13
  490: goto 906

At 479, where block #83 enters, typeflow thinks the state look like this:

  State : locals 22, stack 0, monitors 0
    local  0 : com/sun/media/sound/SoftMainMixer
    local  1 : double
    local  2 : double2
    local  3 : double
    local  4 : double2
    local  5 : null
    local  6 : com/sun/media/sound/SoftAudioBuffer
    local  7 : com/sun/media/sound/SoftAudioBuffer
    local  8 : com/sun/media/sound/SoftAudioBuffer
    local  9 : int
    local 10 : [[F
    local 11 : [[F
    local 12 : bottom
    local 13 : bottom
    local 14 : bottom
    local 15 : bottom
    local 16 : bottom
    local 17 : bottom
    local 18 : bottom
    local 19 : bottom
    local 20 : bottom
    local 21 : bottom

Typeflow has decided that local 5 (the array argument to the arraylength
instruction) is null -- which has no type.  Shark has worked around this by
assuming that all null objects are straight objects, not arrays.

I can see a fix this, sort of, but I'm going to have to rearrange the parser so
it's going to take a while...


-- 
Configure bugmail: http://icedtea.classpath.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
You are the assignee for the bug, or are watching the assignee.



More information about the distro-pkg-dev mailing list