This is an automated email from the git hooks/post-receive script.
tcwg-buildslave pushed a change to branch linaro-local/ci/tcwg_cross/gnu-master-aarch64-build_cross in repository toolchain/ci/gcc.
from 1805dbc58ba Adjust regex pattern to expect an additional attribute and [...] adds ce2d9549f2b Revert: "Fix -ffast-math flags handling inconsistencies" adds 92a30040c8d c++: ICE with int{} in template. [PR97899] adds f2a5cdff045 Add a note. adds 211d68dda14 PR c/97955 - ICE in build_array_type_1 on invalid redeclara [...] adds a3313a2214a libstdc++: Disable failing tests [PR 97936] adds d3e763efcb8 changelog: fix parsing of a revert commit adds 1e2c9a27610 Daily bump. adds a7285c86596 middle-end: Reject flexible array members in __builtin_clea [...] adds ad9cbcee543 libstdc++: Fix handling of futex wake [PR 97936] adds a5ccfd04605 libstdc++: Fix silly typos [PR 97936] adds bc771e6c3a2 arm: Add test that was missing from old commit [PR91816] adds 97a26d19d23 [Ada] Minor refine type of a counter variable adds 90cb252f5f7 [Ada] Fix style and typos in code for expanding attribute r [...] adds 868268a8ecd [Ada] Reuse Is_Named_Number where possible adds 193040a071b [Ada] Fix crash on invalid `pragma Profile` adds 6b0c5c72270 [Ada] Remove repeated calls to Attribute_Name adds cf4737dcec1 [Ada] Unrecursify Set_Digit/Set_Image_Unsigned procedure adds bbf14e1350d [Ada] Allow debugging finalization-related expanded code adds 6d88dbdc5e3 [Ada] Add support for 128-bit integer types to GNAT.Random_Numbers adds a8c229e14c4 [Ada] Fix internal compilation error on circular type in SP [...] adds 9d41d78b05f [Ada] Adjust support for 128-bit integer types in System.Ra [...] adds a6fecb06710 [Ada] Minimize side-effect removal in GNATprove mode adds 4d617c3f2ad [Ada] Reinstate utime based code for vx6 in __gnat_copy_attribs adds e480bca2400 [Ada] Crash on right shift operator for signed integers adds 595c9aebadb [Ada] Remove hyphens in two cases of "side-effect" used as a noun adds 2d80df42331 [Ada] Remove dead and duplicated diagnostics for generic ac [...] adds eb0d08adb60 [Ada] Don't constant-fold renamed qualified expressions adds a24033ec70c [Ada] Consistently use explicit Entity_Id type instead of alias adds 49c4dd7a229 [Ada] Simplify Is_Standard_xxx_Type routines with membership tests adds ad26cae122e [Ada] Simplify Ekind tests with wrappers and membership tests adds a79039c0ebc [Ada] Fix copy-paste mistake in diagnostics for aspect Effe [...] adds 28488f5ff5a [Ada] Simplify aspect processing with membership tests adds 6d97121d2fa [Ada] Reuse Is_Named_Number where possible adds 52b9a264dd8 [Ada] Use hardcoded names when converting aspects to pragmas adds 14a16e30cae [Ada] Minor whitespace fix in expansion of attribute Size adds 47c2b77ffb9 [Ada] Document attribute Has_Tagged_Values in GNAT RM adds ea89e1c31ec [Ada] Merge duplicated processing for gnatmake -u and -U switches adds 7a173848847 [Ada] Remove shadowing by a nested subprogram parameter adds 57966b4d2f8 [Ada] Fix couple of minor issues with local exception propagation adds 55fae09dcb8 [Ada] Spurious error on instance with predicated actual adds a46fa6510d2 [Ada] Further optimization with uninitialized aggregates adds 52ce50d6c59 Fix atomic_capture-1.f90 testcase adds fddc7f0080f middle-end/97579 - lower VECTOR_BOOLEAN_TYPE_P VEC_COND_EXPRs adds 45281f120da Free more of CFG adds 049ce9d233e middle-end: __builtin_mul_overflow expansion improvements [ [...] adds 4aff491ffcb compiler: avoid silent truncation for string(1 << 32) adds a4d9837ee4b aarch64: Avoid false dependencies for SVE unary operations adds b13dacdfb31 testsuite: Rename test to avoid typo in its name [PR95862] adds 1ee3d1ef105 libsanitizer: add hwasan. adds 8eb12742e8a libsanitizer: Hwasan reporting check for dladdr failing adds edb07cb95af libsanitizer: Tie the hwasan library into our build system adds 8a769f816f8 libsanitizer: Only build libhwasan when targeting AArch64 adds 170e618ef55 libsanitizer: Add option to bootstrap using HWASAN adds 3bd87832077 libsanitizer: options: Add hwasan flags and argument parsing adds 0854b584bdc libsanitizer: mid-end: Introduce stack variable handling f [...] adds 93a73251486 libsanitizer: Add hwasan pass and associated gimple changes adds a47850552a0 libsanitizer: Add tests adds b85fb3187e4 libsanitizer: Add recently added commit to LOCAL_PATCHES adds 1a8d1f54de3 libstdc++: Fix test failure on AIX adds 9d908b7fc47 libstdc++: Fix missing subsumption in std::iterator_traits [...] adds aec2d684916 PR middle-end/97956 - ICE due to type mismatch in pointer_p [...] adds f76cad692a6 libstdc++: Fix testsuite helper functions [PR 97936] adds 7d2a98a7273 libstdc++: Encapsulate __gthread_cond_t as std::__condvar adds dfc537e554a libstdc++: Remove redundant clock conversions in atomic waits adds 4919ed711c1 Improve abs with overflow implementations adds 0cab70604cf Fix templatized C++ OpenACC 'cache' directive ICEs adds 1049e5408fa Add 'g++.dg/gomp/map-{1,2}.C' adds 94172dc7091 PR fortran/85796 - Floating point exception with implied do adds 5962efe9186 Copy arg_flags in duplication hoooks in ipa-modref adds bb07490abba Add EAF_NODIRECTESCAPE flag adds 15f82d80cfb New ipa-modref testcases adds ca23341b28c Clean up -Wformat-diag warnings (PR bootstrap/97622, PR boo [...] adds 360258daf5d Daily bump. adds a02e304245b [PR97983] LRA: Use the right emit func for putting insn in [...] adds 8f81f43f606 testsuite: Adjust nextafter and skip profile-info-section on AIX. adds 768ce4f0ceb C: Do not drop qualifiers in typeof for _Atomic types. [PR6 [...] adds 32b0abb24b8 i386: Optimize psubusw compared to 0 into pminuw compared t [...] adds 8593037b17d [Ada] Fix casing of "circular instantiation" error adds 1e00c00d8a7 [Ada] Compiler crash on named association in return aggregate adds 3268fb4dace [Ada] Spurious error on formal package with overloaded subprograms adds e3946607a68 [Ada] Correct a typo, plus other minor reformatting adds 96ccfec0296 [Ada] Issue advice for error regarding Old/Loop_Entry on un [...] adds 0dd6aab1951 [Ada] New warning on questionable missing parentheses adds 21d66365ad6 [Ada] Add contracts to Ada.Strings.Maps adds 5f7ee280184 [Ada] Simplify checks for library unit pragmas adds 5af3a22afe8 [Ada] Reuse Is_Access_Object_Type where possible adds adfa6cb8e4c [Ada] Remove extra whitespace in bounded container Read procedures adds b6735a10049 [Ada] Incorrect runtime accessibility check on access discriminant adds 2015a575b77 [Ada] Adjust documentation of Aft_Value and Scale_Value adds ccd05f6c8fd [Ada] Pass base type to Set_Has_Own_Invariants adds 416f9a27265 [Ada] Constraint_Error in Task_Wrapper and -u0 adds a160b4e046d [Ada] Reuse Is_Concurrent_Type when detecting protected or [...] adds 0ea529086e7 [Ada] Memory leak in concatenation with Initialize_Scalars adds 433b2e91f9e [Ada] Remove duplicated calls to Set_Entity adds 81c629f8f12 [Ada] Warn on slices of the form A (subtype) for all objects adds bc0c82e9948 [Ada] Avoid potentially repeated calls to Prefix in Eval_Slice adds 9597d24c7f8 [Ada] Sync wide Ada.String hashing units adds 52424b13d80 [Ada] Crash on task declaration with Restriction_Warning (N [...] adds 4e94b2442d9 [Ada] Improve error message on illegal prefixed procedure call adds c9e2eeb5034 [Ada] Replace warning suppression with assertion adds ebf90d68e94 [Ada] Minor reformatting and a typo fix adds aa83f3d0b7c [Ada] Reuse Is_Generic_Subprogram where possible adds 781fb9a006d [Ada] Add support for .c output file adds 0938e514585 [Ada] Add the remark concerning the use of Image_Ordinary_F [...] adds 8d87bb8f56d [Ada] Add support for 128-bit fixed-point types on 64-bit p [...] adds 678e19545eb [Ada] Ada 2020 AI12-0401 Renaming of qualified expression o [...] adds e3068952d75 [Ada] Ada.Numerics.Big_Numbers.Big_Reals.To_Big_Real looses [...] adds acdf30d66ca i386: Use SDWIM mode iterator for abs and maxmin [PR97873] adds c0c7270cc4e Don't create location wrapper nodes within OpenACC clauses adds 5b3a8fad183 testsuite/98002 - fix gcc.dg/strncmp-2.c adds 776a37f6ac5 Delete dead code in ix86_expand_special_args_builtin adds 39f5e9aded2 match.pd: Avoid ICE with shifts [PR97979] adds a3865661180 gimple-fold: Use DECL_PADDING_P in __builtin_clear_padding new f6702584aa3 rs6000: Set param_vect_partial_vector_usage as 1 for P10 new 127aa17e162 libstdc++: Add new headers to stdc++.h new 2762cb1df68 libstdc++: Fix undefined FILE* operations in test new 55ebb0d6fb0 ada: c++: Get rid of libposix4, librt on Solaris new 2a93fa47853 dwarf: fix language_string for C2X new 715a8bc8d47 i386: Cleanup argument handling in ix86_expand_*_builtin fu [...] new d24a4c8c425 Fix early-debug relocations new 5c197b83e12 tree-optimization/98015 - fix VEC_COND_EXPR lowering condition new c76b3f9e833 tree-optimization/97953 - fix bougs range recorded by EVRP new a3ebc13492f match.pd: Use ranges to optimize some x * y / y to x [PR97997] new 294e72e9acb Fix PR target/96607 new 10ee46adf44 libstdc++: Add "futex" and "gthreads" effective-target keywords new 10522ed1089 libstdc++: Fix some more deadlocks in tests [PR 97936] new 39e837cd750 libstdc++: Allow dejagnu tool_timeout to be overridden new 218cedd5a36 libstdc++: Set dg-timeout-factor for some slow tests new c87cce5a339 libgfortran: Correct FP feature macro checks new beb9afcaf14 libgfortran: Verify the presence of all functions for POSIX [...]
The 17 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: ChangeLog | 5 + config/ChangeLog | 9 + config/bootstrap-hwasan.mk | 12 + configure | 2 +- configure.ac | 2 +- contrib/ChangeLog | 5 + contrib/gcc-changelog/git_commit.py | 27 +- gcc/ChangeLog | 429 ++++++++ gcc/DATESTAMP | 2 +- gcc/ada/ChangeLog | 421 ++++++++ gcc/ada/Makefile.rtl | 49 +- gcc/ada/adaint.c | 17 +- gcc/ada/cstand.adb | 6 + .../gnat_rm/implementation_defined_attributes.rst | 13 + .../implementation_defined_characteristics.rst | 30 +- gcc/ada/doc/gnat_rm/intrinsic_subprograms.rst | 4 +- gcc/ada/einfo.adb | 85 +- gcc/ada/einfo.ads | 13 +- gcc/ada/exp_attr.adb | 213 ++-- gcc/ada/exp_ch11.adb | 6 +- gcc/ada/exp_ch13.adb | 5 +- gcc/ada/exp_ch2.adb | 44 +- gcc/ada/exp_ch4.adb | 40 +- gcc/ada/exp_ch7.adb | 37 +- gcc/ada/exp_ch8.adb | 12 +- gcc/ada/exp_ch9.adb | 7 +- gcc/ada/exp_fixd.adb | 182 ++-- gcc/ada/exp_imgv.adb | 304 ++++-- gcc/ada/exp_prag.adb | 17 +- gcc/ada/exp_util.adb | 117 ++- gcc/ada/freeze.adb | 228 +++-- gcc/ada/gnat_rm.texi | 1005 ++++++++++--------- gcc/ada/lib-writ.adb | 4 +- gcc/ada/libgnarl/s-osinte__solaris.ads | 3 - gcc/ada/libgnarl/s-tassta.adb | 11 +- gcc/ada/libgnat/a-cbhase.adb | 2 +- gcc/ada/libgnat/a-cbmutr.ads | 2 +- gcc/ada/libgnat/a-cborse.adb | 2 +- gcc/ada/libgnat/{s-fore.ads => a-decima__128.ads} | 44 +- gcc/ada/libgnat/a-nbnbre.adb | 10 +- gcc/ada/libgnat/a-strmap.ads | 179 +++- gcc/ada/libgnat/a-stzhas.adb | 14 +- gcc/ada/libgnat/a-stzhas.ads | 6 +- gcc/ada/libgnat/a-tideau.adb | 187 +--- gcc/ada/libgnat/a-tideau.ads | 74 +- gcc/ada/libgnat/a-tideio.adb | 58 +- .../libgnat/{a-tideio.adb => a-tideio__128.adb} | 80 +- gcc/ada/libgnat/{a-tideio.adb => a-tifiau.adb} | 159 +-- gcc/ada/libgnat/{a-tideau.ads => a-tifiau.ads} | 111 ++- gcc/ada/libgnat/a-tifiio.adb | 597 +++-------- gcc/ada/libgnat/a-tifiio__128.adb | 365 +++++++ gcc/ada/libgnat/a-tiflau.adb | 7 +- gcc/ada/libgnat/a-wtdeau.adb | 191 +--- gcc/ada/libgnat/a-wtdeau.ads | 75 +- gcc/ada/libgnat/a-wtdeio.adb | 68 +- .../libgnat/{a-wtdeio.adb => a-wtdeio__128.adb} | 94 +- gcc/ada/libgnat/{a-tideio.adb => a-wtfiau.adb} | 159 +-- gcc/ada/libgnat/{a-tideau.ads => a-wtfiau.ads} | 111 ++- gcc/ada/libgnat/a-wtfiio.adb | 127 ++- gcc/ada/libgnat/a-wtfiio__128.adb | 267 +++++ gcc/ada/libgnat/a-ztdeau.adb | 189 +--- gcc/ada/libgnat/a-ztdeau.ads | 75 +- gcc/ada/libgnat/a-ztdeio.adb | 77 +- .../libgnat/{a-ztdeio.adb => a-ztdeio__128.adb} | 103 +- gcc/ada/libgnat/{a-tideio.adb => a-ztfiau.adb} | 159 +-- gcc/ada/libgnat/{a-tideau.ads => a-ztfiau.ads} | 111 ++- gcc/ada/libgnat/a-ztfiio.adb | 127 ++- gcc/ada/libgnat/a-ztfiio__128.adb | 269 +++++ gcc/ada/libgnat/g-rannum.adb | 86 +- gcc/ada/libgnat/g-rannum.ads | 2 + gcc/ada/libgnat/s-arit32.adb | 182 ++++ gcc/ada/libgnat/{s-fore.ads => s-arit32.ads} | 32 +- gcc/ada/libgnat/{s-fore.ads => s-fode128.ads} | 23 +- gcc/ada/libgnat/{s-fore.ads => s-fode32.ads} | 23 +- gcc/ada/libgnat/{s-fore.ads => s-fode64.ads} | 23 +- gcc/ada/libgnat/{s-fore.ads => s-fofi128.ads} | 24 +- gcc/ada/libgnat/{s-fore.ads => s-fofi32.ads} | 24 +- gcc/ada/libgnat/{s-fore.ads => s-fofi64.ads} | 24 +- gcc/ada/libgnat/{s-fore.adb => s-fore_d.adb} | 38 +- gcc/ada/libgnat/{s-fore.ads => s-fore_d.ads} | 22 +- gcc/ada/libgnat/{s-fore.adb => s-fore_f.adb} | 85 +- gcc/ada/libgnat/{s-fore.ads => s-fore_f.ads} | 26 +- gcc/ada/libgnat/{s-fore.adb => s-forrea.adb} | 25 +- gcc/ada/libgnat/{s-fore.ads => s-forrea.ads} | 15 +- gcc/ada/libgnat/{s-imglld.adb => s-imaged.adb} | 39 +- gcc/ada/libgnat/{s-imglld.ads => s-imaged.ads} | 41 +- gcc/ada/libgnat/s-imagef.adb | 287 ++++++ gcc/ada/libgnat/{s-imgdec.ads => s-imagef.ads} | 100 +- gcc/ada/libgnat/s-imagei.adb | 47 +- gcc/ada/libgnat/s-imageu.adb | 39 +- gcc/ada/libgnat/{s-fore.ads => s-imde128.ads} | 38 +- gcc/ada/libgnat/{s-fore.ads => s-imde32.ads} | 38 +- gcc/ada/libgnat/{s-fore.ads => s-imde64.ads} | 38 +- gcc/ada/libgnat/{s-fore.ads => s-imfi128.ads} | 44 +- gcc/ada/libgnat/{s-fore.ads => s-imfi32.ads} | 44 +- gcc/ada/libgnat/{s-fore.ads => s-imfi64.ads} | 44 +- gcc/ada/libgnat/s-imgrea.adb | 38 +- gcc/ada/libgnat/s-imgrea.ads | 3 + gcc/ada/libgnat/{s-imgdec.adb => s-imguti.adb} | 75 +- gcc/ada/libgnat/{s-imglld.adb => s-imguti.ads} | 72 +- gcc/ada/libgnat/s-rannum.adb | 35 + gcc/ada/libgnat/{s-valdec.adb => s-vade128.ads} | 54 +- gcc/ada/libgnat/{s-fore.ads => s-vade32.ads} | 37 +- gcc/ada/libgnat/{s-fore.ads => s-vade64.ads} | 39 +- gcc/ada/libgnat/{s-fore.ads => s-vafi128.ads} | 39 +- gcc/ada/libgnat/{s-fore.ads => s-vafi32.ads} | 39 +- gcc/ada/libgnat/{s-fore.ads => s-vafi64.ads} | 39 +- gcc/ada/libgnat/s-vallld.adb | 70 -- gcc/ada/libgnat/s-valrea.adb | 522 +--------- gcc/ada/libgnat/s-valued.adb | 257 +++++ gcc/ada/libgnat/{s-valdec.ads => s-valued.ads} | 44 +- gcc/ada/libgnat/s-valuef.adb | 332 +++++++ gcc/ada/libgnat/{s-vallld.ads => s-valuef.ads} | 59 +- gcc/ada/libgnat/s-valuei.adb | 2 +- gcc/ada/libgnat/{s-valrea.adb => s-valuer.adb} | 444 +++++---- gcc/ada/libgnat/{s-vallld.ads => s-valuer.ads} | 74 +- gcc/ada/libgnat/system-aix.ads | 2 +- gcc/ada/libgnat/system-darwin-arm.ads | 2 +- gcc/ada/libgnat/system-darwin-ppc.ads | 2 +- gcc/ada/libgnat/system-darwin-x86.ads | 2 +- gcc/ada/libgnat/system-djgpp.ads | 2 +- gcc/ada/libgnat/system-dragonfly-x86_64.ads | 2 +- gcc/ada/libgnat/system-freebsd.ads | 2 +- gcc/ada/libgnat/system-hpux-ia64.ads | 2 +- gcc/ada/libgnat/system-hpux.ads | 2 +- gcc/ada/libgnat/system-linux-alpha.ads | 2 +- gcc/ada/libgnat/system-linux-arm.ads | 2 +- gcc/ada/libgnat/system-linux-hppa.ads | 2 +- gcc/ada/libgnat/system-linux-ia64.ads | 2 +- gcc/ada/libgnat/system-linux-m68k.ads | 2 +- gcc/ada/libgnat/system-linux-mips.ads | 2 +- gcc/ada/libgnat/system-linux-ppc.ads | 2 +- gcc/ada/libgnat/system-linux-riscv.ads | 2 +- gcc/ada/libgnat/system-linux-s390.ads | 2 +- gcc/ada/libgnat/system-linux-sh4.ads | 2 +- gcc/ada/libgnat/system-linux-sparc.ads | 2 +- gcc/ada/libgnat/system-linux-x86.ads | 2 +- gcc/ada/libgnat/system-lynxos178-ppc.ads | 2 +- gcc/ada/libgnat/system-lynxos178-x86.ads | 2 +- gcc/ada/libgnat/system-mingw.ads | 2 +- gcc/ada/libgnat/system-qnx-aarch64.ads | 2 +- gcc/ada/libgnat/system-rtems.ads | 2 +- gcc/ada/libgnat/system-solaris-sparc.ads | 2 +- gcc/ada/libgnat/system-solaris-x86.ads | 2 +- gcc/ada/libgnat/system-vxworks-arm-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks-arm-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks-arm.ads | 2 +- gcc/ada/libgnat/system-vxworks-e500-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks-e500-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks-e500-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks-e500-vthread.ads | 2 +- gcc/ada/libgnat/system-vxworks-ppc-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks-ppc-ravenscar.ads | 2 +- gcc/ada/libgnat/system-vxworks-ppc-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks-ppc-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks-ppc-vthread.ads | 2 +- gcc/ada/libgnat/system-vxworks-ppc.ads | 2 +- gcc/ada/libgnat/system-vxworks-x86-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks-x86-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks-x86-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks-x86-vthread.ads | 2 +- gcc/ada/libgnat/system-vxworks-x86.ads | 2 +- .../libgnat/system-vxworks7-aarch64-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-aarch64.ads | 2 +- gcc/ada/libgnat/system-vxworks7-arm-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-arm.ads | 2 +- gcc/ada/libgnat/system-vxworks7-e500-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks7-e500-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-e500-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-ppc-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks7-ppc-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-ppc-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-ppc64-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks7-ppc64-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-x86-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks7-x86-rtp-smp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-x86-rtp.ads | 2 +- gcc/ada/libgnat/system-vxworks7-x86_64-kernel.ads | 2 +- gcc/ada/libgnat/system-vxworks7-x86_64-rtp-smp.ads | 2 +- gcc/ada/make.adb | 14 +- gcc/ada/osint-c.adb | 9 +- gcc/ada/rtsfind.ads | 108 +- gcc/ada/sem_attr.adb | 43 +- gcc/ada/sem_ch12.adb | 39 +- gcc/ada/sem_ch13.adb | 220 ++--- gcc/ada/sem_ch3.adb | 29 +- gcc/ada/sem_ch4.adb | 2 +- gcc/ada/sem_ch6.adb | 234 ++++- gcc/ada/sem_ch8.adb | 23 +- gcc/ada/sem_eval.adb | 47 +- gcc/ada/sem_prag.adb | 65 +- gcc/ada/sem_res.adb | 73 +- gcc/ada/sem_util.adb | 10 +- gcc/ada/sem_util.ads | 4 +- gcc/ada/stand.ads | 9 +- gcc/ada/uintp.ads | 10 + gcc/ada/urealp.adb | 168 +++- gcc/ada/urealp.ads | 32 +- gcc/asan.c | 1034 +++++++++++++++++++- gcc/asan.h | 45 +- gcc/builtin-types.def | 3 + gcc/builtins.def | 1 + gcc/c-family/ChangeLog | 10 + gcc/c-family/c-attribs.c | 4 +- gcc/c-family/c-warn.c | 4 +- gcc/c/ChangeLog | 7 + gcc/c/c-parser.c | 9 - gcc/cfg.c | 45 +- gcc/cfg.h | 2 +- gcc/cfgexpand.c | 167 +++- gcc/cgraph.c | 2 +- gcc/common.opt | 5 +- gcc/config/aarch64/aarch64-sve.md | 154 +-- gcc/config/aarch64/aarch64-sve2.md | 37 +- gcc/config/aarch64/aarch64.c | 42 +- gcc/config/gcn/mkoffload.c | 15 +- gcc/config/gnu-user.h | 8 +- gcc/config/i386/i386-expand.c | 176 ++-- gcc/config/i386/i386-options.c | 4 +- gcc/config/i386/i386.md | 36 +- gcc/config/i386/sse.md | 61 +- gcc/config/rs6000/rs6000.c | 11 +- gcc/config/sol2.h | 3 - gcc/config/sparc/sparc-protos.h | 1 - gcc/config/sparc/sparc.c | 35 - gcc/config/sparc/sparc.md | 37 +- gcc/cp/ChangeLog | 30 + gcc/cp/constraint.cc | 4 +- gcc/cp/error.c | 21 +- gcc/cp/g++spec.c | 33 +- gcc/cp/logic.cc | 5 +- gcc/cp/name-lookup.c | 3 +- gcc/cp/parser.c | 25 +- gcc/cp/pt.c | 2 + gcc/cp/typeck.c | 3 +- gcc/cp/typeck2.c | 1 + gcc/cppbuiltin.c | 3 + gcc/digraph.cc | 2 +- gcc/doc/install.texi | 5 + gcc/doc/invoke.texi | 89 +- gcc/doc/tm.texi | 66 ++ gcc/doc/tm.texi.in | 16 + gcc/dumpfile.c | 18 +- gcc/dwarf2out.c | 2 +- gcc/edit-context.c | 14 +- gcc/explow.c | 10 +- gcc/explow.h | 2 +- gcc/flag-types.h | 3 + gcc/fortran/ChangeLog | 6 + gcc/fortran/resolve.c | 11 +- gcc/gcc.c | 25 + gcc/gimple-fold.c | 78 +- gcc/gimple-fold.h | 15 + gcc/gimple-isel.cc | 22 +- gcc/gimple-pretty-print.c | 1 + gcc/gimple-ssa-evrp-analyze.c | 6 +- gcc/gimple.c | 2 +- gcc/gimplify.c | 9 +- gcc/ginclude/stdatomic.h | 14 +- gcc/go/gofrontend/MERGE | 2 +- gcc/go/gofrontend/expressions.cc | 10 +- gcc/internal-fn.c | 188 +++- gcc/internal-fn.def | 7 + gcc/ipa-modref.c | 26 +- gcc/jit/ChangeLog | 7 + gcc/jit/jit-recording.c | 20 +- gcc/json.cc | 5 +- gcc/lra.c | 14 +- gcc/lto-wrapper.c | 3 +- gcc/match.pd | 48 +- gcc/opts.c | 156 ++- gcc/params.opt | 24 + gcc/reload.c | 2 +- gcc/sanitizer.def | 61 ++ gcc/sanopt.c | 21 +- gcc/target.def | 80 ++ gcc/targhooks.c | 115 +++ gcc/targhooks.h | 9 + gcc/testsuite/ChangeLog | 461 +++++++++ .../c-c++-common/builtin-clear-padding-2.c | 17 + .../c-c++-common/builtin-clear-padding-3.c | 15 + gcc/testsuite/c-c++-common/goacc/cache-1.c | 18 +- gcc/testsuite/c-c++-common/goacc/cache-2.c | 10 +- gcc/testsuite/c-c++-common/goacc/cache-3-1.c | 116 +++ gcc/testsuite/c-c++-common/goacc/cache-3-2.c | 50 + gcc/testsuite/c-c++-common/goacc/data-clause-1.c | 115 +++ gcc/testsuite/c-c++-common/goacc/data-clause-2.c | 49 + gcc/testsuite/c-c++-common/gomp/map-1.c | 7 +- gcc/testsuite/c-c++-common/gomp/map-2.c | 7 +- gcc/testsuite/c-c++-common/hwasan/aligned-alloc.c | 16 + .../c-c++-common/hwasan/alloca-array-accessible.c | 33 + .../c-c++-common/hwasan/alloca-base-init.c | 66 ++ .../hwasan/alloca-gets-different-tag.c | 65 ++ .../c-c++-common/hwasan/alloca-outside-caught.c | 25 + gcc/testsuite/c-c++-common/hwasan/arguments-1.c | 3 + gcc/testsuite/c-c++-common/hwasan/arguments-2.c | 3 + gcc/testsuite/c-c++-common/hwasan/arguments-3.c | 3 + gcc/testsuite/c-c++-common/hwasan/arguments.c | 3 + gcc/testsuite/c-c++-common/hwasan/asan-pr63316.c | 24 + gcc/testsuite/c-c++-common/hwasan/asan-pr70541.c | 36 + gcc/testsuite/c-c++-common/hwasan/asan-pr78106.c | 31 + gcc/testsuite/c-c++-common/hwasan/asan-pr79944.c | 19 + .../c-c++-common/hwasan/asan-rlimit-mmap-test-1.c | 24 + gcc/testsuite/c-c++-common/hwasan/bitfield-1.c | 31 + gcc/testsuite/c-c++-common/hwasan/bitfield-2.c | 30 + .../c-c++-common/hwasan/builtin-special-handling.c | 31 + .../c-c++-common/hwasan/check-interface.c | 26 + .../c-c++-common/hwasan/halt_on_error-1.c | 24 + .../hwasan/handles-poly_int-marked-vars.c | 37 + gcc/testsuite/c-c++-common/hwasan/heap-overflow.c | 29 + .../hwasan/hwasan-poison-optimisation.c | 29 + .../hwasan/hwasan-thread-access-parent.c | 51 + .../hwasan/hwasan-thread-basic-failure.c | 48 + .../hwasan/hwasan-thread-clears-stack.c | 56 ++ .../c-c++-common/hwasan/hwasan-thread-success.c | 35 + .../c-c++-common/hwasan/kernel-defaults.c | 37 + .../c-c++-common/hwasan/large-aligned-0.c | 33 + .../c-c++-common/hwasan/large-aligned-1.c | 14 + .../hwasan/large-aligned-untagging-0.c | 75 ++ .../hwasan/large-aligned-untagging-1.c | 15 + .../hwasan/large-aligned-untagging-2.c | 15 + .../hwasan/large-aligned-untagging-3.c | 15 + .../hwasan/large-aligned-untagging-4.c | 16 + .../hwasan/large-aligned-untagging-5.c | 16 + .../hwasan/large-aligned-untagging-6.c | 16 + .../hwasan/large-aligned-untagging-7.c | 16 + .../c-c++-common/hwasan/macro-definition.c | 11 + .../c-c++-common/hwasan/no-sanitize-attribute.c | 12 + .../hwasan/param-instrument-mem-intrinsics.c | 10 + .../hwasan/param-instrument-reads-and-writes.c | 7 + .../c-c++-common/hwasan/param-instrument-reads.c | 21 + .../c-c++-common/hwasan/param-instrument-writes.c | 7 + .../c-c++-common/hwasan/random-frame-tag.c | 7 + .../c-c++-common/hwasan/sanity-check-pure-c.c | 25 + .../c-c++-common/hwasan/setjmp-longjmp-0.c | 54 + .../c-c++-common/hwasan/setjmp-longjmp-1.c | 19 + .../c-c++-common/hwasan/stack-tagging-basic-0.c | 37 + .../c-c++-common/hwasan/stack-tagging-basic-1.c | 18 + .../c-c++-common/hwasan/stack-tagging-disable.c | 33 + .../c-c++-common/hwasan/unprotected-allocas-0.c | 46 + .../c-c++-common/hwasan/unprotected-allocas-1.c | 16 + gcc/testsuite/c-c++-common/hwasan/use-after-free.c | 28 + .../c-c++-common/hwasan/vararray-outside-caught.c | 22 + .../hwasan/vararray-stack-restore-correct.c | 43 + .../c-c++-common/hwasan/very-large-objects.c | 68 ++ .../patchable_function_entry-error-3.c | 6 +- .../c-c++-common/ubsan/sanitize-recover-7.c | 2 +- gcc/testsuite/g++.dg/cpp0x/initlist-template3.C | 13 + gcc/testsuite/g++.dg/ext/builtin-clear-padding-1.C | 15 + gcc/testsuite/g++.dg/goacc/cache-1.C | 15 + .../goacc/cache-2.c => g++.dg/goacc/cache-2.C} | 15 +- gcc/testsuite/g++.dg/goacc/cache-3-1.C | 123 +++ gcc/testsuite/g++.dg/goacc/cache-3-2.C | 57 ++ gcc/testsuite/g++.dg/goacc/data-clause-1.C | 122 +++ gcc/testsuite/g++.dg/goacc/data-clause-2.C | 56 ++ .../gomp/map-1.c => g++.dg/gomp/map-1.C} | 16 +- .../gomp/map-2.c => g++.dg/gomp/map-2.C} | 14 +- gcc/testsuite/g++.dg/hwasan/hwasan.exp | 34 + gcc/testsuite/g++.dg/hwasan/rvo-handled.C | 46 + gcc/testsuite/gcc.c-torture/compile/pr97979.c | 7 + gcc/testsuite/gcc.dg/Wstringop-overflow-47.c | 2 +- gcc/testsuite/gcc.dg/builtin-arith-overflow-5.c | 87 ++ gcc/testsuite/gcc.dg/builtin-clear-padding-2.c | 15 + gcc/testsuite/gcc.dg/hwasan/hwasan.exp | 36 + gcc/testsuite/gcc.dg/hwasan/nested-functions-0.c | 53 + gcc/testsuite/gcc.dg/hwasan/nested-functions-1.c | 27 + gcc/testsuite/gcc.dg/hwasan/nested-functions-2.c | 28 + gcc/testsuite/gcc.dg/lto/modref-3_0.c | 17 + gcc/testsuite/gcc.dg/lto/modref-3_1.c | 13 + gcc/testsuite/gcc.dg/lto/modref-4_0.c | 17 + gcc/testsuite/gcc.dg/lto/modref-4_1.c | 13 + gcc/testsuite/gcc.dg/memchr-3.c | 25 + gcc/testsuite/gcc.dg/nextafter-1.c | 2 + gcc/testsuite/gcc.dg/nextafter-2.c | 3 + gcc/testsuite/gcc.dg/pr97579.c | 31 + gcc/testsuite/gcc.dg/pr97953.c | 24 + gcc/testsuite/gcc.dg/pr97955.c | 7 + gcc/testsuite/gcc.dg/pr97979.c | 13 + gcc/testsuite/gcc.dg/profile-info-section.c | 2 + gcc/testsuite/gcc.dg/strncmp-2.c | 1 + gcc/testsuite/gcc.dg/tree-ssa/modref-5.c | 27 + gcc/testsuite/gcc.dg/tree-ssa/pr97997-1.c | 52 + gcc/testsuite/gcc.dg/tree-ssa/pr97997-2.c | 41 + gcc/testsuite/gcc.dg/typeof-2.c | 20 +- .../gcc.target/aarch64/sve/acle/asm/abs_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/abs_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/abs_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/abs_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/abs_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/abs_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/abs_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cls_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cls_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cls_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cls_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/clz_u8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnot_u8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_bf16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cnt_u8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cvt_bf16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cvt_f16.c | 8 + .../gcc.target/aarch64/sve/acle/asm/cvt_f32.c | 6 + .../gcc.target/aarch64/sve/acle/asm/cvt_f64.c | 6 + .../gcc.target/aarch64/sve/acle/asm/cvt_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cvt_s32.c | 3 + .../gcc.target/aarch64/sve/acle/asm/cvt_s64.c | 3 + .../gcc.target/aarch64/sve/acle/asm/cvt_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/cvt_u32.c | 3 + .../gcc.target/aarch64/sve/acle/asm/cvt_u64.c | 3 + .../gcc.target/aarch64/sve/acle/asm/extb_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/extb_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/extb_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/exth_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/exth_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/extw_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/neg_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/not_u8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_s8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rbit_u8.c | 1 + .../gcc.target/aarch64/sve/acle/asm/recpx_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/recpx_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/recpx_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revb_s16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revb_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revb_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revb_u16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revb_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revb_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revh_s32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revh_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revh_u32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revh_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revw_s64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/revw_u64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rinta_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rinta_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rinta_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rinti_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rinti_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rinti_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintm_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintm_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintm_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintn_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintn_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintn_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintp_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintp_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintp_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintx_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintx_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintx_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintz_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintz_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/rintz_f64.c | 1 + .../gcc.target/aarch64/sve/acle/asm/sqrt_f16.c | 1 + .../gcc.target/aarch64/sve/acle/asm/sqrt_f32.c | 1 + .../gcc.target/aarch64/sve/acle/asm/sqrt_f64.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/cvtlt_f32.c | 8 +- .../gcc.target/aarch64/sve2/acle/asm/cvtlt_f64.c | 8 +- .../gcc.target/aarch64/sve2/acle/asm/cvtx_f32.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/logb_f16.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/logb_f32.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/logb_f64.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qabs_s16.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qabs_s32.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qabs_s64.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qabs_s8.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qneg_s16.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qneg_s32.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qneg_s64.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/qneg_s8.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/recpe_u32.c | 1 + .../gcc.target/aarch64/sve2/acle/asm/rsqrte_u32.c | 1 + gcc/testsuite/gcc.target/arm/pr91816.c | 63 ++ gcc/testsuite/gcc.target/i386/pr96906-1.c | 62 ++ gcc/testsuite/gcc.target/i386/pr97873-3.c | 27 + gcc/testsuite/gfortran.dg/pr85796.f90 | 8 + gcc/testsuite/gnat.dg/multfixed.adb | 3 +- gcc/testsuite/lib/asan-dg.exp | 31 +- gcc/testsuite/lib/hwasan-dg.exp | 150 +++ gcc/toplev.c | 12 + gcc/tree-core.h | 4 + gcc/tree-diagnostic-path.cc | 13 +- gcc/tree-ssa-structalias.c | 25 +- gcc/ubsan.c | 13 +- libcpp/ChangeLog | 26 + libgcc/ChangeLog | 6 + libgcc/libgcc2.c | 42 +- libgfortran/io/io.h | 10 +- libgfortran/io/transfer.c | 4 +- libgfortran/io/unit.c | 6 +- libgfortran/libgfortran.h | 12 +- libgfortran/runtime/error.c | 2 +- libgomp/ChangeLog | 21 + libgomp/testsuite/libgomp.oacc-c++/cache-1.C | 13 + .../testsuite/libgomp.oacc-c-c++-common/cache-1.c | 12 +- .../libgomp.oacc-fortran/atomic_capture-1.f90 | 38 +- libiberty/ChangeLog | 5 + libiberty/configure | 1 + libiberty/configure.ac | 1 + libsanitizer/ChangeLog | 31 + libsanitizer/LOCAL_PATCHES | 1 + libsanitizer/MERGE | 2 +- libsanitizer/Makefile.am | 6 +- libsanitizer/Makefile.in | 9 +- libsanitizer/README.gcc | 1 + libsanitizer/asan/Makefile.in | 1 + libsanitizer/configure | 43 +- libsanitizer/configure.ac | 21 + libsanitizer/configure.tgt | 1 + libsanitizer/hwasan/Makefile.am | 89 ++ libsanitizer/{ubsan => hwasan}/Makefile.in | 169 +++- libsanitizer/hwasan/hwasan.cpp | 522 ++++++++++ libsanitizer/hwasan/hwasan.h | 165 ++++ libsanitizer/hwasan/hwasan_allocator.cpp | 408 ++++++++ libsanitizer/hwasan/hwasan_allocator.h | 107 ++ libsanitizer/hwasan/hwasan_checks.h | 124 +++ libsanitizer/hwasan/hwasan_dynamic_shadow.cpp | 126 +++ libsanitizer/hwasan/hwasan_dynamic_shadow.h | 27 + libsanitizer/hwasan/hwasan_exceptions.cpp | 67 ++ libsanitizer/hwasan/hwasan_flags.h | 29 + libsanitizer/hwasan/hwasan_flags.inc | 74 ++ libsanitizer/hwasan/hwasan_globals.cpp | 91 ++ libsanitizer/hwasan/hwasan_globals.h | 49 + libsanitizer/hwasan/hwasan_interceptors.cpp | 349 +++++++ libsanitizer/hwasan/hwasan_interceptors_vfork.S | 11 + libsanitizer/hwasan/hwasan_interface_internal.h | 227 +++++ libsanitizer/hwasan/hwasan_linux.cpp | 455 +++++++++ libsanitizer/hwasan/hwasan_malloc_bisect.h | 50 + libsanitizer/hwasan/hwasan_mapping.h | 66 ++ libsanitizer/hwasan/hwasan_memintrinsics.cpp | 44 + libsanitizer/hwasan/hwasan_new_delete.cpp | 81 ++ libsanitizer/hwasan/hwasan_poisoning.cpp | 52 + libsanitizer/hwasan/hwasan_poisoning.h | 24 + libsanitizer/hwasan/hwasan_report.cpp | 652 ++++++++++++ libsanitizer/hwasan/hwasan_report.h | 35 + libsanitizer/hwasan/hwasan_setjmp.S | 100 ++ libsanitizer/hwasan/hwasan_tag_mismatch_aarch64.S | 152 +++ libsanitizer/hwasan/hwasan_thread.cpp | 133 +++ libsanitizer/hwasan/hwasan_thread.h | 98 ++ libsanitizer/hwasan/hwasan_thread_list.cpp | 15 + libsanitizer/hwasan/hwasan_thread_list.h | 215 ++++ libsanitizer/hwasan/hwasan_type_test.cpp | 25 + libsanitizer/hwasan/libtool-version | 6 + libsanitizer/interception/Makefile.in | 1 + libsanitizer/libbacktrace/Makefile.in | 1 + libsanitizer/libsanitizer.spec.in | 2 + libsanitizer/lsan/Makefile.in | 1 + libsanitizer/merge.sh | 1 + libsanitizer/sanitizer_common/Makefile.in | 1 + libsanitizer/tsan/Makefile.in | 1 + libsanitizer/ubsan/Makefile.in | 1 + libstdc++-v3/ChangeLog | 102 ++ libstdc++-v3/acinclude.m4 | 18 +- libstdc++-v3/configure | 215 ++-- libstdc++-v3/doc/xml/manual/configure.xml | 3 +- libstdc++-v3/include/bits/atomic_timed_wait.h | 104 +- libstdc++-v3/include/bits/atomic_wait.h | 54 +- libstdc++-v3/include/bits/iterator_concepts.h | 17 +- libstdc++-v3/include/bits/std_mutex.h | 70 ++ libstdc++-v3/include/precompiled/stdc++.h | 2 + libstdc++-v3/include/std/condition_variable | 18 +- libstdc++-v3/include/std/stop_token | 4 +- libstdc++-v3/src/c++11/condition_variable.cc | 33 +- libstdc++-v3/testsuite/17_intro/names.cc | 2 + libstdc++-v3/testsuite/18_support/96817.cc | 13 +- .../associated_types/iterator.traits.cc | 56 ++ .../regex_match/basic/string_range_01_03.cc | 3 +- .../algorithms/regex_match/cstring_bracket_01.cc | 1 + .../algorithms/regex_match/ecma/char/backref.cc | 1 + .../algorithms/regex_match/ecma/wchar_t/63199.cc | 1 + .../regex_match/ecma/wchar_t/anymatcher.cc | 1 + .../regex_match/ecma/wchar_t/cjk_match.cc | 1 + .../algorithms/regex_match/ecma/wchar_t/hex.cc | 1 + .../regex_match/extended/wstring_locale.cc | 1 + .../28_regex/algorithms/regex_search/61720.cc | 1 + .../algorithms/regex_search/ecma/assertion.cc | 1 + .../algorithms/regex_search/ecma/string_01.cc | 1 + .../28_regex/basic_regex/ctors/deduction.cc | 1 + .../29_atomics/atomic/wait_notify/bool.cc | 7 +- .../29_atomics/atomic/wait_notify/generic.cc | 1 - .../29_atomics/atomic/wait_notify/pointers.cc | 7 +- .../29_atomics/atomic_flag/wait_notify/1.cc | 7 +- .../29_atomics/atomic_float/wait_notify.cc | 1 - .../29_atomics/atomic_integral/wait_notify.cc | 4 +- .../testsuite/29_atomics/atomic_ref/wait_notify.cc | 6 +- .../testsuite/30_threads/call_once/66146.cc | 4 +- libstdc++-v3/testsuite/30_threads/jthread/95989.cc | 1 + libstdc++-v3/testsuite/30_threads/latch/3.cc | 6 +- .../30_threads/semaphore/try_acquire_until.cc | 4 +- .../testsuite/ext/stdio_filebuf/char/79820.cc | 3 +- libstdc++-v3/testsuite/lib/libstdc++.exp | 37 +- .../testsuite/util/atomic/wait_notify_util.h | 24 +- lto-plugin/ChangeLog | 5 + lto-plugin/Makefile.am | 4 +- lto-plugin/Makefile.in | 4 +- 640 files changed, 20440 insertions(+), 5405 deletions(-) create mode 100644 config/bootstrap-hwasan.mk copy gcc/ada/libgnat/{s-fore.ads => a-decima__128.ads} (61%) copy gcc/ada/libgnat/{a-tideio.adb => a-tideio__128.adb} (60%) copy gcc/ada/libgnat/{a-tideio.adb => a-tifiau.adb} (51%) copy gcc/ada/libgnat/{a-tideau.ads => a-tifiau.ads} (56%) create mode 100644 gcc/ada/libgnat/a-tifiio__128.adb copy gcc/ada/libgnat/{a-wtdeio.adb => a-wtdeio__128.adb} (61%) copy gcc/ada/libgnat/{a-tideio.adb => a-wtfiau.adb} (51%) copy gcc/ada/libgnat/{a-tideau.ads => a-wtfiau.ads} (56%) create mode 100644 gcc/ada/libgnat/a-wtfiio__128.adb copy gcc/ada/libgnat/{a-ztdeio.adb => a-ztdeio__128.adb} (61%) copy gcc/ada/libgnat/{a-tideio.adb => a-ztfiau.adb} (50%) copy gcc/ada/libgnat/{a-tideau.ads => a-ztfiau.ads} (56%) create mode 100644 gcc/ada/libgnat/a-ztfiio__128.adb create mode 100644 gcc/ada/libgnat/s-arit32.adb copy gcc/ada/libgnat/{s-fore.ads => s-arit32.ads} (66%) copy gcc/ada/libgnat/{s-fore.ads => s-fode128.ads} (82%) copy gcc/ada/libgnat/{s-fore.ads => s-fode32.ads} (82%) copy gcc/ada/libgnat/{s-fore.ads => s-fode64.ads} (82%) copy gcc/ada/libgnat/{s-fore.ads => s-fofi128.ads} (80%) copy gcc/ada/libgnat/{s-fore.ads => s-fofi32.ads} (81%) copy gcc/ada/libgnat/{s-fore.ads => s-fofi64.ads} (81%) copy gcc/ada/libgnat/{s-fore.adb => s-fore_d.adb} (76%) copy gcc/ada/libgnat/{s-fore.ads => s-fore_d.ads} (80%) copy gcc/ada/libgnat/{s-fore.adb => s-fore_f.adb} (50%) copy gcc/ada/libgnat/{s-fore.ads => s-fore_f.ads} (76%) rename gcc/ada/libgnat/{s-fore.adb => s-forrea.adb} (88%) copy gcc/ada/libgnat/{s-fore.ads => s-forrea.ads} (83%) copy gcc/ada/libgnat/{s-imglld.adb => s-imaged.adb} (77%) rename gcc/ada/libgnat/{s-imglld.ads => s-imaged.ads} (75%) create mode 100644 gcc/ada/libgnat/s-imagef.adb rename gcc/ada/libgnat/{s-imgdec.ads => s-imagef.ads} (54%) copy gcc/ada/libgnat/{s-fore.ads => s-imde128.ads} (70%) copy gcc/ada/libgnat/{s-fore.ads => s-imde32.ads} (70%) copy gcc/ada/libgnat/{s-fore.ads => s-imde64.ads} (70%) copy gcc/ada/libgnat/{s-fore.ads => s-imfi128.ads} (68%) copy gcc/ada/libgnat/{s-fore.ads => s-imfi32.ads} (68%) copy gcc/ada/libgnat/{s-fore.ads => s-imfi64.ads} (68%) rename gcc/ada/libgnat/{s-imgdec.adb => s-imguti.adb} (89%) rename gcc/ada/libgnat/{s-imglld.adb => s-imguti.ads} (62%) rename gcc/ada/libgnat/{s-valdec.adb => s-vade128.ads} (66%) copy gcc/ada/libgnat/{s-fore.ads => s-vade32.ads} (68%) copy gcc/ada/libgnat/{s-fore.ads => s-vade64.ads} (68%) copy gcc/ada/libgnat/{s-fore.ads => s-vafi128.ads} (67%) copy gcc/ada/libgnat/{s-fore.ads => s-vafi32.ads} (68%) rename gcc/ada/libgnat/{s-fore.ads => s-vafi64.ads} (68%) delete mode 100644 gcc/ada/libgnat/s-vallld.adb create mode 100644 gcc/ada/libgnat/s-valued.adb rename gcc/ada/libgnat/{s-valdec.ads => s-valued.ads} (79%) create mode 100644 gcc/ada/libgnat/s-valuef.adb copy gcc/ada/libgnat/{s-vallld.ads => s-valuef.ads} (72%) copy gcc/ada/libgnat/{s-valrea.adb => s-valuer.adb} (60%) rename gcc/ada/libgnat/{s-vallld.ads => s-valuer.ads} (60%) create mode 100644 gcc/testsuite/c-c++-common/builtin-clear-padding-2.c create mode 100644 gcc/testsuite/c-c++-common/builtin-clear-padding-3.c create mode 100644 gcc/testsuite/c-c++-common/goacc/cache-3-1.c create mode 100644 gcc/testsuite/c-c++-common/goacc/cache-3-2.c create mode 100644 gcc/testsuite/c-c++-common/goacc/data-clause-1.c create mode 100644 gcc/testsuite/c-c++-common/goacc/data-clause-2.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/aligned-alloc.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/alloca-array-accessible.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/alloca-base-init.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/alloca-gets-different-tag.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/alloca-outside-caught.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/arguments-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/arguments-2.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/arguments-3.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/arguments.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/asan-pr63316.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/asan-pr70541.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/asan-pr78106.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/asan-pr79944.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/asan-rlimit-mmap-test-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/bitfield-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/bitfield-2.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/builtin-special-handling.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/check-interface.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/halt_on_error-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/handles-poly_int-marked-vars.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/heap-overflow.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/hwasan-poison-optimisation.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/hwasan-thread-access-parent.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/hwasan-thread-basic-failure.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/hwasan-thread-clears-stack.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/hwasan-thread-success.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/kernel-defaults.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-0.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-0.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-2.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-3.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-4.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-5.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-6.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/large-aligned-untagging-7.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/macro-definition.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/no-sanitize-attribute.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/param-instrument-mem-intrinsics.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/param-instrument-reads-and-writes.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/param-instrument-reads.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/param-instrument-writes.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/random-frame-tag.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/sanity-check-pure-c.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/setjmp-longjmp-0.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/setjmp-longjmp-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/stack-tagging-basic-0.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/stack-tagging-basic-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/stack-tagging-disable.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/unprotected-allocas-0.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/unprotected-allocas-1.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/use-after-free.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/vararray-outside-caught.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/vararray-stack-restore-correct.c create mode 100644 gcc/testsuite/c-c++-common/hwasan/very-large-objects.c create mode 100644 gcc/testsuite/g++.dg/cpp0x/initlist-template3.C create mode 100644 gcc/testsuite/g++.dg/ext/builtin-clear-padding-1.C create mode 100644 gcc/testsuite/g++.dg/goacc/cache-1.C copy gcc/testsuite/{c-c++-common/goacc/cache-2.c => g++.dg/goacc/cache-2.C} (90%) create mode 100644 gcc/testsuite/g++.dg/goacc/cache-3-1.C create mode 100644 gcc/testsuite/g++.dg/goacc/cache-3-2.C create mode 100644 gcc/testsuite/g++.dg/goacc/data-clause-1.C create mode 100644 gcc/testsuite/g++.dg/goacc/data-clause-2.C copy gcc/testsuite/{c-c++-common/gomp/map-1.c => g++.dg/gomp/map-1.C} (93%) copy gcc/testsuite/{c-c++-common/gomp/map-2.c => g++.dg/gomp/map-2.C} (87%) create mode 100644 gcc/testsuite/g++.dg/hwasan/hwasan.exp create mode 100644 gcc/testsuite/g++.dg/hwasan/rvo-handled.C create mode 100644 gcc/testsuite/gcc.c-torture/compile/pr97979.c create mode 100644 gcc/testsuite/gcc.dg/builtin-arith-overflow-5.c create mode 100644 gcc/testsuite/gcc.dg/builtin-clear-padding-2.c create mode 100644 gcc/testsuite/gcc.dg/hwasan/hwasan.exp create mode 100644 gcc/testsuite/gcc.dg/hwasan/nested-functions-0.c create mode 100644 gcc/testsuite/gcc.dg/hwasan/nested-functions-1.c create mode 100644 gcc/testsuite/gcc.dg/hwasan/nested-functions-2.c create mode 100644 gcc/testsuite/gcc.dg/lto/modref-3_0.c create mode 100644 gcc/testsuite/gcc.dg/lto/modref-3_1.c create mode 100644 gcc/testsuite/gcc.dg/lto/modref-4_0.c create mode 100644 gcc/testsuite/gcc.dg/lto/modref-4_1.c create mode 100644 gcc/testsuite/gcc.dg/memchr-3.c create mode 100644 gcc/testsuite/gcc.dg/pr97579.c create mode 100644 gcc/testsuite/gcc.dg/pr97953.c create mode 100644 gcc/testsuite/gcc.dg/pr97955.c create mode 100644 gcc/testsuite/gcc.dg/pr97979.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/modref-5.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/pr97997-1.c create mode 100644 gcc/testsuite/gcc.dg/tree-ssa/pr97997-2.c create mode 100644 gcc/testsuite/gcc.target/arm/pr91816.c create mode 100644 gcc/testsuite/gcc.target/i386/pr96906-1.c create mode 100644 gcc/testsuite/gcc.target/i386/pr97873-3.c create mode 100644 gcc/testsuite/gfortran.dg/pr85796.f90 create mode 100644 gcc/testsuite/lib/hwasan-dg.exp create mode 100644 libgomp/testsuite/libgomp.oacc-c++/cache-1.C create mode 100644 libsanitizer/hwasan/Makefile.am copy libsanitizer/{ubsan => hwasan}/Makefile.in (78%) create mode 100644 libsanitizer/hwasan/hwasan.cpp create mode 100644 libsanitizer/hwasan/hwasan.h create mode 100644 libsanitizer/hwasan/hwasan_allocator.cpp create mode 100644 libsanitizer/hwasan/hwasan_allocator.h create mode 100644 libsanitizer/hwasan/hwasan_checks.h create mode 100644 libsanitizer/hwasan/hwasan_dynamic_shadow.cpp create mode 100644 libsanitizer/hwasan/hwasan_dynamic_shadow.h create mode 100644 libsanitizer/hwasan/hwasan_exceptions.cpp create mode 100644 libsanitizer/hwasan/hwasan_flags.h create mode 100644 libsanitizer/hwasan/hwasan_flags.inc create mode 100644 libsanitizer/hwasan/hwasan_globals.cpp create mode 100644 libsanitizer/hwasan/hwasan_globals.h create mode 100644 libsanitizer/hwasan/hwasan_interceptors.cpp create mode 100644 libsanitizer/hwasan/hwasan_interceptors_vfork.S create mode 100644 libsanitizer/hwasan/hwasan_interface_internal.h create mode 100644 libsanitizer/hwasan/hwasan_linux.cpp create mode 100644 libsanitizer/hwasan/hwasan_malloc_bisect.h create mode 100644 libsanitizer/hwasan/hwasan_mapping.h create mode 100644 libsanitizer/hwasan/hwasan_memintrinsics.cpp create mode 100644 libsanitizer/hwasan/hwasan_new_delete.cpp create mode 100644 libsanitizer/hwasan/hwasan_poisoning.cpp create mode 100644 libsanitizer/hwasan/hwasan_poisoning.h create mode 100644 libsanitizer/hwasan/hwasan_report.cpp create mode 100644 libsanitizer/hwasan/hwasan_report.h create mode 100644 libsanitizer/hwasan/hwasan_setjmp.S create mode 100644 libsanitizer/hwasan/hwasan_tag_mismatch_aarch64.S create mode 100644 libsanitizer/hwasan/hwasan_thread.cpp create mode 100644 libsanitizer/hwasan/hwasan_thread.h create mode 100644 libsanitizer/hwasan/hwasan_thread_list.cpp create mode 100644 libsanitizer/hwasan/hwasan_thread_list.h create mode 100644 libsanitizer/hwasan/hwasan_type_test.cpp create mode 100644 libsanitizer/hwasan/libtool-version create mode 100644 libstdc++-v3/testsuite/24_iterators/associated_types/iterator.t [...]