1. 23 Oct, 2015 10 commits
  2. 22 Oct, 2015 21 commits
    • re PR driver/68043 (many undocumented options, missing punctuation) · ffbd5e09
      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
      Martin Sebor committed
    • pr67985-3.c (dg-options): Add -mfpmath=sse. · efee9dc4
      	* gcc.target/i386/pr67985-3.c (dg-options): Add -mfpmath=sse.
      
      From-SVN: r229199
      Uros Bizjak committed
    • Fix up ChangeLog for rev. 229155. · b1726d6c
      From-SVN: r229195
      Martin Sebor committed
    • Proposed doc update for Explicit Reg Vars 3/3 · aba77695
      	* doc/extend.exp (Global Register Variables): Rewrite.
      
      From-SVN: r229188
      David Wohlferd committed
    • [PATCH 3/9] ENABLE_CHECKING refactoring: Java and Ada · 9abe8b74
      [PATCH 3/9] ENABLE_CHECKING refactoring: Java and Ada
      gcc/java/ChangeLog:
      
      2015-10-05  Mikhail Maltsev  <maltsevm@gmail.com>
      
      	* decl.c (java_mark_decl_local): Use flag_checking instead of
      	ENABLE_CHECKING.
      
      gcc/ada/ChangeLog:
      
      2015-10-05  Mikhail Maltsev  <maltsevm@gmail.com>
      
      	* gcc-interface/decl.c (gnat_to_gnu_entity): Use gcc_checking_assert.
      	* gcc-interface/trans.c (assoc_to_constructor): Use flag_checking.
      	* gcc-interface/utils.c (relate_alias_sets): Likewise.
      	* gcc-interface/utils2.c (build_binary_op, build_unary_op): Use
      	gcc_checking_assert
      
      From-SVN: r229185
      Mikhail Maltsev committed
    • [PATCH] Fix abort in write_eligible_delay · 71e558ef
      [PATCH] Fix abort in write_eligible_delay
              * genattrtab.c (main): If we do not have any annul-true or annul-false
              slots, then write out a dummy eligible_for_annul_true or
              eligible_for_annul_false as needed.
      
      From-SVN: r229184
      Jeff Law committed
    • msp430.opt: Add -msilicon-errata and -msilicon-errata-warn. · 8d535dab
      	* config/msp430/msp430.opt: Add -msilicon-errata and
      	-msilicon-errata-warn.
      	* config/msp430/msp430.h (ASM_SPEC): Pass new options on to
      	assembler.
      	* doc/invoke.texi: Document new options.
      
      From-SVN: r229177
      Nick Clifton committed
    • re PR c++/67838 (Rejects-valid-code: templated lambda variable.) · 2c34eb74
      2015-10-22  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/67838
      	* g++.dg/cpp1y/var-templ46.C: New.
      
      From-SVN: r229175
      Paolo Carlini committed
    • oops- omitted by accident from the previous delta. · 5eec02d0
      From-SVN: r229174
      Nick Clifton committed
    • re PR tree-optimization/58497 (SLP vectorizes identical operations) · 975b6ff3
      2015-10-22  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58497
      	* tree-vect-generic.c (ssa_uniform_vector_p): New helper.
      	(expand_vector_operations_1): Use it.  Lower operations on
      	all uniform vectors to scalar operations if the HW supports it.
      
      	* gcc.dg/tree-ssa/vector-5.c: New testcase.
      
      From-SVN: r229173
      Richard Biener committed
    • re PR tree-optimization/19049 (not vectorizing a fortran loop) · 90a7a1b5
      2015-10-22  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/19049
      	PR tree-optimization/65962
      	* tree-vect-data-refs.c (vect_analyze_group_access_1): Fall back
      	to strided accesses if single-element interleaving doesn't work.
      
      	* gcc.dg/vect/vect-strided-store-pr65962.c: New testcase.
      	* gcc.dg/vect/vect-63.c: Adjust.
      	* gcc.dg/vect/vect-70.c: Likewise.
      	* gcc.dg/vect/vect-strided-u8-i2-gap.c: Likewise.
      	* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Likewise.
      	* gfortran.dg/vect/pr19049.f90: Likewise.
      	* gfortran.dg/vect/vect-8.f90: Likewise.
      
      From-SVN: r229172
      Richard Biener committed
    • re PR middle-end/68046 (-ftrapv doesn't catch leaq-based overflows on x86-64) · a51ca2f4
      2015-10-22  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/68046
      	PR middle-end/61893
      	* optabs.c (emit_libcall_block_1): Allow a NULL_RTX equiv.
      	(expand_binop): For -ftrapv optabs do not record an REG_EQUAL note.
      	(expand_unop): Likewise.
      
      	* gcc.dg/torture/ftrapv-2.c: New testcase.
      
      From-SVN: r229170
      Richard Biener committed
    • ChangeLog: Fix whitespace. · 08e99efb
      From-SVN: r229169
      Uros Bizjak committed
    • Fix bootstrap on x86_64-apple-darwin14 after r229119. · 692b1131
      libsanitizer/
      
      	PR bootstrap/68041
      	* configure.ac (link_sanitizer_common): Link against librt only if it
      	contains shm_open, required by sanitizers.
      	(CXX_ABI_NEEDED): Remove variable.
      	* configure: Regenerate.
      	* ubsan/Makefile.am (libubsan_la_LIBADD): Do not add -lc++abi anymore.
      	* ubsan/Makefile.in: Regenerate.
      
      From-SVN: r229168
      Max Ostapenko committed
    • fold-const.c (fold_addr_of_array_ref_difference): Properly convert operands… · a8fc2579
      fold-const.c (fold_addr_of_array_ref_difference): Properly convert operands before folding a MINUS_EXPR.
      
      2015-10-22  Richard Biener  <rguenther@suse.de>
      
      	* fold-const.c (fold_addr_of_array_ref_difference): Properly
      	convert operands before folding a MINUS_EXPR.
      	(fold_binary_loc): Move simplification of MINUS_EXPR on
      	converted POINTER_PLUS_EXPRs ...
      	* match.pd: ... here.
      
      	c/
      	* c-typeck.c (c_finish_omp_clauses): Properly convert operands
      	before folding a MINUS_EXPR.
      
      	cp/
      	* semantics.c (cp_finish_omp_clause_depend_sink): Properly convert
      	before folding a MINUS_EXPR.
      	(finish_omp_clauses): Likewise.
      
      From-SVN: r229167
      Richard Biener committed
    • Move tan simplifications to match.pd · cfed37a0
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      
      gcc/
      	* builtins.c (fold_builtin_tan): Delete.
      	(fold_builtin_1): Handle constant tan arguments here.
      	* match.pd: Simplify (tan (atan x)) to x.
      
      From-SVN: r229166
      Richard Sandiford committed
    • Move more cproj simplifications to match.pd · 92c52eab
      Also make build_complex_cproj available globally and use
      it for the existing match.pd rules.
      
      Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
      
      gcc/
      	* builtins.c (fold_builtin_cproj): Delete.
      	(fold_builtin_1): Handle constant arguments here.
      	(build_complex_cproj): Move and rename to...
      	* tree.c: (build_complex_inf): ...this.
      	* tree.h (build_complex_inf): Declare.
      	* match.pd: Fold cproj(x)->x if x has no infinity.
      	Use build_complex_inf for existing cproj rules.
      
      From-SVN: r229164
      Richard Sandiford committed
    • S/390: PR68015 Fix ICE in s390_emit_compare · 7477de01
      gcc/ChangeLog:
      
      2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/68015
      	* config/s390/s390.md (mov<mode>cc): Emit compare only if we don't
      	already have a comparison result.
      
      gcc/testsuite/ChangeLog:
      
      2015-10-22  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/68015
      	* gcc.target/s390/pr68015.c: New test.
      
      From-SVN: r229163
      Andreas Krebbel committed
    • [PATCH][ARM] Fix for testcase after r228661 · 597bb9db
      
      This patch addresses PR-67948 by changing the xor-and.c test,
      initially written for a simplify-rtx pattern, to make it pass post
      r228661 (see
      https://gcc.gnu.org/ml/gcc-patches/2015-10/msg00676.html). This test
      no longer triggered the simplify-rtx pattern it was written for prior
      to r228661, though other optimizations did lead to the same assembly
      the test checked for. The optimization added with r228661 matches the
      pattern used in the test and optimizes it to a better and still valid
      sequence. Being unable to easily change the test to trigger the
      original simplify-rtx pattern, I chose to change it to pass with the
      new produced assembly sequence.
      
      This is correct because the transformation is valid and it yields a
      more efficient pattern. However, as I pointed out before this test
      doesn't test the optimization it originally was intended for.
      
      Tested by running regression tests for armv6.
      
      Is this OK to commit?
      
      Thanks, Andre
      
      2015-10-22  Andre Vieira  <andre.simoesdiasvieira@arm.com>
      
      	PR testsuite/67948
      	* gcc.target/arm/xor-and.c: Adjust test to check for eor
      	instead of orr.
      
      From-SVN: r229161
      Andre Vieira committed
    • [Patch AArch64 63304] Fix issue with global state. · 1be34295
      
      Jiong pointed out privately that there was a thinko
      in the way in which the global state was being
      set and reset. I don't like adding such
      global state but ....
      
      
      2015-10-22  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
              PR target/63304
              * config/aarch64/aarch64.c (aarch64_nopcrelative_literal_loads): New.
              (aarch64_expand_mov_immediate): Use aarch64_nopcrelative_literal_loads.
              (aarch64_classify_address): Likewise.
              (aarch64_secondary_reload): Likewise.
              (aarch64_override_options_after_change_1): Adjust.
              * config/aarch64/aarch64.md (aarch64_reload_movcp<GPF_TF:mode><P:mode>):
              Use aarch64_nopcrelative_literal_loads.
              (aarch64_reload_movcp<VALL:mode><P:mode>): Likewise.
              * config/aarch64/aarch64-protos.h (aarch64_nopcrelative_literal_loads): 
      	Declare
      
      2015-10-22  Jiong Wang  <jiong.wang@arm.com>
                  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
              PR target/63304
              * gcc.target/aarch64/pr63304_1.c: New test.
      
      From-SVN: r229160
      Ramana Radhakrishnan committed
    • Daily bump. · 01f32f32
      From-SVN: r229159
      GCC Administrator committed
  3. 21 Oct, 2015 9 commits
    • re PR c++/66781 ("confused by earlier errors, bailing out" with wrong enum within class) · f523e68a
      /cp
      2015-10-21  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/66781
      	* parser.c (cp_parser_enum_specifier): Upon error_at set
      	nested_name_specifier to error_mark_node; improve error message.
      
      /testsuite
      2015-10-21  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/66781
      	* g++.dg/parse/enum13.C: New.
      
      /cp
      2015-10-21  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/67847
      	* parser.c (cp_parser_enum_specifier): Reject a nested_name_specifier
      	which doesn't name a class or namespace.
      
      /testsuite
      2015-10-21  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/67847
      	* g++.dg/parse/enum12.C: New.
      
      From-SVN: r229156
      Paolo Carlini committed
    • Improve --help output to generate references to option aliases. · a7b2e184
      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
      Martin Sebor committed
    • [PATCH 2/9] ENABLE_CHECKING refactoring: libcpp · 22d66382
      [PATCH 2/9] ENABLE_CHECKING refactoring: libcpp
              * include/line-map.h: Use CHECKING_P instead of ENABLE_CHECKING.
              * init.c: Likewise.
              * macro.c (struct macro_arg_token_iter, set_arg_token,
              macro_arg_token_iter_init, macro_arg_token_iter_forward,
              macro_arg_token_iter_get_token, macro_arg_token_iter_get_location,
              alloc_expanded_arg_mem, _cpp_backup_tokens): Likewise.
      
      From-SVN: r229154
      Mikhail Maltsev committed
    • re PR fortran/67939 (ICE on using data with negative substring range) · 44f92b59
      2015-10-21  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/67939
      	* data.c (create_character_initializer): Deal with zero length string.
      
      
      2015-10-21  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/67939
      	* gfortran.dg/pr67939.f90: New test.
      
      From-SVN: r229153
      Steven G. Kargl committed
    • a scalar depending on vdefs in the current region is not invariant · 78fd2726
      When a scalar is defined in function of an array reference in the current scop,
      it does variate.  Graphite cannot represent the condition in scop-11.c, as a[*]
      variates in the current region, and it is not an affine condition:
      
        for (j = 0; j <= 20; j++)
          a[j] = b + i;
      
        if (a[12] == 23)
          b = 3;
        else
          b = 1;
      
        for (j = 0; j <= 20; j++)
          a[j] = b + i;
      
      	* graphite-scop-detection.c (parameter_index_in_region): Update call to
      	invariant_in_sese_p_rec.
      	* graphite-sese-to-poly.c (extract_affine): Same.
      	* sese.c (invariant_in_sese_p_rec): Pass in an extra parameter has_vdefs.
      	(scalar_evolution_in_region): Return chrec_dont_know when the scalar variable
      	depends on virtual definitions in the current region.
      	* sese.h (invariant_in_sese_p_rec): Update declaration.
      
      testsuite/
      	* gcc.dg/graphite/scop-11.c: Update pattern.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r229151
      Aditya Kumar committed
    • add an upper limit on the number of array references · 8b76e7fe
      	* graphite-scop-detection.c (build_scops): Do not handle scops with more
      	than PARAM_GRAPHITE_MAX_ARRAYS_PER_SCOP arrays.
      	* params.def (PARAM_GRAPHITE_MAX_ARRAYS_PER_SCOP): New.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r229150
      Aditya Kumar committed
    • [PATCH 1/9] ENABLE_CHECKING refactoring · 7ec491c0
      gcc/
      	* config.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac (CHECKING_P): Define.
      	* system.h: Use CHECKING_P.
      
      libcpp/
      	* config.in: Regenerate.
      	* configure: Regenerate.
      	* configure.ac (CHECKING_P): Define.
      	* system.h (fancy_abort): Declare.
      	(abort): Define.
      	(gcc_assert): Define. Use CHECKING_P.
      
      From-SVN: r229149
      Mikhail Maltsev committed
    • re PR ipa/67056 (Wrong code generated) · 74bb7709
      	PR ipa/67056
      	* ipa-polymorphic-call.c (possible_placement_new): If cur_offset
      	is negative we don't know the type.
      	(check_stmt_for_type_change): Skip constructors of non-polymorphic
      	types as those won't help devirutalization.
      	* g++.dg/ipa/pr67056.C: New testcase.
      
      From-SVN: r229148
      Jan Hubicka committed