aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2020-07-28testsuite: Fix spelloNathan Sidwell1-2/+2
'Patterns' has one 'r'. gcc/testsuite/ * lib/options.exp: Fix spello
2020-07-28c++: Fix up cp_lexer_safe_previous_token [PR96328]Jakub Jelinek2-33/+49
The following testcase ICEs, because cp_lexer_safe_previous_token calls cp_lexer_previous_token and that ICEs, because all tokens in the lexer buffer before the current one (CPP_EOF) have been purged. cp_lexer_safe_previous_token is used in the context where it is ok if it punts, so the patch changes the function so that it doesn't assert there is some previous token, but instead returns NULL like in other cases where it punts. In addition to this, in the last hunk it does a micro-optimization, don't call the potentially expensive function if it will not need the result, instead check the least expensive condition first. And the middle hunk is a similar change from Mark's version of the patch, to use the safe variant in there because it is again just about a hint and it is better not to provide the hint than to ICE, though we don't have a testcase that would ICE. 2020-07-28 Jakub Jelinek <jakub@redhat.com> Mark Wielaard <mark@klomp.org> PR c++/96328 * parser.c (cp_lexer_safe_previous_token): Don't call cp_lexer_previous_token, instead inline it by hand and return NULL instead of failing assertion if all previous tokens until the first one are purged. (cp_parser_error_1): Optimize - only call cp_lexer_safe_previous_token if token->type is CPP_NAME. Use cp_lexer_safe_previous_token instead of cp_lexer_previous_token for the missing_token_desc != RT_NONE case too. * g++.dg/diagnostic/pr96328.C: New test. Co-Authored-By: Mark Wielaard <mark@klomp.org>
2020-07-28libcpp: Fix up raw string literal parsing error-recovery [PR96323]Jakub Jelinek1-0/+8
For (invalid) newline inside of the raw string literal delimiter, doing continue means we skip the needed processing of newlines. Instead of duplicating that, this patch just doesn't continue for those. 2020-07-28 Jakub Jelinek <jakub@redhat.com> PR preprocessor/96323 * lex.c (lex_raw_string): For c == '\n' don't continue after reporting an prefix delimiter error. * c-c++-common/cpp/pr96323.c: New test.
2020-07-28nvptx: Support 16-bit shifts and extendqihi2Tom de Vries3-9/+59
Add support for 16-bits shifts and for sign extension from 8 bits to 16 bits. This patch has been tested on nvptx-none with no new regressions. 2020-07-28 Roger Sayle <roger@nextmovesoftware.com> Tom de Vries <tdevries@suse.de> gcc/ChangeLog: * config/nvptx/nvptx.md (extendqihi2): New instruction. (ashl<mode>3, ashr<mode>3, lshr<mode>3): Support HImode. gcc/testsuite/ChangeLog: * gcc.target/nvptx/cvt.c: New test. * gcc.target/nvptx/shift16.c: New test.
2020-07-28testsuite: Fix up nontype-subob1.C for targets with short int, int or long ↵Jakub Jelinek1-1/+1
long ssize_t 2020-07-28 Jakub Jelinek <jakub@redhat.com> * g++.dg/cpp2a/nontype-subob1.C: Allow s1, i1 or x1 instead of l1 for targets with short, int or long long ssize_t.
2020-07-28expander: Fix ICE in maybe_warn_rdwr_sizes [PR96335]Jakub Jelinek2-18/+14
The following testcase ICEs in maybe_warn_rdwr_sizes. The problem is that the caller uses its fndecl and fntype variables to fill up rdwr_map, and the fntype in that case is a prototype with the access attribute and all the checks needed for that performed. But the maybe_warn_rdwr_sizes function tries to rediscover fndecl/fntype itself and does it differently from how the caller did (for fndecl get_callee_fndecl and fntype from that FUNCTION_DECL, otherwise sets fntype to CALL_EXPR_FN's type). On the testcase, get_callee_fndecl does find a FUNCTION_DECL because it does STRIP_NOPS in between. Instead of trying to rediscover those, this patch just passes them down, like is done in several other functions. 2020-07-28 Jakub Jelinek <jakub@redhat.com> PR middle-end/96335 * calls.c (maybe_warn_rdwr_sizes): Add FNDECL and FNTYPE arguments, instead of trying to rediscover them in the body. (initialize_argument_information): Adjust caller. * gcc.dg/pr96335.c: New test.
2020-07-27vect: Refactor peel_iters_{pro,epi}logue cost modelingKewen Lin1-125/+142
This patch is to refactor the existing peel_iters_prologue and peel_iters_epilogue cost model handlings, by following the structure below suggested by Richard Sandiford: - calculate peel_iters_prologue - calculate peel_iters_epilogue - add costs associated with peel_iters_prologue - add costs associated with peel_iters_epilogue - add costs related to branch taken/not_taken. Bootstrapped/regtested on aarch64-linux-gnu. gcc/ChangeLog: * tree-vect-loop.c (vect_get_known_peeling_cost): Factor out some code to determine peel_iters_epilogue to... (vect_get_peel_iters_epilogue): ...this new function. (vect_estimate_min_profitable_iters): Refactor cost calculation on peel_iters_prologue and peel_iters_epilogue.
2020-07-28Daily bump.GCC Administrator8-1/+303
2020-07-27compiler,runtime: pass only ptr and len to some runtime callsIan Lance Taylor3-35/+40
This ports https://golang.org/cl/227163 to the Go frontend. This is a step toward moving up to the go1.15rc1 release. Original CL description: cmd/compile,runtime: pass only ptr and len to some runtime calls Some runtime calls accept a slice, but only use ptr and len. This change modifies most such routines to accept only ptr and len. After this change, the only runtime calls that accept an unnecessary cap arg are concatstrings and slicerunetostring. Neither is particularly common, and both are complicated to modify. Negligible compiler performance impact. Shrinks binaries a little. There are only a few regressions; the one I investigated was due to register allocation fluctuation. Passes 'go test -race std cmd', modulo golang/go#38265 and golang/go#38266. Wow, does that take a long time to run. file before after Δ % compile 19655024 19655152 +128 +0.001% cover 5244840 5236648 -8192 -0.156% dist 3662376 3658280 -4096 -0.112% link 6680056 6675960 -4096 -0.061% pprof 14789844 14777556 -12288 -0.083% test2json 2824744 2820648 -4096 -0.145% trace 11647876 11639684 -8192 -0.070% vet 8260472 8256376 -4096 -0.050% total 115163736 115118808 -44928 -0.039% For golang/go#36890 Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/245099
2020-07-27compiler: for package-scope "a = b; b = x" just set "a = x"Ian Lance Taylor2-8/+31
This avoids requiring an init function to initialize the variable. This can only be done if x is a static initializer. The go1.15rc1 runtime package relies on this optimization. The package has a variable "var maxSearchAddr = maxOffAddr". The maxSearchAddr variable is used by code that runs before package initialization is complete. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/245098
2020-07-28gcc.dg/torture/pr39074-2.c, pr39074.c, pta-callused-1.c: Adjust for mmix.Hans-Peter Nilsson3-5/+5
These FAILs for mmix showed up as regressions for me due to a flaw in the btest-gcc.sh test-results-accounting: a bug was recently fixed regarding the naming of dump-files so the names are again correct. To wit, parts of the tests that were UNRESOLVED, due to missing dump-files, and ignored in the presence of other parts (execution, excess errors) PASSing, became FAIL, trumping the PASSing parts of the tests. As in a recent patch, the variables are "privatized" using ASM_PN_FORMAT for MMIX and the lines to match look like: y::0_1 = { i } y::0_1, points-to NULL, points-to vars: { D.1465 } (nonlocal, escaped) instead of e.g. for cris-elf: y.0_1 = { i } y.0_1, points-to NULL, points-to vars: { D.1433 } (nonlocal, escaped) Also checked that the general pattern still matches for cris-elf. gcc/testsuite: * gcc.dg/torture/pr39074-2.c: Adjust for mmix. * gcc.dg/torture/pr39074.c, gcc.dg/torture/pta-callused-1.c: Ditto.
2020-07-27Update gcc .po files.Joseph Myers19-91473/+92935
* be.po, da.po, de.po, el.po, es.po, fi.po, fr.po, hr.po, id.po, ja.po, nl.po, ru.po, sr.po, sv.po, tr.po, uk.po, vi.po, zh_CN.po, zh_TW.po: Update.
2020-07-27common: Use strcmp to compare location file namesNathan Sidwell4-4/+94
The logic to figure out where a missing #include should be inserted uses pointer equality to check filenames -- the routine even says so. But cpplib makes no such guarantee. It happens to be true for input that it preprocesses[* see line zero below], but is not true for source that has already been preprocessed -- all those '# ...' line directives produce disctinct filename strings. That renders using -fdirectives-only as a prescanning stage (as I understand some people do), broken. This patch changes to string comparisons, and explicitly rejects any line-zero location map that occurs at the beginning of a file. The very first map of a file has a different string to the remaining maps, and we never tripped on that because of the pointer comparison. The second testcase deploys -save-temps to cause an intermediate preprocessed output that is read back. gcc/c-family/ * c-common.c (try_to_locate_new_include_insertion_point): Use strcmp, not pointer equality. gcc/testsuite/ * g++.dg/lookup/missing-std-include-10.h: New. * g++.dg/lookup/missing-std-include-10.C: New. * g++.dg/lookup/missing-std-include-11.C: New.
2020-07-27c++: Name as_base typeNathan Sidwell3-2/+10
The as-base type never got a name. For modules I needed to give it a name to serialize properly, and it's useful when debugging the compiler, so we may as well have it on trunk. There's also a bug where its fields can have NSDMIs from the main class. This happens to be silent on trunk, but can be a GC leak where we retain a deferred parse node there. (On modules it blows up, because we're not prepared to serialize deferred parse nodes, as they should never survive parsing. gcc/cp/ * cp-tree.h (enum cp_tree_index): Add CPTI_AS_BASE_IDENTIFIER. (as_base_identifier): Define. * decl.c (initialize_predifined_identifiers): Initialize as_base identifier. * class.c (layout_class_type): Name the as-base type. Zap NSDMI its fields may have.
2020-07-27Diagnose just-past-the-end references for minor array bounds.Martin Sebor2-2/+139
Resolves: PR tree-optimization/84079 - missing -Warray-bounds taking the address of past-the-end element of a multidimensional array gcc/ChangeLog: PR tree-optimization/84079 * gimple-array-bounds.cc (array_bounds_checker::check_addr_expr): Only allow just-past-the-end references for the most significant array bound. gcc/testsuite/ChangeLog: PR tree-optimization/84079 * gcc.dg/Warray-bounds-62.c: New test.
2020-07-27driver: fix a problem with implementation of -falign-foo=0 [PR96247]Hu Jiangping1-6/+22
This patch makes the -falign-foo=0 work as described in the documentation. Thanks for all the suggestions. Changelog: 2020-07-27 Hu Jiangping <hujiangping@cn.fujitsu.com> PR driver/96247 * opts.c (check_alignment_argument): Set the -falign-Name on/off flag on and set the -falign-Name string value null, when the command-line specified argument is zero.
2020-07-27compiler: scan all function literals for escape analysisIan Lance Taylor2-12/+19
We were scanning only function literals with closures, but not all function literals have closures. Discovered because compiler failed building 1.15rc1, as there is a function literal in the runtime package (p1 in hexdumpWords) that has no closure and, without escape analysis, was forcing a variable to the heap which is not permitted in the runtime. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/244802
2020-07-27expr: build string_constant only for a char typeMartin Liska1-9/+14
gcc/ChangeLog: PR tree-optimization/96058 * expr.c (string_constant): Build string_constant only for a type that has same precision as char_type_node and is an integral type.
2020-07-27Remove useless backedge markingRichard Biener1-1/+0
I didn't find anything using EDGE_DFS_BACK in RTL infrastructure used by var-tracking or var-tracking itself, the following removes this computation. 2020-07-24 Richard Biener <rguenther@suse.de> * var-tracking.c (variable_tracking_main_1): Remove call to mark_dfs_back_edges.
2020-07-27Do not expand vector comparison with VEC_COND_EXPR.Martin Liska2-2/+36
gcc/ChangeLog: PR tree-optimization/96128 * tree-vect-generic.c (expand_vector_comparison): Do not expand vector comparison with VEC_COND_EXPR. gcc/testsuite/ChangeLog: PR tree-optimization/96128 * gcc.target/s390/vector/pr96128.c: New test.
2020-07-27LTO: Add -fcf-protection=checkH.J. Lu6-11/+74
Mixing -fcf-protection and -fcf-protection=none objects are allowed. Linker just merges -fcf-protection values from all input objects. Add -fcf-protection=check for the final link with LTO. An error is issued if LTO object files are compiled with different -fcf-protection values. Otherwise, -fcf-protection=check is ignored at the compile time. Without explicit -fcf-protection at link time, -fcf-protection values from LTO object files are merged at the final link. gcc/ PR bootstrap/96203 * common.opt: Add -fcf-protection=check. * flag-types.h (cf_protection_level): Add CF_CHECK. * lto-wrapper.c (merge_and_complain): Issue an error for mismatching -fcf-protection values with -fcf-protection=check. Otherwise, merge -fcf-protection values. * doc/invoke.texi: Document -fcf-protection=check. gcc/testsuite/ PR bootstrap/96203 * gcc.target/i386/pr96203-1.c: New test. * gcc.target/i386/pr96203-2.c: Likewise.
2020-07-27[Ada] Revert "Revamp dump and aux output names"Alexandre Oliva1-4/+1
gcc/ada/ * switch.adb (Is_Internal_GCC_Switch): Revert accidental reintroduction of auxbase and auxbase-strip.
2020-07-27[Ada] Ada2020: AI12-0027 Access values and unaliased componentJavier Miranda3-10/+63
gcc/ada/ * sem_res.adb (Resolve_Actuals): Restrict the check on matching aliased components to view conversions of array types that are not placed in an instance. In such case at runtime an object is created. * sem_util.ads (Is_Actual_In_Out_Parameter, Is_View_Conversion): New subprograms. * sem_util.adb (Is_Actual_In_Out_Parameter, Is_View_Conversion): New subprograms.
2020-07-27[Ada] Assert failure on incorrect codeArnaud Charlet2-3/+10
gcc/ada/ * lib-xref.adb (Generate_Reference): Protect against malformed tree in case of severe errors. * sem_ch8.adb (Add_Implicit_Operator): Ditto.
2020-07-27[Ada] Switch Ada_Version_Runtime to Ada 2020Arnaud Charlet33-55/+11
gcc/ada/ * opt.ads (Ada_Version_Runtime): Set to Ada_2020. * sem_ch3.adb (Analyze_Subtype_Declaration): Propagate Is_Independent flag to subtypes. * libgnarl/s-taprop__linux.adb: Adapt to Ada 2020 warning. * libgnat/a-nbnbin.adb, libgnat/a-nbnbin.ads, libgnat/a-nbnbin__gmp.adb, libgnat/a-nbnbre.adb, libgnat/a-nbnbre.ads, libgnat/a-stobbu.adb, libgnat/a-stobbu.ads, libgnat/a-stobfi.adb, libgnat/a-stobfi.ads, libgnat/a-stoubu.adb, libgnat/a-stoubu.ads, libgnat/a-stoufi.adb, libgnat/a-stoufi.ads, libgnat/a-stoufo.adb, libgnat/a-stoufo.ads, libgnat/a-stouut.adb, libgnat/a-stouut.ads, libgnat/a-strsto.ads, libgnat/a-ststbo.adb, libgnat/a-ststbo.ads, libgnat/a-ststun.adb, libgnat/a-ststun.ads, libgnat/a-stteou.ads, libgnat/s-aoinar.ads, libgnat/s-aomoar.ads, libgnat/s-atopex.ads, libgnat/s-putaim.adb, libgnat/s-putaim.ads, libgnat/s-putima.adb, libgnat/s-putima.ads: Remove pragma Ada_2020, now redundant.
2020-07-27[Ada] Wrong accessibility on 'Access of formal in callJustin Squirek1-46/+16
gcc/ada/ * exp_ch6.adb (Expand_Call_Helper): Modify addition of the extra accessibility parameter to take into account the extra accessibility of formals within the calling subprogram.
2020-07-27[Ada] Bug in Enum_Subtype'Image in Ada 2020 modeBob Duff1-1/+1
gcc/ada/ * exp_imgv.adb (Expand_Image_Attribute): Add Root_Type, so constrained subtypes work.
2020-07-27[Ada] Refactor pragma argument gettersGhjuvan Lacambre1-81/+33
gcc/ada/ * exp_prag.adb (Arg1, Arg2, Arg3): Removed. (Arg_N): New function.
2020-07-27[Ada] AI12-0383 Renaming valuesArnaud Charlet1-4/+23
gcc/ada/ * sem_ch8.adb (Analyze_Object_Renaming): Allow values in Ada 2020 mode.
2020-07-27[Ada] AI12-0377 View conversions and out parameters revisitedArnaud Charlet1-15/+22
gcc/ada/ * sem_res.adb (Resolve_Actuals): Refine 6.4.1 rules as per AI12-0377.
2020-07-27[Ada] Ada2020: wording of 'Image messagesBob Duff3-17/+33
gcc/ada/ * errout.ads, errout.adb (Error_Msg_Ada_2020_Feature): New procedure analogous to Error_Msg_Ada_2012_Feature. * sem_attr.adb (Analyze_Image_Attribute): Use Error_Msg_Ada_2012_Feature and Error_Msg_Ada_2020_Feature to indicate that Object'Image is allowed in Ada 2012, and that 'Image is allowed for any type in Ada 2020.
2020-07-27[Ada] Unbounded string overriding controlDmitriy Anisimkov2-38/+150
gcc/ada/ * libgnat/a-strunb.adb (Sum, Mul, Saturated_Sum, Saturated_Mul): New routines. Use them when resulting string size more that length of the strings in parameters. (Unbounded_Slice): Use "- 1" instead of "+ 1" in opposite side of condition to avoid overflow. * libgnat/a-strunb__shared.adb (Sum, Mul): New routines. (Allocate): New routine with 2 parameters. Use routine above when resulting string size more that length of the strings in parameters. (Aligned_Max_Length): Do not try to align to more than Natural'Last. (Unbounded_Slice): Use "- 1" instead of "+ 1" in opposite side of condition to avoid overflow.
2020-07-27[Ada] Remove disabled codeArnaud Charlet1-13/+0
gcc/ada/ * sem_attr.adb (Resolve_Attribute): Remove dead code.
2020-07-27[Ada] Use membership tests in front-endArnaud Charlet89-4713/+2950
gcc/ada/ * aspects.adb, atree.adb, atree.ads, checks.adb, contracts.adb, einfo.adb, errout.adb, exp_aggr.adb, exp_attr.adb, exp_cg.adb, exp_ch11.adb, exp_ch2.adb, exp_ch3.adb, exp_ch4.adb, exp_ch5.adb, exp_ch6.adb, exp_ch7.adb, exp_ch8.adb, exp_ch9.adb, exp_dbug.adb, exp_disp.adb, exp_intr.adb, exp_pakd.adb, exp_prag.adb, exp_put_image.adb, exp_smem.adb, exp_tss.adb, exp_unst.adb, exp_util.adb, freeze.adb, ghost.adb, gnat1drv.adb, inline.adb, lib-writ.adb, lib-xref-spark_specific.adb, lib-xref.adb, namet.adb, namet.ads, nlists.adb, par-ch10.adb, par-ch2.adb, par-ch3.adb, par-ch4.adb, par-ch5.adb, par-ch6.adb, par-prag.adb, par-util.adb, par_sco.adb, pprint.adb, repinfo.adb, restrict.adb, rtsfind.adb, scil_ll.adb, sem.adb, sem_aggr.adb, sem_attr.adb, sem_aux.adb, sem_cat.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch13.adb, sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb, sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_dim.adb, sem_disp.adb, sem_dist.adb, sem_elab.adb, sem_elim.adb, sem_eval.adb, sem_intr.adb, sem_mech.adb, sem_prag.adb, sem_res.adb, sem_scil.adb, sem_type.adb, sem_util.adb, sem_warn.adb, sinfo.adb, sinfo.ads, sprint.adb, styleg.adb, tbuild.adb, treepr.adb (Nkind_In, Nam_In, Ekind_In): Removed, replaced by membership tests.
2020-07-27[Ada] AI12-0194: Language-defined aspects and entry bodiesGary Dismukes1-1/+2
gcc/ada/ * sem_prag.adb (Analyze_Pragma, Pragma_Max_Entry_Queue_Length): Refine error message to indicate that the pragma must apply to an entry declaration, not just an entry.
2020-07-27[Ada] Spurious error in generic dispatching constructorJavier Miranda1-3/+7
gcc/ada/ * exp_ch6.adb (Make_Build_In_Place_Iface_Call_In_Allocator): Revert previous patch, and add a missing type conversion to displace the pointer to the allocated object to reference the target dispatch table.
2020-07-27[Ada] Ada2020: AI12-0027 Access values and unaliased componentJavier Miranda1-1/+17
gcc/ada/ * sem_res.adb (Resolve_Actuals): Restore restrictive check on view conversions which required matching value of Has_Aliased_Components of formals and actuals. Required to avoid the regression of ACATS b460005.
2020-07-27[Ada] Remove obsolete special case in Switch_ViewEric Botcazou1-13/+16
gcc/ada/ * sem_ch12.adb (Instantiate_Package_Body): Add commentary for a nesting issue with parent handling and private view switching. (Switch_View): Do not skip specific private-dependent subtypes.
2020-07-27[Ada] x86-lynx178elf: use a-numaux.ads instead of a-numaux__libc-x86.adsPatrick Bernardi1-1/+0
gcc/ada/ * Makefile.rtl: Remove X86_TARGET_PAIRS for x86-lynx178elf.
2020-07-27[Ada] Warnings on overloays involving generic In_ParametersEd Schonberg1-0/+4
gcc/ada/ * sem_ch13.adb (Analyze_Address_Specification_Clause): Do not emit a warning when a constant declaration in a generic unit overlays a generic In_Parameter.
2020-07-27[Ada] AI12-0382: Loosen type-invariant overriding requirement of AI12-0042Gary Dismukes1-9/+6
gcc/ada/ * sem_ch3.adb (Check_Abstract_Overriding): Remove Scope comparison test from test related to initial implementation of AI12-0042, plus remove the related ??? comment. (Derive_Subprogram): Add test requiring that the type extension appear in the visible part of its enclosing package when checking the overriding requirement of 7.3.2(6.1/4), as clarified by AI12-0382.
2020-07-27[Ada] Add range check for GNATprove on 'Pos to Long_Integer conversionPiotr Trojanek1-3/+9
gcc/ada/ * exp_spark.adb (Expand_SPARK_N_Attribute_Reference) Extend existing workaround to 'Pos.
2020-07-27[Ada] Ada2020: AI12-0304 Put_Image attrs of lang-def typesBob Duff7-8/+57
gcc/ada/ * libgnat/s-rannum.ads, libgnat/s-rannum.adb: Add Put_Image. This will be inherited by the language-defined packages Ada.Numerics.Discrete_Random and Ada.Numerics.Float_Random. * libgnat/a-convec.ads, libgnat/a-convec.adb: Add Put_Image. * libgnat/s-putima.ads: Add pragma Preelaborate, so this can be imported into containers packages. * libgnat/s-putima.adb: Move Digit to private part; otherwise reference to Base is illegal in Preelaborate generic. * exp_put_image.adb (Build_Record_Put_Image_Procedure): Use the base type.
2020-07-27Use vec::reserve before vec_safe_grow_cleared is calledMartin Liska2-3/+21
gcc/ChangeLog: PR lto/45375 * symbol-summary.h: Call vec_safe_reserve before grow is called in order to grow to a reasonable size. * vec.h (vec_safe_reserve): Add missing function for vl_ptr type.
2020-07-27fortran/openmp.c - silence static analyzer warningTobias Burnus1-2/+1
gcc/fortran/ChangeLog: * openmp.c (gfc_resolve_omp_directive): Remove NULL check for clauses in EXEC_OMP_CRITICAL as it no longer can be NULL.
2020-07-27gcc.dg/tree-ssa/vector-4.c: Adjust for mmix.Hans-Peter Nilsson1-1/+2
Again, the variables are "privatized" using ASM_PN_FORMAT for MMIX (but apparently not for other targets) and the line to match looks like: D.1427 = VEC_PERM_EXPR <a::0, b::1, { 0, 4, 1, 5 }>; gcc/testsuite: * gcc.dg/tree-ssa/vector-4.c: Adjust for mmix.
2020-07-27gcc.dg/tree-ssa/ssa-dse-26.c: Adjust for mmix.Hans-Peter Nilsson1-3/+5
The variables are "localized" using ASM_PN_FORMAT for MMIX and the lines to match look like: Deleted dead store: y::4 = y; Deleted dead store: x::3 = x; gcc/testsuite: * gcc.dg/tree-ssa/ssa-dse-26.c: Adjust for mmix.
2020-07-27gcc.dg/tree-ssa/ssa-dom-cse-2.c: xfail scan for mmix.Hans-Peter Nilsson1-1/+1
Looking at the dump and the test, I guess all "64-bit targets" fail the test for the reasons seen in the comment just above the dg-final, whose last two lines make it to the patch context. Maybe the xfail target list can be shortened by removing most targets and use just "lp64". That doesn't cover it passing on x86_64 and s390x-zarch though. gcc/testsuite: * gcc.dg/tree-ssa/ssa-dom-cse-2.c: xfail scan for mmix.
2020-07-27Daily bump.GCC Administrator3-1/+31
2020-07-27gcc.dg/tree-ssa/reassoc-20.c: Adjust for mmix.Hans-Peter Nilsson1-1/+1
The expression of interest looks like "e_5 = a::0_1 + b::1_2;" for mmix-knuth-mmixware, while other targets have a "." instead of the "::". ISTM the most useful change here is not to disable the test, but to add an optional character in the matched expression to match the "extra" ":". Also checked cris-elf to assert that the expression still passes for an "ordinary" ELF target. gcc/testsuite: * gcc.dg/tree-ssa/reassoc-20.c: Adjust for mmix.