]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR libffi/21285 (gij fails to handle NullPointerException exception)
authorRichard Henderson <rth@gcc.gnu.org>
Mon, 9 May 2005 13:40:15 +0000 (06:40 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Mon, 9 May 2005 13:40:15 +0000 (06:40 -0700)
        PR libffi/21285
        * src/alpha/osf.S: Update unwind into to match code.

From-SVN: r99438

libffi/ChangeLog
libffi/src/alpha/osf.S

index e15ceb2920ae48122cecf4efbda249f5ff741ba5..8692e8ca92124726c44653f3d3ec0839e5e4d070 100644 (file)
@@ -1,3 +1,8 @@
+2005-05-08  Richard Henderson  <rth@redhat.com>
+
+       PR libffi/21285
+       * src/alpha/osf.S: Update unwind into to match code.
+
 2004-11-04  Release Manager
 
        * GCC 3.4.3 released.
 
 2003-03-03  Andreas Tobler <a.tobler@schweiz.ch>
 
-        * src/powerpc/darwin_closure.S: Recode to fit dynamic libraries.
+       * src/powerpc/darwin_closure.S: Recode to fit dynamic libraries.
 
 2003-02-06  Andreas Tobler <a.tobler@schweiz.ch>
 
 2003-01-31  Christian Cornelssen  <ccorn@cs.tu-berlin.de>,
            Andreas Schwab  <schwab@suse.de>
 
-        * configure.in: Adjust command to source config-ml.in to account
+       * configure.in: Adjust command to source config-ml.in to account
        for changes to the libffi_basedir definition.
        (libffi_basedir): Remove ${srcdir} from value and include trailing
        slash if nonempty.
        
-        * configure: Regenerate.
+       * configure: Regenerate.
 
 2003-01-29  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
 
 2003-01-13 Andreas Tobler <a.tobler@schweiz.ch>
 
        * libffi/src/ffitest.c
-         add closure testcases
+        add closure testcases
 
 2003-01-13 Kevin B. Hendricks <khendricks@ivey.uwo.ca>
 
        * libffi/src/powerpc/ffi.c
-         fix alignment bug for float (4 byte aligned iso 8 byte)
+        fix alignment bug for float (4 byte aligned iso 8 byte)
 
 2003-01-09  Geoffrey Keating  <geoffk@apple.com>
 
index cfa7a964bc15e710d067c5dc994913e9c08b3451..2f03d627aa2d6324eacb66dc42c19cddcbe7a293 100644 (file)
@@ -49,12 +49,10 @@ $LFB1:
        addq    $16,$17,$1
        mov     $16, $30
        stq     $26, 0($1)
-$LCFI0:
        stq     $15, 8($1)
-$LCFI1:
        stq     $18, 16($1)
        mov     $1, $15
-$LCFI2:
+$LCFI1:
        .prologue 0
 
        stq     $19, 24($1)
@@ -84,6 +82,7 @@ $LCFI2:
        ldq     $19, 24($15)
        ldq     $18, 16($15)
        ldq     $26, 0($15)
+$LCFI2:
        beq     $19, $noretval
 
        # Store the return value out in the proper type.
@@ -94,22 +93,26 @@ $LCFI2:
        cmpeq   $18, FFI_TYPE_DOUBLE, $3
        bne     $3, $retdouble
 
+       .align  3
 $noretval:
        ldq     $15, 8($15)
        ret
 
+       .align  4
 $retint:
        stq     $0, 0($19)
        nop
        ldq     $15, 8($15)
        ret
 
+       .align  4
 $retfloat:
        sts     $f0, 0($19)
        nop
        ldq     $15, 8($15)
        ret
 
+       .align  4
 $retdouble:
        stt     $f0, 0($19)
        nop
@@ -295,61 +298,62 @@ $load_table:
 #ifdef __ELF__
        .section        .eh_frame,EH_FRAME_FLAGS,@progbits
 __FRAME_BEGIN__:
-       .4byte  $LECIE1-$LSCIE1  # Length of Common Information Entry
+       .4byte  $LECIE1-$LSCIE1 # Length of Common Information Entry
 $LSCIE1:
-       .4byte  0x0      # CIE Identifier Tag
-       .byte   0x1      # CIE Version
-       .ascii "zR\0"    # CIE Augmentation
-       .byte   0x1      # uleb128 0x1; CIE Code Alignment Factor
-       .byte   0x78     # sleb128 -8; CIE Data Alignment Factor
-       .byte   0x1a     # CIE RA Column
-       .byte   0x1      # uleb128 0x1; Augmentation size
-       .byte   0x1b     # FDE Encoding (pcrel sdata4)
-       .byte   0xc      # DW_CFA_def_cfa
-       .byte   0x1e     # uleb128 0x1e
-       .byte   0x0      # uleb128 0x0
+       .4byte  0x0             # CIE Identifier Tag
+       .byte   0x1             # CIE Version
+       .ascii "zR\0"           # CIE Augmentation
+       .byte   0x1             # uleb128 0x1; CIE Code Alignment Factor
+       .byte   0x78            # sleb128 -8; CIE Data Alignment Factor
+       .byte   26              # CIE RA Column
+       .byte   0x1             # uleb128 0x1; Augmentation size
+       .byte   0x1b            # FDE Encoding (pcrel sdata4)
+       .byte   0xc             # DW_CFA_def_cfa
+       .byte   30              # uleb128 column 30
+       .byte   0               # uleb128 offset 0
        .align 3
 $LECIE1:
 $LSFDE1:
-       .4byte  $LEFDE1-$LASFDE1         # FDE Length
+       .4byte  $LEFDE1-$LASFDE1                # FDE Length
 $LASFDE1:
-       .4byte  $LASFDE1-__FRAME_BEGIN__         # FDE CIE offset
-       .4byte  $LFB1-.  # FDE initial location
-       .4byte  $LFE1-$LFB1      # FDE address range
-       .byte   0x0      # uleb128 0x0; Augmentation size
-       .byte   0x4      # DW_CFA_advance_loc4
-       .4byte  $LCFI0-$LFB1
-       .byte   0xe      # DW_CFA_def_cfa_offset
-       .byte   0x30     # uleb128 0x30
-       .byte   0x4      # DW_CFA_advance_loc4
-       .4byte  $LCFI1-$LCFI0
-       .byte   0x9a     # DW_CFA_offset, column 0x1a
-       .byte   0x6      # uleb128 0x6
-       .byte   0x8f     # DW_CFA_offset, column 0xf
-       .byte   0x5      # uleb128 0x5
-       .byte   0x4      # DW_CFA_advance_loc4
+       .4byte  $LASFDE1-__FRAME_BEGIN__        # FDE CIE offset
+       .4byte  $LFB1-.         # FDE initial location
+       .4byte  $LFE1-$LFB1     # FDE address range
+       .byte   0x0             # uleb128 0x0; Augmentation size
+
+       .byte   0x4             # DW_CFA_advance_loc4
+       .4byte  $LCFI1-$LFB1
+       .byte   0x9a            # DW_CFA_offset, column 26
+       .byte   4               # uleb128 4*-8
+       .byte   0x8f            # DW_CFA_offset, column 15
+       .byte   0x3             # uleb128 3*-8
+       .byte   0xc             # DW_CFA_def_cfa
+       .byte   15              # uleb128 column 15
+       .byte   32              # uleb128 offset 32
+
+       .byte   0x4             # DW_CFA_advance_loc4
        .4byte  $LCFI2-$LCFI1
-       .byte   0xc      # DW_CFA_def_cfa
-       .byte   0xf      # uleb128 0xf
-       .byte   0x30     # uleb128 0x30
+       .byte   0xda            # DW_CFA_restore, column 26
        .align 3
 $LEFDE1:
 
 $LSFDE3:
-       .4byte  $LEFDE3-$LASFDE3         # FDE Length
+       .4byte  $LEFDE3-$LASFDE3                # FDE Length
 $LASFDE3:
-       .4byte  $LASFDE3-__FRAME_BEGIN__         # FDE CIE offset
-       .4byte  $LFB2-.  # FDE initial location
-       .4byte  $LFE2-$LFB2      # FDE address range
-       .byte   0x0      # uleb128 0x0; Augmentation size
-       .byte   0x4      # DW_CFA_advance_loc4
+       .4byte  $LASFDE3-__FRAME_BEGIN__        # FDE CIE offset
+       .4byte  $LFB2-.         # FDE initial location
+       .4byte  $LFE2-$LFB2     # FDE address range
+       .byte   0x0             # uleb128 0x0; Augmentation size
+
+       .byte   0x4             # DW_CFA_advance_loc4
        .4byte  $LCFI5-$LFB2
-       .byte   0xe      # DW_CFA_def_cfa_offset
-       .byte   0x90,0x1         # uleb128 0x90
-       .byte   0x4      # DW_CFA_advance_loc4
+       .byte   0xe             # DW_CFA_def_cfa_offset
+       .byte   0x80,0x1        # uleb128 128
+
+       .byte   0x4             # DW_CFA_advance_loc4
        .4byte  $LCFI6-$LCFI5
-       .byte   0x9a     # DW_CFA_offset, column 0x1a
-       .byte   0x12     # uleb128 0x12
+       .byte   0x9a            # DW_CFA_offset, column 26
+       .byte   16              # uleb128 offset 16*-8
        .align 3
 $LEFDE3:
 #endif