summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2016-10-04 07:49:44 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2016-10-04 07:49:44 +0000
commitbc6b11a7c9ca7d79101a13577d7bca3b1d3fc92c (patch)
treea97869bd6f5622fc271ae96d3f55571b49be01ac
parent47c7018370c74a5293b447848f5611e3cc7fc80b (diff)
gcc/
* defaults.h (JCR_SECTION_NAME, TARGET_USE_JCR_SECTION): Remove. * system.h (JCR_SECTION_NAME, TARGET_USE_JCR_SECTION): Poison. * doc/tm.texi.in (TARGET_USE_JCR_SECTION): Remove. * doc/tm.texi: Regenerated. * config/i386/mingw32.h (TARGET_USE_JCR_SECTION): Remove. * config/i386/cygming.h (TARGET_USE_JCR_SECTION): Remove. * config/darwin.h (JCR_SECTION_NAME): Remove. * config/pa/pa64-hpux.h (JCR_SECTION_NAME): Remove. * config/rs6000/aix71.h (TARGET_USE_JCR_SECTION): Remove. * config/rs6000/aix51.h (TARGET_USE_JCR_SECTION): Remove. * config/rs6000/aix52.h (TARGET_USE_JCR_SECTION): Remove. * config/rs6000/aix53.h (TARGET_USE_JCR_SECTION): Remove. * config/rs6000/aix61.h (TARGET_USE_JCR_SECTION): Remove. gcc/c-family/ * c-cppbuiltin.c (c_cpp_builtins): Don't define __LIBGCC_JCR_SECTION_NAME__. libgcc/ * config/i386/cygming-crtbegin.c (_Jv_RegisterClasses): Remove. (__JCR_LIST__): Remove. (__gcc_register_frame): Don't attempt to _Jv_RegisterClasses. * config/i386/cygming-crtend.c (__JCR_END__): Remove. * config/ia64/crtbegin.S (__JCR_LIST__): Remove. * config/ia64/crtend.S (__JCR_END__): Remove. * crtstuff.c: Remove __LIBGCC_JCR_SECTION_NAME__ from preprocessor conditionals. (__JCR_LIST__, __JCR_END__): Remove. (frame_dummy): Don't attempt to _Jv_RegisterClasses. (__do_global_ctors_1): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@240739 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog16
-rw-r--r--gcc/c-family/ChangeLog5
-rw-r--r--gcc/c-family/c-cppbuiltin.c4
-rw-r--r--gcc/config/darwin.h3
-rw-r--r--gcc/config/i386/cygming.h5
-rw-r--r--gcc/config/i386/mingw32.h3
-rw-r--r--gcc/config/pa/pa64-hpux.h6
-rw-r--r--gcc/config/rs6000/aix51.h2
-rw-r--r--gcc/config/rs6000/aix52.h2
-rw-r--r--gcc/config/rs6000/aix53.h2
-rw-r--r--gcc/config/rs6000/aix61.h2
-rw-r--r--gcc/config/rs6000/aix71.h2
-rw-r--r--gcc/defaults.h21
-rw-r--r--gcc/doc/tm.texi6
-rw-r--r--gcc/doc/tm.texi.in6
-rw-r--r--gcc/system.h3
-rw-r--r--libgcc/ChangeLog14
-rw-r--r--libgcc/config/i386/cygming-crtbegin.c34
-rw-r--r--libgcc/config/i386/cygming-crtend.c8
-rw-r--r--libgcc/config/ia64/crtbegin.S4
-rw-r--r--libgcc/config/ia64/crtend.S5
-rw-r--r--libgcc/crtstuff.c48
22 files changed, 41 insertions, 160 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2b0ed4e4c820..efed569f6057 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,19 @@
+2016-10-04 Jakub Jelinek <jakub@redhat.com>
+
+ * defaults.h (JCR_SECTION_NAME, TARGET_USE_JCR_SECTION): Remove.
+ * system.h (JCR_SECTION_NAME, TARGET_USE_JCR_SECTION): Poison.
+ * doc/tm.texi.in (TARGET_USE_JCR_SECTION): Remove.
+ * doc/tm.texi: Regenerated.
+ * config/i386/mingw32.h (TARGET_USE_JCR_SECTION): Remove.
+ * config/i386/cygming.h (TARGET_USE_JCR_SECTION): Remove.
+ * config/darwin.h (JCR_SECTION_NAME): Remove.
+ * config/pa/pa64-hpux.h (JCR_SECTION_NAME): Remove.
+ * config/rs6000/aix71.h (TARGET_USE_JCR_SECTION): Remove.
+ * config/rs6000/aix51.h (TARGET_USE_JCR_SECTION): Remove.
+ * config/rs6000/aix52.h (TARGET_USE_JCR_SECTION): Remove.
+ * config/rs6000/aix53.h (TARGET_USE_JCR_SECTION): Remove.
+ * config/rs6000/aix61.h (TARGET_USE_JCR_SECTION): Remove.
+
2016-10-03 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
* ipa-cp.c (propagate_bits_accross_jump_function): Introduce space
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index 6c2f3cf5655b..d39e036c1a97 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,8 @@
+2016-10-04 Jakub Jelinek <jakub@redhat.com>
+
+ * c-cppbuiltin.c (c_cpp_builtins): Don't define
+ __LIBGCC_JCR_SECTION_NAME__.
+
2016-10-03 Bernd Edlinger <bernd.edlinger@hotmail.de>
* c-common.c (c_common_truthvalue_conversion): Warn for suspicious
diff --git a/gcc/c-family/c-cppbuiltin.c b/gcc/c-family/c-cppbuiltin.c
index b860c21e3e60..97eda67e93b1 100644
--- a/gcc/c-family/c-cppbuiltin.c
+++ b/gcc/c-family/c-cppbuiltin.c
@@ -1213,10 +1213,6 @@ c_cpp_builtins (cpp_reader *pfile)
builtin_define_with_value ("__LIBGCC_EH_FRAME_SECTION_NAME__",
EH_FRAME_SECTION_NAME, 1);
#endif
-#ifdef JCR_SECTION_NAME
- builtin_define_with_value ("__LIBGCC_JCR_SECTION_NAME__",
- JCR_SECTION_NAME, 1);
-#endif
#ifdef CTORS_SECTION_ASM_OP
builtin_define_with_value ("__LIBGCC_CTORS_SECTION_ASM_OP__",
CTORS_SECTION_ASM_OP, 1);
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 3782eb340479..b16fec89cdf8 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -825,9 +825,6 @@ enum machopic_addr_class {
#define EH_FRAME_SECTION_NAME "__TEXT"
#define EH_FRAME_SECTION_ATTR ",coalesced,no_toc+strip_static_syms+live_support"
-/* Java runtime class list. */
-#define JCR_SECTION_NAME "__DATA,jcr,regular,no_dead_strip"
-
#undef ASM_PREFERRED_EH_DATA_FORMAT
#define ASM_PREFERRED_EH_DATA_FORMAT(CODE,GLOBAL) \
(((CODE) == 2 && (GLOBAL) == 1) \
diff --git a/gcc/config/i386/cygming.h b/gcc/config/i386/cygming.h
index 1d9675eaf93e..10d68361eb1d 100644
--- a/gcc/config/i386/cygming.h
+++ b/gcc/config/i386/cygming.h
@@ -443,11 +443,6 @@ do { \
#endif /* HAVE_GAS_WEAK */
-/* FIXME: SUPPORTS_WEAK && TARGET_HAVE_NAMED_SECTIONS is true,
- but for .jcr section to work we also need crtbegin and crtend
- objects. */
-#define TARGET_USE_JCR_SECTION 1
-
/* Decide whether it is safe to use a local alias for a virtual function
when constructing thunks. */
#undef TARGET_USE_LOCAL_THUNK_ALIAS_P
diff --git a/gcc/config/i386/mingw32.h b/gcc/config/i386/mingw32.h
index 0407efe7df3a..ac4aa0d728b0 100644
--- a/gcc/config/i386/mingw32.h
+++ b/gcc/config/i386/mingw32.h
@@ -239,9 +239,6 @@ do { \
#undef TARGET_N_FORMAT_TYPES
#define TARGET_N_FORMAT_TYPES 3
-/* Let defaults.h definition of TARGET_USE_JCR_SECTION apply. */
-#undef TARGET_USE_JCR_SECTION
-
#define HAVE_ENABLE_EXECUTE_STACK
#undef CHECK_EXECUTE_STACK_ENABLED
#define CHECK_EXECUTE_STACK_ENABLED flag_setstackexecutable
diff --git a/gcc/config/pa/pa64-hpux.h b/gcc/config/pa/pa64-hpux.h
index 279406a01fb3..88ec4909ee98 100644
--- a/gcc/config/pa/pa64-hpux.h
+++ b/gcc/config/pa/pa64-hpux.h
@@ -170,8 +170,6 @@ along with GCC; see the file COPYING3. If not see
#define DATA_SECTION_ASM_OP "\t.data"
#define BSS_SECTION_ASM_OP "\t.section\t.bss"
-#define JCR_SECTION_NAME ".jcr"
-
#define HP_INIT_ARRAY_SECTION_ASM_OP "\t.section\t.init"
#define GNU_INIT_ARRAY_SECTION_ASM_OP "\t.section\t.init_array"
#define HP_FINI_ARRAY_SECTION_ASM_OP "\t.section\t.fini"
@@ -382,8 +380,8 @@ do { \
initializers specified here. */
/* We need to add frame_dummy to the initializer list if EH_FRAME_SECTION_NAME
- or JCR_SECTION_NAME is defined. */
-#if defined(EH_FRAME_SECTION_NAME) || defined(JCR_SECTION_NAME)
+ is defined. */
+#if defined(EH_FRAME_SECTION_NAME)
#define PA_INIT_FRAME_DUMMY_ASM_OP ".dword P%frame_dummy"
#else
#define PA_INIT_FRAME_DUMMY_ASM_OP ""
diff --git a/gcc/config/rs6000/aix51.h b/gcc/config/rs6000/aix51.h
index e1d4ee72b77b..3218712cd54a 100644
--- a/gcc/config/rs6000/aix51.h
+++ b/gcc/config/rs6000/aix51.h
@@ -163,8 +163,6 @@ do { \
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
-#define TARGET_USE_JCR_SECTION 0
-
#define TARGET_AIX_VERSION 51
#undef TARGET_LIBC_HAS_FUNCTION
diff --git a/gcc/config/rs6000/aix52.h b/gcc/config/rs6000/aix52.h
index f1893c70b0d1..0e25ff26b4fd 100644
--- a/gcc/config/rs6000/aix52.h
+++ b/gcc/config/rs6000/aix52.h
@@ -176,6 +176,4 @@ extern long long int atoll(const char *);
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
-#define TARGET_USE_JCR_SECTION 0
-
#define TARGET_AIX_VERSION 52
diff --git a/gcc/config/rs6000/aix53.h b/gcc/config/rs6000/aix53.h
index 50e77e790514..8ca58823c4c8 100644
--- a/gcc/config/rs6000/aix53.h
+++ b/gcc/config/rs6000/aix53.h
@@ -177,6 +177,4 @@ extern long long int atoll(const char *);
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
-#define TARGET_USE_JCR_SECTION 0
-
#define TARGET_AIX_VERSION 53
diff --git a/gcc/config/rs6000/aix61.h b/gcc/config/rs6000/aix61.h
index 0c9e7f0829bb..cddb5b791473 100644
--- a/gcc/config/rs6000/aix61.h
+++ b/gcc/config/rs6000/aix61.h
@@ -210,6 +210,4 @@ extern long long int atoll(const char *);
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
-#define TARGET_USE_JCR_SECTION 0
-
#define TARGET_AIX_VERSION 61
diff --git a/gcc/config/rs6000/aix71.h b/gcc/config/rs6000/aix71.h
index a0f5b3cf2bc0..4d097fb824bc 100644
--- a/gcc/config/rs6000/aix71.h
+++ b/gcc/config/rs6000/aix71.h
@@ -210,8 +210,6 @@ extern long long int atoll(const char *);
/* This target defines SUPPORTS_WEAK and TARGET_ASM_NAMED_SECTION,
but does not have crtbegin/end. */
-#define TARGET_USE_JCR_SECTION 0
-
#define TARGET_AIX_VERSION 71
/* AIX 7.1 supports DWARF3 debugging, but XCOFF remains the default. */
diff --git a/gcc/defaults.h b/gcc/defaults.h
index c62c844cbebf..1bbcf0eb5b86 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -392,27 +392,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define MASK_RETURN_ADDR NULL_RTX
#endif
-/* If we have named section and we support weak symbols, then use the
- .jcr section for recording java classes which need to be registered
- at program start-up time. */
-#if defined (TARGET_ASM_NAMED_SECTION) && SUPPORTS_WEAK
-#ifndef JCR_SECTION_NAME
-#define JCR_SECTION_NAME ".jcr"
-#endif
-#endif
-
-/* This decision to use a .jcr section can be overridden by defining
- USE_JCR_SECTION to 0 in target file. This is necessary if target
- can define JCR_SECTION_NAME but does not have crtstuff or
- linker support for .jcr section. */
-#ifndef TARGET_USE_JCR_SECTION
-#ifdef JCR_SECTION_NAME
-#define TARGET_USE_JCR_SECTION 1
-#else
-#define TARGET_USE_JCR_SECTION 0
-#endif
-#endif
-
/* Number of hardware registers that go into the DWARF-2 unwind info.
If not defined, equals FIRST_PSEUDO_REGISTER */
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 8a98ba43a67e..634f701d6e30 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -11598,12 +11598,6 @@ conversion rules.
This is currently used only by the C and C++ front ends.
@end deftypefn
-@defmac TARGET_USE_JCR_SECTION
-This macro determines whether to use the JCR section to register Java
-classes. By default, TARGET_USE_JCR_SECTION is defined to 1 if both
-SUPPORTS_WEAK and TARGET_HAVE_NAMED_SECTIONS are true, else 0.
-@end defmac
-
@defmac OBJC_JBLEN
This macro determines the size of the objective C jump buffer for the
NeXT runtime. By default, OBJC_JBLEN is defined to an innocuous value.
diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in
index f1cfc863f30d..7b6fa873c5be 100644
--- a/gcc/doc/tm.texi.in
+++ b/gcc/doc/tm.texi.in
@@ -8186,12 +8186,6 @@ and scanf formatter settings.
@hook TARGET_CONVERT_TO_TYPE
-@defmac TARGET_USE_JCR_SECTION
-This macro determines whether to use the JCR section to register Java
-classes. By default, TARGET_USE_JCR_SECTION is defined to 1 if both
-SUPPORTS_WEAK and TARGET_HAVE_NAMED_SECTIONS are true, else 0.
-@end defmac
-
@defmac OBJC_JBLEN
This macro determines the size of the objective C jump buffer for the
NeXT runtime. By default, OBJC_JBLEN is defined to an innocuous value.
diff --git a/gcc/system.h b/gcc/system.h
index cc353f555aea..8c6127c97a93 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -987,7 +987,8 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
CALLER_SAVE_PROFITABLE LARGEST_EXPONENT_IS_NORMAL \
ROUND_TOWARDS_ZERO SF_SIZE DF_SIZE XF_SIZE TF_SIZE LIBGCC2_TF_CEXT \
LIBGCC2_LONG_DOUBLE_TYPE_SIZE STRUCT_VALUE \
- EH_FRAME_IN_DATA_SECTION TARGET_FLT_EVAL_METHOD_NON_DEFAULT
+ EH_FRAME_IN_DATA_SECTION TARGET_FLT_EVAL_METHOD_NON_DEFAULT \
+ JCR_SECTION_NAME TARGET_USE_JCR_SECTION
/* Hooks that are no longer used. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index f876b9b16d34..2baca35456ac 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,17 @@
+2016-10-04 Jakub Jelinek <jakub@redhat.com>
+
+ * config/i386/cygming-crtbegin.c (_Jv_RegisterClasses): Remove.
+ (__JCR_LIST__): Remove.
+ (__gcc_register_frame): Don't attempt to _Jv_RegisterClasses.
+ * config/i386/cygming-crtend.c (__JCR_END__): Remove.
+ * config/ia64/crtbegin.S (__JCR_LIST__): Remove.
+ * config/ia64/crtend.S (__JCR_END__): Remove.
+ * crtstuff.c: Remove __LIBGCC_JCR_SECTION_NAME__ from preprocessor
+ conditionals.
+ (__JCR_LIST__, __JCR_END__): Remove.
+ (frame_dummy): Don't attempt to _Jv_RegisterClasses.
+ (__do_global_ctors_1): Likewise.
+
2015-09-28 Uros Bizjak <ubizjak@gmail.com>
* config/i386/cpuinfo.c (__get_cpuid_output): Remove.
diff --git a/libgcc/config/i386/cygming-crtbegin.c b/libgcc/config/i386/cygming-crtbegin.c
index e4a6672294a5..be8344d6f9b2 100644
--- a/libgcc/config/i386/cygming-crtbegin.c
+++ b/libgcc/config/i386/cygming-crtbegin.c
@@ -73,18 +73,6 @@ __deregister_frame_info (__attribute__((unused)) const void *p)
#endif
#endif /* DWARF2_UNWIND_INFO */
-#if TARGET_USE_JCR_SECTION
-extern void _Jv_RegisterClasses (__attribute__((unused)) const void *)
- TARGET_ATTRIBUTE_WEAK;
-
-#ifdef __x86_64__
-TARGET_ATTRIBUTE_WEAK void
-_Jv_RegisterClasses (__attribute__((unused)) const void *p)
-{
-}
-#endif
-#endif /* TARGET_USE_JCR_SECTION */
-
#if defined(HAVE_LD_RO_RW_SECTION_MIXING)
# define EH_FRAME_SECTION_CONST const
#else
@@ -105,12 +93,6 @@ HANDLE hmod_libgcc;
static void * (*deregister_frame_fn) (const void *) = NULL;
#endif
-#if TARGET_USE_JCR_SECTION
-static void *__JCR_LIST__[]
- __attribute__ ((used, section(__LIBGCC_JCR_SECTION_NAME__), aligned(4)))
- = { };
-#endif
-
#ifdef __CYGWIN__
/* Declare the __dso_handle variable. It should have a unique value
in every shared-object; in a main program its value is zero. The
@@ -163,22 +145,6 @@ __gcc_register_frame (void)
register_frame_fn (__EH_FRAME_BEGIN__, &obj);
#endif
-#if TARGET_USE_JCR_SECTION
- if (__JCR_LIST__[0])
- {
- void (*register_class_fn) (const void *);
- HANDLE h = GetModuleHandle (LIBGCJ_SONAME);
- if (h)
- register_class_fn = (void (*) (const void *))
- GetProcAddress (h, "_Jv_RegisterClasses");
- else
- register_class_fn = _Jv_RegisterClasses;
-
- if (register_class_fn)
- register_class_fn (__JCR_LIST__);
- }
-#endif
-
#if DEFAULT_USE_CXA_ATEXIT
/* If we use the __cxa_atexit method to register C++ dtors
at object construction, also use atexit to register eh frame
diff --git a/libgcc/config/i386/cygming-crtend.c b/libgcc/config/i386/cygming-crtend.c
index fdf6a0e94528..9bd0e10a1c74 100644
--- a/libgcc/config/i386/cygming-crtend.c
+++ b/libgcc/config/i386/cygming-crtend.c
@@ -53,14 +53,6 @@ static EH_FRAME_SECTION_CONST int __FRAME_END__[]
= { 0 };
#endif
-#if TARGET_USE_JCR_SECTION
-/* Null terminate the .jcr section array. */
-static void *__JCR_END__[1]
- __attribute__ ((used, section(__LIBGCC_JCR_SECTION_NAME__),
- aligned(sizeof(void *))))
- = { 0 };
-#endif
-
extern void __gcc_register_frame (void);
extern void __gcc_deregister_frame (void);
diff --git a/libgcc/config/ia64/crtbegin.S b/libgcc/config/ia64/crtbegin.S
index a8d738b95923..3bf0e71a3ac7 100644
--- a/libgcc/config/ia64/crtbegin.S
+++ b/libgcc/config/ia64/crtbegin.S
@@ -34,10 +34,6 @@ __CTOR_LIST__:
__DTOR_LIST__:
data8 -1
-.section .jcr,"aw","progbits"
- .align 8
-__JCR_LIST__:
-
.section .sdata
.type dtor_ptr,@object
.size dtor_ptr,8
diff --git a/libgcc/config/ia64/crtend.S b/libgcc/config/ia64/crtend.S
index 7434930040a7..69cc5d77881b 100644
--- a/libgcc/config/ia64/crtend.S
+++ b/libgcc/config/ia64/crtend.S
@@ -34,11 +34,6 @@ __CTOR_END__:
__DTOR_END__:
data8 0
-.section .jcr,"aw","progbits"
- .align 8
-__JCR_END__:
- data8 0
-
#if HAVE_INITFINI_ARRAY_SUPPORT
.global __do_global_ctors_aux
.hidden __do_global_ctors_aux
diff --git a/libgcc/crtstuff.c b/libgcc/crtstuff.c
index f3343fc4fd88..5449c4dbdb63 100644
--- a/libgcc/crtstuff.c
+++ b/libgcc/crtstuff.c
@@ -266,15 +266,6 @@ STATIC EH_FRAME_SECTION_CONST char __EH_FRAME_BEGIN__[]
= { };
#endif /* USE_EH_FRAME_REGISTRY */
-#ifdef __LIBGCC_JCR_SECTION_NAME__
-/* Stick a label at the beginning of the java class registration info
- so we can register them properly. */
-STATIC void *__JCR_LIST__[]
- __attribute__ ((used, section(__LIBGCC_JCR_SECTION_NAME__),
- aligned(sizeof(void*))))
- = { };
-#endif /* __LIBGCC_JCR_SECTION_NAME__ */
-
#if USE_TM_CLONE_REGISTRY
STATIC func_ptr __TMC_LIST__[]
__attribute__((used, section(".tm_clone_table"), aligned(sizeof(void*))))
@@ -449,7 +440,6 @@ CRT_CALL_STATIC_FUNCTION (__LIBGCC_INIT_SECTION_ASM_OP__,
#endif
#if defined(USE_EH_FRAME_REGISTRY) \
- || defined(__LIBGCC_JCR_SECTION_NAME__) \
|| defined(USE_TM_CLONE_REGISTRY)
/* Stick a call to __register_frame_info into the .init section. For some
reason calls with no arguments work more reliably in .init, so stick the
@@ -472,18 +462,6 @@ frame_dummy (void)
#endif /* CRT_GET_RFIB_DATA */
#endif /* USE_EH_FRAME_REGISTRY */
-#ifdef __LIBGCC_JCR_SECTION_NAME__
- void **jcr_list;
- __asm ("" : "=g" (jcr_list) : "0" (__JCR_LIST__));
- if (__builtin_expect (*jcr_list != NULL, 0))
- {
- void (*register_classes) (void *) = _Jv_RegisterClasses;
- __asm ("" : "+r" (register_classes));
- if (register_classes)
- register_classes (jcr_list);
- }
-#endif /* __LIBGCC_JCR_SECTION_NAME__ */
-
#if USE_TM_CLONE_REGISTRY
register_tm_clones ();
#endif /* USE_TM_CLONE_REGISTRY */
@@ -496,7 +474,7 @@ static func_ptr __frame_dummy_init_array_entry[]
__attribute__ ((__used__, section(".init_array"), aligned(sizeof(func_ptr))))
= { frame_dummy };
#endif /* !defined(__LIBGCC_INIT_SECTION_ASM_OP__) */
-#endif /* USE_EH_FRAME_REGISTRY || __LIBGCC_JCR_SECTION_NAME__ || USE_TM_CLONE_REGISTRY */
+#endif /* USE_EH_FRAME_REGISTRY || USE_TM_CLONE_REGISTRY */
#else /* OBJECT_FORMAT_ELF */
@@ -564,7 +542,6 @@ __do_global_dtors (void)
}
#if defined(USE_EH_FRAME_REGISTRY) \
- || defined(__LIBGCC_JCR_SECTION_NAME__) \
|| defined(USE_TM_CLONE_REGISTRY)
/* A helper function for __do_global_ctors, which is in crtend.o. Here
in crtbegin.o, we can reference a couple of symbols not visible there.
@@ -579,23 +556,11 @@ __do_global_ctors_1(void)
__register_frame_info (__EH_FRAME_BEGIN__, &object);
#endif
-#ifdef __LIBGCC_JCR_SECTION_NAME__
- void **jcr_list;
- __asm ("" : "=g" (jcr_list) : "0" (__JCR_LIST__));
- if (__builtin_expect (*jcr_list != NULL, 0))
- {
- void (*register_classes) (void *) = _Jv_RegisterClasses;
- __asm ("" : "+r" (register_classes));
- if (register_classes)
- register_classes (jcr_list);
- }
-#endif
-
#if USE_TM_CLONE_REGISTRY
register_tm_clones ();
#endif /* USE_TM_CLONE_REGISTRY */
}
-#endif /* USE_EH_FRAME_REGISTRY || __LIBGCC_JCR_SECTION_NAME__ || USE_TM_CLONE_REGISTRY */
+#endif /* USE_EH_FRAME_REGISTRY || USE_TM_CLONE_REGISTRY */
#else /* ! __LIBGCC_INIT_SECTION_ASM_OP__ && ! HAS_INIT_SECTION */
#error "What are you doing with crtstuff.c, then?"
@@ -671,14 +636,6 @@ STATIC EH_FRAME_SECTION_CONST int32 __FRAME_END__[]
= { 0 };
#endif /* __LIBGCC_EH_FRAME_SECTION_NAME__ */
-#ifdef __LIBGCC_JCR_SECTION_NAME__
-/* Null terminate the .jcr section array. */
-STATIC void *__JCR_END__[1]
- __attribute__ ((used, section(__LIBGCC_JCR_SECTION_NAME__),
- aligned(sizeof(void *))))
- = { 0 };
-#endif /* __LIBGCC_JCR_SECTION_NAME__ */
-
#if USE_TM_CLONE_REGISTRY
# ifndef HAVE_GAS_HIDDEN
static
@@ -757,7 +714,6 @@ __do_global_ctors (void)
{
func_ptr *p;
#if defined(USE_EH_FRAME_REGISTRY) \
- || defined(__LIBGCC_JCR_SECTION_NAME__) \
|| defined(USE_TM_CLONE_REGISTRY)
__do_global_ctors_1();
#endif