summaryrefslogtreecommitdiffstats
path: root/libstdc++-v3/libsupc++
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-26 06:09:05 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2004-10-26 06:09:05 +0000
commit1dc74225ea88dfb3a14f88dd7a47741c5bafff01 (patch)
tree55b7af27d9c57fd804dcf7cea7736d928a9d995d /libstdc++-v3/libsupc++
parentd2f8c862f10fdad2340bbe9d31c2a1c3a41da2cd (diff)
downloadppe42-gcc-1dc74225ea88dfb3a14f88dd7a47741c5bafff01.tar.gz
ppe42-gcc-1dc74225ea88dfb3a14f88dd7a47741c5bafff01.zip
Index: gcc/gcc/ChangeLog
2004-10-25 Geoffrey Keating <geoffk@apple.com> * config/darwin.h (LINK_SPEC): Default weak_reference_mismatches to 'non-weak'. (MAKE_DECL_ONE_ONLY): Set DECL_WEAK. (ASM_MAKE_LABEL_LINKONCE): Delete. (ASM_WEAKEN_DECL): New. (ASM_DECLARE_OBJECT_NAME): Look at DECL_WEAK not DECL_ONE_ONLY. (ASM_DECLARE_FUNCTION_NAME): Likewise. (TEXT_SECTION_ASM_OP): Add a tab. (DATA_SECTION_ASM_OP): Likewise. (SECTION_FUNCTION): Add a tab. Use fputs. Don't call data_section on every section change. (EXTRA_SECTIONS): Add a bunch of new extra sections. (EXTRA_SECTION_FUNCTIONS): Likewise. (USE_SELECT_SECTION_FOR_FUNCTIONS): Define. (JCR_SECTION_NAME): Define. (TARGET_SECTION_TYPE_FLAGS): Don't define. * config/darwin.c (darwin_encode_section_info): A symbol is defined in this file if it is not weak. (textcoal_section): Delete. (datacoal_section): Delete. (darwin_make_decl_one_only): Delete. (machopic_select_section): Handle functions. (darwin_asm_named_section): Add a tab. (darwin_section_type_flags): Delete. (darwin_unique_section): Delete contents. (darwin_emit_unwind_label): Add a tab. Make decls weak if DECL_WEAK is set. * config/darwin-protos.h (darwin_section_type_flags): Delete. (darwin_make_decl_one_only): Delete. (text_coal_section): New. (text_unlikely_section): New. (text_unlikely_coal_section): New. (const_coal_section): New. (data_coal_section): New. (const_data_coal_section): New. * varasm.c (function_section): Honour USE_SELECT_SECTION_FOR_FUNCTIONS. * dwarf2out.c (output_call_frame_info): Look at DECL_WEAK when TARGET_USES_WEAK_UNWIND_INFO is in effect. * dbxout.c (dbxout_source_file): Don't change sections while a function is being output. Index: gcc/testsuite/ChangeLog 2004-10-25 Geoffrey Keating <geoffk@apple.com> * objc.dg/image-info.m: Update for changes to section selection. Index: libjava/ChangeLog 2004-10-25 Geoffrey Keating <geoffk@apple.com> * Makefile.am (DARWIN_CRT_SRC): New. (libgcj_la_SOURCES): Use it. * configure.ac: Define USING_DARWIN_CRT when on Darwin. * darwin.cc: New file. * include/jvm.h (_Jv_RegisterClasses): Constify. (_Jv_RegisterClasses_Counted): New prototype. * java/lang/Class.h: Include stddef.h. (_Jv_RegisterClasses): Constify. (_Jv_RegisterClasses_Counted): New prototype. (Object): Make '_Jv_RegisterClasses_Counted' a friend. * java/lang/natClassLoader.cc (_Jv_RegisterClasses): Constify. (_Jv_RegisterClasses_Counted): New function. * configure: Regenerate. * Makefile.in: Regenerate. * gcj/Makefile.in: Regenerate. * include/Makefile.in: Regenerate. * testsuite/Makefile.in: Regenerate. Index: libstdc++-v3/ChangeLog 2004-10-25 Geoffrey Keating <geoffk@apple.com> * libsupc++/new_op.cc (new): Make weak. * libsupc++/new_opnt.cc (new): Make weak. * libsupc++/new_opv.cc (new): Make weak. * libsupc++/new_opvnt.cc (new): Make weak. * libsupc++/delete_op.cc (delete): Make weak. * libsupc++/delete_opnt.cc (delete): Make weak. * libsupc++/delete_opv.cc (delete): Make weak. * libsupc++/delete_opvnt.cc (delete): Make weak. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@89572 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/libsupc++')
-rw-r--r--libstdc++-v3/libsupc++/del_op.cc2
-rw-r--r--libstdc++-v3/libsupc++/del_opnt.cc2
-rw-r--r--libstdc++-v3/libsupc++/del_opv.cc2
-rw-r--r--libstdc++-v3/libsupc++/del_opvnt.cc2
-rw-r--r--libstdc++-v3/libsupc++/new_op.cc2
-rw-r--r--libstdc++-v3/libsupc++/new_opnt.cc2
-rw-r--r--libstdc++-v3/libsupc++/new_opv.cc2
-rw-r--r--libstdc++-v3/libsupc++/new_opvnt.cc2
8 files changed, 8 insertions, 8 deletions
diff --git a/libstdc++-v3/libsupc++/del_op.cc b/libstdc++-v3/libsupc++/del_op.cc
index e99f5b658d5..32ccdb6808b 100644
--- a/libstdc++-v3/libsupc++/del_op.cc
+++ b/libstdc++-v3/libsupc++/del_op.cc
@@ -39,7 +39,7 @@ using std::free;
extern "C" void free(void *);
#endif
-void
+__attribute__((weak)) void
operator delete (void *ptr) throw ()
{
if (ptr)
diff --git a/libstdc++-v3/libsupc++/del_opnt.cc b/libstdc++-v3/libsupc++/del_opnt.cc
index 44a7a925a35..6cfb0775e4f 100644
--- a/libstdc++-v3/libsupc++/del_opnt.cc
+++ b/libstdc++-v3/libsupc++/del_opnt.cc
@@ -32,7 +32,7 @@
extern "C" void free (void *);
-void
+__attribute__((weak)) void
operator delete (void *ptr, const std::nothrow_t&) throw ()
{
if (ptr)
diff --git a/libstdc++-v3/libsupc++/del_opv.cc b/libstdc++-v3/libsupc++/del_opv.cc
index 95b1f79018b..03e1612c47f 100644
--- a/libstdc++-v3/libsupc++/del_opv.cc
+++ b/libstdc++-v3/libsupc++/del_opv.cc
@@ -30,7 +30,7 @@
#include "new"
-void
+__attribute__((weak)) void
operator delete[] (void *ptr) throw ()
{
::operator delete (ptr);
diff --git a/libstdc++-v3/libsupc++/del_opvnt.cc b/libstdc++-v3/libsupc++/del_opvnt.cc
index 01a64f8bc29..5b55cda66e6 100644
--- a/libstdc++-v3/libsupc++/del_opvnt.cc
+++ b/libstdc++-v3/libsupc++/del_opvnt.cc
@@ -30,7 +30,7 @@
#include "new"
-void
+__attribute__((weak)) void
operator delete[] (void *ptr, const std::nothrow_t&) throw ()
{
::operator delete (ptr);
diff --git a/libstdc++-v3/libsupc++/new_op.cc b/libstdc++-v3/libsupc++/new_op.cc
index 983ae45420e..656b9f42d55 100644
--- a/libstdc++-v3/libsupc++/new_op.cc
+++ b/libstdc++-v3/libsupc++/new_op.cc
@@ -43,7 +43,7 @@ extern "C" void *malloc (std::size_t);
extern new_handler __new_handler;
-void *
+__attribute__((weak)) void *
operator new (std::size_t sz) throw (std::bad_alloc)
{
void *p;
diff --git a/libstdc++-v3/libsupc++/new_opnt.cc b/libstdc++-v3/libsupc++/new_opnt.cc
index 4d7a5087c14..ff550b706ab 100644
--- a/libstdc++-v3/libsupc++/new_opnt.cc
+++ b/libstdc++-v3/libsupc++/new_opnt.cc
@@ -36,7 +36,7 @@ using std::bad_alloc;
extern "C" void *malloc (std::size_t);
extern new_handler __new_handler;
-void *
+__attribute__((weak)) void *
operator new (std::size_t sz, const std::nothrow_t&) throw()
{
void *p;
diff --git a/libstdc++-v3/libsupc++/new_opv.cc b/libstdc++-v3/libsupc++/new_opv.cc
index 74ad49caf8e..de3bc4ebd7c 100644
--- a/libstdc++-v3/libsupc++/new_opv.cc
+++ b/libstdc++-v3/libsupc++/new_opv.cc
@@ -30,7 +30,7 @@
#include "new"
-void *
+__attribute__((weak)) void *
operator new[] (std::size_t sz) throw (std::bad_alloc)
{
return ::operator new(sz);
diff --git a/libstdc++-v3/libsupc++/new_opvnt.cc b/libstdc++-v3/libsupc++/new_opvnt.cc
index 0a3f716d4e4..1dbf991d838 100644
--- a/libstdc++-v3/libsupc++/new_opvnt.cc
+++ b/libstdc++-v3/libsupc++/new_opvnt.cc
@@ -30,7 +30,7 @@
#include "new"
-void *
+__attribute__((weak)) void *
operator new[] (std::size_t sz, const std::nothrow_t& nothrow) throw()
{
return ::operator new(sz, nothrow);
OpenPOWER on IntegriCloud