public inbox for libc-stable@sourceware.org
 help / color / mirror / Atom feed
From: <marekzmyslowski@poczta.onet.pl>
To: <libc-stable@sourceware.org>
Subject: Compile GLIBC without AVX support
Date: Tue, 01 Jan 2019 00:00:00 -0000	[thread overview]
Message-ID: <001b01d4a363$2fa4db50$8eee91f0$@poczta.onet.pl> (raw)

Hi,

I'm trying to compile the glibc 2.28 version without AVX support. However,
whatever option I used, AVX files are still compiled and used. 
I need this to use gdb record/replay tool.
Here is the configure command I used:

../configure --enable-mathvec=no --prefix=/work/bin libc_cv_asm_avx512=no
libc_cv_asm_avx512dq=no libc_cv_cc_avx512=no  libc_cv_cc_sse2avx=no
--disable-avx2  --disable-avx512 --disable-avx-128-fma

After make the result is following:

root@d93e9cc876c3:/work/glibc/build# readelf -Ws libc.so | grep avx
  1194: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS
strcasecmp_l-avx.os
  1198: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS strncase_l-avx.os
  3257: 0000000000159070   337 FUNC    LOCAL  DEFAULT   13
__memset_avx512_unaligned_erms
  3272: 0000000000158a40     9 FUNC    LOCAL  DEFAULT   13
__mempcpy_chk_avx512_unaligned
  3276: 000000000014f1d0  1288 FUNC    LOCAL  DEFAULT   13 __strncmp_avx2
.
----------------------------------------------------------------------------
-------------------------------------------------------------
root@d93e9cc876c3:/work/glibc/build# readelf -Ws libc.a | grep avx
readelf: Warning: unable to apply unsupported reloc type 21 to section
.debug_info
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strchr_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strcmp_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strlen_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strnlen_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strncmp_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strrchr_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __memchr_avx2
.
    25: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND
__memcpy_avx_unaligned
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __rawmemchr_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __strchrnul_avx2
    15: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN   UND __memrchr_avx2
File: libc.a(strcmp-avx2.o)
    12: 0000000000000000  1087 FUNC    GLOBAL DEFAULT    4 __strcmp_avx2
File: libc.a(strncmp-avx2.o)
    12: 0000000000000000  1288 FUNC    GLOBAL DEFAULT    4 __strncmp_avx2
File: libc.a(memchr-avx2.o)
    12: 0000000000000000   717 FUNC    GLOBAL DEFAULT    4 __memchr_avx2
File: libc.a(rawmemchr-avx2.o)
    12: 0000000000000000   317 FUNC    GLOBAL DEFAULT    4 __rawmemchr_avx2
.


Later, when I build test app :

xxx:/work/example$ gcc -nodefaultlibs -g test.c  -O0 -o test -static
/work/glibc/build/libc.a -lgcc -lgcc_eh /work/glibc/build/libc.a
xxx:/work/example$ readelf -Ws test | grep avx
   875: 000000000042a4c0  1851 FUNC    GLOBAL HIDDEN     6
__memcpy_avx512_no_vzeroupper
   897: 00000000004325e0   548 FUNC    GLOBAL HIDDEN     6 __strchr_avx2
   908: 000000000042a4b0     9 FUNC    GLOBAL DEFAULT    6
__memcpy_chk_avx512_no_vzeroupper
   929: 0000000000439fa0    19 FUNC    GLOBAL HIDDEN     6
__memset_avx512_erms
   946: 000000000041def0   980 FUNC    GLOBAL HIDDEN     6
__memcmp_avx2_movbe
   965: 000000000041d9b0   317 FUNC    GLOBAL HIDDEN     6 __rawmemchr_avx2
   971: 000000000042a4c0  1851 FUNC    GLOBAL HIDDEN     6
__memmove_avx512_no_vzeroupper
  1084: 0000000000418ed0  1087 FUNC    GLOBAL HIDDEN     6 __strcmp_avx2
  1104: 0000000000430b50  5718 FUNC    GLOBAL HIDDEN     6
__strcasecmp_l_avx
  1107: 0000000000460240   418 FUNC    GLOBAL HIDDEN     6 __wcslen_avx2
  1117: 0000000000432810   493 FUNC    GLOBAL HIDDEN     6 __strchrnul_avx2
  1198: 00000000004392d0     8 FUNC    GLOBAL HIDDEN     6
