This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/18661] Some x86-64 assembly codes don't align stack to 16 bytes


https://sourceware.org/bugzilla/show_bug.cgi?id=18661

--- Comment #8 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, hjl/plt/2.21 has been created
        at  27d21878e6c6c3517f14f758598295161461af2c (commit)

- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=27d21878e6c6c3517f14f758598295161461af2c

commit 27d21878e6c6c3517f14f758598295161461af2c
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jul 29 04:49:38 2015 -0700

    Use SSE optimized strcmp in x86-64 ld.so

    Since ld.so preserves vector registers now, we can SSE optimized strcmp
    in x86-64 ld.so.

        * sysdeps/x86_64/strcmp.S: Remove "#if !IS_IN (libc)".

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b3139c9c42f6edde9ff40a40d810f7e6312a4a23

commit b3139c9c42f6edde9ff40a40d810f7e6312a4a23
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jul 29 03:56:14 2015 -0700

    Remove x86-64 rtld-xxx.c and rtld-xxx.S

    Since ld.so preserves vector registers now, we can use the regular,
    non-ifunc string and memory functions in ld.so.

        * sysdeps/x86_64/rtld-memcmp.c: Removed.
        * sysdeps/x86_64/rtld-memset.S: Likewise.
        * sysdeps/x86_64/rtld-strchr.S: Likewise.
        * sysdeps/x86_64/rtld-strlen.S: Likewise.
        * sysdeps/x86_64/multiarch/rtld-memcmp.c: Likewise.
        * sysdeps/x86_64/multiarch/rtld-memset.S: Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=42772c4e1a7d51ff3b61fcedb5e3fb3351c9f8b4

commit 42772c4e1a7d51ff3b61fcedb5e3fb3351c9f8b4
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jul 29 03:47:54 2015 -0700

    Replace %xmm8 with %xmm0

    Since ld.so preserves vector registers now, we can use %xmm0 to avoid
    the REX prefix.

        * sysdeps/x86_64/memset.S: Replace %xmm8 with %xmm0.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2c35e86459f434d4e8251962ba3ff9d341428ba0

commit 2c35e86459f434d4e8251962ba3ff9d341428ba0
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jul 29 03:44:39 2015 -0700

    Replace %xmm[8-12] with %xmm[0-4]

    Since ld.so preserves vector registers now, we can use %xmm[0-4] to
    avoid the REX prefix.

        * sysdeps/x86_64/strlen.S: Replace %xmm[8-12] with %xmm[0-4].

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1b98679a9065e1b21a0fed3dde8a1503b16a89fa

commit 1b98679a9065e1b21a0fed3dde8a1503b16a89fa
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Jul 28 18:56:18 2015 -0700

    Don't disable SSE in x86-64 ld.so

    Since ld.so preserves vector registers now, we can use SSE in ld.so.

        * sysdeps/i386/Makefile [$(subdir) == elf] (CFLAGS-.os): Add
        -mno-sse -mno-mmx for $(all-rtld-routines).
        [$(subdir) == elf] (tests-special): Add
        $(objpfx)tst-ld-sse-use.out.
        [$(subdir) == elf] ($(objpfx)tst-ld-sse-use.out): New rule.
        * sysdeps/x86/Makefile [$(subdir) == elf] (CFLAGS-.os): Removed.
        [$(subdir) == elf] (tests-special): Likewise.
        [$(subdir) == elf] ($(objpfx)tst-ld-sse-use.out): Likewise.
        * sysdeps/x86_64/Makefile [$(subdir) == elf] (CFLAGS-.os): Add
        -mno-mmx for $(all-rtld-routines).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a061cf95b023449f79bcd497890a7f6ef95f4a3b

