diff options
Diffstat (limited to 'libgcc')
-rw-r--r-- | libgcc/ChangeLog | 10 | ||||
-rw-r--r-- | libgcc/config.host | 6 | ||||
-rw-r--r-- | libgcc/config/i386/sol2-unwind.h | 36 | ||||
-rw-r--r-- | libgcc/configure | 2 | ||||
-rw-r--r-- | libgcc/configure.ac | 2 |
5 files changed, 16 insertions, 40 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index cf04573..5b465e6 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,13 @@ +2019-05-14 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> + + * config.host: Simplify various *-*-solaris2.1[0-9]* to + *-*-solaris2*. + * configure.ac: Likewise. + * configure: Regenerate. + + * config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove + Solaris 10 and Solaris 11 < snv_125 handling. + 2019-05-12 Iain Sandoe <iain@sandoe.co.uk> * config/rs6000/darwin-vecsave.S: Set .machine appropriately. diff --git a/libgcc/config.host b/libgcc/config.host index 91abc84..91fed5f 100644 --- a/libgcc/config.host +++ b/libgcc/config.host @@ -294,11 +294,11 @@ case ${host} in extra_parts="$extra_parts crtbeginS.o crtendS.o" else case ${host} in - i?86-*-solaris2.1[0-9]* | x86_64-*-solaris2.1[0-9]*) + i?86-*-solaris2* | x86_64-*-solaris2*) # Solaris 10+/x86 provides crt1.o, crti.o, crtn.o, and gcrt1.o as # part of the base system. ;; - sparc*-*-solaris2.1[0-9]*) + sparc*-*-solaris2*) # Solaris 10+/SPARC lacks crt1.o and gcrt1.o. extra_parts="$extra_parts crt1.o gcrt1.o" ;; @@ -703,7 +703,7 @@ i[34567]86-*-rtems*) tmake_file="$tmake_file i386/t-crtstuff t-softfp-sfdftf i386/32/t-softfp i386/t-softfp t-softfp" extra_parts="$extra_parts crti.o crtn.o" ;; -i[34567]86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) +i[34567]86-*-solaris2* | x86_64-*-solaris2*) tmake_file="$tmake_file i386/t-crtpc t-crtfm i386/t-msabi" extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o" tm_file="${tm_file} i386/elf-lib.h" diff --git a/libgcc/config/i386/sol2-unwind.h b/libgcc/config/i386/sol2-unwind.h index db5dd05..4880b38 100644 --- a/libgcc/config/i386/sol2-unwind.h +++ b/libgcc/config/i386/sol2-unwind.h @@ -144,41 +144,7 @@ x86_fallback_frame_state (struct _Unwind_Context *context, mcontext_t *mctx; long new_cfa; - if (/* Solaris 10 - ----------- - <__sighndlr+0>: push %ebp - <__sighndlr+1>: mov %esp,%ebp - <__sighndlr+3>: pushl 0x10(%ebp) - <__sighndlr+6>: pushl 0xc(%ebp) - <__sighndlr+9>: pushl 0x8(%ebp) - <__sighndlr+12>: call *0x14(%ebp) - <__sighndlr+15>: add $0xc,%esp <--- PC - <__sighndlr+18>: leave - <__sighndlr+19>: ret */ - (*(unsigned long *)(pc - 15) == 0xffec8b55 - && *(unsigned long *)(pc - 11) == 0x75ff1075 - && *(unsigned long *)(pc - 7) == 0x0875ff0c - && *(unsigned long *)(pc - 3) == 0x831455ff - && *(unsigned long *)(pc + 1) == 0xc3c90cc4) - - || /* Solaris 11 before snv_125 - -------------------------- - <__sighndlr+0> push %ebp - <__sighndlr+1> mov %esp,%ebp - <__sighndlr+4> pushl 0x10(%ebp) - <__sighndlr+6> pushl 0xc(%ebp) - <__sighndlr+9> pushl 0x8(%ebp) - <__sighndlr+12> call *0x14(%ebp) - <__sighndlr+15> add $0xc,%esp - <__sighndlr+18> leave <--- PC - <__sighndlr+19> ret */ - (*(unsigned long *)(pc - 18) == 0xffec8b55 - && *(unsigned long *)(pc - 14) == 0x7fff107f - && *(unsigned long *)(pc - 10) == 0x0875ff0c - && *(unsigned long *)(pc - 6) == 0x83145fff - && *(unsigned long *)(pc - 1) == 0xc3c90cc4) - - || /* Solaris 11 since snv_125 + if (/* Solaris 11 since snv_125 ------------------------- <__sighndlr+0> push %ebp <__sighndlr+1> mov %esp,%ebp diff --git a/libgcc/configure b/libgcc/configure index 36dbbc1..b2914de 100644 --- a/libgcc/configure +++ b/libgcc/configure @@ -5225,7 +5225,7 @@ fi # Link with -nostartfiles -nodefaultlibs since neither are present while # building libgcc. case ${host} in -i?86-*-solaris2* | x86_64-*-solaris2.1[0-9]*) +i?86-*-solaris2* | x86_64-*-solaris2*) cat > conftest.s <<EOF .section .eh_frame,"a",@unwind .zero 4 diff --git a/libgcc/configure.ac b/libgcc/configure.ac index 8e96caf..5f11455 100644 --- a/libgcc/configure.ac +++ b/libgcc/configure.ac @@ -447,7 +447,7 @@ fi # Link with -nostartfiles -nodefaultlibs since neither are present while # building libgcc. case ${host} in -i?86-*-solaris2* | x86_64-*-solaris2.1[[0-9]]*) +i?86-*-solaris2* | x86_64-*-solaris2*) cat > conftest.s <<EOF .section .eh_frame,"a",@unwind .zero 4 |