Message ID | CAMe9rOqq2qZ8RYjCTXJ0tsbZ976EAJ0D_4+DGX-Z3FpkoqDzKg@mail.gmail.com |
---|---|
State | New |
Headers | show |
"H.J. Lu" <hjl.tools@gmail.com> writes: > On Tue, Feb 11, 2014 at 11:40 AM, Rainer Orth > <ro@cebitec.uni-bielefeld.de> wrote: >> Hi H.J., >> >>> HAVE_AS_GOTOFF_IN_DATA defines a 32-bit assembler feature, we need to >>> pass --32 to assembler. Otherwise, we get the wrong result on x86-64. >>> We already pass --32 to assembler on x86. It should be OK to do it >>> in configure. OK for trunk? >> >> This would break Solaris/x86 with as configurations, where this test >> currently passes, but would fail since as doesn't understand --32. >> > > How about passing --32 to as only for Linux? OK to install? I'd rather do it for gas instead, which can be used on non-Linux systems, too. Rainer
diff --git a/gcc/configure.ac b/gcc/configure.ac index ac3d842..1b5dca2 100644 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -3867,8 +3867,17 @@ foo: nop # These two are used unconditionally by i386.[ch]; it is to be defined # to 1 if the feature is present, 0 otherwise. + case $target_os in + linux*) + as_ix86_gotoff_in_data_opt="--32" + ;; + *) + as_ix86_gotoff_in_data_opt= + ;; + esac gcc_GAS_CHECK_FEATURE([GOTOFF in data], - gcc_cv_as_ix86_gotoff_in_data, [2,11,0],, + gcc_cv_as_ix86_gotoff_in_data, [2,11,0], + $as_ix86_gotoff_in_data_opt, [ .text .L0: nop