Commit Graph

101770 Commits

Author SHA1 Message Date
Pascal Obry
79cf762806 * make-temp-file.c (choose_tmpdir): Append a dot to P_tmpdir if needed.
From-SVN: r162379
2010-07-21 15:02:09 +00:00
Jason Merrill
31d06664e6 * tree.c (cp_tree_equal): Fix CONSTRUCTOR handling.
From-SVN: r162378
2010-07-21 10:38:12 -04:00
Jason Merrill
557165ae94 parser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL to cp_finish_decl.
* parser.c (cp_parser_init_declarator): Pass LOOKUP_NORMAL
	to cp_finish_decl.

From-SVN: r162377
2010-07-21 10:37:56 -04:00
Martin Jambor
75a75e91fd re PR tree-optimization/44900 (The variable of SSE will be broken)
2010-07-21  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/44900
	* tree-sra.c (load_assign_lhs_subreplacements): Updated comments.
	(sra_modify_assign): Move gsi to the next statmenent unconditionally.

	* testsuite/g++.dg/torture/pr44900.C: New test.

From-SVN: r162375
2010-07-21 16:17:11 +02:00
Daniel Kraft
d74d8807cc trans.h (gfc_get_return_label): Removed.
2010-07-21  Daniel Kraft  <d@domob.eu>

	* trans.h (gfc_get_return_label): Removed.
	(gfc_generate_return): New method.
	(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
	returning a tree directly.
	* trans-stmt.c (gfc_trans_return): Use `gfc_generate_return'.
	(gfc_trans_block_construct): Update for new interface to
	`gfc_trans_deferred_vars'.
	* trans-decl.c (current_function_return_label): Removed.
	(current_procedure_symbol): New variable.
	(gfc_get_return_label): Removed.
	(gfc_trans_deferred_vars): Update gfc_wrapped_block rather than
	returning a tree directly.
	(get_proc_result), (gfc_generate_return): New methods.
	(gfc_generate_function_code): Clean up and do init/cleanup here
	also with gfc_wrapped_block.  Remove return-label but rather
	return directly.

From-SVN: r162373
2010-07-21 15:44:38 +02:00
Bernd Schmidt
426797b226 re PR middle-end/44738 (c-c++-common/uninit-17.c failed)
PR middle-end/44738
	* tree-ssa.c (warn_uninit): Avoid emitting an unnecessary message.

	PR middle-end/44738
	* c-c++-common/uninit-17.c: Correct expected error.

From-SVN: r162372
2010-07-21 12:36:44 +00:00
Richard Guenther
35e3a6e946 re PR middle-end/45013 (Failed to build 483.xalancbmk in SPEC CPU 2006)
2010-07-21  Richard Guenther  <rguenther@suse.de>

	PR middle-end/45013
	* tree-ssa.c (useless_type_conversion_p): Dispatch to
	gimple_types_compatible_p only when in lto.
	* gimple.c (gimple_types_compatible_p): Use canonical types
	to speed up comparison.

From-SVN: r162371
2010-07-21 11:45:27 +00:00
Richard Guenther
3f2930d891 tree-flow.h (referenced_var): Move define ...
2010-07-21  Richard Guenther  <rguenther@suse.de>

	* tree-flow.h (referenced_var): Move define ...
	* tree-flow-inline.h (referenced_var): ... here as an inline
	function.  Assert here ...
	* tree-dfa.c (referenced_var_lookup): ... instead of here.
	* tree-ssa.c (maybe_optimize_var): Check if the variable
	is in referenced vars.
	(execute_update_addresses_taken): Remove old broken check.
	* gimple-pretty-print.c (pp_points_to_solution): Use
	referenced_var_lookup.
	* tree-into-ssa.c (dump_decl_set): Likewise.

From-SVN: r162368
2010-07-21 09:46:11 +00:00
Jakub Jelinek
370ae5992f re PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)
PR debug/45003
	* var-tracking.c (reverse_op): Also handle {SIGN,ZERO}_EXTEND of
	a MEM.
	* dwarf2out.c (loc_descriptor): Don't handle SIGN_EXTEND nor
	ZERO_EXTEND here.

	* gcc.dg/guality/pr45003-2.c: New test.
	* gcc.dg/guality/pr45003-3.c: New test.

