1. 04 Jul, 2015 3 commits
  2. 03 Jul, 2015 18 commits
  3. 02 Jul, 2015 19 commits
    • pt.c (type_dependent_expression_p): Handle expressions that refer to variable templates. · ee00eaea
      	* pt.c (type_dependent_expression_p): Handle expressions
      	that refer to variable templates.
      
      From-SVN: r225361
      Andrew Sutton committed
    • * trans-common.c: Include <map> after system.h. · 5209ef3c
      From-SVN: r225358
      David Edelsohn committed
    • acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for --with-default-libstdcxx-abi · 10d712eb
      	* acinclude.m4 (GLIBCXX_DEFAULT_ABI): Change valid arguments for
      	--with-default-libstdcxx-abi
      	* configure: Regenerate.
      	* doc/xml/manual/configure.xml: Document valid arguments.
      
      From-SVN: r225356
      Jonathan Wakely committed
    • re PR fortran/52846 ([F2008] Support submodules) · 4668d6f9
      2015-07-02  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/52846
      	* decl.c (get_proc_name): Make a partially populated interface
      	symbol to carry the characteristics of a module procedure and
      	its result.
      	(variable_decl): Declarations of dummies or results in the
      	abreviated form of module procedure is an error.
      	(gfc_match_import): IMPORT is not permitted in the interface
      	declaration of module procedures.
      	(match_attr_spec): Submodule variables have implicit save
      	attribute for F2008 onwards.
      	(gfc_match_prefix): Add 'module' as the a prefix and set the
      	module_procedure attribute.
      	(gfc_match_formal_arglist): For a module procedure keep the
      	interface formal_arglist from the interface, match new the
      	formal arguments and then compare the number and names of each.
      	(gfc_match_procedure): Add case COMP_SUBMODULE.
      	(gfc_match_function_decl, gfc_match_subroutine_decl): Set the
      	module_procedure attribute.
      	(gfc_match_entry, gfc_match_end):  Add case COMP_SUBMODULE. If
      	attr abr_modproc_decl is set, switch the message accordingly
      	for subroutines and functions.
      	(gfc_match_submod_proc): New function to match the abbreviated
      	style of submodule declaration.
      	* gfortran.h : Add ST_SUBMODULE and ST_END_SUBMODULE. Add the
      	attribute bits 'used_in_submodule' and 'module_procedure'. Add
      	the bit field 'abr_modproc_decl' to gfc_symbol. Add prototypes
      	for 'gfc_copy_dummy_sym', 'gfc_check_dummy_characteristics' and
      	'gfc_check_result_characteristics'.
      	* interface.c : Add the prefix 'gfc_' to the names of functions
      	'check_dummy(result)_characteristics' and all their references.
      	* match.h : Add prototype for 'gfc_match_submod_proc' and
      	'gfc_match_submodule'.
      	(check_sym_interfaces): A module procedure is not an error in
      	a module procedure statment in a generic interface.
      	* module.c (gfc_match_submodule): New function. Add handling
      	for the 'module_procedure' attribute bit.
      	(gfc_use_module): Make sure that a submodule cannot use itself.
      	* parse.c (decode_statement): Set attr has_'import_set' for
      	the interface declaration of module procedures. Handle a match
      	occurring in 'gfc_match_submod_proc' and a match for
      	'submodule'.
      	(gfc_enclosing_unit): Include the state COMP_SUBMODULE.
      	(gfc_ascii_statement): Add END SUBMODULE.
      	(accept_statement): Add ST_SUBMODULE.
      	(parse_spec): Disallow statement functions in a submodule
      	specification part.
      	(parse_contained): Add ST_END_SUBMODULE and COMP_SUBMODULE
      	twice each.
      	(get_modproc_result): Copy the result symbol of the interface.
      	(parse_progunit): Call it.
      	(set_syms_host_assoc): Make symbols from the ancestor module
      	and submodules use associated, as required by the standard and
      	set all private components public. Module procedures 'external'
      	attribute bit is reset and the 'used_in_submodule' bit is set.
      	(parse_module): If this is a submodule, use the ancestor module
      	and submodules. Traverse the namespace, calling
      	'set_syms_host_assoc'. Add ST_END_SUBMODULE and COMP_SUBMODULE.
      	* parse.h : Add COMP_SUBMODULE.
      	* primary.c (match_variable): Add COMP_SUBMODULE.
      	* resolve.c (compare_fsyms): New function to compare the dummy
      	characteristics of a module procedure with its interface.
      	(resolve_fl_procedure): Compare the procedure, result and dummy
      	characteristics of a module_procedure with its interface, using
      	'compare_fsyms' for the dummy arguments.
      	* symbol.c (gfc_add_procedure): Suppress the check for existing
      	procedures in the case of a module procedure.
      	(gfc_add_explicit_interface): Skip checks that must fail for
      	module procedures.
      	(gfc_add_type): Allow a new type to be added to module
      	procedures, their results or their dummy arguments.
      	(gfc_copy_dummy_sym): New function to generate new dummy args
      	and copy the characteristics from the interface.
      	* trans-decl.c (gfc_sym_mangled_function_id): Module procedures
      	must always have their names mangled as if they are symbols
      	coming from a declaration in a module.
      	(gfc_get_symbol_decl): Add 'used_in_submodule' to the assert.
      	(gfc_finish_var_decl): Symbols with the 'used_in_submodule' bit
      	set are set DECL_EXTERNAL as if they were use associated.
      
      2015-07-02  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/52846
      	* gfortran.dg/submodule_1.f90: New test
      	* gfortran.dg/submodule_2.f90: New test
      	* gfortran.dg/submodule_3.f90: New test
      	* gfortran.dg/submodule_4.f90: New test
      	* gfortran.dg/submodule_5.f90: New test
      	* gfortran.dg/submodule_6.f90: New test
      	* gfortran.dg/submodule_7.f90: New test
      
      From-SVN: r225354
      Paul Thomas committed
    • re PR preprocessor/53690 ([C++11] \u0000 and \U00000000 are wrongly encoded as U+0001.) · fbb22910
      /libcpp
      2015-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53690
      	* charset.c (_cpp_valid_ucn): Add cppchar_t * parameter and change
      	return type to bool.  Fix encoding of \u0000 and \U00000000 in C++.
      	(convert_ucn): Adjust call.
      	* lex.c (forms_identifier_p): Likewise.
      	* internal.h (_cpp_valid_ucn): Adjust declaration.
      
      /gcc/testsuite
      2015-07-02  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53690
      	* g++.dg/cpp/pr53690.C: New.
      
      From-SVN: r225353
      Paolo Carlini committed
    • rs6000-builtin.def (CMPGE_16QI): New built-in definition. · a05d02b2
      [gcc]
      
      2015-07-02  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* config/rs6000/rs6000-builtin.def (CMPGE_16QI): New built-in
      	definition.
      	(CMPGE_8HI): Likewise.
      	(CMPGE_4SI): Likewise.
      	(CMPGE_2DI): Likewise.
      	(CMPGE_U16QI): Likewise.
      	(CMPGE_U8HI): Likewise.
      	(CMPGE_U4SI): Likewise.
      	(CMPGE_U2DI): Likewise.
      	(CMPLE_16QI): Likewise.
      	(CMPLE_8HI): Likewise.
      	(CMPLE_4SI): Likewise.
      	(CMPLE_2DI): Likewise.
      	(CMPLE_U16QI): Likewise.
      	(CMPLE_U8HI): Likewise.
      	(CMPLE_U4SI): Likewise.
      	(CMPLE_U2DI): Likewise.
      	* config/rs6000/rs6000-c.c (altivec_overloaded_builtins): Add
      	overloads for ALTIVEC_BUILTIN_VEC_CMPGE and
      	ALTIVEC_BUILTIN_VEC_CMPLE.
      	* config/rs6000/vector.md (vector_ge<mode>): Restrict to
      	floating-point vector modes.
      	(vector_nlt<mode>): New define_expand.
      	(vector_nltu<mode>): Likewise.
      	(vector_ngt<mode>): Likewise.
      	(vector_ngtu<mode>): Likewise.
      
      [gcc/testsuite]
      
      2015-07-02  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>
      
      	* gcc.target/powerpc/vec-cmp.c: New test.
      
      From-SVN: r225351
      Bill Schmidt committed
    • re PR fortran/56520 (Syntax error causes misleading message: "Invalid character in name") · 83eb71f4
      2015-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/56520
      	* match.c (gfc_match_name): Special case unary minus and plus.
      
      2015-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/56520
      	* gfortran.dg/pr56520.f90: New test.
      
      From-SVN: r225349
      Steven G. Kargl committed
    • re PR fortran/66545 (ICE on using undefined parameter/variable values) · 70db5f02
      2015-07-02  Steven G. Kargl   <kargl@gcc.gnu.org>
      
      	PR fortran/66545
      	* primary.c (match_sym_complex_part): Do not dereference NULL pointer.
      
      2015-07-02  Steven G. Kargl   <kargl@gcc.gnu.org>
      
      	PR fortran/66545
      	* gfortran.dg/pr66545_1.f90: New test.
      	* gfortran.dg/pr66545_2.f90: New test.
      
      From-SVN: r225348
      Steven G. Kargl committed
    • re PR rtl-optimization/66706 (Redundant bitmask instruction on x >> (n & 32)) · e62bb796
      	PR rtl-optimization/66706
      	* combine.c (make_compound_operation): If an AND of SUBREG of
      	LSHIFTRT does not simplify, see if just the AND of SUBREG does.
      
      From-SVN: r225344
      Segher Boessenkool committed
    • Regenerate .pot files. · 54e37851
      gcc/po:
      	* gcc.pot: Regenerate.
      
      libcpp/po:
      	* cpplib.pot: Regenerate.
      
      From-SVN: r225313
      Joseph Myers committed
    • tree-pass.h (make_pass_ch_vect): New. · 4f9a2b4e
      gcc/:
      
      	* tree-pass.h (make_pass_ch_vect): New.
      	* passes.def: Add pass_ch_vect just before pass_if_conversion.
      
      	* tree-ssa-loop-ch.c (ch_base, pass_ch_vect, pass_data_ch_vect,
      	pass_ch::process_loop_p, pass_ch_vect::process_loop_p,
      	make_pass_ch_vect): New.
      	(pass_ch): Extend ch_base.
      
      	(pass_ch::execute): Move all but loop_optimizer_init/finalize to...
      	(ch_base::copy_headers): ...here.
      
      gcc/testsuite/:
      
      	* gcc.dg/vect/vect-strided-a-u16-i4.c (main1): Narrow scope of x,y,z,w.
      	* gcc.dg/vect/vect-ifcvt-11.c: New testcase.
      
      From-SVN: r225311
      Alan Lawrence committed
    • builtins.c (get_pointer_alignment_1): Handle POINTER_PLUS_EXPR. · 5fa79de8
      2015-07-02  Richard Biener  <rguenther@suse.de>
      
      	* builtins.c (get_pointer_alignment_1): Handle POINTER_PLUS_EXPR.
      	* fold-const.c (get_pointer_modulus_and_residue): Remove.
      	(fold_binary_loc): Implement (T)ptr & CST in terms of
      	get_pointer_alignment_1.
      	* tree-vect-loop-manip.c (vect_gen_niters_for_prolog_loop):
      	Make sure to build the alignment test on a SSA name without
      	final alignment info valid only after the prologue.
      
      From-SVN: r225310
      Richard Biener committed
    • cris.md ("epilogue"): Remove condition. · cc2af705
      	* config/cris/cris.md ("epilogue"): Remove condition.
      	("prologue"): Ditto.
      
      From-SVN: r225308
      Hans-Peter Nilsson committed
    • re PR tree-optimization/66719 (gcc.dg/vect/bb-slp-32.c FAILs) · a02bf6ab
      2015-07-02  Richard Biener  <rguenther@suse.de>
      
      	PR testsuite/66719
      	* gcc.dg/vect/bb-slp-32.c: Re-add XFAIL for targets not supporting
      	unaligned loads.
      
      From-SVN: r225303
      Richard Biener committed
    • configure.ac: Add AC_USE_SYSTEM_EXTENSIONS. · dcbc9df9
      	* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
      	* configure: Regenerate.
      	* config.h.in: Ditto.
      
      From-SVN: r225302
      Uros Bizjak committed
    • pr66702-1.C: Require vect_simd_clones effective target. · f70360e7
      	* testsuite/libgomp.c++/pr66702-1.C: Require
      	vect_simd_clones effective target.
      	* testsuite/libgomp.c++/pr66702-2.C: Ditto.
      
      From-SVN: r225301
      Uros Bizjak committed
    • tree-ssa-dom.c (build_and_record_new_cond): Add optional parameter to record a… · a0038966
      tree-ssa-dom.c (build_and_record_new_cond): Add optional parameter to record a condition that is false.
      
      2015-07-02  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-dom.c (build_and_record_new_cond): Add optional
      	parameter to record a condition that is false.
      	(record_conditions): When recording an extra NE_EXPR that is
      	true also record a EQ_EXPR that is false.
      
      	* gcc.dg/tree-ssa/ssa-dom-cse-4.c: New testcase.
      
      From-SVN: r225299
      Richard Biener committed
    • guard.cc (__test_and_acquire): Use __p after __atomic_load to avoid unused variable warning. · 53ac92c3
      	* libsupc++/guard.cc (__test_and_acquire): Use __p after __atomic_load
      	to avoid unused variable warning.
      	(__set_and_release): Use __p after __atomic_store to avoid unused
      	variable warning.
      
      From-SVN: r225298
      Uros Bizjak committed
    • Add prototype for exit · 8725e9c4
      	* gcc.target/i386/mpx/pr66568.c (exit): New prototype.
      
      From-SVN: r225296
      H.J. Lu committed