summaryrefslogtreecommitdiff
path: root/libgcc
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@suse.de>2016-10-05 07:50:34 +0000
committerAndreas Schwab <schwab@gcc.gnu.org>2016-10-05 07:50:34 +0000
commita786cec431a1afac63e1ce8de53b979121dda5c7 (patch)
tree253610f44fe85e0c050da4ab5c75fa7b4f1dcfaa /libgcc
parent54f84ca9c7a1955f9760df4c2df72be9272e0db3 (diff)
downloadgcc-a786cec431a1afac63e1ce8de53b979121dda5c7.tar.gz
crtbegin.S (__do_jv_register_classes): Remove.
* config/ia64/crtbegin.S (__do_jv_register_classes): Remove. (.section .init_array): Don't call __do_jv_register_classes. (.section .init): Likewise. From-SVN: r240771
Diffstat (limited to 'libgcc')
-rw-r--r--libgcc/ChangeLog6
-rw-r--r--libgcc/config/ia64/crtbegin.S63
2 files changed, 6 insertions, 63 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 2baca35456a..ce5a25024fc 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-10-05 Andreas Schwab <schwab@suse.de>
+
+ * config/ia64/crtbegin.S (__do_jv_register_classes): Remove.
+ (.section .init_array): Don't call __do_jv_register_classes.
+ (.section .init): Likewise.
+
2016-10-04 Jakub Jelinek <jakub@redhat.com>
* config/i386/cygming-crtbegin.c (_Jv_RegisterClasses): Remove.
diff --git a/libgcc/config/ia64/crtbegin.S b/libgcc/config/ia64/crtbegin.S
index 3bf0e71a3ac..cee0cf567d4 100644
--- a/libgcc/config/ia64/crtbegin.S
+++ b/libgcc/config/ia64/crtbegin.S
@@ -63,7 +63,6 @@ __dso_handle:
data8 @fptr(__do_global_dtors_aux)
.section .init_array, "a"
- data8 @fptr(__do_jv_register_classes)
data8 @fptr(__do_global_ctors_aux)
#else /* !HAVE_INITFINI_ARRAY_SUPPORT */
@@ -95,24 +94,6 @@ __dso_handle:
mov b6 = r2
br.call.sptk.many b0 = b6
}
-
-/* Likewise for _init. */
-
-.section .init,"ax","progbits"
- { .mlx
- movl r2 = @pcrel(__do_jv_register_classes - 16)
- }
- { .mii
- mov r3 = ip
- ;;
- add r2 = r2, r3
- ;;
- }
- { .mib
- nop 0
- mov b6 = r2
- br.call.sptk.many b0 = b6
- }
#endif /* !HAVE_INITFINI_ARRAY_SUPPORT */
.section .text
@@ -200,50 +181,6 @@ __do_global_dtors_aux:
br.ret.sptk.many rp
.endp __do_global_dtors_aux
- .align 32
- .proc __do_jv_register_classes
-__do_jv_register_classes:
- .prologue
- .save ar.pfs, r33
- alloc loc1 = ar.pfs, 0, 3, 1, 0
- movl out0 = @gprel(__JCR_LIST__)
- ;;
-
- addl r14 = @ltoff(@fptr(_Jv_RegisterClasses)), gp
- add out0 = out0, gp
- .save rp, loc0
- mov loc0 = rp
- .body
- ;;
-
- ld8 r14 = [r14]
- ld8 r15 = [out0]
- cmp.ne p6, p0 = r0, r0
- ;;
-
- cmp.eq.or p6, p0 = r0, r14
- cmp.eq.or p6, p0 = r0, r15
-(p6) br.ret.sptk.many rp
-
- ld8 r15 = [r14], 8
- ;;
- nop 0
- mov b6 = r15
-
- mov loc2 = gp
- ld8 gp = [r14]
- br.call.sptk.many rp = b6
- ;;
-
- mov gp = loc2
- mov rp = loc0
- mov ar.pfs = loc1
-
- nop 0
- nop 0
- br.ret.sptk.many rp
- .endp __do_jv_register_classes
-
#ifdef SHARED
.weak __cxa_finalize
#endif