From-SVN: r162364
2010-07-21 10:50:57 +02:00
Jakub Jelinek
a431e91330 * gcc.dg/guality/asm-1.c: New test.
From-SVN: r162363
2010-07-21 10:12:36 +02:00
Jerry DeLisle
6b2b43d844 re PR fortran/44697 (I/O testsuite failures: \r\n vs \n - gfortran.dg/ftell_3.f90)
2010-07-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/44697
	* gfortran.dg/ftell_3.f90: Take care of cr-lf record endings.

From-SVN: r162362
2010-07-21 04:20:58 +00:00
Benjamin Kosnik
7d8cafcde8 appendix_contributing.xml: Update for new reality.
2010-07-19  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/xml/manual/appendix_contributing.xml: Update for new reality.
	* doc/Makefile.am (doc-xml): New default rule for XML output.
	(doc-xml-single-doxygen): Standardize output names.
	* doc/Makefile.in: Regenerate.

	* doc/doxygen/user.cfg.in: Tweak.

From-SVN: r162361
2010-07-21 02:02:42 +00:00
GCC Administrator
eb061dfbca Daily bump.
From-SVN: r162360
2010-07-21 00:17:15 +00:00
Richard Henderson
7703295fa8 * vxworks.c (vxworks_emutls_var_fields): Pass locus to build_decls.
From-SVN: r162356
2010-07-20 16:09:58 -07:00
Bernd Schmidt
16737e76d6 arm.md (thumb1_addsi3): Add alternative and split for computing the sum of the stack pointer and a...
* config/arm/arm.md (thumb1_addsi3): Add alternative and split for
	computing the sum of the stack pointer and a large constant.
	* config/arm/constraints.md (M): Remove superfluous parentheses.
	(Pc): New constraint.

From-SVN: r162355
2010-07-20 20:50:44 +00:00
Jeffrey Yasskin
0603fe683c re PR c++/44641 (Generated constructors and destructors get wrong debug location when a typedef uses a forward declaration of the type before the definition)
PR c++/44641
        * gcc/cp/pt.c (instantiate_class_template): Propagate the
        template's location to its instance.

       	* gcc/testsuite/lib/scanasm.exp (dg-function-on-line): Test
        that a function is defined on the current line.
        * gcc/testsuite/g++.dg/debug/dwarf2/lineno-simple1.C: New.
        Line number sanity test.
        * gcc/testsuite/g++.dg/debug/dwarf2/pr44641.C: New.

From-SVN: r162349
2010-07-20 20:16:53 +00:00
Jakub Jelinek
1b47fe3fe5 re PR debug/45006 (Failed to bootstrap)
PR debug/45006
	* cfgexpand.c (expand_debug_expr): Only look at TYPE_UNSIGNED of
	operand's type if exp is tcc_unary class tree.

From-SVN: r162348
2010-07-20 20:57:14 +02:00
Jeffrey Yasskin
b0b01eb01c Add myself to MAINTAINERS.
From-SVN: r162347
2010-07-20 18:55:39 +00:00
Nathan Froyd
97c56ee3a3 rs6000.md (abs<mode>2_isel, [...]): Reverse sense of if_then_else condition.
* config/rs6000/rs6000.md (abs<mode>2_isel, nabs<mode>2_isel):
	Reverse sense of if_then_else condition.

From-SVN: r162346
2010-07-20 18:38:50 +00:00
Jason Merrill
68f7159da9 re PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)
PR c++/44967
	* pt.c (tsubst_copy_and_build): Rework last change.

