1. 20 Oct, 2014 8 commits
    • slsr-19.c: Make robust against operand order changes. · 8bc598ff
      2014-10-20  Richard Biener  <rguenther@suse.de>
      
      	* gcc.dg/tree-ssa/slsr-19.c: Make robust against operand order changes.
      	* gcc.dg/tree-ssa/reassoc-20.c: Likewise.
      
      From-SVN: r216465
      Richard Biener committed
    • Makefile.am: Move ctype.cc, ctype_configure_char.cc and ctype_members.cc to ... · a3e4cd81
      	* src/c++98/Makefile.am: Move ctype.cc, ctype_configure_char.cc and
      	ctype_members.cc to ...
      	* src/c++11/Makefile.am: Here.
      	* src/c++98/Makefile.in: Regenerate.
      	* src/c++11/Makefile.in: Regenerate.
      	* src/c++98/ctype.cc: Move file to ...
      	* src/c++11/ctype.cc: Here, define ctype_base::blank.
      	* config/abi/pre/gnu.ver: Export ctype_base::blank.
      	* config/locale/generic/ctype_members.cc
      	(ctype<wchar_t>::_M_convert_to_wmask): Handle blank. Update comments.
      	* config/locale/gnu/ctype_members.cc
      	(ctype<wchar_t>::_M_convert_to_wmask): Likewise.
      	* config/os/aix/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/bionic/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/bsd/darwin/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/bsd/darwin/ctype_inline.h (ctype<char>::is): Use blank.
      	(ctype<wchar_t::do_is): Likewise.
      	* config/os/bsd/dragonfly/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/bsd/dragonfly/ctype_inline.h (ctype<char>::is): Use blank.
      	(ctype<wchar_t::do_is): Likewise.
      	* config/os/bsd/freebsd/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/bsd/freebsd/ctype_inline.h (ctype<char>::is): Use blank.
      	(ctype<wchar_t::do_is): Likewise.
      	* config/os/bsd/netbsd/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/bsd/openbsd/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/djgpp/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/generic/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/generic/ctype_inline.h (ctype<char>::is): Use blank.
      	* config/os/gnu-linux/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/hpux/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/mingw32-w64/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/mingw32-w64/ctype_configure_char.cc
      	(ctype<char>::classic_table()): Set blank bit for space and tab.
      	* config/os/mingw32/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/mingw32/ctype_configure_char.cc
      	(ctype<char>::classic_table()): Set blank bit for space and tab.
      	* config/os/newlib/ctype_base.h (ctype_base::blank): Declare.
      	* config/os/qnx/qnx6.1/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/solaris/solaris2.10/ctype_base.h (ctype_base::blank):
      	Likewise.
      	* config/os/tpf/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/uclibc/ctype_base.h (ctype_base::blank): Likewise.
      	* config/os/vxworks/ctype_base.h (ctype_base::blank): Likewise.
      	* include/bits/locale_facets.h (isblank): Define.
      	* include/bits/localefwd.h (isblank): Declare.
      	* testsuite/22_locale/classification/isblank.cc: New.
      	* testsuite/22_locale/ctype_base/blank.cc: New.
      
      From-SVN: r216464
      Jonathan Wakely committed
    • tree-vect-slp.c (vect_get_and_check_slp_defs): Try swapping operands to get a… · b0b4483e
      tree-vect-slp.c (vect_get_and_check_slp_defs): Try swapping operands to get a def operand kind match.
      
      2014-10-20  Richard Biener  <rguenther@suse.de>
      
      	* tree-vect-slp.c (vect_get_and_check_slp_defs): Try swapping
      	operands to get a def operand kind match.  Signal mismatches
      	to the parent so we can try swapping its operands.
      	(vect_build_slp_tree): Try swapping operands if they have
      	a mismatched operand kind.
      
      From-SVN: r216463
      Richard Biener committed
    • re PR debug/60655 (ICE: output_operand: invalid expression as operand) · c11c8664
      	PR debug/60655
      	* simplify-rtx.c (simplify_plus_minus): Delete unused "input_ops".
      	Increase "ops" array size.  Correct array size tests.  Init
      	n_constants in loop.  Break out of innermost loop when finding
      	a trivial CONST expression.
      
      From-SVN: r216462
      Alan Modra committed
    • re PR tree-optimization/63583 (ICF does not check that the template strings are the same) · 13f659d4
      PR ipa/63583
      
      	* ipa-icf-gimple.c (func_checker::compare_gimple_asm):
      	Gimple tempate string is compared.
      
      	* gcc.dg/ipa/pr63595.c: New test.
      
      From-SVN: r216458
      Martin Liska committed
    • varasm.c (const_alias_set): Remove. · d3f027a1
      	* varasm.c (const_alias_set): Remove.
      	(init_varasm_once): Remove initialization of const_alias_set.
      	(build_constant_desc): Do not set alias set to const_alias_set.
      
      From-SVN: r216454
      Uros Bizjak committed
    • PR 63589 Fix splitting of PATH in find_addr2line. · 70480968
      2014-10-20  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR libfortran/63589
      	* configure.ac: Check for strtok_r.
      	* runtime/main.c (gfstrtok_r): Fallback implementation of
      	strtok_r.
      	(find_addr2line): Use strtok_r to split PATH.
      	* config.h.in: Regenerated.
      	* configure: Regenerated.
      
      From-SVN: r216449
      Janne Blomqvist committed
    • Daily bump. · e0d37441
      From-SVN: r216447
      GCC Administrator committed
  2. 19 Oct, 2014 7 commits
  3. 18 Oct, 2014 8 commits
  4. 17 Oct, 2014 17 commits
    • re PR c/63567 (Linux kernel build error due to non-static initializers) · 7278465e
      	PR c/63567
      	* c-typeck.c (digest_init): Allow initializing objects with static
      	storage duration with compound literals even in C99 and add pedwarn
      	for it.
      
      	* gcc.dg/pr61096-1.c: Change dg-error into dg-warning.
      	* gcc.dg/pr63567-1.c: New test.
      	* gcc.dg/pr63567-2.c: New test.
      
      From-SVN: r216416
      Marek Polacek committed
    • ipa-inline-transform.c (master_clone_with_noninline_clones_p): New. · d83fa499
      	* ipa-inline-transform.c (master_clone_with_noninline_clones_p): New.
      	(clone_inlined_nodes): Do not overwrite the clone if above predicate
      	returns true.
      
      From-SVN: r216415
      Eric Botcazou committed
    • re PR c/63543 (incomplete type error should suppress duplicates) · d9b7be2e
      	PR c/63543
      	* c-tree.h (C_TYPE_ERROR_REPORTED): Define.
      	* c-typeck.c (build_indirect_ref): Don't print the "dereferencing..."
      	error multiple times.  Print the type.
      
      	* gcc.dg/pr63543.c: New test.
      	* gcc.dg/array-8.c: Remove dg-error.
      	* gcc.dg/pr48552-1.c: Remove and adjust dg-error.
      	* gcc.dg/pr48552-2.c: Likewise.
      
      From-SVN: r216414
      Marek Polacek committed
    • re PR c/63549 ([4.8/4.9/5] ICE in build_array_ref with invalid code) · f406ae1f
      	PR c/63549
      	* c-typeck.c (build_array_ref): Bail if the index in an incomplete
      	type.
      
      	* gcc.dg/pr63549.c: New test.
      
      From-SVN: r216413
      Marek Polacek committed
    • c-opts.c (c_common_post_options): Set warn_implicit_int. · 92574c7c
      c-family/
      	* c-opts.c (c_common_post_options): Set warn_implicit_int.
      	* c.opt (Wimplicit-int): Initialize to -1.
      c/
      	* c-decl.c (grokdeclarator): Use OPT_Wimplicit_int unconditionally.
      	(start_function): Use OPT_Wimplicit_int instead of 0.
      	(store_parm_decls_oldstyle): Likewise.
      testsuite/
      	* gcc.dg/Wimplicit-int-1.c: New test.
      	* gcc.dg/Wimplicit-int-2.c: New test.
      	* gcc.dg/Wimplicit-int-3.c: New test.
      	* gcc.dg/Wimplicit-int-4.c: New test.
      
      From-SVN: r216412
      Marek Polacek committed
    • AVX512. 63.1 Update permute expanding. · f5db965f
      gcc/
      2014-10-17  Ilya Tocar  <ilya.tocar@intel.com>
      
      	* config/i386/i386.c (MAX_VECT_LEN): Move earlier.
      	(expand_vec_perm_d): Ditto.
      	(ix86_expand_vec_perm_vpermi2): Handle V8HImode, V16HImode, V32HImode,
      	V32HImode, V4SImode, V8SImode, V4SFmode, V8SFmode, V2DImode, V4DImode,
      	V4DFmode.
      	(ix86_expand_vec_perm): Update call to ix86_expand_vec_perm_vpermi2.
      	(ix86_expand_sse_unpack): Handle V64QImode.
      	(expand_vec_perm_blend): Update conditions for TARGET, handle
      	V8DFmode, V16SFmode, V32HImode, V64QImode, V16SImode, V8DImode.
      	(expand_vec_perm_pshufb): Handle V64QImode.
      	(expand_vec_perm_1): Handle V64QImode, V32HImode, V16SImode, V16SFmode,
      	V8DFmode, V8DImode, V4DFmode, V2DFmode, V8SFmode, V4SFmode.
      	(ix86_expand_vec_perm_const_1): Call  ix86_expand_vec_perm_vpermi2.
      	(ix86_vectorize_vec_perm_const_ok): Handle V32HImode, V64QImode.
      	(ix86_expand_vecop_qihi): Handle V64QImode.
      	* config/i386/sse.md (define_mode_iterator VI1_AVX512): New.
      	(define_mode_iterator VEC_PERM_AVX2): Add V32HI.
      	(define_mode_iterator VEC_PERM_CONST): Add V32HI.
      	(define_insn "<ssse3_avx2>_pshufb<mode>3<mask_name>"): Add masking.
      	(mul<mode>3): Use VI1_AVX512.
      	(<sse2_avx2>_packsswb): Ditto.
      	(<sse2_avx2>_packuswb): Ditto.
      	(<ssse3_avx2>_pshufb<mode>3): Ditto.
      	(<shift_insn><mode>3): Ditto.
      
      From-SVN: r216405
      Ilya Tocar committed
    • Fix bootstrap failure. · cad7438c
      gcc/
      	* config/i386/i386.c (ix86_expand_sse2_mulvxdi3): Refactor
      	conditions to fix bootstrap.
      
      From-SVN: r216403
      Kirill Yukhin committed
    • gcc-plugin.h: Add tm.h and flattened includes from function.h. · 3bb2b4cd
      
      2014-10-17  Andrew MacLeod  <amacleod@redhat.com>
      
      	* gcc-plugin.h:  Add tm.h and flattened includes from function.h.
      
      	* testsuite/g++.dg/plugin/pragma_plugin.c: Revert flattening, only
      	include function.h.
      
      From-SVN: r216402
      Andrew MacLeod committed
    • AVX-512. 75/n. Update vec_init. · bf584ca0
      gcc/
      	* config/i386/i386.c (ix86_expand_vector_init_duplicate): Handle V64QI
      	and V32HI modes, update V8HI, V16QI, V32QI modes handling.
      	(ix86_expand_vector_init_general): Handle V64QI and V32HI modes.
      	* config/i386/sse.md (define_mode_iterator VI48F_512): Rename to ...
      	(define_mode_iterator VF48_I1248): ... this. Extend to AVX-512 modes.
      	(define_expand "vec_init<mode>"): Use VF48_I1248.
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r216401
      Alexander Ivchenko committed
    • AVX-512. 80/n. Extend expand_sse2_mulvxdi3. · fde2c351
      gcc/
      	* config/i386/i386.c (ix86_expand_sse2_mulvxdi3): Extend
      	expand_sse2_mulvxdi3.
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r216400
      Alexander Ivchenko committed
    • Fix ChangeLog spacing · 07066429
      From-SVN: r216399
      Kyrylo Tkachov committed
    • hexfloat.cc: Add dg-require-string-conversions. · 6666a3ef
      	* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
      	Add dg-require-string-conversions.
      	* testsuite/27_io/headers/cstdio/types_std.cc: Test for fpos_t.
      
      From-SVN: r216398
      Jonathan Wakely committed
    • Implement the Library Fundamentals v1 variable templates. · 37285913
      2014-10-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
      
      	Implement the Library Fundamentals v1 variable templates.
      	* include/Makefile.am: Add the new header.
      	* include/Makefile.in: Regenerate.
      	* include/experimental/type_traits: New.
      	* testsuite/experimental/type_traits/value.cc: Likewise.
      
      From-SVN: r216397
      Ville Voutilainen committed
    • fold-const.c (fold_comparison): Remove redundant constant folding and operand swapping. · a3423260
      2014-10-17  Richard Biener  <rguenther@suse.de>
      
      	* fold-const.c (fold_comparison): Remove redundant constant
      	folding and operand swapping.
      	(fold_binary_loc): Do comparison operand swapping here.
      	(fold_ternary_loc): Canonicalize operand order for
      	commutative ternary operations.
      	* tree.c (commutative_ternary_tree_code): Add DOT_PROD_EXPR
      	and FMA_EXPR.
      
      From-SVN: r216394
      Richard Biener committed
    • re PR tree-optimization/63464 (compare one character to many: faster) · 73049af5
      	PR tree-optimization/63464
      	* gimple.h (gimple_seq_discard): New prototype.
      	* gimple.c: Include stringpool.h and tree-ssanames.h.
      	(gimple_seq_discard): New function.
      	* optabs.h (lshift_cheap_p): New prototype.
      	* optabs.c (lshift_cheap_p): New function, moved from...
      	* tree-switch-conversion.c (lshift_cheap_p): ... here.
      	* tree-ssa-reassoc.c: Include gimplify.h and optabs.h.
      	(reassoc_branch_fixups): New variable.
      	(update_range_test): Add otherrangep and seq arguments.
      	Unshare exp.  If otherrange is NULL, use for other ranges
      	array of pointers pointed by otherrangep instead.
      	Emit seq before gimplified statements for tem.
      	(optimize_range_tests_diff): Adjust update_range_test
      	caller.
      	(optimize_range_tests_xor): Likewise.  Fix up comment.
      	(extract_bit_test_mask, optimize_range_tests_to_bit_test): New
      	functions.
      	(optimize_range_tests): Adjust update_range_test caller.
      	Call optimize_range_tests_to_bit_test.
      	(branch_fixup): New function.
      	(execute_reassoc): Call branch_fixup.
      
      	* gcc.dg/torture/pr63464.c: New test.
      	* gcc.dg/tree-ssa/reassoc-37.c: New test.
      	* gcc.dg/tree-ssa/reassoc-38.c: New test.
      
      From-SVN: r216393
      Jakub Jelinek committed
    • re PR tree-optimization/63302 (Code with 64-bit long long constants is miscompiled on 32-bit host) · 4eb4a256
      	PR tree-optimization/63302
      	* tree-ssa-reassoc.c (optimize_range_tests_xor,
      	optimize_range_tests_diff): Use !integer_pow2p () instead of
      	tree_log2 () < 0.
      
      	* gcc.c-torture/execute/pr63302.c: New test.
      
      From-SVN: r216391
      Jakub Jelinek committed
    • Temporary fix for PR63566. · 9d4ded75
      	* ipa-icf.c (sem_function::merge): Local flags are set to false
      	to enforce equal calling convention to be used.
      	* opts.c (common_handle_option): Indentation fix.
      
      From-SVN: r216386
      Martin Liska committed