aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeoffrey Keating <geoffk@apple.com>2004-08-03 00:52:18 +0000
committerGeoffrey Keating <geoffk@gcc.gnu.org>2004-08-03 00:52:18 +0000
commitaeb732c12e1b2ff6457690092798901e5d98ff86 (patch)
tree8f5dad005756752c4055726b4b94227340ec6e4a
parent474f541727096df25c2268c462fcb8c4daa898b6 (diff)
downloadgcc-aeb732c12e1b2ff6457690092798901e5d98ff86.zip
gcc-aeb732c12e1b2ff6457690092798901e5d98ff86.tar.gz
gcc-aeb732c12e1b2ff6457690092798901e5d98ff86.tar.bz2
Index: ChangeLog
2004-08-02 Geoffrey Keating <geoffk@apple.com> * ltcf-cxx.sh: On Darwin, make archive multi-module, and don't use -all_load flag. Index: gcc/ChangeLog 2004-08-02 Geoffrey Keating <geoffk@apple.com> * dwarf2out.c (output_call_frame_info): Don't change data format due to TARGET_USES_WEAK_UNWIND_INFO. Always refer to the local label. Use 'true' not '1'. * doc/install.texi (powerpc-*-darwin*): Mention cctools version required. From-SVN: r85461
-rw-r--r--ChangeLog5
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/doc/install.texi10
-rw-r--r--gcc/dwarf2out.c25
-rw-r--r--ltcf-cxx.sh4
5 files changed, 24 insertions, 28 deletions
diff --git a/ChangeLog b/ChangeLog
index df96fb7..27d0730 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2004-08-02 Geoffrey Keating <geoffk@apple.com>
+
+ * ltcf-cxx.sh: On Darwin, make archive multi-module, and don't
+ use -all_load flag.
+
2004-08-02 Paolo Bonzini <bonzini@gnu.org>
* configure.in: Sync from src, add noconfigdirs for crx-*-*.
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1e66034..7164a29 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2004-08-02 Geoffrey Keating <geoffk@apple.com>
+
+ * dwarf2out.c (output_call_frame_info): Don't change data format
+ due to TARGET_USES_WEAK_UNWIND_INFO. Always refer to the local
+ label. Use 'true' not '1'.
+ * doc/install.texi (powerpc-*-darwin*): Mention cctools version
+ required.
+
2004-08-02 Gabriel Dos Reis <gdr@cs.tamu.edu>
* gdbinit.in: Reflect previous changes to rtunion_def.
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 0af4aa7..9c7d010 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -3306,17 +3306,11 @@ binaries are available at
@uref{http://developer.apple.com/tools/compilers.html} (free
registration required).
-The default stack limit of 512K is too small, which may cause compiles
-to fail with 'Bus error'. Set the stack larger, for instance
-by doing @samp{limit stack 800}. It's a good idea to use the GNU
-preprocessor instead of Apple's @file{cpp-precomp} during the first stage of
-bootstrapping; this is automatic when doing @samp{make bootstrap}, but
-to do it from the toplevel objdir you will need to say @samp{make
-CC='cc -no-cpp-precomp' bootstrap}.
+This version of GCC requires at least cctools-528.
The version of GCC shipped by Apple typically includes a number of
extensions not available in a standard GCC release. These extensions
-are generally specific to Mac programming.
+are generally for backwards compatibility and best avoided.
@html
<hr />
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 4a1037f..46b3b51 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -2089,7 +2089,7 @@ output_call_frame_info (int for_eh)
any_eh_needed = any_lsda_needed = true;
else if (TARGET_USES_WEAK_UNWIND_INFO
&& DECL_ONE_ONLY (fde_table[i].decl))
- any_eh_needed = 1;
+ any_eh_needed = true;
else if (! fde_table[i].nothrow
&& ! fde_table[i].all_throwers_are_sibcalls)
any_eh_needed = true;
@@ -2141,9 +2141,7 @@ output_call_frame_info (int for_eh)
P Indicates the presence of an encoding + language
personality routine in the CIE augmentation. */
- fde_encoding = TARGET_USES_WEAK_UNWIND_INFO
- ? ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/2, /*global=*/1)
- : ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/1, /*global=*/0);
+ fde_encoding = ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/1, /*global=*/0);
per_encoding = ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/2, /*global=*/1);
lsda_encoding = ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/0, /*global=*/0);
@@ -2258,20 +2256,11 @@ output_call_frame_info (int for_eh)
if (for_eh)
{
- if (TARGET_USES_WEAK_UNWIND_INFO
- && DECL_ONE_ONLY (fde->decl))
- dw2_asm_output_encoded_addr_rtx (fde_encoding,
- gen_rtx_SYMBOL_REF (Pmode, IDENTIFIER_POINTER
- (DECL_ASSEMBLER_NAME (fde->decl))),
- "FDE initial location");
- else
- {
- rtx sym_ref = gen_rtx_SYMBOL_REF (Pmode, fde->dw_fde_begin);
- SYMBOL_REF_FLAGS (sym_ref) |= SYMBOL_FLAG_LOCAL;
- dw2_asm_output_encoded_addr_rtx (fde_encoding,
- sym_ref,
- "FDE initial location");
- }
+ rtx sym_ref = gen_rtx_SYMBOL_REF (Pmode, fde->dw_fde_begin);
+ SYMBOL_REF_FLAGS (sym_ref) |= SYMBOL_FLAG_LOCAL;
+ dw2_asm_output_encoded_addr_rtx (fde_encoding,
+ sym_ref,
+ "FDE initial location");
dw2_asm_output_delta (size_of_encoded_value (fde_encoding),
fde->dw_fde_end, fde->dw_fde_begin,
"FDE address range");
diff --git a/ltcf-cxx.sh b/ltcf-cxx.sh
index ce28177..7edeb86 100644
--- a/ltcf-cxx.sh
+++ b/ltcf-cxx.sh
@@ -254,7 +254,8 @@ case $host_os in
;;
esac
output_verbose_link_cmd='echo'
- archive_cmds='$CC -r ${wl}-bind_at_load -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
+
+ archive_cmds='$CXX -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
module_cmds='$CC ${wl}-bind_at_load $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
# Don't fix this by using the ld -exported_symbols_list flag,
@@ -264,7 +265,6 @@ case $host_os in
hardcode_direct=no
hardcode_automatic=yes
hardcode_shlibpath_var=unsupported
- whole_archive_flag_spec='-all_load $convenience'
link_all_deplibs=yes
;;