From-SVN: r162345
2010-07-20 14:22:34 -04:00
Nathan Froyd
d95016e0e6 rs6000.opt (mblock-move-inline-limit): New option.
gcc/
	* config/rs6000/rs6000.opt (mblock-move-inline-limit): New option.
	* config/rs6000/rs6000.c (rs6000_override_options): Set
	rs6000_block_move_inline_limit appropriately.
	(expand_block_move): Use rs6000_block_move_inline_limit.
	* doc/invoke.texi (mblock-move-inline-limit): Document.

gcc/testsuite/
	* gcc.target/powerpc/block-move-1.c: New test.
	* gcc.target/powerpc/block-move-2.c: New test.

From-SVN: r162344
2010-07-20 17:43:06 +00:00
Jason Merrill
a397bb7255 re PR c++/44967 ([C++0x] decltype of method call dependent on pack expansion crashes)
PR c++/44967
	* pt.c (tsubst_copy_and_build): Handle partial substitution of
	CALL_EXPR.

From-SVN: r162343
2010-07-20 13:34:18 -04:00
Bernd Schmidt
caa4a25077 postreload.c (fixup_debug_insns): Remove arg REGNO.
* postreload.c (fixup_debug_insns): Remove arg REGNO.  New args
	FROM and TO.  All callers changed.  Don't look for tracked uses,
	just scan the RTL for DEBUG_INSNs and substitute.
	(reload_combine_recognize_pattern): Call fixup_debug_insns.
	(reload_combine): Ignore DEBUG_INSNs.

From-SVN: r162342
2010-07-20 15:33:35 +00:00
Richard Guenther
be5fda91fb re PR lto/42696 (lto1 error with -fsigned-char and char comparison)
2010-07-20  Richard Guenther  <rguenther@suse.de>

	PR lto/42696
	* gcc.dg/lto/20100720-4_0.c: New testcase.

From-SVN: r162341
2010-07-20 15:05:59 +00:00
Richard Guenther
cf259b8462 re PR lto/43221 ([LTO] ICE in get_alias_set, at alias.c:717)
2010-07-20  Richard Guenther  <rguenther@suse.de>

	PR lto/43221
	* gcc.dg/lto/20100720-2_0.c: New testcase.
	* gcc.dg/lto/20100720-2_1.c: Likewise.

From-SVN: r162339
2010-07-20 13:06:32 +00:00
Richard Guenther
eeee47af73 re PR lto/43208 (lto1: error: invalid conversion in return statement)
2010-07-20  Richard Guenther  <rguenther@suse.de>

	PR lto/43208
	* gcc.dg/lto/20100720-1_0.c: New testcase.
	* gcc.dg/lto/20100720-1_1.c: Likewise.

From-SVN: r162338
2010-07-20 13:03:10 +00:00
Jakub Jelinek
d2d571522c var-tracking.c (vt_expand_loc, [...]): Bump maximum depth to 8 from 5.
* var-tracking.c (vt_expand_loc, vt_expand_loc_dummy): Bump maximum
	depth to 8 from 5.

From-SVN: r162337
2010-07-20 14:58:59 +02:00
Jakub Jelinek
68eaf35cdb re PR debug/45003 (VTA issues with sign/zero extension and debug temporaries)
PR debug/45003
	* cfgexpand.c (expand_debug_expr) <case NOP_EXPR>: Use ZERO_EXTEND
	or SIGN_EXTEND depending on TYPE_UNSIGNED of the operand's type
	instead of the result's type.

	* gcc.dg/guality/pr45003-1.c: New test.

From-SVN: r162336
2010-07-20 14:58:03 +02:00
Richard Guenther
720151cabd re PR tree-optimization/44977 (ice in propagate_rhs_into_lhs, at tree-ssa-dom.c:2728)
2010-07-20  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44977
	* tree-ssa-dom.c (propagate_rhs_into_lhs): Do not create invalid
	SSA form.

	* gcc.dg/torture/pr44977.c: New testcase.

