- 28 Sep, 2018 2 commits
-
-
* config/sparc/sparc-protos.h (sparc_branch_cost): Declare. * config/sparc/sparc.h (BRANCH_COST): Call sparc_branch_cost. * config/sparc/sparc.c (struct processor_costs): Add branch_cost field. (cypress_costs): Set it. (supersparc_costs): Likewise. (hypersparc_costs): Likewise. (leon_cost): Likewise. (leon3_costs): Likewise. (sparclet_costs): Likewise. (ultrasparc_costs): Likewise. (ultrasparc_costs): Likewise. (niagara_costs): Likewise. (niagara2_costs): Likewise. (niagara3_costs): Likewise. (niagara4_costs): Likewise. (niagara7_costs): Likewise. (m8_costs): Likewise. (TARGET_CAN_FOLLOW_JUMP): Define. (pass_work_around_errata::gate): Minor tweak. (sparc_option_override): Remove MASK_FSMULD mask for V7 processors. Do not set both MASK_VIS4 and MASK_VIS4B for M8 processor. Automaitcally clear MASK_FSMULD mask for V7 processors. (sparc_can_follow_jump): New static function. (output_ubranch): Deal with CROSSING_JUMP_P. (sparc_use_sched_lookahead): Rewrite using switch statement. (sparc_issue_rate): Reorder. (sparc_branch_cost): New function. From-SVN: r264687
Eric Botcazou committed -
From-SVN: r264685
GCC Administrator committed
-
- 27 Sep, 2018 14 commits
-
-
This fixes the one remaining case where the stricter vec_splat checking complains in the testsuite. * g++.dg/ext/altivec-6.C: Change the vec_splat second argument to a valid value, in the "vector bool int" case. From-SVN: r264681
Segher Boessenkool committed -
gcc/ChangeLog: * tree.h (tree_to_shwi): Add attribute nonnull and pure. (tree_to_poly_int64, tree_to_uhwi, tree_to_poly_uint64): Same. (int_fits_type_p): Same. gcc/ada/ChangeLog: * gcc-interface/utils.c (make_packable_type): Introduce a temporary to avoid -Wnonnull. (unchecked_convert): Same. From-SVN: r264680
Martin Sebor committed -
2018-09-27 Jinsong Ji <jji@us.ibm.com> Bill Schmidt <wschmidt@linux.ibm.com> * config/rs6000/mmintrin.h (_mm_unpackhi_pi8): Change __int128_t to __int128. (_mm_unpacklo_pi8): Likewise. (_mm_add_pi8): Likewise. (_mm_add_pi16): Likewise. (_mm_add_pi32): Likewise. (_mm_sub_pi8): Likewise. (_mm_sub_pi16): Likewise. (_mm_sub_pi32): Likewise. (_mm_cmpgt_pi8): Likewise. (_mm_cmpeq_pi16): Likewise. (_mm_cmpgt_pi16): Likewise. (_mm_cmpeq_pi32): Likewise. (_mm_cmpgt_pi32): Likewise. (_mm_adds_pi8): Likewise. (_mm_adds_pi16): Likewise. (_mm_adds_pu8): Likewise. (_mm_adds_pu16): Likewise. (_mm_subs_pi8): Likewise. (_mm_subs_pi16): Likewise. (_mm_subs_pu8): Likewise. (_mm_subs_pu16): Likewise. (_mm_madd_pi16): Likewise. (_mm_mulhi_pi16): Likewise. (_mm_mullo_pi16): Likewise. (_mm_sll_pi16): Likewise. (_mm_sra_pi16): Likewise. (_mm_srl_pi16): Likewise. (_mm_set1_pi16): Likewise. (_mm_set1_pi8): Likewise. * config/rs6000/xmmintrin.h (_mm_max_pi16): Likewise. (_mm_max_pu8): Likewise. (_mm_min_pi16): Likewise. (_mm_min_pu8): Likewise. From-SVN: r264678
Jinsong Ji committed -
* config/i386/i386.md (UNSPEC_FLDCW): Remove. From-SVN: r264677
Uros Bizjak committed -
* config/i386/i386.md (FPSR_REG): Remove. (x86_fnstcw_1): Use (const_int 0) instead of FPCR_REG. (x86_fldcw_1): Remove insn pattern. (fnstenv): Do not clobber FPCR_REG. (fldenv): Ditto. * config/i386/i386.h (FIXED_REGISTERS) Remove fpsr register. (CALL_USED_REGISTERS): Ditto. (REG_ALLOC_ORDER): Ditto. (REG_CLASS_CONTENTS): Ditto. (HI_REGISTER_NAMES): Ditto. (ADDITIONAL_REGISTER_NAMES): Use defines instead of numerical constants. * config/i386/i386.c (regclass_map): Remove fpsr register. (dbx_register_map): Ditto. (dbx64_register_map): Ditto. (svr4_dbx_register_map): Ditto. (print_reg): Do not handle FPCR_REG. testsuite/ChangeLog: * gcc.dg/rtl/x86_64/dfinit.c: Update scan-rtl-dump string. * gcc.dg/rtl/x86_64/times-two.c.before-df.c: Ditto. * gcc.target/i386/pr79804.c (foo): Use register "19", not "20". From-SVN: r264676
Uros Bizjak committed -
This deletes most HAVE_AS_* that determine if the assembler supports some ISA level (and also HAVE_AS_MFPGPR and HAVE_AS_DFP). These are not useful: we will only generate an instruction that requires some newer ISA if the user specifically asked for it (with -mcpu=, say). If the assembler cannot handle that, it is fine if it gives an error. They also hurt: it increases the number of possible situations that all need handling and all need testing. We do not handle all cases, and obviously do not test all either. This patch removes: HAVE_AS_POPCNTB (power5, 2.02) HAVE_AS_FPRND (power5+, 2.04) HAVE_AS_CMPB (power6, 2.05) HAVE_AS_POPCNTD (power7, 2.06) HAVE_AS_POWER8 (power8, 2.07) HAVE_AS_POWER9 (power9, 3.0) HAVE_AS_DFP (power6, 2.05, server) HAVE_AS_MFPGPR (power6x but not later, not arch) PR target/87149 * config.in (HAVE_AS_CMPB, HAVE_AS_DFP, HAVE_AS_FPRND, HAVE_AS_MFPGPR, HAVE_AS_POPCNTB, HAVE_AS_POPCNTD, HAVE_AS_POWER8, HAVE_AS_POWER9): Delete, always treat as true. * config/powerpcspe/powerpcspe.c (rs6000_option_override_internal): Ditto. Simplify remaining code. * config/powerpcspe/powerpcspe.h: Ditto. * config/rs6000/rs6000.c (rs6000_option_override_internal): Ditto. Simplify remaining code. (rs6000_expand_builtin): Ditto. * config/rs6000/rs6000.h: Ditto. * configure.ac: Ditto. * configure: Regenerate. From-SVN: r264675
Segher Boessenkool committed -
2018-09-27 Martin Liska <mliska@suse.cz> * coverage.c (get_coverage_counts): Revert the formatting of missing profile opt info. * g++.dg/pr60518.C: Add -Wno-missing-profile. * g++.dg/torture/pr59265.C: Likewise. * g++.dg/tree-prof/morefunc.C: Likewise. * g++.dg/tree-ssa/dom-invalid.C: Likewise. * gcc.dg/pr26570.c: Likewise. * gcc.dg/pr32773.c: Likewise. * gcc.dg/pr40209.c: Likewise. * gcc.dg/pr51957-1.c: Likewise. * gcc.dg/pr80747.c: Likewise. * gcc.target/aarch64/pr62262.c: Likewise. From-SVN: r264669
Martin Liska committed -
2018-09-27 Richard Biener <rguenther@suse.de> PR testsuite/87451 * gcc.dg/debug/dwarf2/inline5.c: Deal with different comment characters. From-SVN: r264668
Richard Biener committed -
2018-09-27 Richard Biener <rguenther@suse.de> PR debug/37801 PR debug/87440 * dwarf2out.c (set_block_origin_self): Do not mark outermost block as we do not output that. (gen_inlined_subroutine_die): Elide the originally outermost block, matching what we do for concrete instances. (decls_for_scope): Add parameter specifying whether to recurse to subblocks. * gcc.dg/debug/dwarf2/inline2.c: Adjust. * gcc.dg/debug/dwarf2/inline4.c: New testcase. From-SVN: r264667
Richard Biener committed -
This is an update of the patch posted to PR82089 long ago. We ran into the same bug on GCN, so we need this fixed as part of this series. 2018-09-27 Andrew Stubbs <ams@codesourcery.com> Tom de Vries <tom@codesourcery.com> PR 82089 gcc/ * expmed.c (emit_cstore): Fix handling of result_mode == BImode and STORE_FLAG_VALUE == 1. Co-Authored-By: Tom de Vries <tom@codesourcery.com> From-SVN: r264666
Andrew Stubbs committed -
2018-09-27 Paolo Carlini <paolo.carlini@oracle.com> PR c++/67544 * g++.dg/concepts/pr67544.C: New. From-SVN: r264665
Paolo Carlini committed -
/cp 2018-09-27 Paolo Carlini <paolo.carlini@oracle.com> PR c++/84940 * semantics.c (finish_unary_op_expr): Check return value of build_x_unary_op for error_mark_node. /testsuite 2018-09-27 Paolo Carlini <paolo.carlini@oracle.com> PR c++/84940 * g++.dg/expr/unary4.C: New. From-SVN: r264664
Paolo Carlini committed -
gcc/ChangeLog: 2018-09-27 Andreas Krebbel <krebbel@linux.ibm.com> * config/s390/s390.md (PPA_TX_ABORT, PPA_OOO_BARRIER): New constant definitions. ("tx_assist"): Replace magic number with PPA_TX_ABORT. ("*ppa"): Enable pattern also for -march=zEC12 -mno-htm. ("speculation_barrier"): New expander definition. From-SVN: r264663
Andreas Krebbel committed -
From-SVN: r264661
GCC Administrator committed
-
- 26 Sep, 2018 24 commits
-
-
re PR gcov-profile/86957 (gcc should warn about missing profiles for a compilation unit or a new function with -fprofile-use) 2018-09-26 Indu Bhagat <indu.bhagat@oracle.com> PR gcov-profile/86957 * common.opt: New warning option -Wmissing-profile. * coverage.c (get_coverage_counts): Add warning for missing .gcda file. * doc/invoke.texi: Document -Wmissing-profile. From-SVN: r264657
Indu Bhagat committed -
In C11, implicit conversions from integer to floating-point types produce results with the range and precision of the corresponding evaluation format rather than only those of the type implicitly converted to. This patch implements that case of C11 excess precision semantics in the case of a comparison between integer and floating-point types, previously missed when implementing other cases of excess precision for such implicit conversions. As with other such fixes, this patch conservatively follows the reading of C99 where conversions from integer to floating-point do not produce results with excess precision and so the change is made for C11 mode only. Bootstrapped with no regressions on x86_64-pc-linux-gnu. gcc/c: PR c/87390 * c-typeck.c (build_binary_op): Use excess precision for comparisons of integers and floating-point for C11 and later. gcc/testsuite: PR c/87390 * gcc.target/i386/excess-precision-9.c, gcc.target/i386/excess-precision-10.c: New tests. From-SVN: r264656
Joseph Myers committed -
gcc/ * config/riscv/riscv.md (subsi3_extended2): Add J constraint. (negdi2, negsi2, negsi2_extended, negsi2_extended2): New. From-SVN: r264655
Jim Wilson committed -
gcc/ChangeLog: * tree.c (zerop): Change return type to bool. (integer_zerop, integer_onep, integer_each_onep): Same. (integer_all_onesp, integer_minus_onep, integer_pow2p): Same. (integer_nonzerop, integer_truep, tree_ctz, real_zerop): Same. (real_onep, real_minus_onep, chain_index): Same. (print_type_hash_statistics, type_list_equal): Same. * tree.h (zerop): Same. (zerop, integer_zerop, integer_onep, integer_each_onep): Same. (integer_all_onesp, integer_minus_onep, integer_pow2p): Same. (integer_nonzerop, integer_truep, tree_ctz, real_zerop): Same. (real_onep, real_minus_onep, chain_index): Same. (print_type_hash_statistics, type_list_equal): Same. From-SVN: r264653
Martin Sebor committed -
gcc/ * config/riscv/riscv.h (FUNCTION_ARG_REGNO_P): Fix comment. From-SVN: r264652
Jim Wilson committed -
PR target/87414 * config/i386/i386.c: Include debug.h and dwarf2out.h. (output_indirect_thunk): Emit DW_CFA_def_cfa_offset after the call. From-SVN: r264651
Jakub Jelinek committed -
Ensure that the address really is the correct mode for an address. 2018-09-25 Andrew Stubbs <ams@codesourcery.com> gcc/ * builtins.c (get_builtin_sync_mem): Force address mode conversion. From-SVN: r264650
Andrew Stubbs committed -
* config/i386/crtprec.c (set_precision): Use fnstcw instead of fstcw. From-SVN: r264649
Uros Bizjak committed -
* config/i386/i386.h (enum reg_class): Remove FP_TOP_SSE_REGS and FP_SECOND_SSE_REGS. (REG_CLASS_NAMES): Ditto. (REG_CLASS_CONTENTS): Ditto. * config/i386/i386.c (ix86_preferred_reload_class) Do not handle FP_TOP_SSE_REGS and FP_SECOND_SSE_REGS classes. (ix86_preferred_output_reload_class): Ditto. * config/i386/i386.md (fix_trunc<mode>_i387_fisttp): Change "=&1f" clobber constraint to "=&f". (fix_truncdi_i387): Ditto. (lrintxfdi2): Ditto. (fistdi2_<rounding>): Ditto. (fpremxf4_i387): Change "=u" constraint to "=f". (fprem1xf4_i387): Ditto. (sincosxf3): Ditto. (fptanxf4_i387): Ditto. (fxtractxf3_i387): Ditto. (fscalexf4_i387): Ditto. (atan2xf3): Change "u" constraint to "f". (fyl2xxf3_i387): Ditto. (fyl2xp1xf3_i387): Ditto. From-SVN: r264648
Uros Bizjak committed -
On Alpha GNU/Linux there is no geteuid system call, there is only getresuid. The raw geteuid system call is only used for testing, so just skip the test if it's not available. Reviewed-on: https://go-review.googlesource.com/137655 From-SVN: r264647
Ian Lance Taylor committed -
From-SVN: r264646
Uros Bizjak committed -
PR target/87439 * config/i386/i386.h (NUM_MODES_FOR_MODE_SWITCHING): Update for removed I387_MASK_PM entity. From-SVN: r264645
Uros Bizjak committed -
2018-09-26 Alexey Neyman <stilor@att.net> * graphite.h: Include <isl/id.h> and <isl/space.h>; these headers are no longer pulled in by <isl/val.h>. From-SVN: r264644
Jeff Law committed -
2018-09-26 Richard Biener <rguenther@suse.de> PR debug/87443 * dwarf2out.c (gen_lexical_block_die): Do not equate inline or concrete instance DIE to the tree. Create abstract origin attributes also for concrete instances. * gcc.dg/debug/dwarf2/inline5.c: New testcase. From-SVN: r264643
Richard Biener committed -
* graphite.h: Include <isl/id.h> and <isl/space.h>; these headers are no longer pulled in by <isl/val.h>. From-SVN: r264642
Alexey Neyman committed -
* Makefile.am (mostlyclean-local): Ignore chmod errors. (check-go-tool): Likewise. * Makefile.in: Regenerate. From-SVN: r264641
Rainer Orth committed -
2018-09-26 Martin Jambor <mjambor@suse.cz> PR c/87347 c/ * c-parser.c (warn_for_abs): Bail out if TYPE_ARG_TYPES is NULL. Fix comment. testsuite/ * gcc.dg/pr87347.c: New test. From-SVN: r264640
Martin Jambor committed -
re PR c++/71131 ([concepts] Ill-formed code declaring a variable with a template concept not rejected) 2018-09-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71131 * g++.dg/concepts/pr71131.C: New. 2018-09-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71127 * g++.dg/concepts/pr71127.C: New. From-SVN: r264639
Paolo Carlini committed -
2018-09-26 Paolo Carlini <paolo.carlini@oracle.com> PR c++/67655 * g++.dg/concepts/pr67655.C: New. From-SVN: r264638
Paolo Carlini committed -
2018-09-26 Elisa Barboni <barboni@adacore.com> gcc/ada/ * sem_prag.adb (Check_Refined_Global_Item): Improve error message. From-SVN: r264637
Elisa Barboni committed -
When a representation item is defined by a pragma or attribute definition clause, the entity it applies to is that of the Name of the representation item. But when it is defined by an aspect definition, the entity is directly denoted by the Entity attribute of the represenation item. The circuitry that inherits representation items for derived types or subtypes must account for these two possible cases. 2018-09-26 Thomas Quinot <quinot@adacore.com> gcc/ada/ * sem_ch13.adb (Inherit_Aspects_At_Freeze_Point): For a representation item that is an N_Aspect_Definition, retrieve the entity it applies to using the Entity attribute. gcc/testsuite/ * gnat.dg/sso13.adb: New testcase. From-SVN: r264636
Thomas Quinot committed -
This patch fixes an issue whereby user-defined subprograms used as generic actuals with corresponding formals containing other formal types led to spurious ineffective use_clause warnings. 2018-09-26 Justin Squirek <squirek@adacore.com> gcc/ada/ * sem_ch8.adb (Analyze_Subprogram_Renaming): Add extra condition to check for unmarked subprogram references coming from renamings. gcc/testsuite/ * gnat.dg/warn16.adb: New testcase. From-SVN: r264635
Justin Squirek committed -
2018-09-26 Arnaud Charlet <charlet@adacore.com> gcc/ada/ * back_end.adb (Scan_Compiler_Arguments): Store -G xxx switches. From-SVN: r264634
Arnaud Charlet committed -
Issue a positive message that inlining was performed in GNATprove mode, when corresponding debug switch -gnatd_f is set. 2018-09-26 Yannick Moy <moy@adacore.com> gcc/ada/ * errout.ads: Update comment for insertion character '?'. * inline.adb: Use simple insertion character '?' for GNATprove info messages. * sem_res.adb (Resolve_Call): Issue an info message on inlining in GNATprove mode. From-SVN: r264633
Yannick Moy committed
-