aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2017-12-08 09:33:08 +0000
committerOlivier Hainque <hainque@gcc.gnu.org>2017-12-08 09:33:08 +0000
commit4a53066d0e9be7ef045dabbe497eeeca0ce2c7fc (patch)
tree4b4139c0451195b7ae8f1601851386bc2df38521 /gcc
parent1db9ce24bb1844c4ff341e01f17316c55ab31d66 (diff)
downloadgcc-4a53066d0e9be7ef045dabbe497eeeca0ce2c7fc.zip
gcc-4a53066d0e9be7ef045dabbe497eeeca0ce2c7fc.tar.gz
gcc-4a53066d0e9be7ef045dabbe497eeeca0ce2c7fc.tar.bz2
re PR bootstrap/81470 (Bootstrap comparison failures in gcc/ada)
2017-06-08 Tristan Gingold <gindold@adacore.com> PR ada/81470 * dwarf2out.c (dwarf2out_do_cfi_startproc): Only emit .cfi_personality or .cfi_lsda if the eh data format is dwarf2. From-SVN: r255501
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/dwarf2out.c8
2 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4112576..e34e182 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2017-06-08 Tristan Gingold <gindold@adacore.com>
+
+ PR ada/81470
+ * dwarf2out.c (dwarf2out_do_cfi_startproc): Only emit
+ .cfi_personality or .cfi_lsda if the eh data format is dwarf2.
+
2017-12-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config/sol2.h (SOLARIS_ATTRIBUTE_TABLE): Initialize new member
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index ae3d962..876e53f 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -963,10 +963,16 @@ dwarf2out_do_cfi_startproc (bool second)
{
int enc;
rtx ref;
- rtx personality = get_personality_function (current_function_decl);
fprintf (asm_out_file, "\t.cfi_startproc\n");
+ /* .cfi_personality and .cfi_lsda are only relevant to DWARF2
+ eh unwinders. */
+ if (targetm_common.except_unwind_info (&global_options) != UI_DWARF2)
+ return;
+
+ rtx personality = get_personality_function (current_function_decl);
+
if (personality)
{
enc = ASM_PREFERRED_EH_DATA_FORMAT (/*code=*/2, /*global=*/1);