From-SVN: r162334
2010-07-20 12:41:20 +00:00
Bingfeng Mei
cd2be65a3b 20090313_0.c: Use dg-require-effective-target sync_char_short
2010-07-20  Bingfeng Mei  <bmei@broadcom.com>

	* gcc.dg/lto/20090313_0.c: Use dg-require-effective-target
	sync_char_short

From-SVN: r162331
2010-07-20 12:20:33 +00:00
Richard Guenther
f5d6836a24 lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
2010-07-20  Richard Guenther  <rguenther@suse.de>

	* lto-symtab.c (lto_symtab_merge): Use gimple_types_compatible_p.
	(lto_symtab_merge_decls_2): Likewise.
	* gimple.h (gimple_types_compatible_p): Declare.
	* gimple.c (gimple_queue_type_fixup): Remove.
	(gimple_fixup_complete_and_incomplete_subtype_p): Likewise.
	(gimple_compatible_complete_and_incomplete_type_p): New
	function.
	(gimple_types_compatible_p): Adjust.
	(gimple_register_type): Remove type fixup code.
	(print_gimple_types_stats): Adjust.
	(free_gimple_type_tables): Likewise.
	* lto-streamer-in.c (input_gimple_stmt): Use gimple_types_compatible_p.
	* tree-ssa.c (useless_type_conversion_p): Likewise.

From-SVN: r162330
2010-07-20 12:05:59 +00:00
Richard Guenther
ad650c924f re PR debug/44971 (-fcompare-debug failure with uninitialized read in walk_gimple_stmt)
2010-07-20  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44971
	PR middle-end/44988
	* tree-ssa.c (maybe_optimize_var): New function split out from ...
	(execute_update_addresses_taken): ... here.
	(non_rewritable_mem_ref_base): Likewise.
	(execute_update_addresses_taken): Do not iterate over all referenced
	vars but just all local decls and parms.
	Properly check call and asm arguments and rewrite call arguments.

	* gcc.dg/pr44971.c: New testcase.
	* gcc.c-torture/compile/pr44988.c: Likewise.

From-SVN: r162329
2010-07-20 11:28:56 +00:00
Paolo Carlini
93f1d8555d [multiple changes]
2010-07-20  Paolo Carlini  <paolo.carlini@oracle.com>

	* libsupc++/unwind-cxx.h: Minor formatting / stylistic tweaks.

2010-07-20  Mikael Pettersson  <mikpe@it.uu.se>

	PR libstdc++/44902
	* libsupc++/unwind-cxx.h (__cxa_type_match): Correct prototype.
	(__cxa_begin_cleanup): Likewise.

From-SVN: r162328
2010-07-20 09:44:01 +00:00
Benjamin Kosnik
547f963b5a Makefile.am (doc-texinfo): New rule.
2010-07-19  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/Makefile.am (doc-texinfo): New rule.
	(doc-texinfo-docbook): New rule.
	(DB2TEXI_FLAGS): New.
	(doc-xml-single-docbook): Just the manual, not the set. Tweak flags.
	* doc/Makefile.in: Regenerate.

From-SVN: r162327
2010-07-20 06:43:02 +00:00
Steven G. Kargl
13411c9d4c re PR fortran/44929 ([OOP] Parsing error of derived type name starting with 'REAL')
2010-07-19  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/44929
	* gfortran.dg/allocate_with_typespec.f90: New test.
	* gfortran.dg/allocate_derived_1.f90: Update error message.

2010-07-19  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/44929
	* fortran/match.c (match_type_spec): Check for derived type before
	intrinsic types.

From-SVN: r162325
2010-07-20 04:01:32 +00:00
Jason Merrill
8145be0145 re PR c++/44996 ([C++0x] decltype produces rvalue reference type for parenthesized id-expression)
PR c++/44996
	* semantics.c (finish_decltype_type): Correct decltype
	of parenthesized rvalue reference variable.

