diff options
author | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-02-24 21:43:01 +0000 |
---|---|---|
committer | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-02-24 21:43:01 +0000 |
commit | 3bf418bdf9ae0e292afe5becb661ff9b441aa168 (patch) | |
tree | 501f0f2b9d0c19c624f6a6ae51162e498fd2b1e1 /gcc/config/rs6000/darwin.h | |
parent | 43c3808d513ce4aef22c0d67eb3bae55c65bf909 (diff) | |
download | gcc-3bf418bdf9ae0e292afe5becb661ff9b441aa168.tar.gz |
Index: gcc/ChangeLog
2006-02-24 Geoffrey Keating <geoffk@apple.com>
* doc/tm.texi (Run-time Target): Document C_COMMON_OVERRIDE_OPTIONS.
* doc/invoke.texi (C++ Dialect Options): Document
-fno-use-cxa-get-exception-ptr.
* configure.ac: Define DEFAULT_USE_CXA_ATEXIT to 2 not 1.
* configure: Regenerate.
* c.opt (fuse-cxa-get-exception-ptr): New.
* c-opts.c (c_common_handle_option): Handle
OPT_fuse_cxa_get_exception_ptr.
* c-common.c (flag_use_cxa_atexit): Update documentation.
(flag_use_cxa_get_exception_ptr): New.
* c-common.h (flag_use_cxa_get_exception_ptr): New.
* config/rs6000/darwin.h (SUBTARGET_OVERRIDE_OPTIONS): Improve
documentation.
(C_COMMON_OVERRIDE_OPTIONS): New.
Index: gcc/testsuite/ChangeLog
2006-02-24 Geoffrey Keating <geoffk@apple.com>
* g++.dg/eh/uncaught1.C: Add dg-options for ppc-darwin.
* g++.dg/eh/uncaught2.C: New.
* g++.dg/eh/uncaught3.C: New.
Index: gcc/cp/ChangeLog
2006-02-24 Geoffrey Keating <geoffk@apple.com>
* except.c (expand_start_catch_block): Handle
flag_use_cxa_get_exception_ptr.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111427 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/darwin.h')
-rw-r--r-- | gcc/config/rs6000/darwin.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/gcc/config/rs6000/darwin.h b/gcc/config/rs6000/darwin.h index 46119c8412f..30a2fff77d7 100644 --- a/gcc/config/rs6000/darwin.h +++ b/gcc/config/rs6000/darwin.h @@ -59,11 +59,10 @@ while (0) -/* The Darwin ABI always includes AltiVec, can't be (validly) turned - off. */ - #define SUBTARGET_OVERRIDE_OPTIONS \ do { \ + /* The Darwin ABI always includes AltiVec, can't be (validly) turned \ + off. */ \ rs6000_altivec_abi = 1; \ TARGET_ALTIVEC_VRSAVE = 1; \ if (DEFAULT_ABI == ABI_DARWIN) \ @@ -87,6 +86,21 @@ do { \ } \ } while(0) +#define C_COMMON_OVERRIDE_OPTIONS do { \ + /* On powerpc, __cxa_get_exception_ptr is available starting in the \ + 10.5 libstdc++.dylib. */ \ + if ((! darwin_macosx_version_min \ + || strverscmp (darwin_macosx_version_min, "10.5") < 0) \ + && flag_use_cxa_get_exception_ptr == 2) \ + flag_use_cxa_get_exception_ptr = 0; \ + /* On powerpc, __cxa_atexit is available starting in the 10.4 \ + libSystem.dylib. */ \ + if ((! darwin_macosx_version_min \ + || strverscmp (darwin_macosx_version_min, "10.4") < 0) \ + && flag_use_cxa_atexit == 2) \ + flag_use_cxa_atexit = 0; \ +} while (0) + /* Darwin has 128-bit long double support in libc in 10.4 and later. Default to 128-bit long doubles even on earlier platforms for ABI consistency; arithmetic will work even if libc and libm support is |