[gcc/devel/modula-2] Merge branch 'master' into devel/modula-2.
Gaius Mulley
gaius@gcc.gnu.org
Sun Dec 19 01:19:04 GMT 2021
https://gcc.gnu.org/g:c9afa63c3b00e843a703ae959000133a12fc4fcd
commit c9afa63c3b00e843a703ae959000133a12fc4fcd
Merge: fd948137c55 ca8c0408bef
Author: Gaius Mulley <gaius.mulley@southwales.ac.uk>
Date: Sun Dec 19 01:03:26 2021 +0000
Merge branch 'master' into devel/modula-2.
Diff:
ChangeLog | 65 +
MAINTAINERS | 1 +
Makefile.in | 63 +-
Makefile.tpl | 63 +-
config.sub | 81 +-
config/ChangeLog | 15 +
config/gcc-plugin.m4 | 5 +
configure | 100 +-
configure.ac | 65 +
contrib/ChangeLog | 4 +
contrib/analyze_brprob_spec.py | 1 +
gcc/ChangeLog | 1200 ++
gcc/DATESTAMP | 2 +-
gcc/Makefile.in | 1 -
gcc/ada/ChangeLog | 6 +
gcc/analyzer/ChangeLog | 4 +
gcc/analyzer/engine.cc | 2 +-
gcc/attribs.c | 44 +-
gcc/attribs.h | 2 +
gcc/builtins.c | 26 +-
gcc/builtins.def | 1 +
gcc/c-family/ChangeLog | 25 +
gcc/c-family/c-opts.c | 6 +-
gcc/c-family/c-pragma.c | 2 +-
gcc/c-family/known-headers.cc | 2 +-
gcc/c-family/name-hint.h | 12 +-
gcc/c/ChangeLog | 25 +
gcc/c/c-decl.c | 4 +-
gcc/c/c-parser.c | 11 +-
gcc/common.opt | 12 +
gcc/config.gcc | 4 +-
gcc/config/aarch64/aarch64-arches.def | 1 +
gcc/config/aarch64/aarch64-builtins.c | 130 +
gcc/config/aarch64/aarch64-c.c | 2 +
gcc/config/aarch64/aarch64-option-extensions.def | 3 +
gcc/config/aarch64/aarch64-simd.md | 47 +
gcc/config/aarch64/aarch64-sve-builtins.cc | 2 +-
gcc/config/aarch64/aarch64.c | 178 +-
gcc/config/aarch64/aarch64.h | 33 +-
gcc/config/aarch64/aarch64.md | 136 +-
gcc/config/aarch64/aarch64.opt | 12 +
gcc/config/aarch64/arm_acle.h | 37 +
gcc/config/arm/types.md | 1 +
gcc/config/darwin-driver.c | 14 +-
gcc/config/darwin.h | 5 -
gcc/config/gcn/mkoffload.c | 51 +-
gcc/config/i386/i386-builtins.c | 6 +-
gcc/config/i386/i386-expand.c | 118 +-
gcc/config/i386/i386.c | 30 +-
gcc/config/i386/i386.h | 22 +-
gcc/config/i386/i386.md | 58 +-
gcc/config/i386/predicates.md | 13 +
gcc/config/i386/sse.md | 81 +-
gcc/config/i386/t-vxworks | 7 -
gcc/config/nvptx/nvptx-c.c | 8 +-
gcc/config/nvptx/nvptx-modes.def | 2 +
gcc/config/nvptx/nvptx-opts.h | 8 +-
gcc/config/nvptx/nvptx.c | 43 +-
gcc/config/nvptx/nvptx.h | 4 +
gcc/config/nvptx/nvptx.md | 109 +
gcc/config/nvptx/nvptx.opt | 12 +
gcc/config/rs6000/constraints.md | 12 +
gcc/config/rs6000/darwin.h | 8 +-
gcc/config/rs6000/mma.md | 38 +-
gcc/config/rs6000/predicates.md | 85 +
gcc/config/rs6000/rs6000-builtin.def | 3350 ----
...{rs6000-builtin-new.def => rs6000-builtins.def} | 63 +-
gcc/config/rs6000/rs6000-c.c | 2765 +--
gcc/config/rs6000/rs6000-call.c | 17831 ++++---------------
gcc/config/rs6000/rs6000-gen-builtins.c | 128 +-
gcc/config/rs6000/rs6000-internal.h | 2 +-
gcc/config/rs6000/rs6000-overload.def | 2 +-
gcc/config/rs6000/rs6000-protos.h | 35 +-
gcc/config/rs6000/rs6000.c | 846 +-
gcc/config/rs6000/rs6000.h | 58 -
gcc/config/rs6000/rs6000.md | 149 +-
gcc/config/rs6000/rs6000.opt | 12 +
gcc/config/rs6000/t-rs6000 | 7 +-
gcc/config/rs6000/t-vxworks | 6 +-
gcc/config/rs6000/vsx.md | 14 +
gcc/config/rs6000/vxworks.h | 15 +-
gcc/config/t-vxworks | 9 +-
gcc/config/vx-common.h | 7 +-
gcc/config/vxworks.h | 170 +-
gcc/config/vxworks/_yvals.h | 6 +-
gcc/configure | 7 +-
gcc/configure.ac | 2 +-
gcc/cp/ChangeLog | 256 +
gcc/cp/call.c | 39 +-
gcc/cp/class.c | 145 +-
gcc/cp/constraint.cc | 29 +-
gcc/cp/coroutines.cc | 18 +-
gcc/cp/cp-objcp-common.c | 1 +
gcc/cp/cp-tree.def | 5 +
gcc/cp/cp-tree.h | 70 +-
gcc/cp/cxx-pretty-print.c | 4 +-
gcc/cp/decl.c | 80 +-
gcc/cp/decl2.c | 5 +-
gcc/cp/error.c | 2 +-
gcc/cp/friend.c | 26 +-
gcc/cp/lex.c | 2 +-
gcc/cp/method.c | 12 +-
gcc/cp/module.cc | 2 +
gcc/cp/name-lookup.c | 143 +-
gcc/cp/name-lookup.h | 3 -
gcc/cp/parser.c | 85 +-
gcc/cp/pt.c | 93 +-
gcc/cp/ptree.c | 6 +
gcc/cp/semantics.c | 51 +-
gcc/cp/tree.c | 12 +-
gcc/cp/typeck.c | 115 +-
gcc/cp/typeck2.c | 2 +-
gcc/d/ChangeLog | 45 +
gcc/d/Make-lang.in | 1 +
gcc/d/d-attribs.cc | 6 +-
gcc/d/d-codegen.cc | 6 +-
gcc/d/d-compiler.cc | 4 +-
gcc/d/d-lang.cc | 15 +-
gcc/d/d-port.cc | 2 +
gcc/d/d-target.cc | 30 +-
gcc/d/decl.cc | 5 +-
gcc/d/dmd/MERGE | 2 +-
gcc/d/dmd/VERSION | 2 +-
gcc/d/dmd/access.d | 2 +-
gcc/d/dmd/aggregate.d | 14 +-
gcc/d/dmd/aliasthis.d | 4 +-
gcc/d/dmd/arrayop.d | 79 +-
gcc/d/dmd/astenums.d | 4 +-
gcc/d/dmd/attrib.d | 11 +-
gcc/d/dmd/blockexit.d | 20 +-
gcc/d/dmd/builtin.d | 2 -
gcc/d/dmd/canthrow.d | 2 +-
gcc/d/dmd/clone.d | 8 +-
gcc/d/dmd/common/outbuffer.h | 2 +-
gcc/d/dmd/cond.d | 2 +-
gcc/d/dmd/constfold.d | 186 +-
gcc/d/dmd/cparse.d | 81 +-
gcc/d/dmd/cppmangle.d | 2 +-
gcc/d/dmd/ctfeexpr.d | 405 +-
gcc/d/dmd/dcast.d | 176 +-
gcc/d/dmd/declaration.d | 40 +-
gcc/d/dmd/declaration.h | 9 +-
gcc/d/dmd/dinterpret.d | 636 +-
gcc/d/dmd/dmangle.d | 4 +-
gcc/d/dmd/dstruct.d | 18 +-
gcc/d/dmd/dsymbol.d | 71 +-
gcc/d/dmd/dsymbol.h | 1 +
gcc/d/dmd/dsymbolsem.d | 63 +-
gcc/d/dmd/dtemplate.d | 151 +-
gcc/d/dmd/dtoh.d | 11 +-
gcc/d/dmd/escape.d | 65 +-
gcc/d/dmd/expression.d | 786 +-
gcc/d/dmd/expression.h | 28 +-
gcc/d/dmd/expressionsem.d | 879 +-
gcc/d/dmd/foreachvar.d | 2 +-
gcc/d/dmd/func.d | 9 +-
gcc/d/dmd/globals.d | 2 +-
gcc/d/dmd/hdrgen.d | 195 +-
gcc/d/dmd/iasmgcc.d | 4 +-
gcc/d/dmd/id.d | 3 +
gcc/d/dmd/importc.d | 93 +-
gcc/d/dmd/initsem.d | 69 +-
gcc/d/dmd/lambdacomp.d | 5 +-
gcc/d/dmd/lexer.d | 40 +-
gcc/d/dmd/mtype.d | 16 +-
gcc/d/dmd/nogc.d | 6 +-
gcc/d/dmd/ob.d | 6 +-
gcc/d/dmd/objc.d | 12 +-
gcc/d/dmd/opover.d | 341 +-
gcc/d/dmd/optimize.d | 1568 +-
gcc/d/dmd/parse.d | 361 +-
gcc/d/dmd/printast.d | 34 +-
gcc/d/dmd/root/dcompat.h | 3 +
gcc/d/dmd/root/file.d | 18 +-
gcc/d/dmd/root/optional.d | 86 +
gcc/d/dmd/root/optional.h | 42 +
gcc/d/dmd/safe.d | 4 +-
gcc/d/dmd/semantic2.d | 18 +-
gcc/d/dmd/semantic3.d | 16 +-
gcc/d/dmd/sideeffect.d | 84 +-
gcc/d/dmd/statementsem.d | 985 +-
gcc/d/dmd/staticcond.d | 51 +-
gcc/d/dmd/target.d | 7 +-
gcc/d/dmd/target.h | 5 +-
gcc/d/dmd/templateparamsem.d | 6 +-
gcc/d/dmd/tokens.d | 232 +-
gcc/d/dmd/tokens.h | 602 +-
gcc/d/dmd/traits.d | 41 +-
gcc/d/dmd/typesem.d | 157 +-
gcc/d/expr.cc | 259 +-
gcc/d/gdc.texi | 11 +-
gcc/d/intrinsics.cc | 2 +-
gcc/d/lang.opt | 8 +-
gcc/d/runtime.def | 7 -
gcc/d/toir.cc | 3 +-
gcc/d/types.cc | 2 +-
gcc/doc/extend.texi | 20 +-
gcc/doc/invoke.texi | 38 +-
gcc/doc/md.texi | 8 +
gcc/dwarf2cfi.c | 58 +-
gcc/fortran/ChangeLog | 48 +
gcc/fortran/check.c | 35 +-
gcc/fortran/expr.c | 9 +-
gcc/fortran/frontend-passes.c | 19 +-
gcc/fortran/openmp.c | 81 +-
gcc/fortran/resolve.c | 3 +-
gcc/fortran/simplify.c | 10 +
gcc/fortran/trans-openmp.c | 211 +-
gcc/gcc.c | 25 +-
gcc/gimple-fold.c | 11 +-
gcc/gimple-ssa-warn-access.cc | 4 +
gcc/ginclude/stddef.h | 9 +
gcc/ipa-fnsummary.c | 2 +-
gcc/ipa-inline.c | 72 +-
gcc/ipa-modref-tree.c | 14 +-
gcc/ipa-modref-tree.h | 28 +-
gcc/ipa-modref.c | 191 +-
gcc/ipa-profile.c | 12 -
gcc/ipa-pure-const.c | 22 +
gcc/ira-costs.c | 22 +-
gcc/jit/ChangeLog | 87 +
gcc/jit/docs/topics/compatibility.rst | 18 +
gcc/jit/docs/topics/expressions.rst | 231 +
gcc/jit/jit-builtins.c | 10 +-
gcc/jit/jit-common.h | 9 +
gcc/jit/jit-playback.c | 224 +-
gcc/jit/jit-playback.h | 32 +-
gcc/jit/jit-recording.c | 532 +-
gcc/jit/jit-recording.h | 124 +-
gcc/jit/libgccjit++.h | 90 +
gcc/jit/libgccjit.c | 436 +-
gcc/jit/libgccjit.h | 188 +
gcc/jit/libgccjit.map | 17 +
gcc/lto-wrapper.c | 7 +-
gcc/machmode.h | 2 +-
gcc/optc-save-gen.awk | 2 +-
gcc/opts.c | 10 +
gcc/params.opt | 8 +
gcc/pointer-query.cc | 33 +-
gcc/poly-int.h | 2 +-
gcc/ree.c | 35 +-
gcc/regrename.c | 5 +
gcc/selftest-run-tests.c | 1 -
gcc/selftest.h | 1 -
gcc/symtab.c | 2 +-
gcc/system.h | 8 +-
gcc/testsuite/ChangeLog | 538 +
gcc/testsuite/c-c++-common/Wno-attributes-6.c | 16 +
gcc/testsuite/g++.dg/abi/macro0.C | 2 +-
gcc/testsuite/g++.dg/abi/no_unique_address6.C | 23 +
gcc/testsuite/g++.dg/abi/nsdmi-aggr1.C | 39 +
gcc/testsuite/g++.dg/abi/nsdmi-aggr1a.C | 35 +
gcc/testsuite/g++.dg/concepts/diagnostic18.C | 4 +-
gcc/testsuite/g++.dg/coroutines/pr100127.C | 65 +
gcc/testsuite/g++.dg/coroutines/pr100772-a.C | 77 +
gcc/testsuite/g++.dg/coroutines/pr100772-b.C | 93 +
gcc/testsuite/g++.dg/coroutines/pr96517.C | 29 +
gcc/testsuite/g++.dg/cpp0x/noexcept71.C | 31 +
gcc/testsuite/g++.dg/cpp1y/decltype-auto5.C | 35 +
gcc/testsuite/g++.dg/cpp23/auto-fncast10.C | 18 +
gcc/testsuite/g++.dg/cpp23/auto-fncast11.C | 19 +
gcc/testsuite/g++.dg/diagnostic/redeclaration-2.C | 19 +
.../g++.dg/ext/builtin-dynamic-object-size1.C | 5 +
.../g++.dg/ext/builtin-dynamic-object-size2.C | 5 +
gcc/testsuite/g++.dg/gomp/pr103704.C | 19 +
gcc/testsuite/g++.dg/lookup/operator-3-ops.h | 53 +
gcc/testsuite/g++.dg/lookup/operator-3.C | 56 +-
gcc/testsuite/g++.dg/lookup/operator-3a.C | 61 +
gcc/testsuite/g++.dg/lookup/operator-4.C | 74 +
gcc/testsuite/g++.dg/lookup/operator-4a.C | 76 +
gcc/testsuite/g++.dg/lookup/operator-5.C | 74 +
gcc/testsuite/g++.dg/lookup/operator-5a.C | 76 +
gcc/testsuite/g++.dg/lookup/operator-6.C | 59 +
gcc/testsuite/g++.dg/lookup/operator-7.C | 27 +
gcc/testsuite/g++.dg/lookup/operator-8.C | 34 +
gcc/testsuite/g++.dg/template/redecl4.C | 2 +-
gcc/testsuite/g++.dg/warn/Wmismatched-tags-9.C | 32 +
gcc/testsuite/g++.dg/warn/Wstringop-overflow-8.C | 10 +
.../g++.target/i386/avx512vl-pr100738-1.C | 8 +
gcc/testsuite/g++.target/i386/pr103696.C | 25 +
gcc/testsuite/gcc.c-torture/compile/pr103513.c | 8 +
gcc/testsuite/gcc.c-torture/compile/pr103682.c | 3 +
gcc/testsuite/gcc.dg/20021029-1.c | 1 +
gcc/testsuite/gcc.dg/Warray-bounds-48.c | 1 +
gcc/testsuite/gcc.dg/Warray-bounds-91.c | 145 +
gcc/testsuite/gcc.dg/Warray-bounds-92.c | 149 +
gcc/testsuite/gcc.dg/Wstringop-overflow-58.c | 22 +-
gcc/testsuite/gcc.dg/Wstringop-overflow-59.c | 18 +-
gcc/testsuite/gcc.dg/Wstringop-overflow-85.c | 153 +
gcc/testsuite/gcc.dg/Wstringop-overflow-86.c | 63 +
gcc/testsuite/gcc.dg/Wstringop-overflow-87.c | 147 +
gcc/testsuite/gcc.dg/analyzer/data-model-1.c | 1 +
gcc/testsuite/gcc.dg/builtin-dynamic-alloc-size.c | 7 +
.../gcc.dg/builtin-dynamic-object-size-1.c | 6 +
.../gcc.dg/builtin-dynamic-object-size-10.c | 9 +
.../gcc.dg/builtin-dynamic-object-size-11.c | 7 +
.../gcc.dg/builtin-dynamic-object-size-12.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-13.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-14.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-15.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-16.c | 6 +
.../gcc.dg/builtin-dynamic-object-size-17.c | 7 +
.../gcc.dg/builtin-dynamic-object-size-18.c | 8 +
.../gcc.dg/builtin-dynamic-object-size-19.c | 104 +
.../gcc.dg/builtin-dynamic-object-size-2.c | 6 +
.../gcc.dg/builtin-dynamic-object-size-3.c | 6 +
.../gcc.dg/builtin-dynamic-object-size-4.c | 6 +
.../gcc.dg/builtin-dynamic-object-size-5.c | 7 +
.../gcc.dg/builtin-dynamic-object-size-6.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-7.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-8.c | 5 +
.../gcc.dg/builtin-dynamic-object-size-9.c | 5 +
gcc/testsuite/gcc.dg/builtin-object-size-1.c | 30 +
gcc/testsuite/gcc.dg/builtin-object-size-16.c | 2 +
gcc/testsuite/gcc.dg/builtin-object-size-17.c | 2 +
gcc/testsuite/gcc.dg/builtin-object-size-2.c | 30 +
gcc/testsuite/gcc.dg/builtin-object-size-3.c | 31 +
gcc/testsuite/gcc.dg/builtin-object-size-4.c | 30 +
gcc/testsuite/gcc.dg/builtin-object-size-5.c | 25 +
gcc/testsuite/gcc.dg/darwin-minversion-link.c | 3 +-
gcc/testsuite/gcc.dg/ipa/pr103601.c | 35 +
gcc/testsuite/gcc.dg/pr100843.c | 8 +
gcc/testsuite/gcc.dg/pr103587.c | 7 +
.../gcc.dg/tree-ssa/builtin-snprintf-warn-6.c | 47 +
gcc/testsuite/gcc.dg/uninit-38.c | 2 +-
gcc/testsuite/gcc.dg/uninit-pr98578.c | 2 +-
gcc/testsuite/gcc.dg/vect/pr103744-1.c | 20 +
gcc/testsuite/gcc.dg/vect/pr103744-2.c | 31 +
gcc/testsuite/gcc.dg/warn-strnlen-no-nul.c | 43 +-
gcc/testsuite/gcc.target/aarch64/acle/ls64_asm.c | 58 +
.../gcc.target/aarch64/acle/ls64_ld64b-2.c | 15 +
.../gcc.target/aarch64/acle/ls64_ld64b-3.c | 15 +
gcc/testsuite/gcc.target/aarch64/acle/ls64_ld64b.c | 15 +
.../gcc.target/aarch64/acle/ls64_ld_st_o0.c | 30 +
.../gcc.target/aarch64/acle/ls64_st64b-2.c | 15 +
gcc/testsuite/gcc.target/aarch64/acle/ls64_st64b.c | 15 +
.../gcc.target/aarch64/acle/ls64_st64bv-2.c | 15 +
.../gcc.target/aarch64/acle/ls64_st64bv-3.c | 15 +
.../gcc.target/aarch64/acle/ls64_st64bv.c | 15 +
.../gcc.target/aarch64/acle/ls64_st64bv0-2.c | 15 +
.../gcc.target/aarch64/acle/ls64_st64bv0-3.c | 15 +
.../gcc.target/aarch64/acle/ls64_st64bv0.c | 15 +
gcc/testsuite/gcc.target/aarch64/mops_1.c | 57 +
gcc/testsuite/gcc.target/aarch64/mops_2.c | 57 +
gcc/testsuite/gcc.target/aarch64/mops_3.c | 85 +
gcc/testsuite/gcc.target/aarch64/pr100518.c | 9 +
gcc/testsuite/gcc.target/aarch64/pr103094.c | 22 +
gcc/testsuite/gcc.target/aarch64/pr103350-1.c | 48 +
gcc/testsuite/gcc.target/aarch64/pr103350-2.c | 53 +
gcc/testsuite/gcc.target/aarch64/pr103523.c | 8 +
gcc/testsuite/gcc.target/aarch64/pr103741.c | 26 +
.../gcc.target/aarch64/pragma_cpp_predefs_2.c | 14 +
gcc/testsuite/gcc.target/i386/avx2-psraq-1.c | 2 +-
gcc/testsuite/gcc.target/i386/m128-check.h | 8 +-
gcc/testsuite/gcc.target/i386/pr101796-1.c | 20 +
gcc/testsuite/gcc.target/i386/pr102812.c | 1 -
gcc/testsuite/gcc.target/i386/pr103611-1.c | 30 +
gcc/testsuite/gcc.target/i386/pr103611-2.c | 43 +
gcc/testsuite/gcc.target/i386/pr32803.c | 10 +
gcc/testsuite/gcc.target/i386/pr99531.c | 7 +
gcc/testsuite/gcc.target/i386/sse2-psraq-1.c | 2 +-
gcc/testsuite/gcc.target/i386/sse4_2-check.h | 1 +
gcc/testsuite/gcc.target/nvptx/float16-1.c | 53 +
gcc/testsuite/gcc.target/nvptx/float16-2.c | 20 +
gcc/testsuite/gcc.target/nvptx/tanh-1.c | 9 +
gcc/testsuite/gcc.target/powerpc/darn-0.c | 2 +-
gcc/testsuite/gcc.target/powerpc/darn-1.c | 5 +-
gcc/testsuite/gcc.target/powerpc/darn-2.c | 5 +-
gcc/testsuite/gcc.target/powerpc/darn-3.c | 2 +-
.../gcc.target/powerpc/float128-constant.c | 160 +
.../gcc.target/powerpc/fold-vec-insert-float-p9.c | 4 +-
.../gcc.target/powerpc/mma-builtin-10-pair.c | 21 +
.../gcc.target/powerpc/mma-builtin-10-quad.c | 23 +
gcc/testsuite/gcc.target/powerpc/pr103515.c | 30 +
.../gcc.target/powerpc/pr86731-fwrapv-longlong.c | 9 +-
gcc/testsuite/gcc.target/powerpc/pr97142.c | 2 +-
gcc/testsuite/gcc.target/powerpc/pragma-optimize.c | 1 +
.../gcc.target/powerpc/vec-splat-constant-df.c | 60 +
.../gcc.target/powerpc/vec-splat-constant-sf.c | 60 +
.../gcc.target/powerpc/vec-splat-constant-v16qi.c | 27 +
.../gcc.target/powerpc/vec-splat-constant-v2df.c | 64 +
.../gcc.target/powerpc/vec-splat-constant-v2di.c | 50 +
.../gcc.target/powerpc/vec-splat-constant-v4sf.c | 67 +
.../gcc.target/powerpc/vec-splat-constant-v4si.c | 51 +
.../gcc.target/powerpc/vec-splat-constant-v8hi.c | 62 +
.../gcc.target/powerpc/vec-splati-runnable.c | 4 +-
.../gdc.test/compilable/covariant_override.d | 34 +
gcc/testsuite/gdc.test/compilable/cppmangle.d | 371 +-
gcc/testsuite/gdc.test/compilable/cppmangle3.d | 9 +-
gcc/testsuite/gdc.test/compilable/emptygenmain.d | 3 +
gcc/testsuite/gdc.test/compilable/issue21203.d | 210 +
gcc/testsuite/gdc.test/compilable/issue21340.d | 38 +
gcc/testsuite/gdc.test/compilable/noreturn1.d | 12 +
gcc/testsuite/gdc.test/compilable/test10028.d | 7 +
gcc/testsuite/gdc.test/compilable/test17870.d | 26 +
gcc/testsuite/gdc.test/compilable/test19873.d | 37 +
gcc/testsuite/gdc.test/compilable/test20236.d | 22 +
gcc/testsuite/gdc.test/compilable/test20860.d | 16 +
gcc/testsuite/gdc.test/compilable/test21073.d | 16 +
gcc/testsuite/gdc.test/compilable/test21414.d | 13 +
gcc/testsuite/gdc.test/compilable/test21719.d | 21 +
gcc/testsuite/gdc.test/compilable/test22254.d | 19 +
gcc/testsuite/gdc.test/compilable/test22510.d | 18 +
gcc/testsuite/gdc.test/fail_compilation/b15875.d | 2 +-
.../gdc.test/fail_compilation/covariant_override.d | 35 +
.../gdc.test/fail_compilation/fail10964.d | 4 +-
.../gdc.test/fail_compilation/fail10968.d | 38 +-
gcc/testsuite/gdc.test/fail_compilation/fail116.d | 2 +-
.../gdc.test/fail_compilation/fail16997.d | 38 +-
.../gdc.test/fail_compilation/fail20616.d | 26 +
.../gdc.test/fail_compilation/fail22529.d | 14 +
.../gdc.test/fail_compilation/fail22570.d | 21 +
gcc/testsuite/gdc.test/fail_compilation/fail809.d | 12 -
gcc/testsuite/gdc.test/fail_compilation/fob2.d | 2 +-
gcc/testsuite/gdc.test/fail_compilation/ice22516.d | 21 +
.../gdc.test/fail_compilation/imports/test20023b.d | 10 +
gcc/testsuite/gdc.test/fail_compilation/retscope.d | 8 +-
.../gdc.test/fail_compilation/test15191.d | 42 +-
.../gdc.test/fail_compilation/test17977.d | 20 +
.../gdc.test/fail_compilation/test20023.d | 16 +
.../gdc.test/fail_compilation/test22574.d | 12 +
.../gdc.test/fail_compilation/test_switch_error.d | 101 +
.../gdc.test/fail_compilation/traits_initSymbol.d | 63 +
gcc/testsuite/gdc.test/runnable/b19294.d | 163 +
gcc/testsuite/gdc.test/runnable/interpret.d | 23 +
gcc/testsuite/gdc.test/runnable/mars1.d | 2 +-
gcc/testsuite/gdc.test/runnable/test15862.d | 39 +
gcc/testsuite/gdc.test/runnable/test16579.d | 57 +
gcc/testsuite/gdc.test/runnable/test18054.d | 41 +
gcc/testsuite/gdc.test/runnable/test21367.d | 47 +
gcc/testsuite/gdc.test/runnable/test22227.d | 16 +
gcc/testsuite/gdc.test/runnable/testOpApply.d | 31 +-
gcc/testsuite/gdc.test/runnable/testcgelem.d | 2 +-
gcc/testsuite/gdc.test/runnable/testconst.d | 8 +-
.../gdc.test/runnable/traits_initSymbol.d | 119 +
gcc/testsuite/gdc.test/runnable/xtest46.d | 7 +-
gcc/testsuite/gdc.test/runnable_cxx/cppa.d | 59 +-
.../gdc.test/runnable_cxx/extra-files/cpp7925.cpp | 103 +
.../gdc.test/runnable_cxx/extra-files/cppb.cpp | 33 -
gcc/testsuite/gdc.test/runnable_cxx/test7925.d | 151 +
gcc/testsuite/gfortran.dg/date_and_time_1.f90 | 35 +
gcc/testsuite/gfortran.dg/do_check_18.f90 | 27 +
gcc/testsuite/gfortran.dg/do_check_19.f90 | 21 +
.../goacc/privatization-1-compute-loop.f90 | 1 -
.../gfortran.dg/goacc/privatization-1-compute.f90 | 1 -
.../goacc/privatization-1-routine_gang-loop.f90 | 1 -
.../goacc/privatization-1-routine_gang.f90 | 1 -
gcc/testsuite/gfortran.dg/gomp/atomic-21.f90 | 93 +
gcc/testsuite/gfortran.dg/gomp/atomic-25.f90 | 18 +-
gcc/testsuite/gfortran.dg/gomp/atomic-26.f90 | 26 +-
gcc/testsuite/gfortran.dg/illegal_boz_arg_2.f90 | 6 +
gcc/testsuite/gfortran.dg/intrinsic_pack_6.f90 | 57 +
gcc/testsuite/gfortran.dg/iostat_5.f90 | 16 +
gcc/testsuite/gfortran.dg/move_alloc_8.f90 | 4 +-
gcc/testsuite/gfortran.dg/pointer_intent_9.f90 | 33 +
gcc/testsuite/gfortran.dg/pr103606.f90 | 12 +
gcc/testsuite/gfortran.dg/pr91497.f90 | 23 +-
gcc/testsuite/gfortran.dg/pr91497_2.f90 | 124 +
gcc/testsuite/jit.dg/all-non-failing-tests.h | 46 +
gcc/testsuite/jit.dg/jit.exp | 33 +
gcc/testsuite/jit.dg/test-builtin-types.c | 43 +
gcc/testsuite/jit.dg/test-error-bad-assignment.c | 78 +
.../jit.dg/test-error-ctor-array-wrong-obj.c | 54 +
.../jit.dg/test-error-ctor-struct-too-big.c | 71 +
.../test-error-ctor-struct-wrong-field-obj.c | 86 +
.../jit.dg/test-error-ctor-struct-wrong-type.c | 76 +
.../jit.dg/test-error-ctor-struct-wrong-type2.c | 77 +
.../test-error-ctor-union-wrong-field-name.c | 76 +
.../jit.dg/test-error-global-already-init.c | 46 +
.../jit.dg/test-error-global-common-section.c | 54 +
.../test-error-global-init-too-small-array.c | 65 +
.../jit.dg/test-error-global-lvalue-init.c | 60 +
.../jit.dg/test-error-global-nonconst-init.c | 80 +
gcc/testsuite/jit.dg/test-fuzzer.c | 8 +-
gcc/testsuite/jit.dg/test-global-init-rvalue.c | 1643 ++
gcc/testsuite/jit.dg/test-link-section-assembler.c | 37 +
gcc/testsuite/jit.dg/test-local-init-rvalue.c | 707 +
gcc/testsuite/jit.dg/test-pr103562.c | 62 +
gcc/testsuite/jit.dg/test-tls.c | 64 +
gcc/testsuite/lib/fortran-torture.exp | 8 +-
gcc/testsuite/lib/gcc-defs.exp | 4 +-
gcc/testsuite/lib/gcc-dg.exp | 6 +-
gcc/testsuite/lib/go-torture.exp | 8 +-
gcc/testsuite/obj-c++.dg/cxx-ivars-3.mm | 2 +-
gcc/testsuite/obj-c++.dg/objc-gc-3.mm | 2 +-
gcc/testsuite/objc.dg/objc-gc-4.m | 2 +-
gcc/tree-core.h | 4 +-
gcc/tree-object-size.c | 521 +-
gcc/tree-object-size.h | 12 +-
gcc/tree-ssa-alias.c | 36 +
gcc/tree-ssa-ccp.c | 4 +-
gcc/tree-vect-loop.c | 13 +-
gcc/tree-vect-stmts.c | 10 +-
gcc/ubsan.c | 5 +-
gcc/unique-ptr-tests.cc | 236 -
gcc/wide-int.h | 4 +-
include/ChangeLog | 8 +
include/gomp-constants.h | 2 +-
include/unique-ptr.h | 405 -
libcc1/ChangeLog | 13 +
libcc1/configure | 5 +
libcc1/libcp1plugin.cc | 4 +-
libgcc/ChangeLog | 77 +
libgcc/config.host | 17 +-
libgcc/config/rs6000/t-darwin-ehs | 4 +-
libgcc/config/rs6000/t-vxworks | 1 +
libgcc/config/t-darwin | 2 +-
libgcc/config/t-darwin-ehs | 3 +
libgcc/config/t-slibgcc-darwin | 8 +-
libgcc/config/t-vxcrtstuffS | 9 +
libgcc/config/t-vxworks | 11 +-
libgcc/config/t-vxworks7 | 22 -
libgcc/config/vxcrtstuff.c | 88 +-
libgfortran/ChangeLog | 26 +
libgfortran/intrinsics/date_and_time.c | 24 +-
libgfortran/intrinsics/pack_generic.c | 9 +
libgfortran/intrinsics/time_1.h | 14 +-
libgfortran/io/file_pos.c | 2 +-
libgfortran/io/format.c | 9 +-
libgfortran/io/list_read.c | 19 +-
libgfortran/io/read.c | 9 +-
libgfortran/io/write.c | 7 +-
libgfortran/libgfortran.h | 15 +
libgfortran/runtime/environ.c | 5 +-
libgomp/ChangeLog | 18 +
libgomp/libgomp.texi | 3 +-
libgomp/plugin/plugin-gcn.c | 39 +-
libgomp/testsuite/libgomp.fortran/atomic-19.f90 | 313 +
libiberty/ChangeLog | 23 +
libphobos/ChangeLog | 22 +
libphobos/configure | 2 +-
libphobos/configure.ac | 2 +-
libphobos/libdruntime/MERGE | 2 +-
libphobos/libdruntime/Makefile.am | 5 +-
libphobos/libdruntime/Makefile.in | 12 +-
libphobos/libdruntime/core/demangle.d | 8 +-
.../libdruntime/core/internal/array/construction.d | 43 +-
libphobos/libdruntime/core/internal/convert.d | 8 +-
libphobos/libdruntime/core/internal/lifetime.d | 49 +-
libphobos/libdruntime/core/internal/string.d | 2 +-
libphobos/libdruntime/core/internal/traits.d | 40 +-
libphobos/libdruntime/core/internal/utf.d | 10 +-
libphobos/libdruntime/core/lifetime.d | 184 +-
libphobos/libdruntime/core/memory.d | 21 +-
libphobos/libdruntime/core/runtime.d | 2 +-
libphobos/libdruntime/core/stdc/stdlib.d | 10 +
libphobos/libdruntime/core/stdc/string.d | 28 +-
libphobos/libdruntime/core/stdc/wchar_.d | 26 +-
libphobos/libdruntime/core/stdcpp/exception.d | 2 +
libphobos/libdruntime/core/sync/mutex.d | 4 +-
libphobos/libdruntime/core/sys/bionic/string.d | 2 +-
libphobos/libdruntime/core/sys/darwin/mach/nlist.d | 2 +-
libphobos/libdruntime/core/sys/darwin/string.d | 2 +-
.../libdruntime/core/sys/dragonflybsd/string.d | 2 +-
libphobos/libdruntime/core/sys/freebsd/string.d | 2 +-
libphobos/libdruntime/core/sys/linux/string.d | 2 +-
libphobos/libdruntime/core/sys/linux/syscalls.d | 745 -
libphobos/libdruntime/core/sys/linux/unistd.d | 26 +-
libphobos/libdruntime/core/sys/netbsd/string.d | 2 +-
libphobos/libdruntime/core/sys/openbsd/execinfo.d | 139 +-
libphobos/libdruntime/core/sys/openbsd/string.d | 2 +-
libphobos/libdruntime/core/sys/posix/signal.d | 26 +-
libphobos/libdruntime/core/sys/posix/string.d | 8 +-
libphobos/libdruntime/core/sys/posix/sys/socket.d | 2 +-
libphobos/libdruntime/core/sys/posix/sys/stat.d | 46 +-
libphobos/libdruntime/core/sys/solaris/sys/elf.d | 5 +-
.../libdruntime/core/sys/solaris/sys/elf_386.d | 3 -
.../libdruntime/core/sys/solaris/sys/elf_SPARC.d | 3 -
libphobos/libdruntime/core/sys/windows/dbghelp.d | 8 +-
libphobos/libdruntime/core/thread/osthread.d | 5 +-
libphobos/libdruntime/core/thread/threadbase.d | 5 +-
libphobos/libdruntime/object.d | 8 +-
libphobos/libdruntime/rt/aaA.d | 4 +-
libphobos/libdruntime/rt/cast_.d | 2 +-
libphobos/libdruntime/rt/config.d | 3 +
libphobos/libdruntime/rt/lifetime.d | 4 +-
libphobos/libdruntime/rt/monitor_.d | 38 +-
libphobos/src/MERGE | 2 +-
libphobos/src/std/algorithm/iteration.d | 52 +-
libphobos/src/std/algorithm/mutation.d | 29 +-
libphobos/src/std/algorithm/searching.d | 12 +-
libphobos/src/std/algorithm/sorting.d | 26 +-
libphobos/src/std/concurrency.d | 32 +-
libphobos/src/std/container/dlist.d | 6 +
libphobos/src/std/container/rbtree.d | 2 +-
libphobos/src/std/datetime/interval.d | 6 +-
libphobos/src/std/datetime/systime.d | 27 +-
libphobos/src/std/datetime/timezone.d | 77 +-
libphobos/src/std/file.d | 28 +-
libphobos/src/std/internal/cstring.d | 2 +-
libphobos/src/std/internal/math/biguintcore.d | 12 +-
libphobos/src/std/json.d | 10 +-
libphobos/src/std/net/isemail.d | 2 +-
libphobos/src/std/parallelism.d | 6 +-
libphobos/src/std/process.d | 4 +-
libphobos/src/std/random.d | 12 +-
libphobos/src/std/regex/package.d | 16 +-
libphobos/src/std/stdio.d | 2 +-
libphobos/src/std/traits.d | 5 +
libphobos/src/std/typecons.d | 35 +-
libphobos/src/std/uni/package.d | 4 +-
libphobos/src/std/utf.d | 12 +-
libphobos/testsuite/libphobos.config/config.exp | 1 +
libphobos/testsuite/libphobos.config/test22523.d | 11 +
libphobos/testsuite/libphobos.traits/all_satisfy.d | 24 +
libphobos/testsuite/libphobos.traits/traits.exp | 27 +
libstdc++-v3/ChangeLog | 287 +
libstdc++-v3/acinclude.m4 | 2 +-
libstdc++-v3/config.h.in | 6 +-
libstdc++-v3/config/abi/pre/gnu.ver | 27 +-
libstdc++-v3/config/allocator/new_allocator_base.h | 11 +-
libstdc++-v3/config/io/basic_file_stdio.cc | 48 +-
.../config/locale/dragonfly/time_members.cc | 4 +-
libstdc++-v3/config/locale/generic/time_members.cc | 4 +-
libstdc++-v3/config/locale/gnu/time_members.cc | 4 +-
libstdc++-v3/configure | 2 +-
libstdc++-v3/doc/html/manual/api.html | 8 +
libstdc++-v3/doc/html/manual/memory.html | 6 +-
libstdc++-v3/doc/xml/manual/allocator.xml | 6 +-
libstdc++-v3/doc/xml/manual/evolution.xml | 10 +
libstdc++-v3/include/Makefile.am | 1 +
libstdc++-v3/include/Makefile.in | 1 +
libstdc++-v3/include/bits/atomic_base.h | 2 +-
libstdc++-v3/include/bits/atomic_timed_wait.h | 4 +
libstdc++-v3/include/bits/basic_string.h | 8 +-
libstdc++-v3/include/bits/char_traits.h | 7 +
libstdc++-v3/include/bits/cow_string.h | 9 +-
libstdc++-v3/include/bits/ios_base.h | 9 +
libstdc++-v3/include/bits/locale_facets_nonio.h | 6 +
libstdc++-v3/include/bits/locale_facets_nonio.tcc | 265 +-
libstdc++-v3/include/bits/new_allocator.h | 223 +
libstdc++-v3/include/bits/ranges_base.h | 4 +
libstdc++-v3/include/bits/regex.h | 20 +-
libstdc++-v3/include/bits/regex.tcc | 9 +-
libstdc++-v3/include/bits/regex_compiler.h | 40 +-
libstdc++-v3/include/bits/regex_compiler.tcc | 122 +-
libstdc++-v3/include/bits/regex_constants.h | 148 +-
libstdc++-v3/include/bits/regex_error.h | 2 +-
libstdc++-v3/include/bits/std_mutex.h | 6 +-
libstdc++-v3/include/bits/stl_iterator.h | 82 +-
libstdc++-v3/include/bits/stl_map.h | 49 +-
libstdc++-v3/include/bits/stl_pair.h | 9 +
libstdc++-v3/include/bits/uses_allocator_args.h | 6 -
libstdc++-v3/include/debug/safe_iterator.h | 17 +
libstdc++-v3/include/experimental/memory_resource | 4 +-
libstdc++-v3/include/ext/new_allocator.h | 157 +-
libstdc++-v3/include/ext/pointer.h | 50 +-
libstdc++-v3/include/std/atomic | 8 +-
libstdc++-v3/include/std/condition_variable | 2 +-
libstdc++-v3/include/std/version | 1 +
libstdc++-v3/libsupc++/exception_ptr.h | 41 +-
libstdc++-v3/scripts/make_exports.pl | 6 +-
libstdc++-v3/src/c++11/compatibility-condvar.cc | 31 +
libstdc++-v3/src/c++11/condition_variable.cc | 2 +-
libstdc++-v3/testsuite/17_intro/names.cc | 1 +
.../testsuite/18_support/exception_ptr/103630.cc | 39 +
.../testsuite/18_support/exception_ptr/64241.cc | 2 +-
libstdc++-v3/testsuite/20_util/allocator/64135.cc | 45 +
.../20_util/scoped_allocator/69293_neg.cc | 4 -
.../testsuite/22_locale/time_get/get/char/3.cc | 356 +
.../testsuite/22_locale/time_get/get/char/71367.cc | 67 +
.../testsuite/22_locale/time_get/get/char/71557.cc | 96 +
.../testsuite/22_locale/time_get/get/wchar_t/3.cc | 356 +
.../22_locale/time_get/get/wchar_t/71367.cc | 67 +
.../22_locale/time_get/get/wchar_t/71557.cc | 96 +
.../22_locale/time_get/get_date/char/12791.cc | 4 +-
.../22_locale/time_get/get_date/wchar_t/12791.cc | 4 +-
.../22_locale/time_get/get_date/wchar_t/4.cc | 9 +-
.../22_locale/time_get/get_time/char/2.cc | 33 +-
.../22_locale/time_get/get_time/char/5.cc | 2 +-
.../22_locale/time_get/get_time/wchar_t/2.cc | 33 +-
.../22_locale/time_get/get_time/wchar_t/5.cc | 2 +-
.../23_containers/map/modifiers/emplace/92300.cc | 36 +
.../23_containers/map/modifiers/insert/92300.cc | 38 +
.../24_iterators/normal_iterator/to_address.cc | 17 +-
.../27_io/basic_ofstream/open/char/noreplace.cc | 29 +
.../27_io/basic_ofstream/open/wchar_t/noreplace.cc | 29 +
.../algorithms/regex_match/cstring_bracket_01.cc | 62 +-
.../algorithms/regex_replace/char/103664.cc | 11 +
.../testsuite/28_regex/constants/constexpr.cc | 2 -
.../testsuite/28_regex/constants/error_type.cc | 2 +-
.../28_regex/constants/match_flag_type.cc | 25 +-
.../28_regex/constants/syntax_option_type.cc | 26 +-
.../29_atomics/atomic/wait_notify/102994.cc | 19 +
.../condition_variable/members/103382.cc | 66 +
libstdc++-v3/testsuite/std/ranges/access/empty.cc | 10 +
libstdc++-v3/testsuite/std/ranges/access/size.cc | 10 +
zlib/ChangeLog | 11 +
688 files changed, 31677 insertions(+), 28871 deletions(-)
diff --cc Makefile.in
index 052ae79e5d1,79c77fccf0f..6cfa733378e
--- a/Makefile.in
+++ b/Makefile.in
@@@ -450,8 -446,50 +450,51 @@@ CXXFLAGS = @CXXFLAGS
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
GOCFLAGS = $(CFLAGS)
GDCFLAGS = $(CFLAGS)
+GM2FLAGS = $(CFLAGS)
+ # Pass additional PGO and LTO compiler options to the PGO build.
+ BUILD_CFLAGS = $(PGO_BUILD_CFLAGS) $(PGO_BUILD_LTO_CFLAGS)
+ override CFLAGS += $(BUILD_CFLAGS)
+ override CXXFLAGS += $(BUILD_CFLAGS)
+
+ # Additional PGO and LTO compiler options to generate profiling data
+ # for the PGO build.
+ PGO_BUILD_GEN_FLAGS_TO_PASS = \
+ PGO_BUILD_CFLAGS="@PGO_BUILD_GEN_CFLAGS@" \
+ PGO_BUILD_LTO_CFLAGS="@PGO_BUILD_LTO_CFLAGS@"
+
+ # NB: Filter out any compiler options which may fail PGO training runs.
+ PGO_BUILD_TRAINING_CFLAGS:= \
+ $(filter-out -Werror=%,$(CFLAGS))
+ PGO_BUILD_TRAINING_CXXFLAGS:=\
+ $(filter-out -Werror=%,$(CXXFLAGS))
+ PGO_BUILD_TRAINING_CFLAGS:= \
+ $(filter-out -Wall,$(PGO_BUILD_TRAINING_CFLAGS))
+ PGO_BUILD_TRAINING_CXXFLAGS:= \
+ $(filter-out -Wall,$(PGO_BUILD_TRAINING_CXXFLAGS))
+ PGO_BUILD_TRAINING_CFLAGS:= \
+ $(filter-out -specs=%,$(PGO_BUILD_TRAINING_CFLAGS))
+ PGO_BUILD_TRAINING_CXXFLAGS:= \
+ $(filter-out -specs=%,$(PGO_BUILD_TRAINING_CXXFLAGS))
+ PGO_BUILD_TRAINING_FLAGS_TO_PASS = \
+ PGO_BUILD_TRAINING=yes \
+ CFLAGS_FOR_TARGET="$(PGO_BUILD_TRAINING_CFLAGS)" \
+ CXXFLAGS_FOR_TARGET="$(PGO_BUILD_TRAINING_CXXFLAGS)"
+
+ # Ignore "make check" errors in PGO training runs.
+ PGO_BUILD_TRAINING_MFLAGS = -i
+
+ # Additional PGO and LTO compiler options to use profiling data for the
+ # PGO build.
+ PGO_BUILD_USE_FLAGS_TO_PASS = \
+ PGO_BUILD_CFLAGS="@PGO_BUILD_USE_CFLAGS@" \
+ PGO_BUILD_LTO_CFLAGS="@PGO_BUILD_LTO_CFLAGS@"
+
+ # PGO training targets for the PGO build. FIXME: Add gold tests to
+ # training.
+ PGO-TRAINING-TARGETS = binutils gas gdb ld sim
+ PGO_BUILD_TRAINING = $(addprefix maybe-check-,$(PGO-TRAINING-TARGETS))
+
CREATE_GCOV = create_gcov
TFLAGS =
diff --cc Makefile.tpl
index be3543b3d69,ef58fac2b9a..b5d1a8f6a79
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@@ -453,8 -449,50 +453,51 @@@ CXXFLAGS = @CXXFLAGS
LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
GOCFLAGS = $(CFLAGS)
GDCFLAGS = $(CFLAGS)
+GM2FLAGS = $(CFLAGS)
+ # Pass additional PGO and LTO compiler options to the PGO build.
+ BUILD_CFLAGS = $(PGO_BUILD_CFLAGS) $(PGO_BUILD_LTO_CFLAGS)
+ override CFLAGS += $(BUILD_CFLAGS)
+ override CXXFLAGS += $(BUILD_CFLAGS)
+
+ # Additional PGO and LTO compiler options to generate profiling data
+ # for the PGO build.
+ PGO_BUILD_GEN_FLAGS_TO_PASS = \
+ PGO_BUILD_CFLAGS="@PGO_BUILD_GEN_CFLAGS@" \
+ PGO_BUILD_LTO_CFLAGS="@PGO_BUILD_LTO_CFLAGS@"
+
+ # NB: Filter out any compiler options which may fail PGO training runs.
+ PGO_BUILD_TRAINING_CFLAGS:= \
+ $(filter-out -Werror=%,$(CFLAGS))
+ PGO_BUILD_TRAINING_CXXFLAGS:=\
+ $(filter-out -Werror=%,$(CXXFLAGS))
+ PGO_BUILD_TRAINING_CFLAGS:= \
+ $(filter-out -Wall,$(PGO_BUILD_TRAINING_CFLAGS))
+ PGO_BUILD_TRAINING_CXXFLAGS:= \
+ $(filter-out -Wall,$(PGO_BUILD_TRAINING_CXXFLAGS))
+ PGO_BUILD_TRAINING_CFLAGS:= \
+ $(filter-out -specs=%,$(PGO_BUILD_TRAINING_CFLAGS))
+ PGO_BUILD_TRAINING_CXXFLAGS:= \
+ $(filter-out -specs=%,$(PGO_BUILD_TRAINING_CXXFLAGS))
+ PGO_BUILD_TRAINING_FLAGS_TO_PASS = \
+ PGO_BUILD_TRAINING=yes \
+ CFLAGS_FOR_TARGET="$(PGO_BUILD_TRAINING_CFLAGS)" \
+ CXXFLAGS_FOR_TARGET="$(PGO_BUILD_TRAINING_CXXFLAGS)"
+
+ # Ignore "make check" errors in PGO training runs.
+ PGO_BUILD_TRAINING_MFLAGS = -i
+
+ # Additional PGO and LTO compiler options to use profiling data for the
+ # PGO build.
+ PGO_BUILD_USE_FLAGS_TO_PASS = \
+ PGO_BUILD_CFLAGS="@PGO_BUILD_USE_CFLAGS@" \
+ PGO_BUILD_LTO_CFLAGS="@PGO_BUILD_LTO_CFLAGS@"
+
+ # PGO training targets for the PGO build. FIXME: Add gold tests to
+ # training.
+ PGO-TRAINING-TARGETS = binutils gas gdb ld sim
+ PGO_BUILD_TRAINING = $(addprefix maybe-check-,$(PGO-TRAINING-TARGETS))
+
CREATE_GCOV = create_gcov
TFLAGS =
More information about the Gcc-cvs
mailing list