1. 13 Sep, 2013 10 commits
  2. 12 Sep, 2013 30 commits
    • rl78-virt.md: Change from | to \; for asm line separators. · aadb52ad
      * config/rl78/rl78-virt.md: Change from | to \; for asm line
      separators.
      
      From-SVN: r202545
      DJ Delorie committed
    • re PR driver/42955 (undecorated cross-compiler gcc fails to find cc1) · 90ae7019
      PR driver/42955
      * Makefile.in: Do not install driver binaries in $(target)/bin.
      * cp/Make-lang.in: Likewise.
      * fortran/Make-lang.in: Likewise.
      
      From-SVN: r202544
      Brooks Moses committed
    • rl78.opt (mrelax): New. · c5215a9b
      * config/rl78/rl78.opt (mrelax): New.
      * config/rl78/rl78.h (ASM_SPEC): New, pass on -mrelax to gas.
      * config/rl78/rl78.h (LINK_SPEC): New, pass on -mrelax to ld.
      
      From-SVN: r202543
      DJ Delorie committed
    • rl78.c (rl78_expand_prologue): Use AX to copy between SP and FP. · 17b2557c
      * config/rl78/rl78.c (rl78_expand_prologue): Use AX to copy
      between SP and FP.
      (rl78_expand_epilogue): Likewise.
      
      From-SVN: r202542
      DJ Delorie committed
    • Support using 'auto' in a function parameter list to introduce an implicit template parameter. · 984417a0
      	* cp-tree.h (type_uses_auto_or_concept): Declare.
      	(is_auto_or_concept): Declare.
      	* decl.c (grokdeclarator): Allow 'auto' parameters in lambdas with
      	-std=gnu++1y or -std=c++1y or, as a GNU extension, in plain functions.
      	* type-utils.h: New header defining ...
      	(find_type_usage): ... this new function based on pt.c (type_uses_auto)
      	for searching a type tree given a predicate.
      	* pt.c (type_uses_auto): Reimplement via type-utils.h (find_type_usage).
      	(is_auto_or_concept): New function.
      	(type_uses_auto_or_concept): New function.
      	* parser.h (struct cp_parser): Add fully_implicit_function_template_p.
      	* parser.c (cp_parser_new): Initialize fully_implicit_function_template_p.
      	(cp_parser_new): Initialize fully_implicit_function_template_p.
      	(cp_parser_lambda_expression): Copy and restore value of
      	fully_implicit_function_template_p as per other parser fields.
      	(cp_parser_parameter_declaration_list): Count generic
      	parameters and call ...
      	(add_implicit_template_parms): ... this new function to synthesize them
      	with help from type-utils.h (find_type_usage), ...
      	(tree_type_is_auto_or_concept): ... this new static function and ...
      	(make_generic_type_name): ... this new static function.
      	(cp_parser_direct_declarator): Account for implicit template parameters.
      	(cp_parser_lambda_declarator_opt): Finish fully implicit template if
      	necessary by calling ...
      	(finish_fully_implicit_template): ... this new function.
      	(cp_parser_member_declaration): Likewise.
      	(cp_parser_function_definition_after_declarator): Likewise.
      	* Make-lang.in (cp/pt.o): Add dependency on type-utils.h.
      	(cp/parser.o): Likewise.
      
      From-SVN: r202540
      Adam Butcher committed
    • Support lambda templates. · c9469d53
      	* parser.c (cp_parser_lambda_declarator_opt): Accept template parameter
      	list with std=c++1y or std=gnu++1y.
      	(cp_parser_lambda_body): Don't call 'expand_or_defer_fn' for lambda call
      	operator template to avoid adding template result to symbol table.
      	* lambda.c (lambda_function): Return template result if call operator is
      	a template.
      	(maybe_add_lambda_conv_op): Move declarations to point of use.  Refactor
      	operator call building in order to support conversion of a non-capturing
      	lambda template to a function pointer with help from ...
      	(prepare_op_call): ... this new function.
      	* decl2.c (check_member_template): Don't reject lambda call operator
      	template in local [lambda] class.
      	* pt.c (instantiate_class_template_1): Don't instantiate lambda call
      	operator template when instantiating lambda class.
      
      From-SVN: r202539
      Adam Butcher committed
    • Support decl instantiation in function-local templates. · 1c1880fc
      	* pt.c (instantiate_decl): Save/restore cp_unevaluated_operand and
      	c_inhibit_evaluation_warnings.  Reset if instantiating within a
      	function-local template.
      
      From-SVN: r202538
      Adam Butcher committed
    • Add missed .c for the file name in Changelog · 84f6d9fa
      From-SVN: r202537
      Vladimir Makarov committed
    • re PR middle-end/58335 (S/390: reload vs lra regression - testcase builtin-in-setjmp) · ecafcf05
      2013-09-12  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR middle-end/58335
      	* lra-eliminations (remove_reg_equal_offset_note): New.
      	(eliminate_regs_in_insn): Rewrite frame pointer to hard frame
      	pointer elimination with using remove_reg_equal_offset_note.
      
      From-SVN: r202536
      Vladimir Makarov committed
    • MAINTAINERS: Add Nick Clifton and DJ Delorie as msp430 maintainers. · f6a83b4a
      * MAINTAINERS: Add Nick Clifton and DJ Delorie as msp430
      maintainers.
      
      [gcc]
      * config/msp430/: New port.
      * config.gcc (msp430): Added.
      * doc/invoke.texi: Document MSP430 options.
      * doc/install.texi: Document msp430-elf
      * doc/md.texi: Document msp430-elf
      * doc/contrib.texi: Document msp430-elf
      
      [libgcc]
      * config.host (msp*-*-elf): New.
      * config/msp430/: New port.
      
      [contrib]
      * config-list.mk: Add msp430-elf.
      
      From-SVN: r202535
      DJ Delorie committed
    • cfgexpand.c (expand_debug_expr): Avoid sign-extending SImode to PSImode. · 8369f38a
      * cfgexpand.c (expand_debug_expr): Avoid sign-extending SImode to
      PSImode.
      
      From-SVN: r202534
      DJ Delorie committed
    • pr58380.C: Suppress warnings with "-w". · 511daaf5
      2013-09-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/torture/pr58380.C: Suppress warnings with "-w".
      
      From-SVN: r202533
      Paolo Carlini committed
    • re PR ipa/58389 (g++ ICE in ipa_find_reference) · a854f856
      2013-09-12  Martin Jambor  <mjambor@suse.cz>
      
      	PR ipa/58389
      	* ipa-prop.c (remove_described_reference): Give up if the edge in the
      	reference descriptor is NULL.
      	(ipa_edge_removal_hook): If owning a reference descriptor, set its
      	edge to NULL.
      
      testsuite/
      	* g++.dg/pr58389.C: New test.
      
      From-SVN: r202532
      Martin Jambor committed
    • re PR libstdc++/58403 (__normal_iterator triggers odr-use) · 274ddab6
      2013-09-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/58403
      	* include/bits/stl_iterator.h (__normal_iterator<>::operator[],
      	operator+=, operator+, operator-=, operator-): Take the argument
      	by value.
      	* testsuite/24_iterators/normal_iterator/58403.cc: New.
      
      From-SVN: r202531
      Paolo Carlini committed
    • 2013-09-12 Paolo Carlini <paolo.carlini@oracle.com> · 7480a018
      	* Tweak last ChangeLo entry.
      
      From-SVN: r202530
      Paolo Carlini committed
    • 2013-09-12 Paolo Carlini <paolo.carlini@oracle.com> · c564f42d
      	* Complete last commit.
      
      From-SVN: r202529
      Paolo Carlini committed
    • semantics.c (finish_pseudo_destructor_expr): Add location_t parameter. · 2dc6ed87
      2013-09-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* semantics.c (finish_pseudo_destructor_expr): Add location_t
      	parameter.
      	* pt.c (unify_arg_conversion): Use EXPR_LOC_OR_HERE.
      	(tsubst_copy_and_build): Adjust finish_pseudo_destructor_expr
      	calls.
      	* parser.c (cp_parser_postfix_dot_deref_expression): Likewise.
      	(cp_parser_postfix_expression): Pass the proper location to
      	cp_parser_postfix_dot_deref_expression.
      
      /testsuite
      2013-09-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	* g++.dg/template/pseudodtor2.C: Add column number to dg-error
      	strings.
      	* g++.dg/template/pseudodtor3.C: Likewise.
      
      From-SVN: r202528
      Paolo Carlini committed
    • tree-flow.h (FREE_SSANAMES): Move to tree-ssanames.c (SSANAMES... · b12ebd96
      
      	* tree-flow.h (FREE_SSANAMES): Move to tree-ssanames.c
      	(SSANAMES, MODIFIED_NORETURN_CALLS, DEFAULT_DEFS, ptr_info_def,
      	num_ssa_names, ssa_name): Move to tree-ssanames.h + prototypes.
      	* tree-flow-inline.h (make_ssa_name, copy_ssa_name, duplicate_ssa_name,
      	make_temp_ssa_name): move to tree-ssanames.h
      	* tree-ssa-alias.h: Move prototype.
      	* tree-ssa.h: Include tree-ssanames.h.
      	* tree-ssanames.c (FREE_SSANAMES): Move to here.
      	* tree-ssanames.h: New.  Move items from tree-flow*.h
      	* Makefile.in (tree-ssanames.h): Add to tree-ssanames.o and GTFILES.
      
      From-SVN: r202527
      Andrew MacLeod committed
    • ChangeLog: Add missing file to two entries. · 0e2cd22d
      
      	* libiberty/ChangeLog: Add missing file to two entries.
      
      From-SVN: r202526
      Gary Benson committed
    • re PR tree-optimization/58404 (&noninvariant_address not forwproped into ->handled_component) · e1fb4ad3
      2013-09-12  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58404
      	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Also
      	propagate non-invariant addresses into dereferences wrapped
      	in component references.
      
      	* g++.dg/tree-ssa/pr58404.C: New testcase.
      
      From-SVN: r202525
      Richard Biener committed
    • re PR middle-end/58402 (FAIL: gcc.dg/tree-ssa/phi-opt-1.c scan-tree-dump-times optimized "if" 0) · 154c9188
      2013-09-12  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58402
      	* passes.def: Move pass_late_warn_uninitialized later.
      
      From-SVN: r202524
      Richard Biener committed
    • tree-ssa.h: New. · 7a300452
      
      	* tree-ssa.h: New.  Move content from tree-flow.h and
      	tree-flow-inline.h.
      	* tree-flow.h (_edge_var_map, edge_var_map_vector): Move to tree-ssa.h.
      	Move prototypes belonging to tree-ssa.c.
      	* tree-flow-inline.h (redirect_edge_var_map_def, 
      	redirect_edge_var_map_result, redirect_edge_var_map_location): Move to
      	tree-ssa.h.
      	* gimple.h: Adjust prototypes.
      	* tree-ssa.c (useless_type_conversion_p, types_compatible_p): Move to...
      	* gimple.c (useless_type_conversion_p, types_compatible_p):  Here.
      	* tree.h: Move prototype to tree-ssa.h.
      	* gengtype.c (open_base_files): Replace tree-flow.h with tree-ssa.h.
      	* Makefile.in: (TREE_SSA_H, TREE_FLOW_H): Adjust dependencies.
      	* alias.c, asan.c, builtins.c, calls.c, cfgexpand.c, cfghooks.c,
      	cfgloop.c, cfgloopmanip.c, cgraph.c, cgraphbuild.c, cgraphclones.c,
      	cgraphunit.c, dse.c, except.c, expr.c, final.c, fold-const.c,
      	ggc-page.c, gimple-fold.c, gimple-iterator.c, gimple-low.c,
      	gimple-pretty-print.c, gimple-ssa-strength-reduction.c,
      	gimple-streamer-in.c, gimple-streamer-out.c, gimple.c, gimplify.c,
      	graphite-blocking.c, graphite-clast-to-gimple.c, graphite-dependences.c,
      	graphite-interchange.c, graphite-optimize-isl.c, graphite-poly.c,
      	graphite-scop-detection.c, graphite-sese-to-poly.c, graphite.c,
      	ipa-cp.c, ipa-inline-analysis.c, ipa-inline-transform.c, ipa-inline.c,
      	ipa-prop.c, ipa-pure-const.c, ipa-reference.c, ipa-split.c, ipa-utils.c,
      	loop-init.c, lto-cgraph.c, lto-section-in.c, lto-section-out.c,
      	lto-streamer-in.c, lto-streamer-out.c, lto-streamer.c, omp-low.c,
      	passes.c, predict.c, print-tree.c, profile.c, sese.c, targhooks.c,
      	tracer.c, trans-mem.c, tree-call-cdce.c, tree-cfg.c, tree-cfgcleanup.c,
      	tree-chrec.c, tree-complex.c, tree-data-ref.c, tree-dfa.c, tree-eh.c,
      	tree-emutls.c, tree-if-conv.c, tree-inline.c, tree-into-ssa.c,
      	tree-loop-distribution.c, tree-mudflap.c, tree-nested.c, tree-nrv.c,
      	tree-object-size.c, tree-optimize.c, tree-outof-ssa.c, tree-parloops.c,
      	tree-phinodes.c, tree-predcom.c, tree-pretty-print.c, tree-profile.c,
      	tree-scalar-evolution.c, tree-sra.c, tree-ssa*.c, tree-stdarg.c,
      	tree-streamer-in.c, tree-switch-conversion.c, tree-tailcall.c,
      	tree-vect-data-refs.c, tree-vect-generic.c, tree-vect-loop-manip.c,
      	tree-vect-loop.c, tree-vect-patterns.c, tree-vect-slp.c,
      	tree-vect-stmts.c, tree-vectorizer.c, tree-vrp.c, tsan.c,
      	value-prof.c, var-tracking.c,
      	varpool.c, vtable-verify.c: Replace tree-flow.h with tree-ssa.h
      
      From-SVN: r202523
      Andrew MacLeod committed
    • re PR ipa/58371 (internal compiler error: in ipcp_verify_propagated_values, at ipa-cp.c:892) · 33605886
      2013-09-12  Martin Jambor  <mjambor@suse.cz>
      
      	PR ipa/58371
      	* g++.dg/ipa/pr58371.C: New test.
      
      From-SVN: r202522
      Martin Jambor committed
    • re PR tree-optimization/58396 (heap-use-after-free at gcc/tree-loop-distribution.c:1959) · 97463b2b
      2013-09-12  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/58396
      	* tree-loop-distribution.c (create_rdg_edges): Free unused DDRs.
      	(build_rdg): Take a loop-nest parameter, fix memleaks.
      	(distribute_loop): Compute loop-nest here and pass it to build_rdg.
      
      From-SVN: r202521
      Richard Biener committed
    • x86-tune.def: Turn on X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE for SLM. · 80ecd89d
      * config/i386/x86-tune.def: Turn on X86_TUNE_AVOID_MEM_OPND_FOR_CMOVE
        for SLM.
      
      From-SVN: r202520
      Yuri Rumyantsev committed
    • ChangeLog entry for · 46ae49e8
              * gcc-interface/Makefile.in: Import target_cpu, target_vendor,
              target_os and their host_ counterparts. Remove host_canonical and
              target_cpu_default, unused. Remove local ad-hoc computations of
              "host", "targ", "arch", "osys" and "manu". Replace uses of these by
              uses of the now imported family, hence back to filters against
              canonical values. Remove filters on e500 for target_cpu, expected to
              be canonicalized into powerpc. Invert the logic filtering on 64bit
              sparc for VxWorks. Simplify the filtering logic for bareboard tools
              target pairs, now using straight elf/eabi filters on the target_os
              part only.
      
      From-SVN: r202519
      Thomas Schwinge committed
    • Makefile.in: Import target_cpu, target_vendor, target_os and their host_ counterparts. · 69d9ba63
      2013-10-11  Thomas Schwinge  <thomas@codesourcery.com>
                  Olivier Hainque  <hainque@adacore.com>
      
      	* gcc-interface/Makefile.in: Import target_cpu, target_vendor,
      	target_os and their host_ counterparts. Remove host_canonical and
      	target_cpu_default, unused. Remove local ad-hoc computations of
      	"host", "targ", "arch", "osys" and "manu". Replace uses of these by
      	uses of the now imported family, hence back to filters against
      	canonical values. Remove filters on e500 for target_cpu, expected to
      	be canonicalized into powerpc. Invert the logic filtering on 64bit
      	sparc for VxWorks. Simplify the filtering logic for bareboard tools
      	target pairs, now using straight elf/eabi filters on the target_os
      	part only.
      
      From-SVN: r202518
      Thomas Schwinge committed
    • extend.texi: Fix errors in x86 FMA builtin naming. · 893e85fa
      	* doc/extend.texi: Fix errors in x86 FMA builtin naming.
      	The FMA instruction names should have a 'v' prefix.
      
      From-SVN: r202517
      Cameron McInally committed
    • tree-loop-distribution.c (dot_rdg_1): Make graph prettier. · 174ec470
      2013-09-12  Richard Biener  <rguenther@suse.de>
      
      	* tree-loop-distribution.c (dot_rdg_1): Make graph prettier.
      	(dot_rdg): Use popen instead of system in optional code.
      	(remaining_stmts, upstream_mem_writes): Remove global bitmaps.
      	(already_processed_vertex_p): Adjust.
      	(has_anti_or_output_dependence, predecessor_has_mem_write,
      	mark_nodes_having_upstream_mem_writes, has_upstream_mem_writes,
      	rdg_flag_uses): Remove.
      	(rdg_flag_vertex): Simplify.
      	(rdg_flag_vertex_and_dependent): Rely on a correct RDG and
      	remove recursion.
      	(build_rdg_partition_for_component): Process the first vertex
      	of a component only.
      	(ldist_gen): Do not compute remaining_stmts or upstream_mem_writes.
      
      	* gcc.dg/tree-ssa/ldist-4.c: Remove undefined behavior.  Adjust
      	expected outcome and comment why that happens.
      
      From-SVN: r202516
      Richard Biener committed
    • rs6000.c (toc_relative_expr_p): Use add_cint_operand. · 38c89763
      	* config/rs6000/rs6000.c (toc_relative_expr_p): Use add_cint_operand.
      
      From-SVN: r202515
      Alan Modra committed