aboutsummaryrefslogtreecommitdiff
path: root/contrib
AgeCommit message (Collapse)AuthorFilesLines
2024-08-01Update ChangeLog and version files for releasereleases/gcc-14.2.0Jakub Jelinek4-0/+16
2024-05-09Daily bump.GCC Administrator1-0/+7
2024-05-07Update ChangeLog and version files for releasereleases/gcc-14.1.0Jakub Jelinek4-0/+16
2024-05-07Update gennews for GCC 14.Jakub Jelinek1-0/+1
2024-05-07 Jakub Jelinek <jakub@redhat.com> * gennews (files): Add files for GCC 14. (cherry picked from commit 7ee3f769529f8d418bf361eb821aab17a33567e3)
2024-04-19Daily bump.GCC Administrator1-0/+4
2024-04-18Add nios2*-*-* to the list of obsolete targetsSandra Loosemore1-1/+2
This patch marks the nios2*-*-* targets obsolete in GCC 14. Intel has EOL'ed this architecture and the maintainers no longer have access to hardware for testing. While the port is still in reasonably good shape at this time, no further testing or updates are planned. gcc/ * config.gcc: Add nios2*-*-* to the list of obsoleted targets. contrib/ * config-list.mk (LIST): --enable-obsolete for nios2*-*-*.
2024-04-13Daily bump.GCC Administrator1-0/+4
2024-04-12contrib/check-params-in-docs.py: Ignore target-specific paramsFilip Kastl1-8/+13
contrib/check-params-in-docs.py is a script that checks that all options reported with gcc --help=params are in gcc/doc/invoke.texi and vice versa. gcc/doc/invoke.texi lists target-specific params but gcc --help=params doesn't. This meant that the script would mistakenly complain about parms missing from --help=params. Previously, the script was just set to ignore aarch64 and gcn params which solved this issue only for x86. This patch sets the script to ignore all target-specific params. contrib/ChangeLog: * check-params-in-docs.py: Ignore target specific params. Signed-off-by: Filip Kastl <fkastl@suse.cz>
2024-04-12Daily bump.GCC Administrator1-0/+5
2024-04-11contrib/check-params-in-docs.py: Ignore gcn-preferred-vectorization-factorMartin Jambor1-1/+1
contrib/check-params-in-docs.py is a script that checks that all options reported with ./gcc/xgcc -Bgcc --help=param are in gcc/doc/invoke.texi and vice versa. gcn-preferred-vectorization-factor is in the manual but normally not reported by --help, probably because I do not have gcn offload configured. This patch makes the script silently about this particular fact. contrib/ChangeLog: 2024-04-11 Martin Jambor <mjambor@suse.cz> * check-params-in-docs.py (ignored): Add gcn-preferred-vectorization-factor.
2024-04-08Daily bump.GCC Administrator1-0/+5
2024-04-08contrib: Add 8057f9aa1f7e70490064de796d7a8d42d446caf8 to ignored commits.Jakub Jelinek1-1/+2
This commit unfortunately added explanation to the git revert generated message, breaking ChangeLog generation. 2024-04-08 Jakub Jelinek <jakub@redhat.com> * gcc-changelog/git_update_version.py: Add 8057f9aa1f7e70490064de796d7a8d42d446caf8 to IGNORED_COMMITS.
2024-03-20Daily bump.GCC Administrator1-0/+5
2024-03-19libstdc++: Fix Python scripts to output the correct filenameJonathan Wakely1-2/+4
These scripts both print "generated by $file, do not edit" header but one of them prints the wrong filename. Use the built-in __file__ attribute to ensure it's correct. contrib/ChangeLog: * unicode/gen_libstdcxx_unicode_data.py: Fix header of generated file to name the correct script. libstdc++-v3/ChangeLog: * include/bits/text_encoding-data.h: Regenerate. * include/bits/unicode-data.h: Regenerate. * scripts/gen_text_encoding_data.py: Fix header of generated file to name the correct script.
2024-03-19Daily bump.GCC Administrator1-0/+5
2024-03-18gcc_update: Add missing generated filesJonathan Wakely1-0/+8
I'm seeing errors for --enable-maintainer-mode builds due to incorrectly regenerating these files. They should be touched by gcc_update so they aren't regenerated incorrectly. contrib/ChangeLog: * gcc_update: Add more generated files in libcc1, lto-plugin, fixincludes, and libstdc++-v3.
2024-03-09Daily bump.GCC Administrator1-0/+6
2024-03-08contrib: Improve dg-extract-results.sh's Python detection [PR109668]Sam James1-7/+10
'python' on some systems (e.g. SLES 15) might be Python 2. Prefer python3, then python, then python2 (as the script still tries to work there). PR other/109668 * dg-extract-results.sh: Check for python3 before python. Check for python2 last.
2024-03-08Daily bump.GCC Administrator1-0/+4
2024-03-07contrib: Update test_mklog to correspond to mklogFilip Kastl1-1/+1
contrib/ChangeLog: * test_mklog.py: "Moved to..." -> "Move to..." Signed-off-by: Filip Kastl <fkastl@suse.cz>
2024-03-02Daily bump.GCC Administrator1-0/+4
2024-03-01contrib: mklog: Use present tense in ChangeLogBernhard Reutner-Fischer1-1/+1
contrib/ChangeLog: * mklog.py: Use present tense in ChangeLog.
2024-03-01Daily bump.GCC Administrator1-0/+4
2024-02-29Add libcc1 to bug componentsAndrew Pinski1-0/+1
As found by Tom Tromey in https://gcc.gnu.org/pipermail/gcc-patches/2024-February/646807.html libcc1 is not listed as bug component even though it is there in bugzilla. This fixes that oversight. Committed as obvious after testing using git gcc-verify on a patch. contrib/ChangeLog: * gcc-changelog/git_commit.py (bug_components): Add libcc1. Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
2024-02-24Daily bump.GCC Administrator1-0/+5
2024-02-23Add ia64*-*-* to the list of obsolete targetsRichard Biener1-2/+3
The following deprecates ia64*-*-* for GCC 14. Since we plan to force LRA for GCC 15 and the target only has slim chances of getting updated this notifies people in advance. Given both Linux and glibc have axed the target further development is also made difficult. There is no listed maintainer for ia64 either. PR target/90785 gcc/ * config.gcc: Add ia64*-*-* to the list of obsoleted targets. contrib/ * config-list.mk (LIST): --enable-obsolete for ia64*-*-*.
2024-02-06Daily bump.GCC Administrator1-0/+5
2024-02-05contrib: Fill in HOST{CC,CFLAGS,CXX,CXXFLAGS} in test_installedJakub Jelinek1-0/+4
gcc/Makefile.in since my r0-60234 change fills in HOSTCC and HOSTCFLAGS in site.exp and since r8-671 also HOSTCXX and HOSTCXXFLAGS. If those variables aren't set, we get errors like: /usr/src/gcc/contrib/test_installed --without-g++ --without-gfortran --without-objc struct-layout-1.exp ... ERROR: tcl error sourcing /usr/src/gcc/gcc/testsuite/gcc.dg/compat/struct-layout-1.exp. ERROR: tcl error code TCL LOOKUP VARNAME HOSTCC ERROR: can't read "HOSTCC": no such variable while executing "remote_exec build "$HOSTCC $HOSTCFLAGS $generator_cmd"" (file "/usr/src/gcc/gcc/testsuite/gcc.dg/compat/struct-layout-1.exp" line 96) invoked from within "source /usr/src/gcc/gcc/testsuite/gcc.dg/compat/struct-layout-1.exp" ("uplevel" body line 1) invoked from within "uplevel #0 source /usr/src/gcc/gcc/testsuite/gcc.dg/compat/struct-layout-1.exp" invoked from within "catch "uplevel #0 source $test_file_name" msg" (similarly in g++ or gfortran) struct-layout-1.exp. One doesn't need to test specially for just struct-layout-1.exp alone, just not using any arg will trigger it as well, just later. The following patch fills it in as cc and c++ with empty flags to compile those, I believe that is what e.g. make uses by default, so it should be a reasonable default. We IMHO shouldn't default to GCC_UNDER_TEST because that might be a cross-compiler etc. 2024-02-05 Jakub Jelinek <jakub@redhat.com> * test_installed: Fill in HOSTCC, HOSTCXX, HOSTCFLAGS and HOSTCXXFLAGS.
2024-02-05Daily bump.GCC Administrator1-0/+5
2024-02-04libstdc++: Add copyright and license text to new generated headersJonathan Wakely1-1/+29
contrib/ChangeLog: * unicode/gen_libstdcxx_unicode_data.py: Add copyright and license text to the output. libstdc++-v3/ChangeLog: * include/bits/text_encoding-data.h: Regenerate. * include/bits/unicode-data.h: Regenerate. * scripts/gen_text_encoding_data.py: Add copyright and license text to the output.
2024-01-12Daily bump.GCC Administrator1-0/+5
2024-01-11dg-extract-results.py: Ignore case in header linePaul Iannetta1-1/+2
DejaGNU changed its header line from "Test Run By" to "Test run by" around 2016. This patch makes it so that both alternatives are correcly detected. contrib/ChangeLog: * dg-extract-results.py: Make the test_run regex case insensitive.
2024-01-10Daily bump.GCC Administrator1-0/+5
2024-01-09libstdc++: Fix Unicode property detection functionsJonathan Wakely1-1/+4
Fix some copy & pasted logic in __is_extended_pictographic. This function should yield false for the values before the first edge, not true. Also add a missing boundary condition check in __incb_property. Also Fix an off-by-one error in _Utf_iterator::operator++() that would make dereferencing a past-the-end iterator undefined (where the intended design is that the iterator is always incrementable and dereferenceable, for better memory safety). Also simplify the grapheme view iterator, which still contained some remnants of an earlier design I was experimenting with. Slightly tweak the gen_libstdcxx_unicode_data.py script so that the _Gcb_property enumerators are in the order we encounter them in the data file, instead of sorting them alphabetically. Start with the "Other" property at value 0, because that's the default property for anything not in the file. This makes no practical difference, but seems cleaner. It causes the values in the __gcb_edges table to change, so can only be done now before anybody is using this code yet. The enumerator values and table entries become ABI artefacts for the function using them. contrib/ChangeLog: * unicode/gen_libstdcxx_unicode_data.py: Print out Gcb_property enumerators in the order they're seen, not alphabetical order. libstdc++-v3/ChangeLog: * include/bits/unicode-data.h: Regenerate. * include/bits/unicode.h (_Utf_iterator::operator++()): Fix off by one error. (__incb_property): Add missing check for values before the first edge. (__is_extended_pictographic): Invert return values to fix copy&pasted logic. (_Grapheme_cluster_view::_Iterator): Remove second iterator member and find end of cluster lazily. * testsuite/ext/unicode/grapheme_view.cc: New test. * testsuite/ext/unicode/properties.cc: New test. * testsuite/ext/unicode/view.cc: New test.
2024-01-09Daily bump.GCC Administrator1-0/+7
2024-01-08libstdc++: Add Unicode-aware width estimation for std::formatJonathan Wakely4-2/+3027
This implements the requirements in the following proposals, which dictate how std::format deals with non-ASCII strings: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1868r1.html https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2572r1.html https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2675r1.pdf There are two parts to this. The width estimation for strings must only count the width of the first character in an extended grapheme cluster. That requires implementing the algorithm for detecting cluster breaks, which requires a number of lookup tables of the grapheme cluster break properties (and Indic_Conjunct_Break and Extended_Pictographic properties) of every code point. Additionally, some characters have a field width of 2, which requires another lookup table of field widths for every code point. The tables added in this commit do not contain entries for every code point from 0 to 0x10FFFF as that would be very inefficient and use too much memory. Instead the tables only contain the code points that form an "edge" for a property, omitting all the code points that have the same property as the preceding one. We can use a binary search to find the closest code point in the table that is not greater than the one we're looking for. The tables are generated by a new Python script added to the contrib/unicode directory, and a new data file downloaded from the Unicode Consortium website. The rules for extended grapheme cluster breaking are implemented for the latest Unicode standard, version 15.1.0. libstdc++-v3/ChangeLog: * include/Makefile.am: Add new headers. * include/Makefile.in: Regenerate. * include/bits/unicode.h: New file. * include/bits/unicode-data.h: New file. * include/std/format: Include <bits/unicode.h>. (__literal_encoding_is_utf8): Move to <bits/unicode.h>. (_Spec::_M_fill): Change type to char32_t. (_Spec::_M_parse_fill_and_align): Read a Unicode scalar value instead of a single character. (__write_padded): Change __fill_char parameter to char32_t and encode it into the output. (__formatter_str::format): Use new __unicode::__field_width and __unicode::__truncate functions. * include/std/ostream: Adjust namespace qualification for __literal_encoding_is_utf8. * include/std/print: Likewise. * src/c++23/print.cc: Add [[unlikely]] attribute to error path. * testsuite/ext/unicode/view.cc: New test. * testsuite/std/format/functions/format.cc: Add missing examples from the standard demonstrating alignment with non-ASCII characters. Add examples checking correct handling of extended grapheme clusters. contrib/ChangeLog: * unicode/README: Add notes about generating libstdc++ tables. * unicode/GraphemeBreakProperty.txt: New file. * unicode/emoji-data.txt: New file. * unicode/gen_libstdcxx_unicode_data.py: New file.
2024-01-06Daily bump.GCC Administrator1-0/+25
2024-01-05contrib: Remove C-style comments from Python filesJonathan Wakely18-18/+18
These Python scripts have "*/" at the end of the license header comment blocks, presumably copy&pasted from C files. contrib/ChangeLog: * analyze_brprob.py: Remove stray text at end of comment. * analyze_brprob_spec.py: Likewise. * check-params-in-docs.py: Likewise. * check_GNU_style.py: Likewise. * check_GNU_style_lib.py: Likewise. * filter-clang-warnings.py: Likewise. * gcc-changelog/git_check_commit.py: Likewise. * gcc-changelog/git_commit.py: Likewise. * gcc-changelog/git_email.py: Likewise. * gcc-changelog/git_repository.py: Likewise. * gcc-changelog/git_update_version.py: Likewise. * gcc-changelog/test_email.py: Likewise. * gen_autofdo_event.py: Likewise. * mark_spam.py: Likewise. * unicode/gen-box-drawing-chars.py: Likewise. * unicode/gen-combining-chars.py: Likewise. * unicode/gen-printable-chars.py: Likewise. * unicode/gen_wcwidth.py: Likewise.
2024-01-05contrib: Add script name to usage error in gen_wcwidth.pyJonathan Wakely1-1/+1
contrib/ChangeLog: * unicode/gen_wcwidth.py: Add sys.argv[0] to usage error.
2024-01-04Daily bump.GCC Administrator1-0/+5
2024-01-03Update copyright years.Jakub Jelinek77-79/+79
2024-01-03Small tweaks for update-copyright.pyJakub Jelinek1-1/+5
update-copyright.py --this-year FAILs on two spots in the modula2 directories. One is gpl_v3_without_node.texi, I think that is similar to other license files which we already exclude from updates. And the other is GmcOptions.cc, which has lines like mcPrintf_printf0 ((const char *) "Copyright ", 10); mcPrintf_printf1 ((const char *) "Copyright (C) %d Free Software Foundation, Inc.\\n", 49, (const unsigned char *) &year, (sizeof (year)-1)); mcPrintf_printf1 ((const char *) "Copyright (C) %d Free Software Foundation, Inc.\\n", 49, (const unsigned char *) &year, (sizeof (year)-1)); which update-copyhright.py obviously can't grok. The file is generated and doesn't contain normal Copyright year which should be updated, so I think it is also ok to skip it. 2024-01-03 Jakub Jelinek <jakub@redhat.com> * update-copyright.py (GenericFilter): Skip gpl_v3_without_node.texi. (GCCFilter): Skip GmcOptions.cc.
2023-12-22Daily bump.GCC Administrator1-0/+5
2023-12-21compare_tests: distinguish c-c++-common results by toolAlexandre Oliva1-3/+3
When compare_tests compares both C and C++ tests in c-c++-common, they get the same identifier, so expected differences in results across languages become undesirably noisy. This patch adds tool identifiers to tests, so that runs by different tools are not confused by the compare logic. It also fixes a bug in reporting differences, that would attempt to print an undefined fname (the definitions are in subshell loops), and adjusts the target insertion to match tabs in addition to blanks after colons. for contrib/ChangeLog * compare_tests: Add tool to test lines. Match tabs besides blanks to insert tool and target. Don't print undefined fname.
2023-12-21Daily bump.GCC Administrator1-0/+4
2023-12-20contrib: add git gcc-style aliasJason Merrill1-0/+5
I thought it could be easier to use check_GNU_style.py. With this alias, 'git gcc-style' will take a git revision as argument instead of a file, or check HEAD if no argument is given. contrib/ChangeLog: * gcc-git-customization.sh: Add git gcc-style alias.
2023-12-15Daily bump.GCC Administrator1-0/+10
2023-12-14libgrust: Add libproc_macro and build systemPierre-Emmanuel Patry1-0/+4
Add some dummy files in libproc_macro along with its build system. libgrust/ChangeLog: * Makefile.am: New file. * Makefile.in: Generate. * configure.ac: New file. * configure: Generate. * aclocal.m4: Generate. * libproc_macro/Makefile.am: New file. * libproc_macro/proc_macro.cc: New file. * libproc_macro/proc_macro.h: New file. * libproc_macro/Makefile.in: Generate. contrib/ChangeLog: * gcc_update: Add libgrust file dependencies. Co-authored-by: Arthur Cohen <arthur.cohen@embecosm.com> Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
2023-12-14libgrust: Add entry for maintainersPierre-Emmanuel Patry1-0/+1
ChangeLog: * MAINTAINERS: Add maintainers for libgrust. contrib/ChangeLog: * gcc-changelog/git_commit.py: Add libgrust. Co-authored-by: Arthur Cohen <arthur.cohen@embecosm.com> Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
2023-12-14Daily bump.GCC Administrator1-0/+7