Message ID | CAMXFM3sjjaAn5gudXq8TDL1xaDHhzc7k1SySFV-aX2H=648kRQ@mail.gmail.com |
---|---|
State | New |
Headers | show |
On Tue, 30 Sep 2014, Andrew Senkevich wrote: > 2014-09-30 20:35 GMT+04:00 Joseph S. Myers <joseph@codesourcery.com>: > > On Tue, 30 Sep 2014, Andrew Senkevich wrote: > > > >> diff --git a/configure.ac b/configure.ac > >> index 82d0896..c5c1758 100644 > >> --- a/configure.ac > >> +++ b/configure.ac > >> @@ -903,7 +903,7 @@ LIBC_PROG_BINUTILS > >> # Accept binutils 2.20 or newer. > >> AC_CHECK_PROG_VER(AS, $AS, --version, > >> [GNU assembler.* \([0-9]*\.[0-9.]*\)], > >> - [2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], AS=: > >> critic_missing="$critic_missing as") > >> + [2.1[0-9][0-9]*|2.[2-9][2-9]*|[3-9].*|[1-9][0-9]*], AS=: > >> critic_missing="$critic_missing as") > >> AC_CHECK_PROG_VER(LD, $LD, --version, > >> [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)], > >> [2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], LD=: > >> critic_missing="$critic_missing ld") > > > > Any change to required versions needs to include an update to install.texi > > (and the generated INSTALL file). It should also be proposed in a > > separate thread whose subject describes what is being proposed. > > I thought it is already agreed in > https://sourceware.org/ml/libc-alpha/2014-09/msg00586.html > But if separate thread is required I can start it. In general, patch submissions should be minimal (subject to bisectability) - if pieces can sensibly be separated out, they should be, and each piece should be given a meaningful subject (which will be the summary line of the git commit message) describing what that piece does. It's entirely plausible there are people concerned about a change to build requirements who aren't concerned about vector functions. > > Do you need to link libmvec against libm (and if so, I'd expect associated > > Makefile rules, and maybe a Depend file to ensure the directories are > > built in the right order)? > > Libmvec contains calls to scalar version from libm, but not supposed > to be used directly. > Is it ok not to link libmvec against libm in this case? No. To have proper versioned undefined references, if a library A has an undefined reference to a function from another library B then A must be linked against B; otherwise you get an undefined reference without symbol version specified. > Is it OK to add configure option enabled by default on x86_64 and > disabled on unsupported architectures? I think that would be appropriate. > diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libmvec.abilist > b/sysdeps/unix/sysv/linux/x86_64/64/libmvec.abilist Unless and until there is a reason for the set of symbols in this library to differ between -mx32 and -m64, I think the ABI baseline should go directly in sysdeps/unix/sysv/linux/x86_64/ rather than the 64/ subdirectory.
2014-10-01 0:03 GMT+04:00 Joseph S. Myers <joseph@codesourcery.com>: > On Tue, 30 Sep 2014, Andrew Senkevich wrote: > >> 2014-09-30 20:35 GMT+04:00 Joseph S. Myers <joseph@codesourcery.com>: >> > On Tue, 30 Sep 2014, Andrew Senkevich wrote: >> > >> >> diff --git a/configure.ac b/configure.ac >> >> index 82d0896..c5c1758 100644 >> >> --- a/configure.ac >> >> +++ b/configure.ac >> >> @@ -903,7 +903,7 @@ LIBC_PROG_BINUTILS >> >> # Accept binutils 2.20 or newer. >> >> AC_CHECK_PROG_VER(AS, $AS, --version, >> >> [GNU assembler.* \([0-9]*\.[0-9.]*\)], >> >> - [2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], AS=: >> >> critic_missing="$critic_missing as") >> >> + [2.1[0-9][0-9]*|2.[2-9][2-9]*|[3-9].*|[1-9][0-9]*], AS=: >> >> critic_missing="$critic_missing as") >> >> AC_CHECK_PROG_VER(LD, $LD, --version, >> >> [GNU ld.* \([0-9][0-9]*\.[0-9.]*\)], >> >> [2.1[0-9][0-9]*|2.[2-9][0-9]*|[3-9].*|[1-9][0-9]*], LD=: >> >> critic_missing="$critic_missing ld") >> > >> > Any change to required versions needs to include an update to install.texi >> > (and the generated INSTALL file). It should also be proposed in a >> > separate thread whose subject describes what is being proposed. >> >> I thought it is already agreed in >> https://sourceware.org/ml/libc-alpha/2014-09/msg00586.html >> But if separate thread is required I can start it. > > In general, patch submissions should be minimal (subject to bisectability) > - if pieces can sensibly be separated out, they should be, and each piece > should be given a meaningful subject (which will be the summary line of > the git commit message) describing what that piece does. It's entirely > plausible there are people concerned about a change to build requirements > who aren't concerned about vector functions. Is it OK to send patch with such update, containing also deletion of configure checks about AVX2 support as well as according preprocessor directive for hiding AVX2 codes? May be something else need to be updated? -- WBR, Andrew
On Wed, 1 Oct 2014, Andrew Senkevich wrote: > > In general, patch submissions should be minimal (subject to bisectability) > > - if pieces can sensibly be separated out, they should be, and each piece > > should be given a meaningful subject (which will be the summary line of > > the git commit message) describing what that piece does. It's entirely > > plausible there are people concerned about a change to build requirements > > who aren't concerned about vector functions. > > Is it OK to send patch with such update, containing also deletion of > configure checks about AVX2 support as well as according preprocessor > directive for hiding AVX2 codes? May be something else need to be > updated? I advise keeping architecture-specific removal of configure checks separate from architecture-independent increases in minimum versions. The AVX2 checks appear to be compiler tests, not binutils tests, so they could only be removed after an increase of minimum GCC version for building glibc to 4.7. Again, discussion of minimum GCC versions (architecture-independent) is best done in a separate thread that is explicitly about that question and that question only, but I'm not sure if there would be a consensus for 4.7 or only for 4.6 as new minimum version. And removal of configure checks that are obsolete with the new minimum version might still best be separate from the patch that actually increases the minimum.
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libmvec.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libmvec.abilist new file mode 100644 index 0000000..1d53a6c --- /dev/null +++ b/sysdeps/unix/sysv/linux/x86_64/64/libmvec.abilist @@ -0,0 +1 @@ +GLIBC_2.21