commit a061cf95b023449f79bcd497890a7f6ef95f4a3b
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sat Jul 11 13:25:25 2015 -0700

    Save and restore vector registers in x86-64 ld.so

    This patch initiaizes GLRO(dl_x86_xstate) in dl_platform_init to
    indicate if the processor supports SSE, AVX or AVX512.  It uses
    this information to properly save and restore vector registers in
    ld.so.  Now we can use SSE in ld.so and delete FOREIGN_CALL macros.
    We can also retire the rtld_must_xmm_save field and remove the
    rtld_savespace_sse field in tcbhead_t.  It is safe since they are
    internal to glibc.

        [BZ #15128]
        * sysdeps/x86_64/Makefile [$(subdir) == elf] (tests): Add
        ifuncmain8.
        (modules-names): Add ifuncmod8.
        ($(objpfx)ifuncmain8): New rule.
        * sysdeps/x86_64/dl-machine.h: Include <dl-procinfo.h> and
        <cpuid.h>.
        (elf_machine_runtime_setup): Use _dl_runtime_resolve_sse,
        _dl_runtime_resolve_avx, or _dl_runtime_resolve_avx512,
        _dl_runtime_profile_sse, _dl_runtime_profile_avx, or
        _dl_runtime_profile_avx512, based on HAS_ARCH_FEATURE.
        * sysdeps/x86_64/dl-trampoline.S: Rewrite.
        * sysdeps/x86_64/dl-trampoline.h: Likewise.
        * sysdeps/x86_64/ifuncmain8.c: New file.
        * sysdeps/x86_64/ifuncmod8.c: Likewise.
        * sysdeps/x86_64/nptl/tcb-offsets.sym (RTLD_SAVESPACE_SSE):
        Removed.
        * sysdeps/x86_64/nptl/tls.h (__128bits): Removed.
        (tcbhead_t): CHange rtld_must_xmm_save to __glibc_unused1.
        Remove rtld_savespace_sse and __padding.
        (RTLD_CHECK_FOREIGN_CALL): Removed.
        (RTLD_ENABLE_FOREIGN_CALL): Likewise.
        (RTLD_PREPARE_FOREIGN_CALL): Likewise.
        (RTLD_FINALIZE_FOREIGN_CALL): Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2fede219d1005f41a04aab125ec49b7c1456236f

commit 2fede219d1005f41a04aab125ec49b7c1456236f
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sun Jul 12 14:41:20 2015 -0700

    Align stack when calling __errno_location

    We should align stack to 16 bytes when calling __errno_location.

        [BZ #18661]
        * sysdeps/x86_64/fpu/s_cosf.S (__cosf): Align stack to 16 bytes
        when calling __errno_location.
        * sysdeps/x86_64/fpu/s_sincosf.S (__sincosf): Likewise.
        * sysdeps/x86_64/fpu/s_sinf.S (__sinf): Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=3a538a8e9905c07a3a60b998e31b8c5ac73a4a58

commit 3a538a8e9905c07a3a60b998e31b8c5ac73a4a58
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sun Jul 12 14:40:25 2015 -0700

    Align stack to 16 bytes when calling __gettimeofday

    Subtract stack by 24 bytes instead of 16 bytes so that stack is aligned
    to 16 bytes when calling __gettimeofday.

        [BZ #18661]
        * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S
        (__lll_timedwait_tid): Align stack to 16 bytes when calling
        __gettimeofday.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=69acbbd5ca5a54520cfc107bacc3b71e69ec0d2d

commit 69acbbd5ca5a54520cfc107bacc3b71e69ec0d2d
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sun Jul 12 14:38:58 2015 -0700

    Align stack to 16 bytes when calling __setcontext

    Don't use pop to restore %rdi so that stack is aligned to 16 bytes
    when calling __setcontext.

        [BZ #18661]
        * sysdeps/unix/sysv/linux/x86_64/__start_context.S
        (__start_context): Don't use pop to restore %rdi so that stack
        is aligned to 16 bytes when calling __setcontext.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2b58e5d85955174dde6a9304002adb79d2681ca3

commit 2b58e5d85955174dde6a9304002adb79d2681ca3
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Jul 29 03:41:58 2015 -0700

    Compile {memcpy,strcmp}-sse2-unaligned.S only for libc

    {memcpy,strcmp}-sse2-unaligned.S aren't needed in ld.so.

        * sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S: Compile
        only for libc.
        * sysdeps/x86_64/multiarch/strcmp-sse2-unaligned.S: Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5d7a32c16a65d27b73d01556a30fb138338639f1

commit 5d7a32c16a65d27b73d01556a30fb138338639f1
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sat Aug 1 07:47:16 2015 -0700

    Update x86 elision-conf.c for <cpu-features.h>

    This patch updates x86 elision-conf.c to use the newly defined
    HAS_CPU_FEATURE from <cpu-features.h>.

        * sysdeps/unix/sysv/linux/x86/elision-conf.c (elision_init):
        Replace HAS_RTM with HAS_CPU_FEATURE (RTM).

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=da0e27c6c7266df2107c7a4825cf2eb2d6360d28

commit da0e27c6c7266df2107c7a4825cf2eb2d6360d28
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jul 31 16:52:19 2015 -0700

    Update i686 multiarch functions for <cpu-features.h>

    This patch updates i686 multiarch functions to use the newly defined
    HAS_CPU_FEATURE, HAS_ARCH_FEATURE, LOAD_GOT_AND_RTLD_GLOBAL_RO and
    LOAD_FUNC_GOT_EAX from <cpu-features.h>.

        * sysdeps/i386/i686/fpu/multiarch/e_expf.c: Replace HAS_XXX
        with HAS_CPU_FEATURE/HAS_ARCH_FEATURE (XXX).
        * sysdeps/i386/i686/fpu/multiarch/s_cosf.c: Likewise.
        * sysdeps/i386/i686/fpu/multiarch/s_cosf.c: Likewise.
        * sysdeps/i386/i686/fpu/multiarch/s_sincosf.c: Likewise.
        * sysdeps/i386/i686/fpu/multiarch/s_sinf.c: Likewise.
        * sysdeps/i386/i686/multiarch/ifunc-impl-list.c: Likewise.
        * sysdeps/i386/i686/multiarch/s_fma.c: Likewise.
        * sysdeps/i386/i686/multiarch/s_fmaf.c: Likewise.
        * sysdeps/i386/i686/multiarch/bcopy.S: Remove __init_cpu_features
        call.  Merge SHARED and !SHARED.  Add LOAD_GOT_AND_RTLD_GLOBAL_RO.
        Use LOAD_FUNC_GOT_EAX to load function address.  Replace HAS_XXX
        with HAS_CPU_FEATURE/HAS_ARCH_FEATURE (XXX).
        * sysdeps/i386/i686/multiarch/bzero.S: Likewise.
        * sysdeps/i386/i686/multiarch/memchr.S: Likewise.
        * sysdeps/i386/i686/multiarch/memcmp.S: Likewise.
        * sysdeps/i386/i686/multiarch/memcpy.S: Likewise.
        * sysdeps/i386/i686/multiarch/memcpy_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/memmove.S: Likewise.
        * sysdeps/i386/i686/multiarch/memmove_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/mempcpy.S: Likewise.
        * sysdeps/i386/i686/multiarch/mempcpy_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/memrchr.S: Likewise.
        * sysdeps/i386/i686/multiarch/memset.S: Likewise.
        * sysdeps/i386/i686/multiarch/memset_chk.S: Likewise.
        * sysdeps/i386/i686/multiarch/rawmemchr.S: Likewise.
        * sysdeps/i386/i686/multiarch/strcasecmp.S: Likewise.
        * sysdeps/i386/i686/multiarch/strcat.S: Likewise.
        * sysdeps/i386/i686/multiarch/strchr.S: Likewise.
        * sysdeps/i386/i686/multiarch/strcmp.S: Likewise.
        * sysdeps/i386/i686/multiarch/strcpy.S: Likewise.
        * sysdeps/i386/i686/multiarch/strcspn.S: Likewise.
        * sysdeps/i386/i686/multiarch/strlen.S: Likewise.
        * sysdeps/i386/i686/multiarch/strncase.S: Likewise.
        * sysdeps/i386/i686/multiarch/strnlen.S: Likewise.
        * sysdeps/i386/i686/multiarch/strrchr.S: Likewise.
        * sysdeps/i386/i686/multiarch/strspn.S: Likewise.
        * sysdeps/i386/i686/multiarch/wcschr.S: Likewise.
        * sysdeps/i386/i686/multiarch/wcscmp.S: Likewise.
        * sysdeps/i386/i686/multiarch/wcscpy.S: Likewise.
        * sysdeps/i386/i686/multiarch/wcslen.S: Likewise.
        * sysdeps/i386/i686/multiarch/wcsrchr.S: Likewise.
        * sysdeps/i386/i686/multiarch/wmemcmp.S: Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=a7be9410184a405f4f1347302afe0b625146cdab

commit a7be9410184a405f4f1347302afe0b625146cdab
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jul 31 13:41:04 2015 -0700

    Update x86_64 multiarch functions for <cpu-features.h>

    This patch updates x86_64 multiarch functions to use the newly defined
    HAS_CPU_FEATURE, HAS_ARCH_FEATURE and LOAD_RTLD_GLOBAL_RO_RDX from
    <cpu-features.h>.

        * sysdeps/x86_64/fpu/multiarch/e_asin.c: Replace HAS_XXX with
        HAS_CPU_FEATURE/HAS_ARCH_FEATURE (XXX).
        * sysdeps/x86_64/fpu/multiarch/e_atan2.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/e_exp.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/e_log.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/e_pow.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/s_atan.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/s_fma.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/s_fmaf.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/s_sin.c: Likewise.
        * sysdeps/x86_64/fpu/multiarch/s_tan.c: Likewise.
        * sysdeps/x86_64/multiarch/ifunc-impl-list.c: Likewise.
        * sysdeps/x86_64/multiarch/sched_cpucount.c: Likewise.
        * sysdeps/x86_64/multiarch/strstr.c: Likewise.
        * sysdeps/x86_64/multiarch/memmove.c: Likewise.
        * sysdeps/x86_64/multiarch/memmove_chk.c: Likewise.
        * sysdeps/x86_64/multiarch/test-multiarch.c: Likewise.
        * sysdeps/x86_64/multiarch/memcmp.S: Remove __init_cpu_features
        call.  Add LOAD_RTLD_GLOBAL_RO_RDX.  Replace HAS_XXX with
        HAS_CPU_FEATURE/HAS_ARCH_FEATURE (XXX).
        * sysdeps/x86_64/multiarch/memcpy.S: Likewise.
        * sysdeps/x86_64/multiarch/memcpy_chk.S: Likewise.
        * sysdeps/x86_64/multiarch/mempcpy.S: Likewise.
        * sysdeps/x86_64/multiarch/mempcpy_chk.S: Likewise.
        * sysdeps/x86_64/multiarch/memset.S: Likewise.
        * sysdeps/x86_64/multiarch/memset_chk.S: Likewise.
        * sysdeps/x86_64/multiarch/strcat.S: Likewise.
        * sysdeps/x86_64/multiarch/strchr.S: Likewise.
        * sysdeps/x86_64/multiarch/strcmp.S: Likewise.
        * sysdeps/x86_64/multiarch/strcpy.S: Likewise.
        * sysdeps/x86_64/multiarch/strcspn.S: Likewise.
        * sysdeps/x86_64/multiarch/strspn.S: Likewise.
        * sysdeps/x86_64/multiarch/wcscpy.S: Likewise.
        * sysdeps/x86_64/multiarch/wmemcmp.S: Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=2f99aa146788d958bf202ce51e070c31af84a570

commit 2f99aa146788d958bf202ce51e070c31af84a570
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Fri Jul 31 07:30:04 2015 -0700

    Add _dl_x86_cpu_features to rtld_global in ld.so

    This patch adds _dl_x86_cpu_features to rtld_global in x86 ld.so
    and initializes it early before __libc_start_main is called so that
    cpu_features is always available when it is used and we can avoid
    calling __init_cpu_features in IFUNC selectors.

        * sysdeps/i386/dl-machine.h: Include <cpu-features.c>.
        (dl_platform_init): Call init_cpu_features.
        * sysdeps/i386/dl-procinfo.c (_dl_x86_cpu_features): New.
        * sysdeps/i386/i686/cacheinfo.c
        (DISABLE_PREFERRED_MEMORY_INSTRUCTION): Removed.
        * sysdeps/i386/i686/multiarch/ifunc-defines.sym (KIND_OFFSET):
        Removed.
        * sysdeps/i386/ldsodefs.h: Include <cpu-features.h>.
        * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
        <sysdeps/x86_64/dl-procinfo.c> instead of
        sysdeps/generic/dl-procinfo.c>.
        * sysdeps/x86/Makefile [$(subdir) == csu] (gen-as-const-headers):
        Add cpu-features-offsets.sym and rtld-global-offsets.sym.
        * sysdeps/x86/cpu-features-offsets.sym: New file.
        * sysdeps/x86/cpu-features.c: Likewise.
        * sysdeps/x86/cpu-features.h: Likewise.
        * sysdeps/x86/libc-start.c: Likewise.
        * sysdeps/x86/rtld-global-offsets.sym: Likewise.
        * sysdeps/x86_64/dl-procinfo.c: Likewise.
        * sysdeps/x86_64/cacheinfo.c (__cpuid_count): Removed.
        Assume USE_MULTIARCH is defined and don't check it.
        (is_intel): Replace __cpu_features with GLRO(dl_x86_cpu_features).
        (is_amd): Likewise.
        (max_cpuid): Likewise.
        (intel_check_word): Likewise.
        (__cache_sysconf): Don't call __init_cpu_features.
        (__x86_preferred_memory_instruction): Removed.
        (init_cacheinfo): Don't call __init_cpu_features. Replace
        __cpu_features with GLRO(dl_x86_cpu_features).
        * sysdeps/x86_64/dl-machine.h: <cpu-features.c>.
        (dl_platform_init): Call init_cpu_features.
        * sysdeps/x86_64/ldsodefs.h: Include <cpu-features.h>.
        * sysdeps/x86_64/multiarch/cacheinfo.c: Removed.
        * sysdeps/x86_64/multiarch/ifunc-defines.sym (KIND_OFFSET):
        Removed.
        * sysdeps/x86_64/multiarch/init-arch.c: Rewrite.
        * sysdeps/x86_64/multiarch/init-arch.h: Likewise.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fdd3aa0b19700ab564da895a2a85bf3fdb0bedf0

commit fdd3aa0b19700ab564da895a2a85bf3fdb0bedf0
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Thu Jul 9 09:30:09 2015 -0700

    Improve bndmov encoding with zero displacement

    If x86-64 assembler doesn't support MPX, we encode bndmov instruction by
    hand.  When displacement is zero, assembler generates shorter encoding.
    This patch improves bndmov encoding with zero displacement so that ld.so
    is identical when using assemblers with and without MPX support.

        * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_resolve): Improve
        bndmov encoding with zero displacement.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=9e4fc7f67f6695f294ae759a6b540f5d08a56f0c

commit 9e4fc7f67f6695f294ae759a6b540f5d08a56f0c
Author: Igor Zamyatin <igor.zamyatin@intel.com>
Date:   Thu Jul 9 06:50:12 2015 -0700

    Preserve bound registers for pointer pass/return

    We need to save/restore bound registers and add a BND prefix before
    branches in _dl_runtime_profile so that bound registers for pointer
    pass and return are preserved when LD_AUDIT is used.

        [BZ #18134]
        * sysdeps/i386/configure.ac: Set HAVE_MPX_SUPPORT.
        * sysdeps/i386/configure: Regenerated.
        * sysdeps/i386/dl-trampoline.S (PRESERVE_BND_REGS_PREFIX): New.
        (_dl_runtime_profile): Save and restore Intel MPX return bound
        registers when calling _dl_call_pltexit.  Add
        PRESERVE_BND_REGS_PREFIX before return.
        * sysdeps/i386/link-defines.sym (LRV_BND0_OFFSET): New.
        (LRV_BND1_OFFSET): Likewise.
        * sysdeps/x86/bits/link.h (La_i86_retval): Add lrv_bnd0 and
        lrv_bnd1.
        * sysdeps/x86_64/dl-trampoline.S (_dl_runtime_profile): Fix
        typo in bndmov encoding.
        * sysdeps/x86_64/dl-trampoline.h: Properly save and restore
        Intel MPX bound registers.  Add PRESERVE_BND_REGS_PREFIX before
        branch instructions to preserve bounds.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=b15f277bac14482c8b2dda4931ebf919644932fa

commit b15f277bac14482c8b2dda4931ebf919644932fa
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Mon Mar 16 14:58:43 2015 -0700

    Preserve bound registers in _dl_runtime_resolve

    We need to add a BND prefix before indirect branch at the end of
    _dl_runtime_resolve to preserve bound registers.

        [BZ #18134]
        * sysdeps/x86_64/dl-trampoline.S (PRESERVE_BND_REGS_PREFIX): New.
        (_dl_runtime_resolve): Add a BND prefix before indirect branch.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=20f87a053b1e6a9106851f764c205d59fd4b6879

commit 20f87a053b1e6a9106851f764c205d59fd4b6879
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Jul 7 05:23:24 2015 -0700

    Add and use sysdeps/i386/link-defines.sym

    Define macros for fields in La_i86_regs and La_i86_retval and use them
    in dl-trampoline.S, instead of hardcoded values.

        * sysdeps/i386/Makefile (gen-as-const-headers)[elf]: Add
        link-defines.sym.
        * sysdeps/i386/dl-trampoline.S: Include <link-defines.h>.
        (_dl_runtime_profile): Use LONG_DOUBLE_SIZE, LRV_SIZE,
        LRV_EAX_OFFSET, LRV_EDX_OFFSET, LRV_ST0_OFFSET, LRV_ST1_OFFSET
        and LR_SIZE.
        * sysdeps/i386/link-defines.sym: New file.

https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=d6fd297566e2389ab855325754bcb25f604c6b7d

commit d6fd297566e2389ab855325754bcb25f604c6b7d
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Tue Jul 7 05:09:16 2015 -0700

    Add a testcase for i386 LD_AUDIT

    This patch adds a testcase for i386 LD_AUDIT to check function return
    and parameters passed in registers.

        * sysdeps/i386/Makefile (tests)[elf]: Add tst-audit3.
        (modules-names): Add tst-auditmod3a tst-auditmod3b.
        ($(objpfx)tst-audit3): New rule.
        ($(objpfx)tst-audit3.out): Likewise.
        * sysdeps/i386/tst-audit3.c: New file.
        * sysdeps/i386/tst-audit3.h: Likewise.
        * sysdeps/i386/tst-auditmod3a.c: Likewise.
        * sysdeps/i386/tst-auditmod3b.c: Likewise.

-----------------------------------------------------------------------

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]