diff options
author | davem <davem@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-09-10 22:28:30 +0000 |
---|---|---|
committer | davem <davem@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-09-10 22:28:30 +0000 |
commit | b6d28b197b7ff1893c7bb301f5c61dd5698e8ae5 (patch) | |
tree | c8b5a568b15e1730be67b19c2270b0fd997a8876 /gcc/configure.in | |
parent | 11d3b06039ed6c3bc278dc56890012a84623392d (diff) | |
download | gcc-b6d28b197b7ff1893c7bb301f5c61dd5698e8ae5.tar.gz |
* configure.in: Add check for GAS subsection -1 support.
* acconfig.h (HAVE_GAS_SUBSECTION_ORDERING): Add.
* configure config.in: Rebuilt.
* config/sparc/sparc.h (CASE_VECTOR_MODE): For V9 flag_pic, use
SImode is subsection -1 works, else use DImode.
(ASM_OUTPUT_ADDR_VEC_START, ASM_OUTPUT_ADDR_VEC_END): Define if
subsection -1 works.
* config/sparc/sparc.c (sparc_output_addr_vec,
sparc_output_addr_diff_vec): Use them if defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22383 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/configure.in')
-rw-r--r-- | gcc/configure.in | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/gcc/configure.in b/gcc/configure.in index 911a11978f3..98848d40a24 100644 --- a/gcc/configure.in +++ b/gcc/configure.in @@ -3669,6 +3669,40 @@ if test x$gcc_cv_as != x; then fi AC_MSG_RESULT($gcc_cv_as_alignment_features) +AC_MSG_CHECKING(assembler subsection support) +gcc_cv_as_subsections= +if test x$gcc_cv_as != x; then + # Check if we have .subsection + echo ".subsection 1" > conftest.s + if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then + gcc_cv_as_subsections=".subsection" + if test -x nm$host_exeext; then + gcc_cv_nm=./nm$host_exeext + elif test x$host = x$target; then + # Native build. + gcc_cv_nm=nm$host_exeext + fi + if test x$gcc_cv_nm != x; then + cat > conftest.s <<EOF +conftest_label1: .word 0 +.subsection -1 +conftest_label2: .word 0 +.previous +EOF + if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then + $gcc_cv_nm conftest.o | grep conftest_label1 > conftest.nm1 + $gcc_cv_nm conftest.o | grep conftest_label2 | sed -e 's/label2/label1/' > conftest.nm2 + if ! cmp conftest.nm1 conftest.nm2 > /dev/null 2>&1; then + gcc_cv_as_subsections="working .subsection -1" + AC_DEFINE(HAVE_GAS_SUBSECTION_ORDERING) + fi + fi + fi + fi + rm -f conftest.s conftest.o conftest.nm1 conftest.nm2 +fi +AC_MSG_RESULT($gcc_cv_as_subsections) + # Figure out what language subdirectories are present. subdirs= for lang in ${srcdir}/*/config-lang.in .. |