[Bug target/79671] [7 Regression] mapnik miscompilation on armv7hl since r235622

rguenth at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Apr 12 07:36:00 GMT 2017


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

--- Comment #103 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed Apr 12 07:35:49 2017
New Revision: 246866

URL: https://gcc.gnu.org/viewcvs?rev=246866&root=gcc&view=rev
Log:
2017-04-12  Richard Biener  <rguenther@suse.de>
        Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR middle-end/79671
        * alias.c (component_uses_parent_alias_set_from): Handle
        TYPE_TYPELESS_STORAGE.
        (get_alias_set): Likewise.
        * tree-core.h (tree_type_common): Add typeless_storage flag.
        * tree.h (TYPE_TYPELESS_STORAGE): New macro.
        * stor-layout.c (place_union_field): Set TYPE_TYPELESS_STORAGE
        for types containing members with TYPE_TYPELESS_STORAGE.
        (place_field): Likewise.
        (layout_type): Likewise for ARRAY_TYPE.
        * lto-streamer-out.c (hash_tree): Hash TYPE_TYPELESS_STORAGE.
        * tree-streamer-in.c (unpack_ts_type_common_value_fields): Stream
        TYPE_TYPELESS_STORAGE.
        * tree-streamer-out.c (pack_ts_type_common_value_fields): Likewise.

        lto/
        * lto.c (compare_tree_sccs_1): Compare TYPE_TYPELESS_STORAGE.

        cp/
        * tree.c (build_cplus_array_type): Set TYPE_TYPELESS_STORAGE
        for arrays of character or std::byte type.

        * g++.dg/torture/pr79671.C: New testcase.
        * g++.dg/lto/pr79671_0.C: Likewise.
        * g++.dg/lto/pr79671_1.c: Likewise.

Added:
    trunk/gcc/testsuite/g++.dg/lto/pr79671_0.C
    trunk/gcc/testsuite/g++.dg/lto/pr79671_1.c
    trunk/gcc/testsuite/g++.dg/torture/pr79671.C
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/alias.c
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/tree.c
    trunk/gcc/lto-streamer-out.c
    trunk/gcc/lto/ChangeLog
    trunk/gcc/lto/lto.c
    trunk/gcc/stor-layout.c
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-core.h
    trunk/gcc/tree-streamer-in.c
    trunk/gcc/tree-streamer-out.c
    trunk/gcc/tree.h


More information about the Gcc-bugs mailing list