diff options
author | Richard Guenther <rguenther@suse.de> | 2009-08-27 16:10:15 +0000 |
---|---|---|
committer | Richard Guenther <rguenther@suse.de> | 2009-08-27 16:10:15 +0000 |
commit | 179e0ffb15f1875aad7c27ef126d0e23dfa2e112 (patch) | |
tree | 64efb741e19b12528ef5399beb872ee1c4a3c83e | |
parent | e84f44220a6c768b2eb9f9384bb8abb50be999a7 (diff) |
2009-08-27 Richard Guenther <rguenther@suse.de>
PR lto/41092
* lto-streamer-out.c (output_eh_regions): Always output a
eh region if exceptions are enabled.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/lto@151143 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog.lto | 6 | ||||
-rw-r--r-- | gcc/lto-streamer-out.c | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog.lto b/gcc/ChangeLog.lto index dcfb6033edc..65b39ebcf14 100644 --- a/gcc/ChangeLog.lto +++ b/gcc/ChangeLog.lto @@ -1,3 +1,9 @@ +2009-08-27 Richard Guenther <rguenther@suse.de> + + PR lto/41092 + * lto-streamer-out.c (output_eh_regions): Always output a + eh region if exceptions are enabled. + 2009-08-26 Richard Guenther <rguenther@suse.de> * tree-data-ref.h: Revert changes. diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c index 3b7825b2189..54b7613ac6b 100644 --- a/gcc/lto-streamer-out.c +++ b/gcc/lto-streamer-out.c @@ -1596,7 +1596,12 @@ output_eh_regions (struct output_block *ob, struct function *fn) { eh_region curr; - if (fn->eh && fn->eh->region_array) + if (fn->eh + /* Always output LTO_eh_table if exceptions are enabled. Otherwise + we miss to emit unwind informations for a translation unit + that just throws. */ + && (flag_exceptions + || fn->eh->region_array)) { unsigned i; |