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

--- Comment #9 from sandra at gcc dot gnu.org ---
Author: sandra
Date: Mon Dec  2 03:52:15 2019
New Revision: 278891

URL: https://gcc.gnu.org/viewcvs?rev=278891&root=gcc&view=rev
Log:
2019-12-01  Sandra Loosemore  <san...@codesourcery.com>

        Fix bugs relating to flexibly-sized objects in nios2 backend.

        PR target/92499

        gcc/c/
        * c-decl.c (flexible_array_type_p): Move to common code.

        gcc/
        * config/nios2/nios2.c (nios2_in_small_data_p): Do not consider
        objects of flexible types to be small if they have internal linkage
        or are declared extern.
        * config/nios2/nios2.h (ASM_OUTPUT_ALIGNED_LOCAL): Replace with...
        (ASM_OUTPUT_ALIGNED_DECL_LOCAL): ...this.  Use targetm.in_small_data_p
        instead of the size of the object initializer.
        * tree.c (flexible_array_type_p): Move from C front end, and
        generalize to handle fields in non-C structures.
        * tree.h (flexible_array_type_p): Declare.

        gcc/testsuite/
        * gcc.target/nios2/pr92499-1.c: New.
        * gcc.target/nios2/pr92499-2.c: New.
        * gcc.target/nios2/pr92499-3.c: New.

Added:
    trunk/gcc/testsuite/gcc.target/nios2/pr92499-1.c
    trunk/gcc/testsuite/gcc.target/nios2/pr92499-2.c
    trunk/gcc/testsuite/gcc.target/nios2/pr92499-3.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/c/ChangeLog
    trunk/gcc/c/c-decl.c
    trunk/gcc/config/nios2/nios2.c
    trunk/gcc/config/nios2/nios2.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree.c
    trunk/gcc/tree.h

Reply via email to