[fedora-java] rawhide issues

Andrew Haley aph at redhat.com
Mon Dec 19 15:57:02 UTC 2005


Andrew Haley writes:
 > Andrew Haley writes:
 >  > Andrew Haley writes:
 >  >  > Anthony Green writes:
 >  >  >  > I see the following issues with rawhide (on x86) right now...
 >  >  >  > 
 >  >  >  > * I'm not getting any stack traces, just <<No stacktrace available>>
 >  >  >  > 
 >  >  >  > 
 >  >  >  > * Eclipse fails and the log contains the following errors (with no
 >  >  >  > stacktraces):
 >  >  >  > 
 >  >  >  > java.lang.IllegalAccessError: org.xml.sax.helpers.NamespaceSupport$Context: org.xml.sax.helpers.NamespaceSupport.EMPTY_ENUMERATION
 >  >  >  > 
 >  >  >  > java.lang.Exception: Cannot initialize Update Configurator
 >  >  >  > 
 >  >  >  > java.lang.IllegalStateException: Bundle initial at reference:file:plugins/org.eclipse.core.runtime_3.1.1.jar/ [1] is not active.
 >  >  >  > 
 >  >  >  > 
 >  >  >  > * aot-compile-rpm is using -mcpu=i686, but -mcpu is deprecated in GCC 4.1.  I can't see where this comes from.
 >  >  >  > 
 >  >  >  > 
 >  >  >  > Any ideas?
 >  >  > 
 >  >  > gcc is emitting bad unwinder data for some routines.  This isn't a bug
 >  >  > in the gcc unwinder itself, because gdb has the same problems.  Look
 >  >  > at Frame 7 and Frame 9:
 >  > 
 >  > BTW, I don't have this problem when building gcc from FSF sources.
 > 
 > You'll have to make your window hugely wide to read this mail.
 > 
 > Here's the difference.  On the left, we have gcc version 4.1.0 20051212 (prerelease), 
 > on the right we have gcc version 4.1.0 20051214 (Red Hat 4.1.0-0.9)
 > 
 > The one on the right is the one that works.
 > 
 > You'll note that the bad one uses three push instructions and then
 > sets CFA offset to 12.  This is wrong AFAICS: the original CFA offset
 > at function entry is 4, so if you push three registers, the CFA offset
 > should be 16.  The code on the right subtracts 12 from sp --
 > allocating three words -- and then sets CFA offset to 16.  This one is
 > correct, and we get a Java stacktrace.
 > 
 > Both built on the same box.  However, the 4.1 build was
 > i686-pc-linux-gnu, and the RPM build was i386-pc-linux-gnu.  I'm
 > guessing that is the *real* difference, and I'm investigating building
 > 4.1 branch with host=i386-pc-linux-gnu.

And here is 4.1 branch built with i386-pc-linux-gnu.  And guess what!
It's just as bad as the Fedora RPM.  OK, so I'm now going to go
digging into the DWARF output routines to see if I can discover the
root cause of this insanity.

Andrew.


00a326a8 <java.lang.Throwable.Throwable(java.lang.String)>:
  a326a8:       56                      push   %esi
  a326a9:       53                      push   %ebx
  a326aa:       50                      push   %eax
  a326ab:       e8 00 00 00 00          call   a326b0 <java.lang.Throwable.Throwable(java.lang.String)+0x8>
  a326b0:       5b                      pop    %ebx
  a326b1:       81 c3 34 ee 6a 00       add    $0x6aee34,%ebx
  a326b7:       8b 74 24 10             mov    0x10(%esp),%esi
  a326bb:       89 34 24                mov    %esi,(%esp)
  a326be:       e8 7d f6 dd ff          call   811d40 <java.lang.Object.Object()@plt>
  a326c3:       89 34 24                mov    %esi,(%esp)
  a326c6:       e8 a5 8a dc ff          call   7fb170 <java.lang.Throwable.finit$()@plt>
  a326cb:       8b 06                   mov    (%esi),%eax
  a326cd:       89 34 24                mov    %esi,(%esp)
  a326d0:       ff 50 3c                call   *0x3c(%eax)
  a326d3:       8b 44 24 14             mov    0x14(%esp),%eax
  a326d7:       89 46 04                mov    %eax,0x4(%esi)
  a326da:       5e                      pop    %esi
  a326db:       5b                      pop    %ebx
  a326dc:       5e                      pop    %esi
  a326dd:       c3                      ret    
  a326de:       89 f6                   mov    %esi,%esi

00058d50 0000001c 00032528 FDE cie=0002682c pc=00a326a8..00a326de
  Augmentation data:     00 00 00 00

  DW_CFA_advance_loc: 1 to 00a326a9
  DW_CFA_def_cfa_offset: 8
  DW_CFA_advance_loc: 1 to 00a326aa
  DW_CFA_def_cfa_offset: 12
  DW_CFA_offset: r3 at cfa-12
  DW_CFA_offset: r6 at cfa-8

00058d50 0000001c 00032528 FDE cie=0002682c pc=00a326a8..00a326de
   LOC   CFA      r3   r6   ra   
00a326a8 r4+4     u    u    c-4  
00a326a9 r4+8     u    u    c-4  
00a326aa r4+12    c-12 c-8  c-4  




More information about the fedora-devel-java-list mailing list