diff options
author | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-18 21:07:29 +0000 |
---|---|---|
committer | ebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-18 21:07:29 +0000 |
commit | c9c6b44448f79fe37968e1b09eb7c38a9491ceec (patch) | |
tree | f2861eecfa6b0488315f2456fb04f1e73db719f7 /gcc | |
parent | 6f843f0d43a1ce22f7f53cb6b607f2bafb28032b (diff) | |
download | gcc-c9c6b44448f79fe37968e1b09eb7c38a9491ceec.tar.gz |
* tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163352 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/ada/tracebak.c | 7 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index f0f418da015..41a91f2033e 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,7 @@ +2010-08-18 Eric Botcazou <ebotcazou@adacore.com> + + * tracebak.c (i386): Use GCC unwinder on Linux with GCC > 4.5. + 2010-08-10 Robert Dewar <dewar@adacore.com> * sem_ch8.adb, sem_ch8.ads: Change name Write_Scopes to ws. diff --git a/gcc/ada/tracebak.c b/gcc/ada/tracebak.c index 9e5366a78cc..cd9693969c1 100644 --- a/gcc/ada/tracebak.c +++ b/gcc/ada/tracebak.c @@ -303,7 +303,14 @@ struct layout #define IS_BAD_PTR(ptr) 0 #endif +/* Starting with GCC 4.6, -fomit-frame-pointer is turned on by default for + 32-bit x86/Linux as well and DWARF 2 unwind tables are emitted instead. + See the x86-64 case below for the drawbacks with this approach. */ +#if defined (linux) && (__GNUC__ * 10 + __GNUC_MINOR__ > 45) +#define USE_GCC_UNWINDER +#else #define USE_GENERIC_UNWINDER +#endif struct layout { |