From d5f346c60157c4d2461ad9a77a47c9c5feebfaf2 Mon Sep 17 00:00:00 2001 From: Martin Liska Date: Wed, 7 Sep 2022 16:33:59 +0200 Subject: [PATCH] Restore detection of HAVE_XCOFF_DWARF_EXTRAS gcc/ChangeLog: * configure.ac: Restore detection of HAVE_XCOFF_DWARF_EXTRAS. * config/rs6000/rs6000.cc (HAVE_XCOFF_DWARF_EXTRAS): Reset it. * configure: Regenerate. * config.in: Regenerate. --- gcc/config.in | 7 +++++++ gcc/config/rs6000/rs6000.cc | 5 +++++ gcc/configure | 35 +++++++++++++++++++++++++++++++++++ gcc/configure.ac | 9 +++++++++ 4 files changed, 56 insertions(+) diff --git a/gcc/config.in b/gcc/config.in index 9c53319b544..6ac17be189e 100644 --- a/gcc/config.in +++ b/gcc/config.in @@ -2099,6 +2099,13 @@ #endif +/* Define if your assembler supports AIX debug frame section label reference. + */ +#ifndef USED_FOR_TARGET +#undef HAVE_XCOFF_DWARF_EXTRAS +#endif + + /* Define if you have a working header file. */ #ifndef USED_FOR_TARGET #undef HAVE_ZSTD_H diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc index 7623d69a8c0..a656cb32a47 100644 --- a/gcc/config/rs6000/rs6000.cc +++ b/gcc/config/rs6000/rs6000.cc @@ -20946,6 +20946,11 @@ rs6000_elf_file_end (void) #if TARGET_XCOFF +#ifndef HAVE_XCOFF_DWARF_EXTRAS +#define HAVE_XCOFF_DWARF_EXTRAS 0 +#endif + + /* Names of bss and data sections. These should be unique names for each compilation unit. */ diff --git a/gcc/configure b/gcc/configure index 39f7ed129a4..817d765568e 100755 --- a/gcc/configure +++ b/gcc/configure @@ -28142,6 +28142,41 @@ if test $gcc_cv_as_aix_ref = yes; then $as_echo "#define HAVE_AS_REF 1" >>confdefs.h +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler for AIX DWARF location lists section support" >&5 +$as_echo_n "checking assembler for AIX DWARF location lists section support... " >&6; } +if ${gcc_cv_as_aix_dwloc+:} false; then : + $as_echo_n "(cached) " >&6 +else + gcc_cv_as_aix_dwloc=no + if test x$gcc_cv_as != x; then + $as_echo ' .dwsect 0xA0000 + Lframe..0: + .vbyte 4,Lframe..0 + ' > conftest.s + if { ac_try='$gcc_cv_as $gcc_cv_as_flags -o conftest.o conftest.s >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; } + then + gcc_cv_as_aix_dwloc=yes + else + echo "configure: failed program was" >&5 + cat conftest.s >&5 + fi + rm -f conftest.o conftest.s + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_aix_dwloc" >&5 +$as_echo "$gcc_cv_as_aix_dwloc" >&6; } +if test $gcc_cv_as_aix_dwloc = yes; then + +$as_echo "#define HAVE_XCOFF_DWARF_EXTRAS 1" >>confdefs.h + fi ;; diff --git a/gcc/configure.ac b/gcc/configure.ac index 50bb61c1b61..59f205a1781 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -5066,6 +5066,15 @@ LCF0: ],, [AC_DEFINE(HAVE_AS_REF, 1, [Define if your assembler supports .ref])]) + + gcc_GAS_CHECK_FEATURE([AIX DWARF location lists section support], + gcc_cv_as_aix_dwloc,, + [ .dwsect 0xA0000 + Lframe..0: + .vbyte 4,Lframe..0 + ],, + [AC_DEFINE(HAVE_XCOFF_DWARF_EXTRAS, 1, + [Define if your assembler supports AIX debug frame section label reference.])]) ;; esac ;; -- 2.37.3