This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository gcc.
from 5fe0865ab78 Fortran - out of bounds in array constructor with implied do loop new a25e0b5e6ac Add -ftrivial-auto-var-init option and uninitialized variab [...]
The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: gcc/builtins.c | 3 +- gcc/builtins.h | 1 + gcc/c-family/c-attribs.c | 27 ++++ gcc/common.opt | 16 +++ gcc/doc/extend.texi | 16 +++ gcc/doc/invoke.texi | 41 +++++- gcc/flag-types.h | 7 + gcc/gimple-fold.c | 54 +++++--- gcc/gimplify.c | 151 +++++++++++++++++++-- gcc/internal-fn.c | 99 ++++++++++++++ gcc/internal-fn.def | 4 + gcc/testsuite/c-c++-common/auto-init-1.c | 39 ++++++ gcc/testsuite/c-c++-common/auto-init-10.c | 22 +++ gcc/testsuite/c-c++-common/auto-init-11.c | 14 ++ gcc/testsuite/c-c++-common/auto-init-12.c | 14 ++ gcc/testsuite/c-c++-common/auto-init-13.c | 23 ++++ gcc/testsuite/c-c++-common/auto-init-14.c | 23 ++++ gcc/testsuite/c-c++-common/auto-init-15.c | 13 ++ gcc/testsuite/c-c++-common/auto-init-16.c | 13 ++ gcc/testsuite/c-c++-common/auto-init-2.c | 39 ++++++ gcc/testsuite/c-c++-common/auto-init-3.c | 19 +++ gcc/testsuite/c-c++-common/auto-init-4.c | 19 +++ gcc/testsuite/c-c++-common/auto-init-5.c | 21 +++ gcc/testsuite/c-c++-common/auto-init-6.c | 21 +++ gcc/testsuite/c-c++-common/auto-init-7.c | 35 +++++ gcc/testsuite/c-c++-common/auto-init-8.c | 35 +++++ gcc/testsuite/c-c++-common/auto-init-9.c | 20 +++ gcc/testsuite/c-c++-common/auto-init-esra.c | 35 +++++ gcc/testsuite/c-c++-common/auto-init-padding-1.c | 23 ++++ gcc/testsuite/c-c++-common/auto-init-padding-2.c | 114 ++++++++++++++++ gcc/testsuite/c-c++-common/auto-init-padding-3.c | 114 ++++++++++++++++ gcc/testsuite/g++.dg/auto-init-uninit-pred-1_a.C | 3 + gcc/testsuite/g++.dg/auto-init-uninit-pred-2_a.C | 3 + gcc/testsuite/g++.dg/auto-init-uninit-pred-3_a.C | 3 + gcc/testsuite/g++.dg/auto-init-uninit-pred-4.C | 3 + .../{tree-ssa/sra-12.c => auto-init-sra-1.c} | 5 +- .../{tree-ssa/sra-12.c => auto-init-sra-2.c} | 5 +- gcc/testsuite/gcc.dg/auto-init-uninit-1.c | 5 + gcc/testsuite/gcc.dg/auto-init-uninit-12.c | 4 + .../gcc.dg/{uninit-13.c => auto-init-uninit-13.c} | 2 +- gcc/testsuite/gcc.dg/auto-init-uninit-14.c | 4 + .../gcc.dg/{uninit-15.c => auto-init-uninit-15.c} | 12 +- gcc/testsuite/gcc.dg/auto-init-uninit-16.c | 25 ++++ .../gcc.dg/{uninit-17.c => auto-init-uninit-17.c} | 2 +- gcc/testsuite/gcc.dg/auto-init-uninit-18.c | 3 + .../gcc.dg/{uninit-19.c => auto-init-uninit-19.c} | 2 +- gcc/testsuite/gcc.dg/auto-init-uninit-2.c | 5 + gcc/testsuite/gcc.dg/auto-init-uninit-20.c | 4 + gcc/testsuite/gcc.dg/auto-init-uninit-21.c | 4 + gcc/testsuite/gcc.dg/auto-init-uninit-22.c | 3 + .../gcc.dg/{uninit-23.c => auto-init-uninit-23.c} | 2 +- gcc/testsuite/gcc.dg/auto-init-uninit-24.c | 3 + .../gcc.dg/{uninit-25.c => auto-init-uninit-25.c} | 2 +- .../gcc.dg/{uninit-26.c => auto-init-uninit-26.c} | 2 +- gcc/testsuite/gcc.dg/auto-init-uninit-3.c | 5 + .../gcc.dg/{uninit-34.c => auto-init-uninit-34.c} | 10 +- .../gcc.dg/{uninit-36.c => auto-init-uninit-36.c} | 2 +- .../gcc.dg/{uninit-37.c => auto-init-uninit-37.c} | 46 ++++--- gcc/testsuite/gcc.dg/auto-init-uninit-4.c | 10 ++ gcc/testsuite/gcc.dg/auto-init-uninit-5.c | 6 + gcc/testsuite/gcc.dg/auto-init-uninit-6.c | 7 + gcc/testsuite/gcc.dg/auto-init-uninit-8.c | 8 ++ gcc/testsuite/gcc.dg/auto-init-uninit-9.c | 8 ++ gcc/testsuite/gcc.dg/auto-init-uninit-A.c | 7 + .../gcc.dg/{uninit-B.c => auto-init-uninit-B.c} | 6 +- gcc/testsuite/gcc.dg/auto-init-uninit-C.c | 5 + gcc/testsuite/gcc.dg/auto-init-uninit-H.c | 5 + gcc/testsuite/gcc.dg/auto-init-uninit-I.c | 3 + gcc/testsuite/gcc.target/aarch64/auto-init-1.c | 32 +++++ gcc/testsuite/gcc.target/aarch64/auto-init-2.c | 35 +++++ gcc/testsuite/gcc.target/aarch64/auto-init-3.c | 19 +++ gcc/testsuite/gcc.target/aarch64/auto-init-4.c | 19 +++ gcc/testsuite/gcc.target/aarch64/auto-init-5.c | 19 +++ gcc/testsuite/gcc.target/aarch64/auto-init-6.c | 18 +++ gcc/testsuite/gcc.target/aarch64/auto-init-7.c | 32 +++++ gcc/testsuite/gcc.target/aarch64/auto-init-8.c | 32 +++++ .../gcc.target/aarch64/auto-init-padding-1.c | 17 +++ .../gcc.target/aarch64/auto-init-padding-10.c | 22 +++ .../gcc.target/aarch64/auto-init-padding-11.c | 27 ++++ .../gcc.target/aarch64/auto-init-padding-12.c | 27 ++++ .../gcc.target/aarch64/auto-init-padding-2.c | 18 +++ .../gcc.target/aarch64/auto-init-padding-3.c | 27 ++++ .../gcc.target/aarch64/auto-init-padding-4.c | 27 ++++ .../gcc.target/aarch64/auto-init-padding-5.c | 22 +++ .../gcc.target/aarch64/auto-init-padding-6.c | 20 +++ .../gcc.target/aarch64/auto-init-padding-7.c | 20 +++ .../gcc.target/aarch64/auto-init-padding-8.c | 22 +++ .../gcc.target/aarch64/auto-init-padding-9.c | 21 +++ gcc/testsuite/gcc.target/i386/auto-init-1.c | 32 +++++ gcc/testsuite/gcc.target/i386/auto-init-2.c | 36 +++++ gcc/testsuite/gcc.target/i386/auto-init-21.c | 14 ++ gcc/testsuite/gcc.target/i386/auto-init-22.c | 14 ++ gcc/testsuite/gcc.target/i386/auto-init-23.c | 13 ++ gcc/testsuite/gcc.target/i386/auto-init-24.c | 13 ++ gcc/testsuite/gcc.target/i386/auto-init-3.c | 17 +++ gcc/testsuite/gcc.target/i386/auto-init-4.c | 20 +++ gcc/testsuite/gcc.target/i386/auto-init-5.c | 20 +++ gcc/testsuite/gcc.target/i386/auto-init-6.c | 19 +++ gcc/testsuite/gcc.target/i386/auto-init-7.c | 33 +++++ gcc/testsuite/gcc.target/i386/auto-init-8.c | 35 +++++ .../gcc.target/i386/auto-init-padding-1.c | 19 +++ .../gcc.target/i386/auto-init-padding-10.c | 21 +++ .../gcc.target/i386/auto-init-padding-11.c | 26 ++++ .../gcc.target/i386/auto-init-padding-12.c | 26 ++++ .../gcc.target/i386/auto-init-padding-2.c | 19 +++ .../gcc.target/i386/auto-init-padding-3.c | 30 ++++ .../gcc.target/i386/auto-init-padding-4.c | 28 ++++ .../gcc.target/i386/auto-init-padding-5.c | 21 +++ .../gcc.target/i386/auto-init-padding-6.c | 22 +++ .../gcc.target/i386/auto-init-padding-7.c | 22 +++ .../gcc.target/i386/auto-init-padding-8.c | 22 +++ .../gcc.target/i386/auto-init-padding-9.c | 22 +++ gcc/tree-cfg.c | 47 ++++++- gcc/tree-sra.c | 124 +++++++++++++++-- gcc/tree-ssa-structalias.c | 3 + gcc/tree-ssa-uninit.c | 48 +++++++ gcc/tree-ssa.c | 40 ++++++ gcc/tree.c | 13 ++ 118 files changed, 2515 insertions(+), 89 deletions(-) create mode 100644 gcc/testsuite/c-c++-common/auto-init-1.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-10.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-11.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-12.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-13.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-14.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-15.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-16.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-2.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-3.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-4.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-5.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-6.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-7.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-8.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-9.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-esra.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-padding-1.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-padding-2.c create mode 100644 gcc/testsuite/c-c++-common/auto-init-padding-3.c create mode 100644 gcc/testsuite/g++.dg/auto-init-uninit-pred-1_a.C create mode 100644 gcc/testsuite/g++.dg/auto-init-uninit-pred-2_a.C create mode 100644 gcc/testsuite/g++.dg/auto-init-uninit-pred-3_a.C create mode 100644 gcc/testsuite/g++.dg/auto-init-uninit-pred-4.C copy gcc/testsuite/gcc.dg/{tree-ssa/sra-12.c => auto-init-sra-1.c} (75%) copy gcc/testsuite/gcc.dg/{tree-ssa/sra-12.c => auto-init-sra-2.c} (74%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-1.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-12.c copy gcc/testsuite/gcc.dg/{uninit-13.c => auto-init-uninit-13.c} (67%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-14.c copy gcc/testsuite/gcc.dg/{uninit-15.c => auto-init-uninit-15.c} (54%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-16.c copy gcc/testsuite/gcc.dg/{uninit-17.c => auto-init-uninit-17.c} (75%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-18.c copy gcc/testsuite/gcc.dg/{uninit-19.c => auto-init-uninit-19.c} (90%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-2.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-20.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-21.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-22.c copy gcc/testsuite/gcc.dg/{uninit-23.c => auto-init-uninit-23.c} (83%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-24.c copy gcc/testsuite/gcc.dg/{uninit-25.c => auto-init-uninit-25.c} (87%) copy gcc/testsuite/gcc.dg/{uninit-26.c => auto-init-uninit-26.c} (88%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-3.c copy gcc/testsuite/gcc.dg/{uninit-34.c => auto-init-uninit-34.c} (83%) copy gcc/testsuite/gcc.dg/{uninit-36.c => auto-init-uninit-36.c} (98%) copy gcc/testsuite/gcc.dg/{uninit-37.c => auto-init-uninit-37.c} (85%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-4.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-5.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-6.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-8.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-9.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-A.c copy gcc/testsuite/gcc.dg/{uninit-B.c => auto-init-uninit-B.c} (58%) create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-C.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-H.c create mode 100644 gcc/testsuite/gcc.dg/auto-init-uninit-I.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-5.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-6.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-7.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-8.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-10.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-11.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-12.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-2.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-4.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-5.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-6.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-7.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-8.c create mode 100644 gcc/testsuite/gcc.target/aarch64/auto-init-padding-9.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-1.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-2.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-21.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-22.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-23.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-24.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-3.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-4.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-5.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-6.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-7.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-8.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-1.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-10.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-11.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-12.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-2.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-3.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-4.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-5.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-6.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-7.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-8.c create mode 100644 gcc/testsuite/gcc.target/i386/auto-init-padding-9.c