From-SVN: r162323
2010-07-19 21:31:42 -04:00
GCC Administrator
27728d816f Daily bump.
From-SVN: r162322
2010-07-20 00:17:25 +00:00
Maxim Kuvyrkov
2c8f43e695 config.gcc (LIBC_GLIBC, [...]): Move constants to top level.
* config.gcc (LIBC_GLIBC, LIBC_UCLIBC, LIBC_BIONIC): Move constants
	to top level.
	* config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): Move Android-specific
	definitions ...
	* config/linux-android.h (ANDROID_TARGET_OS_CPP_BUILTINS): ... here.
	New macro.
	* config/arm/linux-eabi.h (TARGET_OS_CPP_BUILTINS): Use it.

From-SVN: r162315
2010-07-19 20:05:46 +00:00
Richard Sandiford
b08e033940 gengtype.c (start_root_entry): New function, split out from write_root.
gcc/
	* gengtype.c (start_root_entry): New function, split out from
	write_root.  Check whether V is null and raise an error if so.
	(write_field_root): Check for V being null.  Don't raise an error here;
	set V to null instead.
	(write_root): Update comment above function.  Use start_root_entry.

From-SVN: r162314
2010-07-19 19:38:42 +00:00
Paul Thomas
974df0f87f re PR fortran/42385 ([OOP] poylmorphic operators do not work)
2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/42385
	* interface.c (matching_typebound_op): Add argument for the
	return of the generic name for the procedure.
	(build_compcall_for_operator): Add an argument for the generic
	name of an operator procedure and supply it to the expression.
	(gfc_extend_expr, gfc_extend_assign): Use the generic name in
	calls to the above procedures.
	* resolve.c (resolve_typebound_function): Catch procedure
	component calls for CLASS objects, check that the vtable is
	complete and insert the $vptr and procedure components, to make
	the call.
	(resolve_typebound_function): The same.
	* trans-decl.c (gfc_trans_deferred_vars): Do not deallocate
	an allocatable scalar if it is a result.


2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/42385
	* gfortran.dg/class_defined_operator_1.f03 : New test.

From-SVN: r162313
2010-07-19 18:48:44 +00:00
Peter Bergner
be30e7b23d slp-perm-1.c (main): Make sure loops aren't vectorized.
* gcc.dg/vect/slp-perm-1.c (main): Make sure loops aren't vectorized.
	* gcc.dg/vect/slp-perm-2.c (main): Likewise.
	* gcc.dg/vect/slp-perm-3.c (main): Likewise.  Fix loop limit.
	* gcc.dg/vect/slp-perm-4.c (main): Fix loop limit.

From-SVN: r162311
2010-07-19 12:32:19 -05:00
Xinliang David Li
e74780a3dd Fix PR44932
From-SVN: r162310
2010-07-19 16:32:57 +00:00
Richard Guenther
8b4c365c56 re PR rtl-optimization/44941 (ICE: RTL check: expected code 'mem', have 'reg' in emit_block_move_hints, at expr.c:1189)
2010-07-19  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44941
	* expr.c (emit_block_move_hints): Move zero size check first.
	Move asserts to more useful places.
	* calls.c (load_register_parameters): Check for zero size.

	* gcc.c-torture/compile/pr44941.c: New testcase.

From-SVN: r162308
2010-07-19 15:39:51 +00:00
Jason Merrill
ab73eba8bf re PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental types.)
PR c++/44969
	* tree.c (cp_tree_equal): Compare type of *CAST_EXPR.
	* pt.c (iterative_hash_template_arg): Hash type of *CAST_EXPR.

