aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.misc-tests
AgeCommit message (Collapse)AuthorFilesLines
2021-09-13Merged current trunk to branch.Thomas Koenig18-409/+461
2020-12-13-fgo-dump-spec: skip typedefs that match struct tagNikhil Benesch1-0/+23
gcc/: * godump.c (go_output_typedef): Suppress typedefs whose name matches the tag of the underlying struct, union, or enum. Output declarations for enums that do not appear in typedefs. gcc/testsuite: * gcc.misc-tests/godump-1.c: Add test cases.
2020-12-09-fdump-go-spec: ignore type ordering of incomplete typesNikhil Benesch1-0/+3
gcc/: * godump.c (go_format_type): Don't consider whether a type has been seen when determining whether to output a type by name. Consider only the use_type_name parameter. (go_output_typedef): When outputting a typedef, format the declaration's original type, which contains the name of the underlying type rather than the name of the typedef. gcc/testsuite: * gcc.misc-tests/godump-1.c: Add test case.
2020-10-20lto-wrapper: Fix -save-temps filename commitTobias Burnus1-12/+12
Fix for 'Improve -save-temps filename' patch, commit b3032d1b84b8ab683f2d7345b6a2d9f783fe946d gcc/ChangeLog * lto-wrapper.c (run_gcc): Use proper variable for %u.ltrans_args dump suffix. gcc/testsuite/ChangeLog * gcc.misc-tests/outputs.exp: Add ltrans_args dump files for 'lto save-temps'.
2020-07-24[PR96230] some -dumpbase-ext fixesAlexandre Oliva1-5/+18
The initial bug report was that compiling (-c) with -dumpbase "" -dumpbase-ext .<ext> crashes the driver. The verification of -dumpbase-ext against -dumpbase doesn't cover the case in which -dumpbase activates backward-compatibility mode. I added a test for that, and for -dumpbase-ext without -dumpbase, trying to make it work in a sensible way, as if applied to the default -dumpbase for each file. It turned out that this made for too much complexity in dealing with suffixes derived from input filenames, so I gave that up and returned to discarding -dumpbase-ext as documented, ending up with a change identical to that in the original bug report. I also thought I caught an off-by-one error in the initial verification, that caused dumpbase_ext to be discarded if it was identical to the specified dumpbase, but that turned out to be intentional as well, so I put in comments and a test to reflect it. Finally, an earlier version of the newly-added tests used "$var.ext" in an expected output list, which showed me the handling of string expansion was incorrect. Reworked the expr into an eval to make that work, and, absent any reliance on post-eval adjustments to so-expanded output names, I arranged for the adjustments to be skipped after eval. Co-Authored-By: "Zhanghaijian (A)" <z.zhanghaijian@huawei.com> for gcc/ChangeLog PR driver/96230 * gcc.c (process_command): Adjust and document conditions to reset dumpbase_ext. for gcc/testsuite/ChangeLog PR driver/96230 * gcc.misc-tests/outputs.exp: Add tests with -dumpbase-ext, with identical -dumpbase, with -dumpbase "", and without any -dumpbase. (outest): Fix "" expansion in expected outputs, skip adjustments.
2020-07-24[PR95720] protect gluefile and wrap_flags with -Wl tooAlexandre Oliva1-11/+3
The testglue object file gets interpreted as another input file, changing the dump and aux output names in GCC unless it is protected by -Wl, like board file-named extra inputs. Refactor the code that modifies the board settings so that it can be used to modify regular variables as well, and do so. for gcc/testsuite/ChangeLog PR testsuite/95720 * lib/gcc-defs.exp (gcc_adjust_linker_flags_list): Split out of... (gcc_adjust_linker_flags): ... this. Protect gluefile and wrap_flags. * gcc.misc-tests/outputs.exp: Use gcc_adjust_linker_flags_list.
2020-06-30arm: Warn if IRQ handler is not compiled with -mgeneral-regs-only [PR ↵Christophe Lyon1-0/+2
target/94743] The interrupt attribute does not guarantee that the FP registers are saved, which can result in problems difficult to debug. Saving the FP registers and status registers can be a large penalty, so it's probably not desirable to do that all the time. If the handler calls other functions, we'd likely need to save all of them, for lack of knowledge of which registers they actually clobber. This is even more obscure for the end-user when the compiler inserts calls to helper functions such as memcpy (some multilibs do use FP registers to speed it up). In the PR, we discussed adding routines in libgcc to save the FP context and saving only locally-clobbered FP registers, but this seems to be too much work for the purpose, given that in general such handlers try to avoid this kind of penalty. I suspect we would also want new attributes to instruct the compiler that saving the FP context is not needed. In the mean time, emit a warning to suggest re-compiling with -mgeneral-regs-only. Note that this can lead to errors if the code uses floating-point and -mfloat-abi=hard, eg: argument of type 'double' not permitted with -mgeneral-regs-only This can be troublesome for the user, but at least this would make him aware of the latent issue. The patch adds several testcases: - pr94734-1-hard.c checks that a warning is emitted when using -mfloat-abi=hard. Function IRQ_HDLR_Test can make implicit calls to runtime floating-point routines (or direct use of FP instructions), IRQ_HDLR_Test2 doesn't. We emit a warning in both cases, though. - pr94734-1-softfp.c: same as above wih -mfloat-abi=softfp. - pr94734-1-soft.c checks that no warning is emitted when using -mfloat-abi=soft when the same code as above. - pr94734-2.c checks that no warning is emitted when using -mgeneral-regs-only. - pr94734-3.c checks that no warning is emitted when using -mgeneral-regs-only even using float-point data. 2020-06-30 Christophe Lyon <christophe.lyon@linaro.org> PR target/94743 gcc/ * config/arm/arm.c (arm_handle_isr_attribute): Warn if -mgeneral-regs-only is not used. gcc/testsuite/ * gcc.misc-tests/arm-isr.c: Add -mgeneral-regs-only. * gcc.target/arm/empty_fiq_handler.c: Add -mgeneral-regs-only. * gcc.target/arm/interrupt-1.c: Add -mgeneral-regs-only. * gcc.target/arm/interrupt-2.c: Add -mgeneral-regs-only. * gcc.target/arm/pr70830.c: Add -mgeneral-regs-only. * gcc.target/arm/pr94743-1-hard.c: New test. * gcc.target/arm/pr94743-1-soft.c: New test. * gcc.target/arm/pr94743-1-softfp.c: New test. * gcc.target/arm/pr94743-2.c: New test. * gcc.target/arm/pr94743-3.c: New test.
2020-06-24outputs.exp: conditionals for split-dwarf and lto pluginAlexandre Oliva1-303/+338
This patch introduces support for conditionals (and expr) expansions to file lists in proc outest in outputs.exp. The conditionals machinery is now used to guard files that are only created by the LTO plugin, or when not using the LTO plugin. It is also used to avoid special-casing .dwo files: the condition of when they're expected is now encoded in the list. Furthermore, the -g flag, that used to be specified along with $gsplit_dwarf, is now moved into $gsplit_dwarf, so that we don't compile with -g if -gsplit-dwarf is not needed. This avoids having to deal with .dSYM directories. Further removing special cases, $aout is now dealt with in a more general way, using expr to perform variable/string expansion. for gcc/testsuite/ChangeLog PR testsuite/95416 PR testsuite/95577 * gcc.misc-tests/outputs.exp (gsplit_dwarf): Move -g into it. (outest): Introduce conditionals and string/variable/expr expansion. Drop special-casing of $aout and .dwo. (gspd): New conditional. Guard all .dwo files with it. (ltop): New conditional. Guard files created by the LTO plugin with it. Guard files created by fat LTO compilation with its negation. Add a few -fno-use-linker-plugin tests guarded by it.
2020-06-17testsuite: clean up .gcov files in test-suite.Martin Liska1-1/+1
gcc/testsuite/ChangeLog: PR testsuite/95720 * gcc.misc-tests/gcov-pr94029.c: Remove not needed remove-gcda. * lib/gcov.exp: Delete properly .gcov files.
2020-06-02spell ldscript correctly in outputs.exp et alAlexandre Oliva1-1/+1
In my recent changes to outputs.exp and gcc-defs.exp, I misreferenced dejagnu board property ldscript, singular, as ldscripts, plural. This probably didn't have much impact on gcc-defs.exp: the code there would just prefix with -Wl, any options that amounted to file names, and linker scripts probably wouldn't be named without a -T or even an -Wl,-T, prefix. The visible effects were in outputs.exp, that also intended to add the ldscript, if present, to the set of options to be passed to the compiler driver for linking. Using the wrong option name, that wouldn't work. for gcc/testsuite/ChangeLog * gcc.misc-tests/outputs.exp: Spell ldscript correctly. * lib/gcc-defs.exp (gcc_adjust_linker_flags): Likewise.
2020-05-27outputs.exp: no lto, linker default output, cdtor temps, empty argsAlexandre Oliva1-47/+116
This patch fixes various issues in the testsuite that came up after the dump/aux output revamp, namely: - many outputs.exp tests used -flto without checking that LTO was supported, getting lots of failures. With this patch, we test for LTO support, and skip -flto tests on platforms that do not support it. - some linkers error out if an output file is not named, and the a.{out,exe} construct that we used throughout outputs.exp to match the default linker output would trigger a bug in tcl globbing. With this patch, we detect the default linker output early. If none is found, we arrange to pass -o a.out explicitly in tests that used to test the default linker output. We now look for the detected default, or for explicitly-specified output. - collect2 will leave <execname>.cdtor.* files behind in -save-temps tests. Ignore them. - The prepending of -Wl, to file names in ldflags et al was done in a way that introduced empty arguments when consecutive blanks appeared in these board configuration knobs. Skip the empty strings between consecutive blanks to avoid this problem. gcc/testsuite/ChangeLog: * lib/gcc-defs.exp: Avoid introducing empty arguments between consecutive blanks in board linking options. * gcc.misc-tests/outputs.exp: Likewise. Document -gsplit-dwarf testing, skip LTO tests if -flto is not supported, detect the default linker output name, cope with the need for an explicit executable output.
2020-05-26revamp dump and aux output namesAlexandre Oliva4-0/+702
This patch simplifies (!!!) the logic governing the naming of dump files and auxiliary output files in the driver, in the compiler, and in the LTO wrapper. No changes are made to the naming of primary outputs, there are often ways to restore past behavior, and a number of inconsistencies are fixed. Some internal options are removed (-auxbase and -auxbase-strip), sensible existing uses of -dumpdir and -dumpbase options remain unchanged, additional useful cases are added, making for what is still admittedly quite complex. Extensive documentation and testcases provide numerous examples, from normal to corner cases. The most visible changes are: - aux and dump files now always go in the same directory, that defaults to the directory of the primary output, but that can be overridden with -dumpdir, -save-temps=*, or, preserving past behavior, with a -dumpbase with a directory component. - driver and compiler now have the same notion of naming of auxiliary outputs, e.g. .dwo files will no longer be in one location while the debug info suggests they are elsewhere, and -save-temps and .dwo auxiliary outputs now go in the same location as .su, .ci and coverage data, with consistent naming. - explicitly-specified primary output names guide not only the location of aux and dump outputs: the output base name is also used in their base name, as a prefix when also linking (e.g. foo.c bar.c -o foobar creates foobar-foo.dwo and foobar-bar.dwo with -gsplit-dwarf), or as the base name instead of the input name (foo.c -c -o whatever.o creates whatever.su rather than foo.su with -fstack-usage). The preference for the input file base name, quite useful for our testsuite, can be restored with -dumpbase "". When compiling and linking tests in the testsuite with additional inputs, we now use this flag. Files named in dejagnu board ldflags, libs, and ldscripts are now quoted in the gcc testsuite with -Wl, so that they are not counted as additional inputs by the compiler driver. - naming a -dumpbase when compiling multiple sources used to cause dumps from later compiles to overwrite those of earlier ones; it is now used as a prefix when compiling multiple sources, like an executable name above. - the dumpbase, explicitly specified or computed from output or input names, now also governs the naming of aux outputs; since aux outputs usually replaced the suffix from the input name, while dump outputs append their own additional suffixes, a -dumpbase-ext option is introduced to enable a chosen suffix to be dropped from dumpbase to form aux output names. - LTO dump and aux outputs were quite a mess, sometimes leaking temporary output names into -save-temps output names, sometimes conversely generating desirable aux outputs in temporary locations. They now obey the same logic of compiler aux and dump outputs, landing in the expected location and taking the linker output name or an explicit dumpbase overrider into account. - Naming of -fdump-final-insns outputs now follows the dump file naming logic for the .gkd files, and the .gk dump files generated in the second -fcompare-debug compilation get the .gk inserted before the suffix that -dumpbase-ext drops in aux outputs. gcc/ChangeLog: * common.opt (aux_base_name): Define. (dumpbase, dumpdir): Mark as Driver options. (-dumpbase, -dumpdir): Likewise. (dumpbase-ext, -dumpbase-ext): New. (auxbase, auxbase-strip): Drop. * doc/invoke.texi (-dumpbase, -dumpbase-ext, -dumpdir): Document. (-o): Introduce the notion of primary output, mention it influences auxiliary and dump output names as well, add examples. (-save-temps): Adjust, move examples into -dump*. (-save-temps=cwd, -save-temps=obj): Likewise. (-fdump-final-insns): Adjust. * dwarf2out.c (gen_producer_string): Drop auxbase and auxbase_strip; add dumpbase_ext. * gcc.c (enum save_temps): Add SAVE_TEMPS_DUMP. (save_temps_prefix, save_temps_length): Drop. (save_temps_overrides_dumpdir): New. (dumpdir, dumpbase, dumpbase_ext): New. (dumpdir_length, dumpdir_trailing_dash_added): New. (outbase, outbase_length): New. (The Specs Language): Introduce %". Adjust %b and %B. (ASM_FINAL_SPEC): Use %b.dwo for an aux output name always. Precede object file with %w when it's the primary output. (cpp_debug_options): Do not pass on incoming -dumpdir, -dumpbase and -dumpbase-ext options; recompute them with %:dumps. (cc1_options): Drop auxbase with and without compare-debug; use cpp_debug_options instead of dumpbase. Mark asm output with %w when it's the primary output. (static_spec_functions): Drop %:compare-debug-auxbase-opt and %:replace-exception. Add %:dumps. (driver_handle_option): Implement -save-temps=*/-dumpdir mutual overriding logic. Save dumpdir, dumpbase and dumpbase-ext options. Do not save output_file in save_temps_prefix. (adds_single_suffix_p): New. (single_input_file_index): New. (process_command): Combine output dir, output base name, and dumpbase into dumpdir and outbase. (set_collect_gcc_options): Pass a possibly-adjusted -dumpdir. (do_spec_1): Optionally dumpdir instead of save_temps_prefix, and outbase instead of input_basename in %b, %B and in -save-temps aux files. Handle empty argument %". (driver::maybe_run_linker): Adjust dumpdir and auxbase. (compare_debug_dump_opt_spec_function): Adjust gkd dump file naming. Spec-quote the computed -fdump-final-insns file name. (debug_auxbase_opt): Drop. (compare_debug_self_opt_spec_function): Drop auxbase-strip computation. (compare_debug_auxbase_opt_spec_function): Drop. (not_actual_file_p): New. (replace_extension_spec_func): Drop. (dumps_spec_func): New. (convert_white_space): Split-out parts into... (quote_string, whitespace_to_convert_p): ... these. New. (quote_spec_char_p, quote_spec, quote_spec_arg): New. (driver::finalize): Release and reset new variables; drop removed ones. * lto-wrapper.c (HAVE_TARGET_EXECUTABLE_SUFFIX): Define if... (TARGET_EXECUTABLE_SUFFIX): ... is defined; define this to the empty string otherwise. (DUMPBASE_SUFFIX): Drop leading period. (debug_objcopy): Use concat. (run_gcc): Recognize -save-temps=* as -save-temps too. Obey -dumpdir. Pass on empty dumpdir and dumpbase with a directory component. Simplify temp file names. * opts.c (finish_options): Drop aux base name handling. (common_handle_option): Drop auxbase-strip handling. * toplev.c (print_switch_values): Drop auxbase, add dumpbase-ext. (process_options): Derive aux_base_name from dump_base_name and dump_base_ext. (lang_dependent_init): Compute dump_base_ext along with dump_base_name. Disable stack usage and callgraph-info during lto generation and compare-debug recompilation. gcc/fortran/ChangeLog: * options.c (gfc_get_option_string): Drop auxbase, add dumpbase_ext. gcc/ada/ChangeLog: * gcc-interface/lang-specs.h: Drop auxbase and auxbase-strip. Use %:dumps instead of -dumpbase. Add %w for implicit .s primary output. * switch.adb (Is_Internal_GCC_Switch): Recognize dumpdir and dumpbase-ext. Drop auxbase and auxbase-strip. lto-plugin/ChangeLog: * lto-plugin.c (skip_in_suffix): New. (exec_lto_wrapper): Use skip_in_suffix and concat to build non-temporary output names. (onload): Look for -dumpdir in COLLECT_GCC_OPTIONS, and override link_output_name with it. contrib/ChangeLog: * compare-debug: Adjust for .gkd files named as dump files, with the source suffix rather than the object suffix. gcc/testsuite/ChangeLog: * gcc.misc-tests/outputs.exp: New. * gcc.misc-tests/outputs-0.c: New. * gcc.misc-tests/outputs-1.c: New. * gcc.misc-tests/outputs-2.c: New. * lib/gcc-defs.exp (gcc_adjusted_linker_flags): New. (gcc_adjust_linker_flags): New. (dg-additional-files-options): Call it. Pass -dumpbase "" when there are additional sources. * lib/profopt.exp (profopt-execute): Pass the executable suffix with -dumpbase-ext. * lib/scandump.exp (dump-base): Mention -dumpbase "" use. * lib/scanltranstree.exp: Adjust dump suffix expectation. * lib/scanwpaipa.exp: Likewise.
2020-03-19c: Fix up cfun->function_end_locus from the C FE [PR94029]Jakub Jelinek1-0/+14
On the following testcase we ICE because while DECL_STRUCT_FUNCTION (current_function_decl)->function_start_locus = c_parser_peek_token (parser)->location; and similarly DECL_SOURCE_LOCATION (fndecl) is set from some token's location, the end is set as: /* Store the end of the function, so that we get good line number info for the epilogue. */ cfun->function_end_locus = input_location; and the thing is that input_location is only very rarely set in the C FE (the primary spot that changes it is the cb_line_change/fe_file_change). Which means, e.g. for pretty much all C functions that are on a single line, function_start_locus column is > than function_end_locus column, and the testcase even has smaller line in function_end_locus because cb_line_change isn't performed while parsing multi-line arguments of a function-like macro. Attached are two possible fixes to achieve what the C++ FE does, in particular that cfun->function_end_locus is the locus of the closing } of the function. The first one updates input_location when we see a closing } of a compound statement (though any, not just the function body) and thus input_location in the finish_function call is what we need. The second instead propagates the location_t from the parsing of the outermost compound statement (the function body) to finish_function. The second one is this version. 2020-03-19 Jakub Jelinek <jakub@redhat.com> PR gcov-profile/94029 * c-tree.h (finish_function): Add location_t argument defaulted to input_location. * c-parser.c (c_parser_compound_statement): Add endlocp argument and set it to the locus of closing } if non-NULL. (c_parser_compound_statement_nostart): Return locus of closing }. (c_parser_parse_rtl_body): Likewise. (c_parser_declaration_or_fndef): Propagate locus of closing } to finish_function. * c-decl.c (finish_function): Add end_loc argument, use it instead of input_location to set function_end_locus. * gcc.misc-tests/gcov-pr94029.c: New test.
2020-03-15driver: Fix redundant descriptions in optionsLewis Hyatt1-1/+1
Addresses issues where the two-column format of options descriptions was used, but the columns were separated by spaces rather than a single tab, causing the help output to be more verbose than intended. gcc/ChangeLog: 2020-03-15 Lewis Hyatt <lhyatt@gmail.com> * common.opt: Avoid redundancy in the help text. * config/arc/arc.opt: Likewise. * config/cr16/cr16.opt: Likewise. gcc/c-family/ChangeLog: 2020-03-15 Lewis Hyatt <lhyatt@gmail.com> * c.opt: Avoid redundancy in the help text. gcc/fortran/ChangeLog: 2020-03-15 Lewis Hyatt <lhyatt@gmail.com> * lang.opt: Avoid redundancy in the help text. gcc/testsuite/ChangeLog: 2020-03-15 Lewis Hyatt <lhyatt@gmail.com> * gcc.misc-tests/help.exp: Adapt to new output for -Walloc-size-larger-than= option.
2020-01-01Update copyright years.Jakub Jelinek17-17/+17
From-SVN: r279813
2019-11-12Fix test-suite fallout.Martin Liska1-3/+1
2019-11-12 Martin Liska <mliska@suse.cz> * gcc.dg/completion-3.c: Append = to all expected results and sort expected output. * gcc.dg/pr83620.c: Update error message. * gcc.dg/spellcheck-params-2.c: Likewise. * gcc.dg/spellcheck-params.c: Likewise. * gcc.misc-tests/help.exp: Update expected output. From-SVN: r278089
2019-10-31Test --help=common for full sentencesAlexandre Oliva1-2/+1
The portion of help.exp that checks that help output contains full sentences failed to cover common options. for gcc/testsuite/ChangeLog * gcc.misc-tests/help.exp: Test --help=common for full sentences. From-SVN: r277686
2019-08-16Match ld besides collect2 in gcov testAlexandre Oliva1-1/+2
The regexp that checks that -lgcov is linked in when --coverage is passed to the compiler driver requires the command line to match '/collect2'. Some of our targets don't match that, but they match /ld or ${target_alias}-ld depending on the testing scenario, so I'd like to tweak the test to match those as well. for gcc/testsuite/ChangeLog * gcc.misc-tests/options.exp: Match /ld and -ld besides /collect2. From-SVN: r274557
2019-07-24PR driver/80545 - option -Wstringop-overflow not recognized by FortranMartin Sebor1-0/+28
gcc/cp/ChangeLog: PR driver/80545 * decl.c (finish_function): Use lang_mask. gcc/testsuite/ChangeLog: PR driver/80545 * gcc.misc-tests/help.exp: Add tests. * lib/options.exp: Handle C++. gcc/ChangeLog: PR driver/80545 * diagnostic.c (diagnostic_classify_diagnostic): Use lang_mask. (diagnostic_report_diagnostic): Same. * diagnostic.h (diagnostic_context::option_enabled): Add an argument. (diagnostic_context::lang_mask): New data member. * ipa-pure-const.c (suggest_attribute): Use lang_hooks.option_lang_mask (). * opts-common.c (option_enabled): Handle new argument. (get_option_state): Pass an additional argument. * opts.c (print_filtered_help): Print supported languages for unsupported options. Adjust printing of current state. * opts.h (option_enabled): Add argument. * toplev.c (print_switch_values): Use lang_mask. (general_init): Set global_dc->lang_mask. From-SVN: r273771
2019-06-07re PR debug/90574 ([gdb] gdb wrongly stopped at a breakpoint in an ↵Richard Biener2-0/+35
unexecuted line of code) 2019-06-07 Richard Biener <rguenther@suse.de> PR debug/90574 * tree-cfg.c (stmt_starts_bb_p): Split blocks at labels that appear after user labels. * gcc.misc-tests/gcov-pr90574-1.c: New testcase. * gcc.misc-tests/gcov-pr90574-2.c: Likewise. From-SVN: r272040
2019-05-14Remove obsolete Solaris 10 supportRainer Orth1-1/+1
libstdc++-v3: * config/os/solaris/solaris2.10: Move to ... * config/os/solaris: ... this. * configure.host (os_include_dir): Adapt. (abi_baseline_pair): Remove Solaris 10 handling. * config/abi/post/i386-solaris2.10: Remove. * config/abi/post/sparc-solaris2.10: Remove. * config/abi/post/i386-solaris2.11: Rename to ... * config/abi/post/i386-solaris: ... this. * config/abi/post/sparc-solaris2.11: Rename to ... * config/abi/post/sparc-solaris: ... this. * libsupc++/new_opa.cc [_GLIBCXX_HAVE_MEMALIGN] [__sun]: Remove workaround. * testsuite/ext/enc_filebuf/char/13598.cc: Remove *-*-solaris2.10 xfail. libsanitizer: * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10* handling. * configure: Regenerate. libgcc: * config.host: Simplify various *-*-solaris2.1[0-9]* to *-*-solaris2*. * configure.ac: Likewise. * configure: Regenerate. * config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove Solaris 10 and Solaris 11 < snv_125 handling. libbacktrace: * configure.ac (have_dl_iterate_phdr): Remove *-*-solaris2.10* handling. * configure: Regenerate. gcc/testsuite: * gcc.dg/atomic/c11-atomic-exec-4.c: Simplify triplet to *-*-solaris2*. * gcc.dg/atomic/c11-atomic-exec-5.c: Likewise. * gcc.dg/c99-math-double-1.c: Likewise. * gcc.dg/c99-math-float-1.c: Likewise. * gcc.dg/c99-math-long-double-1.c: Likewise. * gcc.misc-tests/linkage.exp: Simplify triplet to x86_64-*-solaris2*. * gcc.target/i386/mcount_pic.c: Remove *-*-solaris2.10* && !gld xfail. * gcc.target/i386/pr63620.c: Likewise. * lib/target-supports.exp (check_sse_os_support_available): Remove Solaris 9/x86 workaround. gcc: * config.gcc: Move *-*-solaris2.10* from obsolete configurations to unsupported ones. Simplify x86_64-*-solaris2.1[0-9]* to x86_64-*-solaris2*. * config.host: Likewise. * config/i386/sol2.h (ASM_COMMENT_START): Remove. * config/sparc/driver-sparc.c (host_detect_local_cpu) [__sun__ && __svr4__]: Remove "brand" fallback. [!KSTAT_DATA_STRING]: Remove. * configure.ac (gcc_cv_ld_hidden): Simplify *-*-solaris2.1[0-9]* to *-*-solaris2*. (comdat_group): Likewise. (set_have_as_tls): Likewise. (gcc_cv_target_dl_iterate_phdr): Likewise. (gcc_cv_as_shf_merge): Remove Solaris 10/x86 workaround. (gcc_cv_ld_aligned_shf_merge): Remove Solaris 10/SPARC workaround. * configure: Regenerate. * doc/install.texi: Simplify Solaris target triplets. (Specific, i?86-*-solaris2*): Remove Solaris 10 references. (Specific, *-*-solaris2*): Document Solaris 10 removal. Remove Solaris 10 references. Remove obsolete Solaris bug reference. (Specific, sparc-sun-solaris2.10): Remove. From-SVN: r271183
2019-01-15godump.c (go_output_typedef): When outputting a typedef...Nikhil Benesch1-0/+5
gcc/: * godump.c (go_output_typedef): When outputting a typedef, refer to the underlying type by its name and not its structure. gcc/testsuite: * gcc.misc-tests/godump-1.c: Add test case for typedef before struct. From-SVN: r267958
2019-01-01Update copyright years.Jakub Jelinek17-17/+17
From-SVN: r267494
2018-11-21[driver] Ensure --help=params lines end with periodTom de Vries1-0/+2
Ensure that gcc --help=params lines end with a period by: - fixing the help message of param HOT_BB_COUNT_FRACTION, and - adding a test-case. Build and tested on x86_64. 2018-11-21 Tom de Vries <tdevries@suse.de> PR driver/79855 * params.def (HOT_BB_COUNT_FRACTION): Terminate help message with period. * lib/options.exp (check_for_options_with_filter): New proc. * gcc.misc-tests/help.exp: Check that --help=params lines end with period. From-SVN: r266338
2018-10-28Add D front-end, libphobos library, and D2 testsuite.Iain Buclaw1-1/+1
ChangeLog: * Makefile.def (target_modules): Add libphobos. (flags_to_pass): Add GDC, GDCFLAGS, GDC_FOR_TARGET and GDCFLAGS_FOR_TARGET. (dependencies): Make libphobos depend on libatomic, libbacktrace configure, and zlib configure. (language): Add language d. * Makefile.in: Rebuild. * Makefile.tpl (BUILD_EXPORTS): Add GDC and GDCFLAGS. (HOST_EXPORTS): Add GDC. (POSTSTAGE1_HOST_EXPORTS): Add GDC and GDC_FOR_BUILD. (BASE_TARGET_EXPORTS): Add GDC. (GDC_FOR_BUILD, GDC, GDCFLAGS): New variables. (GDC_FOR_TARGET, GDC_FLAGS_FOR_TARGET): New variables. (EXTRA_HOST_FLAGS): Add GDC. (STAGE1_FLAGS_TO_PASS): Add GDC. (EXTRA_TARGET_FLAGS): Add GDC and GDCFLAGS. * config-ml.in: Treat GDC and GDCFLAGS like other compiler/flag environment variables. * configure: Rebuild. * configure.ac: Add target-libphobos to target_libraries. Set and substitute GDC_FOR_BUILD and GDC_FOR_TARGET. config/ChangeLog: * multi.m4: Set GDC. gcc/ChangeLog: * Makefile.in (tm_d_file_list, tm_d_include_list): New variables. (TM_D_H, D_TARGET_DEF, D_TARGET_H, D_TARGET_OBJS): New variables. (tm_d.h, cs-tm_d.h, default-d.o): New rules. (d/d-target-hooks-def.h, s-d-target-hooks-def-h): New rules. (s-tm-texi): Also check timestamp on d-target.def. (generated_files): Add TM_D_H and d-target-hooks-def.h. (build/genhooks.o): Also depend on D_TARGET_DEF. * config.gcc (tm_d_file, d_target_objs, target_has_targetdm): New variables. * config/aarch64/aarch64-d.c: New file. * config/aarch64/aarch64-linux.h (GNU_USER_TARGET_D_CRITSEC_SIZE): Define. * config/aarch64/aarch64-protos.h (aarch64_d_target_versions): New prototype. * config/aarch64/aarch64.h (TARGET_D_CPU_VERSIONS): Define. * config/aarch64/t-aarch64 (aarch64-d.o): New rule. * config/arm/arm-d.c: New file. * config/arm/arm-protos.h (arm_d_target_versions): New prototype. * config/arm/arm.h (TARGET_D_CPU_VERSIONS): Define. * config/arm/linux-eabi.h (EXTRA_TARGET_D_OS_VERSIONS): Define. * config/arm/t-arm (arm-d.o): New rule. * config/default-d.c: New file. * config/glibc-d.c: New file. * config/gnu.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/i386/i386-d.c: New file. * config/i386/i386-protos.h (ix86_d_target_versions): New prototype. * config/i386/i386.h (TARGET_D_CPU_VERSIONS): Define. * config/i386/linux-common.h (EXTRA_TARGET_D_OS_VERSIONS): Define. (GNU_USER_TARGET_D_CRITSEC_SIZE): Define. * config/i386/t-i386 (i386-d.o): New rule. * config/kfreebsd-gnu.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/kopensolaris-gnu.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/linux-android.h (ANDROID_TARGET_D_OS_VERSIONS): Define. * config/linux.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/mips/linux-common.h (EXTRA_TARGET_D_OS_VERSIONS): Define. * config/mips/mips-d.c: New file. * config/mips/mips-protos.h (mips_d_target_versions): New prototype. * config/mips/mips.h (TARGET_D_CPU_VERSIONS): Define. * config/mips/t-mips (mips-d.o): New rule. * config/powerpcspe/linux.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/powerpcspe/linux64.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/powerpcspe/powerpcspe-d.c: New file. * config/powerpcspe/powerpcspe-protos.h (rs6000_d_target_versions): New prototype. * config/powerpcspe/powerpcspe.c (rs6000_output_function_epilogue): Support GNU D by using 0 as the language type. * config/powerpcspe/powerpcspe.h (TARGET_D_CPU_VERSIONS): Define. * config/powerpcspe/t-powerpcspe (powerpcspe-d.o): New rule. * config/riscv/riscv-d.c: New file. * config/riscv/riscv-protos.h (riscv_d_target_versions): New prototype. * config/riscv/riscv.h (TARGET_D_CPU_VERSIONS): Define. * config/riscv/t-riscv (riscv-d.o): New rule. * config/rs6000/linux.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/rs6000/linux64.h (GNU_USER_TARGET_D_OS_VERSIONS): Define. * config/rs6000/rs6000-d.c: New file. * config/rs6000/rs6000-protos.h (rs6000_d_target_versions): New prototype. * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Support GNU D by using 0 as the language type. * config/rs6000/rs6000.h (TARGET_D_CPU_VERSIONS): Define. * config/rs6000/t-rs6000 (rs6000-d.o): New rule. * config/s390/s390-d.c: New file. * config/s390/s390-protos.h (s390_d_target_versions): New prototype. * config/s390/s390.h (TARGET_D_CPU_VERSIONS): Define. * config/s390/t-s390 (s390-d.o): New rule. * config/sparc/sparc-d.c: New file. * config/sparc/sparc-protos.h (sparc_d_target_versions): New prototype. * config/sparc/sparc.h (TARGET_D_CPU_VERSIONS): Define. * config/sparc/t-sparc (sparc-d.o): New rule. * config/t-glibc (glibc-d.o): New rule. * configure: Regenerated. * configure.ac (tm_d_file): New variable. (tm_d_file_list, tm_d_include_list, d_target_objs): Add substitutes. * doc/contrib.texi (Contributors): Add self for the D frontend. * doc/frontends.texi (G++ and GCC): Mention D as a supported language. * doc/install.texi (Configuration): Mention libphobos as an option for --enable-shared. Mention d as an option for --enable-languages. (Testing): Mention check-d as a target. * doc/invoke.texi (Overall Options): Mention .d, .dd, and .di as file name suffixes. Mention d as a -x option. * doc/sourcebuild.texi (Top Level): Mention libphobos. * doc/standards.texi (Standards): Add section on D language. * doc/tm.texi: Regenerated. * doc/tm.texi.in: Add @node for D language and ABI, and @hook for TARGET_CPU_VERSIONS, TARGET_D_OS_VERSIONS, and TARGET_D_CRITSEC_SIZE. * dwarf2out.c (is_dlang): New function. (gen_compile_unit_die): Use DW_LANG_D for D. (declare_in_namespace): Return module die for D, instead of adding extra declarations into the namespace. (gen_namespace_die): Generate DW_TAG_module for D. (gen_decl_die): Handle CONST_DECLSs for D. (dwarf2out_decl): Likewise. (prune_unused_types_walk_local_classes): Handle DW_tag_interface_type. (prune_unused_types_walk): Handle DW_tag_interface_type same as other kinds of aggregates. * gcc.c (default_compilers): Add entries for .d, .dd and .di. * genhooks.c: Include d/d-target.def. gcc/po/ChangeLog: * EXCLUDES: Add sources from d/dmd. gcc/testsuite/ChangeLog: * gcc.misc-tests/help.exp: Add D to option descriptions check. * gdc.dg/asan/asan.exp: New file. * gdc.dg/asan/gdc272.d: New test. * gdc.dg/compilable.d: New test. * gdc.dg/dg.exp: New file. * gdc.dg/gdc254.d: New test. * gdc.dg/gdc260.d: New test. * gdc.dg/gdc270a.d: New test. * gdc.dg/gdc270b.d: New test. * gdc.dg/gdc282.d: New test. * gdc.dg/gdc283.d: New test. * gdc.dg/imports/gdc170.d: New test. * gdc.dg/imports/gdc231.d: New test. * gdc.dg/imports/gdc239.d: New test. * gdc.dg/imports/gdc241a.d: New test. * gdc.dg/imports/gdc241b.d: New test. * gdc.dg/imports/gdc251a.d: New test. * gdc.dg/imports/gdc251b.d: New test. * gdc.dg/imports/gdc253.d: New test. * gdc.dg/imports/gdc254a.d: New test. * gdc.dg/imports/gdc256.d: New test. * gdc.dg/imports/gdc27.d: New test. * gdc.dg/imports/gdcpkg256/package.d: New test. * gdc.dg/imports/runnable.d: New test. * gdc.dg/link.d: New test. * gdc.dg/lto/lto.exp: New file. * gdc.dg/lto/ltotests_0.d: New test. * gdc.dg/lto/ltotests_1.d: New test. * gdc.dg/runnable.d: New test. * gdc.dg/simd.d: New test. * gdc.test/gdc-test.exp: New file. * lib/gdc-dg.exp: New file. * lib/gdc.exp: New file. libphobos/ChangeLog: * Makefile.am: New file. * Makefile.in: New file. * acinclude.m4: New file. * aclocal.m4: New file. * config.h.in: New file. * configure: New file. * configure.ac: New file. * d_rules.am: New file. * libdruntime/Makefile.am: New file. * libdruntime/Makefile.in: New file. * libdruntime/__entrypoint.di: New file. * libdruntime/__main.di: New file. * libdruntime/gcc/attribute.d: New file. * libdruntime/gcc/backtrace.d: New file. * libdruntime/gcc/builtins.d: New file. * libdruntime/gcc/config.d.in: New file. * libdruntime/gcc/deh.d: New file. * libdruntime/gcc/libbacktrace.d.in: New file. * libdruntime/gcc/unwind/arm.d: New file. * libdruntime/gcc/unwind/arm_common.d: New file. * libdruntime/gcc/unwind/c6x.d: New file. * libdruntime/gcc/unwind/generic.d: New file. * libdruntime/gcc/unwind/package.d: New file. * libdruntime/gcc/unwind/pe.d: New file. * m4/autoconf.m4: New file. * m4/druntime.m4: New file. * m4/druntime/cpu.m4: New file. * m4/druntime/libraries.m4: New file. * m4/druntime/os.m4: New file. * m4/gcc_support.m4: New file. * m4/gdc.m4: New file. * m4/libtool.m4: New file. * src/Makefile.am: New file. * src/Makefile.in: New file. * src/libgphobos.spec.in: New file. * testsuite/Makefile.am: New file. * testsuite/Makefile.in: New file. * testsuite/config/default.exp: New file. * testsuite/lib/libphobos-dg.exp: New file. * testsuite/lib/libphobos.exp: New file. * testsuite/testsuite_flags.in: New file. From-SVN: r265573
2018-07-31GCOV: add cache for streamed locations.Martin Liska3-0/+70
2018-07-31 Martin Liska <mliska@suse.cz> PR gcov-profile/85338 PR gcov-profile/85350 PR gcov-profile/85372 * profile.c (struct location_triplet): New. (struct location_triplet_hash): Likewise. (output_location): Do not output a BB that is already recorded for a line. (branch_prob): Use streamed_locations. 2018-07-31 Martin Liska <mliska@suse.cz> PR gcov-profile/85338 PR gcov-profile/85350 PR gcov-profile/85372 * gcc.misc-tests/gcov-pr85338.c: New test. * gcc.misc-tests/gcov-pr85350.c: New test. * gcc.misc-tests/gcov-pr85372.c: New test. From-SVN: r263113
2018-07-31Fix GCOV CFG related issues.Martin Liska4-0/+97
2018-07-31 Martin Liska <mliska@suse.cz> PR gcov-profile/83813 PR gcov-profile/84758 PR gcov-profile/85217 PR gcov-profile/85332 * profile.c (branch_prob): Do not record GOTO expressions for GIMPLE statements which locations are already streamed. 2018-07-31 Martin Liska <mliska@suse.cz> PR gcov-profile/83813 PR gcov-profile/84758 PR gcov-profile/85217 PR gcov-profile/85332 * gcc.misc-tests/gcov-pr83813.c: New test. * gcc.misc-tests/gcov-pr84758.c: New test. * gcc.misc-tests/gcov-pr85217.c: New test. * gcc.misc-tests/gcov-pr85332.c: New test. From-SVN: r263111
2018-07-26gcov: Fix wrong usage of NAN in statistics (PR gcov-profile/86536).Martin Liska1-0/+25
2018-07-26 Martin Liska <mliska@suse.cz> PR gcov-profile/86536 * gcov.c (format_gcov): Use printf format %.*f directly and do not handle special values. 2018-07-26 Martin Liska <mliska@suse.cz> PR gcov-profile/86536 * gcc.misc-tests/gcov-pr86536.c: New test. From-SVN: r262991
2018-07-07Fix sigsegv on -fdump-tree-all-enumerate_localsTom de Vries1-0/+38
2018-07-07 Tom de Vries <tdevries@suse.de> * tree-dfa.c (dump_enumerated_decls): Handle cfun->cfg == NULL. * gcc.misc-tests/options.exp (check_for_all_options): Clean up dump files. (get_dump_flags): New proc. (toplevel): Test all dump flags. From-SVN: r262500
2018-01-03Update copyright years.Jakub Jelinek17-17/+17
From-SVN: r256169
2017-11-06[testsuite] Fix directives orderChristophe Lyon1-1/+1
2017-11-06 Christophe Lyon <christophe.lyon@linaro.org> * gcc.c-torture/execute/pr23135.c: Move dg-add-options after dg-options. * gcc.dg/torture/pr78305.c: Move dg-do as first directive. * gcc.misc-tests/gcov-3.c: Likewise. * gcc.target/arm/cmse/baseline/cmse-11.c: Move dg-options before dg-add-options. * gcc.target/arm/cmse/baseline/cmse-13.c: Likewise. * gcc.target/arm/cmse/baseline/cmse-2.c: Likewise. * gcc.target/arm/cmse/baseline/cmse-6.c: Likewise. * gcc.target/arm/cmse/baseline/softfp.c: Likewise. * gcc.target/arm/cmse/mainline/hard-sp/cmse-13.c: Likewise. * gcc.target/arm/cmse/mainline/hard-sp/cmse-5.c: Likewise. * gcc.target/arm/cmse/mainline/hard-sp/cmse-7.c: Likewise. * gcc.target/arm/cmse/mainline/hard-sp/cmse-8.c: Likewise. * gcc.target/arm/cmse/mainline/hard/cmse-13.c: Likewise. * gcc.target/arm/cmse/mainline/hard/cmse-5.c: Likewise. * gcc.target/arm/cmse/mainline/hard/cmse-7.c: Likewise. * gcc.target/arm/cmse/mainline/hard/cmse-8.c: Likewise. * gcc.target/arm/cmse/mainline/soft/cmse-13.c: Likewise. * gcc.target/arm/cmse/mainline/soft/cmse-5.c: Likewise. * gcc.target/arm/cmse/mainline/soft/cmse-7.c: Likewise. * gcc.target/arm/cmse/mainline/soft/cmse-8.c: Likewise. * gcc.target/arm/cmse/mainline/softfp-sp/cmse-5.c: Likewise. * gcc.target/arm/cmse/mainline/softfp-sp/cmse-7.c: Likewise. * gcc.target/arm/cmse/mainline/softfp-sp/cmse-8.c: Likewise. * gcc.target/arm/cmse/mainline/softfp/cmse-13.c: Likewise. * gcc.target/arm/cmse/mainline/softfp/cmse-5.c: Likewise. * gcc.target/arm/cmse/mainline/softfp/cmse-7.c: Likewise. * gcc.target/arm/cmse/mainline/softfp/cmse-8.c: Likewise. * gcc.target/arm/lp1189445.c: Likewise. From-SVN: r254445
2017-06-17Get rid of dg-skip-if etc. default argsRainer Orth1-1/+1
libstdc++-v3: * testsuite: Remove dg-skip-if, dg-xfail-if, dg-xfail-run-if default args. libgomp: * testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if default args. * testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove dg-xfail-run-if default args. gcc/testsuite: Remove dg-skip-if, dg-xfail-if, dg-xfail-run-if default args. From-SVN: r249339
2017-06-06Remove NO_LABEL_VALUESTom de Vries2-4/+4
2017-06-06 Tom de Vries <tom@codesourcery.com> * doc/sourcebuild.texi (Testsuites, C Language Testsuites, gcc.c-torture/compile): Remove mention of NO_LABEL_VALUES in fixme. * gcc.c-torture/compile/20000326-2.c: Use dg-require-effective-target label_values instead of NO_LABEL_VALUES. * gcc.c-torture/compile/920301-1.c: Same. * gcc.c-torture/compile/920501-1.c: Same. * gcc.c-torture/compile/941014-4.c: Same. * gcc.c-torture/compile/labels-1.c: Same. * gcc.c-torture/compile/pr18903.c: Same. * gcc.c-torture/execute/920302-1.c: Same. * gcc.c-torture/execute/920415-1.c: Same. * gcc.c-torture/execute/920428-2.c: Same. * gcc.c-torture/execute/920501-3.c: Same. * gcc.c-torture/execute/920501-4.c: Same. * gcc.c-torture/execute/920501-5.c: Same. * gcc.c-torture/execute/920501-7.c: Same. * gcc.c-torture/execute/920721-4.c: Same. * gcc.c-torture/execute/980526-1.c: Same. * gcc.c-torture/execute/990208-1.c: Same. * gcc.c-torture/execute/comp-goto-1.c: Same. * gcc.c-torture/execute/comp-goto-2.c: Same. * gcc.dg/torture/stackalign/comp-goto-1.c: Same. * gcc.dg/torture/stackalign/non-local-goto-4.c: Same. * gcc.dg/torture/stackalign/non-local-goto-5.c: Same. * gcc.dg/tree-prof/comp-goto-1.c: Same. * gcc.dg/tree-prof/pr44777.c: Same. * gcc.misc-tests/bprob-2.c: Same. * gcc.misc-tests/gcov-3.c: Same. * lib/gcc.exp (gcc_target_compile): Remove appending of -DNO_LABEL_VALUES to additional_flags. * lib/objc.exp (objc_target_compile): Same. * lib/target-supports.exp (check_effective_target_label_values): Test on 'target_info exists gcc,no_label_values' instead of NO_LABEL_VALUES. From-SVN: r248923
2017-06-05invoke.texi: Document the -fprofile-abs-path option.Bernd Edlinger1-0/+20
2017-06-05 Bernd Edlinger <bernd.edlinger@hotmail.de> * doc/invoke.texi: Document the -fprofile-abs-path option. * common.opt (fprofile-abs-path): New option. * gcov-io.h (gcov_write_filename): Declare. * gcov-io.c (gcov_write_filename): New function. * coverage.c (coverage_begin_function): Use gcov_write_filename. * profile.c (output_location): Likewise. gcc/testsuite: 2017-06-05 Bernd Edlinger <bernd.edlinger@hotmail.de> * gcc.misc-tests/gcov-1a.c: New test. From-SVN: r248894
2017-04-28Make gcno more precise about BBs really belonging to a line (PR ↵Martin Liska2-0/+80
gcov-profile/79891). 2017-04-28 Martin Liska <mliska@suse.cz> PR gcov-profile/79891 * gcov.c (add_line_counts): Assign BBs to lines just if the BB is marked by compiler as living on a line. (get_cycles_count): Remove usage of the union. (output_intermediate_file): Likewise. (find_source): Fix GNU coding style. (accumulate_line_counts): Remove old non-all block mode. (output_lines): Remove usage of the union. * profile.c (output_location): Include all BBs, even if belonging to a same line (and file) as a previous BB. 2017-04-28 Martin Liska <mliska@suse.cz> PR gcov-profile/79891 * gcc.misc-tests/gcov-17.c: New test. * gcc.misc-tests/gcov-18.c: New test. From-SVN: r247374
2017-01-04godump.c (go_format_type): Treat ENUMERAL_TYPE like INTEGER_TYPE.Ian Lance Taylor1-4/+4
gcc/: * godump.c (go_format_type): Treat ENUMERAL_TYPE like INTEGER_TYPE. gcc/testsuite/: * gcc.misc-tests/godump-1.c: Update for accurate representation of enums. From-SVN: r244041
2017-01-01Update copyright years.Jakub Jelinek17-17/+17
From-SVN: r243994
2016-11-23godump-1.c: Update expected output for recent changes.Ian Lance Taylor1-30/+30
* gcc.misc-tests/godump-1.c: Update expected output for recent changes. From-SVN: r242738
2016-09-14Fix dg-require before dg-run directives in testsuite.Christophe Lyon2-2/+2
libstdc++-v3/ChangeLog: 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> * testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: Move dg-do directive before dg-skip. * testsuite/21_strings/debug/iterator_self_move_assign_neg.cc: Move dg-do directive before dg-require. * testsuite/21_strings/debug/self_move_assign_neg.cc: Likewise. * testsuite/23_containers/vector/debug/57779_neg.cc: Likewise. * testsuite/23_containers/vector/debug/60587_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/assign3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/construct3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert1_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert2_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert3_neg.cc: Likewise. * testsuite/23_containers/vector/debug/insert5_neg.cc: Likewise. * testsuite/25_algorithms/lower_bound/debug/irreflexive.cc: Likewise. * testsuite/25_algorithms/partial_sort_copy/debug/irreflexive_neg.cc: Likewise. * testsuite/25_algorithms/pop_heap/empty2_neg.cc: Likewise. * testsuite/25_algorithms/pop_heap/empty_neg.cc: Likewise. * testsuite/27_io/objects/char/12048-5.cc: Likewise. * testsuite/ext/special_functions/conf_hyperg/check_nan.cc: Likewise. * testsuite/ext/special_functions/hyperg/check_nan.cc: Likewise. gcc/testsuite/ChangeLog: 2016-09-14 Christophe Lyon <christophe.lyon@linaro.org> * g++.dg/cpp0x/lambda/lambda-mangle.C: Move dg-do directive before dg-require. * g++.dg/ext/builtin_alloca.C: Likewise. * g++.dg/template/spec35.C: Likewise. * gcc.dg/builtins-68.c: Likewise. * gcc.misc-tests/gcov-13.c: Likewise. * gcc.misc-tests/gcov-14.c: Likewise. From-SVN: r240135
2016-06-23Run profile feedback tests with autofdoAndi Kleen1-0/+7
Extend the existing bprob and tree-prof tests to also run with autofdo. The test runtimes are really a bit too short for autofdo, but it's a reasonable sanity check. This only works natively for now. dejagnu doesn't seem to support a wrapper for unix tests, so I had to open code running these tests. That should be ok due to the native run restrictions. gcc/testsuite/: 2016-06-23 Andi Kleen <ak@linux.intel.com> * g++.dg/bprob/bprob.exp: Support autofdo. * g++.dg/tree-prof/tree-prof.exp: dito. * gcc.dg/tree-prof/tree-prof.exp: dito. * gcc.misc-tests/bprob.exp: dito. * gfortran.dg/prof/prof.exp: dito. * lib/profopt.exp: dito. * lib/target-supports.exp: Check for autofdo. From-SVN: r237732
2016-01-04Update copyright years.Jakub Jelinek17-17/+17
From-SVN: r232055
2015-10-22re PR driver/68043 (many undocumented options, missing punctuation)Martin Sebor1-9/+40
gcc/ChangeLog: 2015-10-22 Martin Sebor <msebor@redhat.com> PR driver/68043 * config/i386/i386.opt: Add missing periods to the ends of sentences. * config/msp430/msp430.opt: Same. gcc/testsuite/ChangeLog: 2015-10-22 Martin Sebor <msebor@redhat.com> PR driver/68043 * gcc.misc-tests/help.exp: Verify that option descriptions end in periods. * lib/options.exp (check_for_options): Use the regexp --line option. Print unexpected match on failure. From-SVN: r229205
2015-10-21Improve --help output to generate references to option aliases.Martin Sebor1-11/+24
gcc/ PR driver/68043 * opts.c (undocumented_msg, use_diagnosed_msg): New globals. (print_filtered_help): Reference aliased option's name and encourage readers to use it in preference to the alias if the former is not documented. Mention when using an option is diagnosed. * gcc.c (display_help): End each sentence with a period. * ada/gcc-interface/lang.opt: End each sentence that describes an option with a period. * c-family/c.opt: Same. * common.opt: Same. * config/aarch64/aarch64.opt: Same. * config/alpha/alpha.opt: Same. * config/arc/arc.opt: Same. * config/arm/arm.opt: Same. * config/avr/avr.opt: Same. * config/bfin/bfin.opt: Same. * config/c6x/c6x.opt: Same. * config/cr16/cr16.opt: Same. * config/cris/cris.opt: Same. * config/cris/linux.opt: Same. * config/darwin.opt: Same. * config/epiphany/epiphany.opt: Same. * config/fr30/fr30.opt: Same. * config/frv/frv.opt: Same. * config/ft32/ft32.opt: Same. * config/g.opt: Same. * config/h8300/h8300.opt: Same. * config/i386/cygming.opt: Same. * config/i386/djgpp.opt: Same. * config/i386/i386.opt: Same. * config/i386/interix.opt: Same. * config/i386/mingw-w64.opt: Same. * config/i386/mingw.opt: Same. * config/ia64/ia64.opt: Same. * config/ia64/ilp32.opt: Same. * config/iq2000/iq2000.opt: Same. * config/linux.opt: Same. * config/lm32/lm32.opt: Same. * config/lynx.opt: Same. * config/m32c/m32c.opt: Same. * config/m32r/m32r.opt: Same. * config/m68k/ieee.opt: Same. * config/m68k/m68k.opt: Same. * config/mcore/mcore.opt: Same. * config/mep/mep.opt: Same. * config/microblaze/microblaze.opt: Same. * config/mips/mips.opt: Same. * config/mmix/mmix.opt: Same. * config/mn10300/mn10300.opt: Same. * config/moxie/moxie.opt: Same. * config/msp430/msp430.opt: Same. * config/nios2/elf.opt: Same. * config/nios2/nios2.opt: Same. * config/nvptx/nvptx.opt: Same. * config/pa/pa-hpux.opt: Same. * config/pa/pa-hpux1010.opt: Same. * config/pa/pa-hpux1111.opt: Same. * config/pa/pa-hpux1131.opt: Same. * config/pa/pa.opt: Same. * config/pa/pa64-hpux.opt: Same. * config/pdp11/pdp11.opt: Same. * config/rl78/rl78.opt: Same. * config/rs6000/476.opt: Same. * config/rs6000/aix64.opt: Same. * config/rs6000/darwin.opt: Same. * config/rs6000/linux64.opt: Same. * config/rs6000/rs6000.opt: Same. * config/rs6000/sysv4.opt: Same. * config/s390/s390.opt: Same. * config/s390/tpf.opt: Same. * config/sh/sh.opt: Same. * config/sol2.opt: Same. * config/sparc/long-double-switch.opt: Same. * config/sparc/sparc.opt: Same. * config/spu/spu.opt: Same. * config/stormy16/stormy16.opt: Same. * config/tilegx/tilegx.opt: Same. * config/tilepro/tilepro.opt: Same. * config/v850/v850.opt: Same. * config/vax/vax.opt: Same. * config/visium/visium.opt: Same. * config/vms/vms.opt: Same. * config/vxworks.opt: Same. * config/xtensa/xtensa.opt: Same. * fortran/lang.opt: Same. testsuite/ PR driver/68043 * gcc.misc-tests/help.exp: Adjust. * lib/options.exp (check_for_options): Add detail to output. From-SVN: r229155
2015-08-24pr49551.c: Needs -fdata-sections.Nathan Sidwell1-0/+6
* gcc/testsuite/gcc.dg/pr49551.c: Needs -fdata-sections. * gcc/testsuite/gcc.dg/pr64935-2.c: Needs scheduling. * gcc/testsuite/gcc.dg/torture/pr66101.c: Needs nonlocal goto. * gcc/testsuite/gcc.dg/torture/pr63738.c: Likewise. * gcc/testsuite/gcc.dg/torture/pr64728.c: Likewise. * gcc/testsuite/gcc.dg/pr63748.c: Likewise. * gcc/testsuite/gcc.dg/20020312-2.c: Likewise. * gcc/testsuite/gcc.dg/torture/pr66123.c: Needs label_values. * gcc/testsuite/gcc.dg/torture/pr41261.c: Needs profiling. * gcc/testsuite/gcc.dg/pr26570.c: Likewise. * gcc/testsuite/gcc.dg/pr61776.c: Likewise. * gcc/testsuite/gcc.dg/tree-ssa/ssa-lim-11.c: Likewise. * gcc/testsuite/gcc.dg/gomp/pr34610.c: Likewise. * gcc/testsuite/gcc.dg/pr54121.c: Likewise. * gcc/testsuite/gcc.dg/20050325-1.c: Likewise. * gcc/testsuite/gcc.dg/pr66899.c: Likewise. * gcc/testsuite/gcc.dg/pr48770.c: Likewise. * gcc/testsuite/gcc.dg/pr24225.c: Likewise. * gcc/testsuite/gcc.dg/pr27531-1.c: Needs io. * gcc/testsuite/gcc.dg/pr44606.c: Likewise. * gcc/testsuite/gcc.dg/tree-ssa/nonzero-1.c: Needs weak. * gcc/testsuite/gcc.dg/pr51990.c: Needs alloca. * gcc/testsuite/gcc.misc-tests/options.exp: Disable profiling check for nvptx. From-SVN: r227128
2015-02-26Add missing cleanup in gcc.misc-tests/godump-1.cTom de Vries1-0/+2
2015-02-26 Tom de Vries <tom@codesourcery.com> * gcc.misc-tests/godump-1.c: Add missing cleanup of godump-1.out. From-SVN: r221008
2015-01-05Update copyright years.Jakub Jelinek17-17/+17
From-SVN: r219188
2014-11-11re PR driver/36312 (should refuse to overwrite input file with output file)Anthony Brandon1-0/+66
gcc/testsuite/ChangeLog: 2014-11-11 Anthony Brandon <anthony.brandon@gmail.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR driver/36312 * gcc.misc-tests/output.exp: New test case for identical input and output files. include/ChangeLog: 2014-11-11 Anthony Brandon <anthony.brandon@gmail.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR driver/36312 * filenames.h: Add prototype for canonical_filename_eq. gcc/ChangeLog: 2014-11-11 Anthony Brandon <anthony.brandon@gmail.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR driver/36312 * diagnostic-core.h: Add prototype for fatal_error. * diagnostic.c (fatal_error): New function fatal_error. * gcc.c (store_arg): Remove have_o_argbuf_index. (process_command): Check if input and output files are the same. * toplev.c (init_asm_output): Check if input and output files are the same. libiberty/ChangeLog: 2014-11-11 Anthony Brandon <anthony.brandon@gmail.com> Manuel López-Ibáñez <manu@gcc.gnu.org> PR driver/36312 * filename_cmp.c (canonical_filename_eq): New function to check if file names are the same. * functions.texi: Updated with documentation for new function. Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org> From-SVN: r217391
2014-11-10gimple-low.c (lower_function_body): Clear the location of the first inserted ↵Eric Botcazou1-0/+24
representative return if... * gimple-low.c (lower_function_body): Clear the location of the first inserted representative return if it also fills in for the fallthru. From-SVN: r217278
2014-11-05Revert revision 217149 because it breaks Ada:Manuel López-Ibáñez1-66/+0
gcc/testsuite/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * gcc.misc-tests/output.exp: New test case for identical input and output files. include/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * filenames.h: Add prototype for canonical_filename_eq. gcc/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * diagnostic-core.h: Add prototype for fatal_error. * diagnostic.c (fatal_error): New function fatal_error. * gcc.c (store_arg): Remove have_o_argbuf_index. (process_command): Check if input and output files are the same. * toplev.c (init_asm_output): Check if input and output files are the same. libiberty/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * filename_cmp.c (canonical_filename_eq): New function to check if file names are the same. * functions.texi: Updated with documentation for new function. From-SVN: r217159
2014-11-05re PR driver/36312 (should refuse to overwrite input file with output file)Anthony Brandon1-0/+66
gcc/testsuite/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * gcc.misc-tests/output.exp: New test case for identical input and output files. include/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * filenames.h: Add prototype for canonical_filename_eq. gcc/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * diagnostic-core.h: Add prototype for fatal_error. * diagnostic.c (fatal_error): New function fatal_error. * gcc.c (store_arg): Remove have_o_argbuf_index. (process_command): Check if input and output files are the same. * toplev.c (init_asm_output): Check if input and output files are the same. libiberty/ChangeLog: 2014-11-05 Anthony Brandon <anthony.brandon@gmail.com> PR driver/36312 * filename_cmp.c (canonical_filename_eq): New function to check if file names are the same. * functions.texi: Updated with documentation for new function. From-SVN: r217149