__mempcpy_avx_unaligned
  1259: 00000000004603f0   834 FUNC    GLOBAL HIDDEN     6 __wcsnlen_avx2
  1271: 000000000041d2a0  1288 FUNC    GLOBAL HIDDEN     6 __strncmp_avx2
  1275: 0000000000439e30   267 FUNC    GLOBAL HIDDEN     6
__memset_avx2_unaligned_erms
  1312: 0000000000439760  1244 FUNC    GLOBAL HIDDEN     6
__memmove_avx512_unaligned_erms
  1315: 0000000000439710    58 FUNC    GLOBAL HIDDEN     6
__memmove_avx512_unaligned
  1349: 0000000000439dc0    18 FUNC    GLOBAL HIDDEN     6
__wmemset_avx2_unaligned
  1364: 000000000046a4d0  1139 FUNC    GLOBAL HIDDEN     6
_dl_runtime_profile_avx512
  1398: 0000000000439760  1244 FUNC    GLOBAL HIDDEN     6
__memcpy_avx512_unaligned_erms
  1427: 000000000042a4b0     9 FUNC    GLOBAL DEFAULT    6
__memmove_chk_avx512_no_vzeroupper
  1476: 00000000004392e0    47 FUNC    GLOBAL HIDDEN     6
__memcpy_avx_unaligned
  1498: 0000000000439e10    19 FUNC    GLOBAL HIDDEN     6
__memset_avx2_erms
  1510: 0000000000439de0    42 FUNC    GLOBAL HIDDEN     6
__memset_avx2_unaligned
  1526: 000000000042a490     9 FUNC    GLOBAL DEFAULT    6
__mempcpy_chk_avx512_no_vzeroupper
  1544: 0000000000439f60    55 FUNC    GLOBAL HIDDEN     6
__memset_avx512_unaligned
  1546: 0000000000432ba0   398 FUNC    GLOBAL HIDDEN     6 __strlen_avx2
  1577: 000000000042a4a0     8 FUNC    GLOBAL HIDDEN     6
__mempcpy_avx512_no_vzeroupper
  1595: 0000000000439700     8 FUNC    GLOBAL HIDDEN     6
__mempcpy_avx512_unaligned
  1598: 0000000000439310     8 FUNC    GLOBAL HIDDEN     6
__mempcpy_avx_unaligned_erms
  1629: 0000000000439750     8 FUNC    GLOBAL HIDDEN     6
__mempcpy_avx512_unaligned_erms
  1645: 00000000004392e0    47 FUNC    GLOBAL HIDDEN     6
__memmove_avx_unaligned
  1682: 0000000000438ca0     9 FUNC    GLOBAL DEFAULT    6
__memset_chk_avx512_no_vzeroupper
  1688: 000000000046a950  1141 FUNC    GLOBAL HIDDEN     6
_dl_runtime_profile_avx
  1759: 0000000000439fc0   337 FUNC    GLOBAL HIDDEN     6
__memset_avx512_unaligned_erms
  1770: 000000000045e900   717 FUNC    GLOBAL HIDDEN     6 __memchr_avx2
  1779: 000000000045f2b0   798 FUNC    GLOBAL HIDDEN     6 __strnlen_avx2
  1855: 0000000000439f40    24 FUNC    GLOBAL HIDDEN     6
__wmemset_avx512_unaligned
  1858: 0000000000439320   980 FUNC    GLOBAL HIDDEN     6
__memcpy_avx_unaligned_erms
  1864: 0000000000430b40    16 FUNC    GLOBAL DEFAULT    6 __strcasecmp_avx
  1884: 0000000000439710    58 FUNC    GLOBAL HIDDEN     6
__memcpy_avx512_unaligned
  1891: 000000000045eec0   454 FUNC    GLOBAL HIDDEN     6 __strrchr_avx2
  1957: 0000000000439320   980 FUNC    GLOBAL HIDDEN     6
__memmove_avx_unaligned_erms
  1978: 0000000000438cb0   624 FUNC    GLOBAL HIDDEN     6
__memset_avx512_no_vzeroupper

Regards
Marek Zmysłowski


             reply	other threads:[~2019-01-03 12:52 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-01  0:00 marekzmyslowski [this message]
2019-01-01  0:00 ` Florian Weimer
2019-01-01  0:00   ` marekzmyslowski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='001b01d4a363$2fa4db50$8eee91f0$@poczta.onet.pl' \
    --to=marekzmyslowski@poczta.onet.pl \
    --cc=libc-stable@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).