From-SVN: r162307
2010-07-19 10:50:52 -04:00
Richard Henderson
157be8f67b Reliably change cgraph_state to SSA form.
From-SVN: r162306
2010-07-19 07:42:50 -07:00
H.J. Lu
ca90e7f6c1 Remove gfortran.dg/data_implied_do_2.f90.
2010-07-19  H.J. Lu  <hongjiu.lu@intel.com>

	PR fortran/44353
	* gfortran.dg/data_implied_do_2.f90: Removed.

From-SVN: r162305
2010-07-19 06:35:19 -07:00
Jerry DeLisle
746e63273f re PR fortran/44953 (FAIL: gfortran.dg/char4_iunit_1.f03 * execution test)
2010-07-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/44953
	* io/unix.c (mem_alloc_w4): Return gfc_char4_t instead of char type
	pointer. (mem_write4): Remove cast to gfc_char4_t.
	* io/transfer.c (write_block): Use a gfc_char4_t pointer.
	(memset4): New helper function. (next_record_w): Use new helper
	function rather than sset for internal units.  Don't attempt to pad
	with spaces if it is not needed.
	* io/unix.h: Update prototype for mem_alloc_w4.
	* io/write.c (memset4): Use gfc_char4_t pointer and chracter type.
	Don't use multiply by 4 to compute offset. (memcpy4): Likewise.
	(write_default_char4): Use a gfc_char4_t pointer and update memset4
	and memcpy calls. (write_a): Likewise. (write_l): Likewise.
	(write_boz): Likewise. (write_decimal): Likewise. (write_x): Likewise.
	(write_char): Add support for character(kind=4) internal units that
	was previously missed. (write_integer): Use a gfc_char4_t pointer and
	update memset4 and memcpy calls. (write_character): Likewise.
	(write_separator): Add support for character(kind=4) internal units
	that was previously missed.
	* write_float.def (output_float): Use a gfc_char4_t pointer and
	update memset4 and memcpy calls. (write_infnan): Likewise.
	(output_float_FMT_G_): Likewise.

From-SVN: r162304
2010-07-19 13:11:54 +00:00
Paolo Carlini
d555b1c77d re PR c++/44969 ([C++0x] <type_traits> std::is_constructible broken for fundamental types.)
/cp
2010-07-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/44969
	* typeck.c (build_x_compound_expr_from_list): Add tsubst_flags_t
	parameter.
	* cp-tree.h: Adjust declaration.
	* init.c (perform_member_init): Adjust caller.
	* decl.c (grok_reference_init, cp_finish_decl): Likewise.
	* typeck2.c (store_init_value): Likewise.
	(build_functional_cast): Pass complain argument to
	build_x_compound_expr_from_list.

/testsuite
2010-07-19  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/44969
	* g++.dg/template/sfinae23.C: New.

From-SVN: r162303
2010-07-19 10:27:58 +00:00
Bernd Schmidt
b1d5eee8c1 postreload.c (reload_combine_closest_single_use): Ignore the number of uses for DEBUG_INSNs.
* postreload.c (reload_combine_closest_single_use): Ignore the
	number of uses for DEBUG_INSNs.
	(fixup_debug_insns): New static function.
	(reload_combine_recognize_const_pattern): Use it.  Don't let the
	main loop be affected by DEBUG_INSNs.
	Really disallow moving adds past a jump insn.
	(reload_combine_recognize_pattern): Don't update use_ruid here.
	(reload_combine_note_use): Do it here.
	(reload_combine): Use control_flow_insn_p rather than JUMP_P.

From-SVN: r162301
2010-07-19 09:56:07 +00:00
Bingfeng Mei
0be955e737 ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes of a loop.
2010-07-19  Bingfeng Mei  <bmei@broadcom.com>
	* ddg.c (create_ddg): Exclude nodes of debug_insn in counting nodes
        of a loop.
        * loop-doloop.c (doloop_condition_get): Skip possible debug_insn.

From-SVN: r162300
2010-07-19 09:18:14 +00:00