- 17 Jul, 2017 9 commits
-
-
* gcc_update (files_and_dependencies) [gcc/config/avr/avr-tables.opt]: Remove dead entry. From-SVN: r250263
Georg-Johann Lay committed -
2017-07-17 Tamar Christina <tamar.christina@arm.com> * config/arm/arm_neon.h: Fix softp typo. From-SVN: r250262
Tamar Christina committed -
PR tree-optimization/81365 * tree-ssa-phiprop.c (propagate_with_phi): When considering hoisting aggregate moves onto bb predecessor edges, make sure there are no loads that could alias the lhs in between the start of bb and the loads from *phi. * g++.dg/torture/pr81365.C: New test. From-SVN: r250261
Jakub Jelinek committed -
PR 80929 * config/avr/avr.c (avr_mul_highpart_cost): New static function. (avr_rtx_costs_1) [TRUNCATE]: Use it to compute mul_highpart cost. [LSHIFTRT, outer_code = TRUNCATE]: Same. From-SVN: r250258
Georg-Johann Lay committed -
re PR tree-optimization/81396 (Optimization of reading Little-Endian 64-bit number with portable code has a regression) PR tree-optimization/81396 * tree-ssa-math-opts.c (struct symbolic_number): Add n_ops field. (init_symbolic_number): Initialize it to 1. (perform_symbolic_merge): Add n_ops from both operands into the new n_ops. (find_bswap_or_nop): Don't consider n->n == cmpnop computations without base_addr as useless if they need more than one operation. (bswap_replace): Handle !bswap case for NULL base_addr. * gcc.dg/tree-ssa/pr81396.c: New test. From-SVN: r250257
Jakub Jelinek committed -
2017-07-17 Tom de Vries <tom@codesourcery.com> PR target/81069 * config/nvptx/nvptx.c (nvptx_single): Insert diverging branch as late as possible. From-SVN: r250256
Tom de Vries committed -
In case the LEON3FT back-to-back store workaround is active (sparc_fix_b2bst), then define the builtin define __FIX_LEON3FT_B2BST on RTEMS. The intended use case for this is operating system code in assembly language. See also: https://lists.rtems.org/pipermail/devel/2017-July/018463.html gcc/ * gcc/config/sparc/rtemself.h (TARGET_OS_CPP_BUILTINS): Add conditional builtin define __FIX_LEON3FT_B2BST. From-SVN: r250254
Sebastian Huber committed -
Replace MULTILIB_EXCEPTIONS with MULTILIB_REQUIRED for readability. -mfix-gr712rc and -mfix-ut700 are currently equivalent. gcc/ * config/sparc/t-rtems: Add mfix-gr712rc multilibs. Replace MULTILIB_EXCEPTIONS with MULTILIB_REQUIRED. Match -mfix-gr712rc with -mfix-ut700. From-SVN: r250252
Daniel Cederman committed -
From-SVN: r250251
GCC Administrator committed
-
- 16 Jul, 2017 15 commits
-
-
PR rtl-optimization/81424 * optabs.c (prepare_cmp_insn): Use copy_to_reg instead of force_reg to remove potential trapping from operands if -fnon-call-exceptions. From-SVN: r250246
Eric Botcazou committed -
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Use profile_proability for scalling. * scale_profile_for_vect_loop.c (scale_profile_for_vect_loop): Likewise. From-SVN: r250245
Jan Hubicka committed -
From-SVN: r250243
Jan Hubicka committed -
* cfgloopmanip.c (scale_loop_profile): Avoid use of REG_BR_PROB_BASE fixpoint arithmetics. From-SVN: r250242
Jan Hubicka committed -
* tree-ssa-loop-unswitch.c (hoist_guard): Avoid use of REG_BR_PROB_BASE fixpoint arithmetics. From-SVN: r250241
Jan Hubicka committed -
* asan.c (create_cond_insert_point): Avoid use of REG_BR_PROB_BASE fixpoint arithmetics. From-SVN: r250240
Jan Hubicka committed -
* profile-count.h (profile_probability::from_reg_br_prob_note, profile_probability::to_reg_br_prob_note): New functions. * doc/rtl.texi (REG_BR_PROB_NOTE): Update documentation. * reg-notes.h (REG_BR_PROB, REG_BR_PRED): Update docs. * predict.c (probability_reliable_p): Update. (edge_probability_reliable_p): Update. (br_prob_note_reliable_p): Update. (invert_br_probabilities): Update. (add_reg_br_prob_note): New function. (combine_predictions_for_insn): Update. * asan.c (asan_clear_shadow): Update. * cfgbuild.c (compute_outgoing_frequencies): Update. * cfgrtl.c (force_nonfallthru_and_redirect): Update. (update_br_prob_note): Update. (rtl_verify_edges): Update. (purge_dead_edges): Update. (fixup_reorder_chain): Update. * emit-rtl.c (try_split): Update. * ifcvt.c (cond_exec_process_insns): Update. (cond_exec_process_if_block): Update. (dead_or_predicable): Update. * internal-fn.c (expand_addsub_overflow): Update. (expand_neg_overflow): Update. (expand_mul_overflow): Update. * loop-doloop.c (doloop_modify): Update. * loop-unroll.c (compare_and_jump_seq): Update. * optabs.c (emit_cmp_and_jump_insn_1): Update. * predict.h: Update. * reorg.c (mostly_true_jump): Update. * rtl.h: Update. * config/aarch64/aarch64.c (aarch64_emit_unlikely_jump): Update. * config/alpha/alpha.c (emit_unlikely_jump): Update. * config/arc/arc.c: (emit_unlikely_jump): Update. * config/arm/arm.c: (emit_unlikely_jump): Update. * config/bfin/bfin.c (cbranch_predicted_taken_p): Update. * config/frv/frv.c (frv_print_operand_jump_hint): Update. * config/i386/i386.c (ix86_expand_split_stack_prologue): Update. (ix86_print_operand): Update. (ix86_split_fp_branch): Update. (predict_jump): Update. * config/ia64/ia64.c (ia64_print_operand): Update. * config/mmix/mmix.c (mmix_print_operand): Update. * config/powerpcspe/powerpcspe.c (output_cbranch): Update. (rs6000_expand_split_stack_prologue): Update. * config/rs6000/rs6000.c: Update. * config/s390/s390.c (s390_expand_vec_strlen): Update. (s390_expand_vec_movstr): Update. (s390_expand_cs_tdsi): Update. (s390_expand_split_stack_prologue): Update. * config/sh/sh.c (sh_print_operand): Update. (expand_cbranchsi4): Update. (expand_cbranchdi4): Update. * config/sparc/sparc.c (output_v9branch): Update. * config/spu/spu.c (get_branch_target): Update. (ea_load_store_inline): Update. * config/tilegx/tilegx.c (cbranch_predicted_p): Update. * config/tilepro/tilepro.c: Update. * gcc.dg/predict-8.c: Update. From-SVN: r250239
Jan Hubicka committed -
* gimplify.c (mostly_copy_tree_r): Revert latest change. (gimplify_save_expr): Likewise. From-SVN: r250238
Eric Botcazou committed -
From-SVN: r250237
Jan Hubicka committed -
* ipa-fnsummary.c (pass_data_ipa_fn_summary): Use TV_IPA_FNSUMMARY. * timevar.def (TV_IPA_FNSUMMARY): Define. From-SVN: r250236
Jan Hubicka committed -
sparc.md (divdf3_fix): Add NOP to prevent back to back store errata sensitive sequence from being... * config/sparc/sparc.md (divdf3_fix): Add NOP to prevent back to back store errata sensitive sequence from being generated. (sqrtdf2_fix): Likewise. From-SVN: r250234
Daniel Cederman committed -
* tree-ssa-threadupdate.c (compute_path_counts, update_joiner_offpath_counts): Use profile_probability. From-SVN: r250233
Jan Hubicka committed -
* parser.c (cp_parser_cast_expression): Use %q#T instead of %qT in old-style cast diagnostic. * typeck.c (maybe_warn_about_useless_cast): Use %q#T instead of %qT in useless cast diagnostic. * error.c (type_to_string): Remove enum special handling. * g++.dg/cpp1z/direct-enum-init1.C: Revert special enum handling. * g++.dg/warn/pr12242.C: Likewise. From-SVN: r250232
Volker Reichelt committed -
* parser.c (cp_parser_cast_expression): Use %q#T instead of %qT in old-style cast diagnostic. * typeck.c (maybe_warn_about_useless_cast): Use %q#T instead of %qT in useless cast diagnostic. * error.c (type_to_string): Remove enum special handling. * g++.dg/cpp1z/direct-enum-init1.C: Revert special enum handling. * g++.dg/warn/pr12242.C: Likewise. From-SVN: r250231
Volker Reichelt committed -
From-SVN: r250230
GCC Administrator committed
-
- 15 Jul, 2017 5 commits
-
-
* Makefile.am (CHECK_ENV): Set GOROOT. (ECHO_ENV): Report setting GOROOT. * Makefile.in: Rebuild. From-SVN: r250226
Ian Lance Taylor committed -
PR ada/81446 * system-linux-m68k.ads: Add pragma No_Elaboration_Code_All. From-SVN: r250224
John Paul Adrian Glaubitz committed -
* include/std/mutex (scoped_lock): Reorder std::adopt_lock_t parameter as per P0739R0. * testsuite/30_threads/scoped_lock/cons/1.cc: Reorder arguments. * testsuite/30_threads/scoped_lock/cons/deduction.cc: Test deduction with std::adopt_lock_t. * testsuite/30_threads/scoped_lock/requirements/typedefs.cc: Check feature-test macro. From-SVN: r250223
Jonathan Wakely committed -
This reverts commit r250206. 2017-07-15 Thomas Preud'homme <thomas.preudhomme@arm.com> Revert: 2017-07-14 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc * config/arm/arm-c.c (arm_cpu_builtins): Define __ARM_FEATURE_NUMERIC_MAXMIN solely based on TARGET_VFP5. From-SVN: r250222
Thomas Preud'homme committed -
From-SVN: r250221
GCC Administrator committed
-
- 14 Jul, 2017 11 commits
-
-
https://gcc.gnu.org/PR81449 reports a problem with the definition semt in runtime.inc on some systems. Since the C code in libgo/runtime doesn't need semt, just don't copy it into runtime.inc. Reviewed-on: https://go-review.googlesource.com/48593 From-SVN: r250217
Ian Lance Taylor committed -
Don't assume that all (or only) 386/amd64 compilers support -fsplit-stack. Reviewed-on: https://go-review.googlesource.com/48592 From-SVN: r250216
Ian Lance Taylor committed -
rs6000-c.c (altivec_overloaded_builtins): Add array entries to represent __ieee128 versions of the scalar_test_data_class... gcc/ChangeLog: 2017-07-14 Kelvin Nilsen <kelvin@gcc.gnu.org> * config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add array entries to represent __ieee128 versions of the scalar_test_data_class, scalar_test_neg, scalar_extract_exp, scalar_extract_sig, and scalar_insert_exp built-in functions. (altivec_resolve_overloaded_builtin): Add special case handling for the __builtin_scalar_insert_exp function, as represented by the P9V_BUILTIN_VEC_VSIEDP constant. * config/rs6000/rs6000-builtin.def (VSEEQP): Add scalar extract exponent support for __ieee128 argument. (VSESQP): Add scalar extract signature support for __ieee128 argument. (VSTDCNQP): Add scalar test negative support for __ieee128 argument. (VSIEQP): Add scalar insert exponent support for __int128 argument with __ieee128 result. (VSIEQPF): Add scalar insert exponent support for __ieee128 argument with __ieee128 result. (VSTDCQP): Add scalar test data class support for __ieee128 argument. (VSTDCNQP): Add overload support for scalar test negative with __ieee128 argument. (VSTDCQP): Add overload support for scalar test data class __ieee128 argument. * config/rs6000/vsx.md (UNSPEC_VSX_SXSIG) Replace UNSPEC_VSX_SXSIGDP. (UNSPEC_VSX_SIEXPQP): New constant. (xsxexpqp): New insn for VSX scalar extract exponent quad precision. (xsxsigqp): New insn for VSX scalar extract significand quad precision. (xsiexpqpf): New insn for VSX scalar insert exponent quad precision with floating point argument. (xststdcqp): New expand for VSX scalar test data class quad precision. (xststdcnegqp): New expand for VSX scalar test negative quad precision. (xststdcqp): New insn to match expansions for VSX scalar test data class quad precision and VSX scalar test negative quad precision. * config/rs6000/rs6000.c (rs6000_expand_binop_builtin): Add special case operand checking to enforce that second operand of VSX scalar test data class with quad precision argument is a 7-bit unsigned literal. * doc/extend.texi (PowerPC AltiVec Built-in Functions): Add prototypes and descriptions of __ieee128 versions of scalar_extract_exp, scalar_extract_sig, scalar_insert_exp, scalar_test_data_class, and scalar_test_neg built-in functions. gcc/testsuite/ChangeLog: 2017-07-14 Kelvin Nilsen <kelvin@gcc.gnu.org> * gcc.target/powerpc/bfp/scalar-cmp-exp-eq-3.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-eq-4.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-gt-3.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-gt-4.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-lt-3.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-lt-4.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-unordered-3.c: New test. * gcc.target/powerpc/bfp/scalar-cmp-exp-unordered-4.c: New test. * gcc.target/powerpc/bfp/scalar-extract-exp-3.c: New test. * gcc.target/powerpc/bfp/scalar-extract-exp-4.c: New test. * gcc.target/powerpc/bfp/scalar-extract-exp-5.c: New test. * gcc.target/powerpc/bfp/scalar-extract-exp-6.c: New test. * gcc.target/powerpc/bfp/scalar-extract-exp-7.c: New test. * gcc.target/powerpc/bfp/scalar-extract-sig-3.c: New test. * gcc.target/powerpc/bfp/scalar-extract-sig-4.c: New test. * gcc.target/powerpc/bfp/scalar-extract-sig-5.c: New test. * gcc.target/powerpc/bfp/scalar-extract-sig-6.c: New test. * gcc.target/powerpc/bfp/scalar-extract-sig-7.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-10.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-11.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-12.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-13.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-14.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-15.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-6.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-7.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-8.c: New test. * gcc.target/powerpc/bfp/scalar-insert-exp-9.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-10.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-11.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-12.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-13.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-14.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-15.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-8.c: New test. * gcc.target/powerpc/bfp/scalar-test-data-class-9.c: New test. * gcc.target/powerpc/bfp/scalar-test-neg-4.c: New test. * gcc.target/powerpc/bfp/scalar-test-neg-5.c: New test. * gcc.target/powerpc/bfp/scalar-test-neg-6.c: New test. * gcc.target/powerpc/bfp/scalar-test-neg-7.c: New test. * gcc.target/powerpc/bfp/scalar-test-neg-8.c: New test. * gcc.target/powerpc/bfp/vec-extract-exp-4.c: New test. * gcc.target/powerpc/bfp/vec-extract-exp-5.c: New test. * gcc.target/powerpc/bfp/vec-extract-sig-4.c: New test. * gcc.target/powerpc/bfp/vec-extract-sig-5.c: New test. * gcc.target/powerpc/bfp/vec-insert-exp-10.c: New test. * gcc.target/powerpc/bfp/vec-insert-exp-11.c: New test. * gcc.target/powerpc/bfp/vec-insert-exp-8.c: New test. * gcc.target/powerpc/bfp/vec-insert-exp-9.c: New test. * gcc.target/powerpc/bfp/vec-test-data-class-8.c: New test. * gcc.target/powerpc/bfp/vec-test-data-class-9.c: New test. From-SVN: r250214
Kelvin Nilsen committed -
2017-07-14 Jason Merrill <jason@redhat.com> Jonathan Wakely <jwakely@redhat.com> * include/std/variant (variant::variant(_Tp&&)): Constrain to remove the constructor for empty variants from the candidate functions during class template argument deduction. * testsuite/20_util/variant/deduction.cc: New. Co-Authored-By: Jonathan Wakely <jwakely@redhat.com> From-SVN: r250213
Jason Merrill committed -
[gcc] 2016-07-14 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR tree-optimization/81162 * gimple-ssa-strength-reduction.c (replace_mult_candidate): Don't replace a negate with an add. [gcc/testsuite] 2016-07-14 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR tree-optimization/81162 * gcc.dg/pr81162.c: New file. From-SVN: r250212
Bill Schmidt committed -
gcc/testsuite/ChangeLog: * gcc.dg/tree-ssa/ssa-dse-30.c: Correct test to look for memmove that bcopy is expected to be transformed to. From-SVN: r250209
Martin Sebor committed -
We don't document the list of CPU names which can take a +crypto extension in the ARM port. This patch fixes that oversight. gcc/ 2017-14-07 James Greenhalgh <james.greenhalgh@arm.com> * doc/invoke.texi (arm/-mcpu): Document +crypto. From-SVN: r250207
James Greenhalgh committed -
Definition of __ARM_FEATURE_NUMERIC_MAXMIN checks for TARGET_ARM_ARCH >= 8 and TARGET_NEON being true in addition to TARGET_VFP5. However, instructions covered by this macro are part of FPv5 which is available in ARMv7E-M architecture. This commit fixes the macro to only check for TARGET_VFP5. 2017-07-14 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/arm-c.c (arm_cpu_builtins): Define __ARM_FEATURE_NUMERIC_MAXMIN solely based on TARGET_VFP5. From-SVN: r250206
Thomas Preud'homme committed -
2017-07-14 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/arm-cpus.in (cortex-r52): Add new entry. (armv8-r): Set ARM Cortex-R52 as default CPU. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm-tune.md: Regenerate. * config/arm/driver-arm.c (arm_cpu_table): Add entry for ARM Cortex-R52. * doc/invoke.texi: Mention -mtune=cortex-r52 and availability of fp.dp extension for -mcpu=cortex-r52. From-SVN: r250205
Thomas Preud'homme committed -
fp-armv8 is currently defined as a double precision FPv5 with 32 D registers *and* a special FP_ARMv8 bit. However FP for ARMv8 should only bring 32 D registers on top of FPv5-D16 so this FP_ARMv8 bit is spurious. As a consequence, many instruction patterns which are guarded by TARGET_FPU_ARMV8 are unavailable to FPv5-D16 and FPv5-SP-D16. This commit gets rid of TARGET_FPU_ARMV8 and rewire all uses to expressions based on TARGET_VFP5, TARGET_VFPD32 and TARGET_VFP_DOUBLE. It also redefine ISA_FP_ARMv8 to include the D32 capability to distinguish it from FPv5-D16. At last, it sets the +fp.sp for ARMv8-R to enable FPv5-SP-D16 (ie FP for ARMv8 with single precision only and 16 D registers). 2017-07-14 Thomas Preud'homme <thomas.preudhomme@arm.com> gcc/ * config/arm/arm-isa.h (isa_bit_FP_ARMv8): Delete enumerator. (ISA_FP_ARMv8): Define as ISA_FPv5 and ISA_FP_D32. * config/arm/arm-cpus.in (armv8-r): Define fp.sp as enabling FPv5. (fp-armv8): Define it as FP_ARMv8 only. config/arm/arm.h (TARGET_FPU_ARMV8): Delete. (TARGET_VFP_FP16INST): Define using TARGET_VFP5 rather than TARGET_FPU_ARMV8. config/arm/arm.c (arm_rtx_costs_internal): Replace checks against TARGET_FPU_ARMV8 by checks against TARGET_VFP5. * config/arm/arm-builtins.c (arm_builtin_vectorized_function): Define first ARM_CHECK_BUILTIN_MODE definition using TARGET_VFP5 rather than TARGET_FPU_ARMV8. * config/arm/arm-c.c (arm_cpu_builtins): Likewise for __ARM_FEATURE_NUMERIC_MAXMIN macro definition. * config/arm/arm.md (cmov<mode>): Condition on TARGET_VFP5 rather than TARGET_FPU_ARMV8. * config/arm/neon.md (neon_vrint): Likewise. (neon_vcvt): Likewise. (neon_<fmaxmin_op><mode>): Likewise. (<fmaxmin><mode>3): Likewise. * config/arm/vfp.md (l<vrint_pattern><su_optab><mode>si2): Likewise. * config/arm/predicates.md (arm_cond_move_operator): Check against TARGET_VFP5 rather than TARGET_FPU_ARMV8 and fix spacing. From-SVN: r250204
Thomas Preud'homme committed -
gcc/c-family/ChangeLog: * c-common.c (try_to_locate_new_include_insertion_point): New function. (per_file_includes_t): New typedef. (added_includes_t): New typedef. (added_includes): New variable. (maybe_add_include_fixit): New function. * c-common.h (maybe_add_include_fixit): New decl. gcc/c/ChangeLog: * c-decl.c (implicitly_declare): When suggesting a missing #include, provide a fix-it hint. gcc/cp/ChangeLog: * name-lookup.c (get_std_name_hint): Add '<' and '>' around the header names. (maybe_suggest_missing_header): Update for addition of '<' and '>' to above. Provide a fix-it hint. * pt.c: Include "gcc-rich-location.h" (listify): Attempt to add fix-it hint for missing #include <initializer_list>. * rtti.c: Include "gcc-rich-location.h". (typeid_ok_p): Attempt to add fix-it hint for missing #include <typeinfo>. gcc/testsuite/ChangeLog: * g++.dg/cpp0x/missing-initializer_list-include.C: New test case. * g++.dg/lookup/missing-std-include-2.C: New test case. * g++.dg/lookup/missing-std-include-3.C: New test case. * g++.dg/rtti/missing-typeinfo-include.C: New test case. * gcc.dg/missing-header-fixit-1.c: New test case. * gcc.dg/missing-header-fixit-2.c: New test case. * gcc.dg/missing-header-fixit-2.h: New header. From-SVN: r250203
David Malcolm committed
-