This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC 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 tree-optimization/65215] [5 Regression] Bswap load miscompilation


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65215

--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Thu Feb 26 21:01:59 2015
New Revision: 221033

URL: https://gcc.gnu.org/viewcvs?rev=221033&root=gcc&view=rev
Log:
    PR tree-optimization/65215
    * tree-ssa-math-opts.c (find_bswap_or_nop_load): Return false
    for PDP endian targets.
    (perform_symbolic_merge, find_bswap_or_nop_1, find_bswap_or_nop):
    Fix up formatting issues.
    (bswap_replace): Likewise.  For BYTES_BIG_ENDIAN, if the final access
    size is smaller than the original, adjust MEM_REF offset by the
    difference of sizes.  Use is_gimple_mem_ref_addr instead of
    is_gimple_min_invariant test to avoid adding address temporaries.

    * gcc.c-torture/execute/pr65215-1.c: New test.
    * gcc.c-torture/execute/pr65215-2.c: New test.
    * gcc.c-torture/execute/pr65215-3.c: New test.
    * gcc.c-torture/execute/pr65215-4.c: New test.
    * gcc.c-torture/execute/pr65215-5.c: New test.

Added:
    trunk/gcc/testsuite/gcc.c-torture/execute/pr65215-1.c
    trunk/gcc/testsuite/gcc.c-torture/execute/pr65215-2.c
    trunk/gcc/testsuite/gcc.c-torture/execute/pr65215-3.c
    trunk/gcc/testsuite/gcc.c-torture/execute/pr65215-4.c
    trunk/gcc/testsuite/gcc.c-torture/execute/pr65215-5.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-ssa-math-opts.c


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