Commit Graph

96226 Commits

Author SHA1 Message Date
Paolo Carlini
6aa7cd49e8 numeric (__adjacent_difference_switch): Fix typo.
2009-10-09  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/parallel/numeric (__adjacent_difference_switch): Fix typo.
	* include/parallel/for_each_selectors.h
	(__adjacent_difference_selector): Likewise.

From-SVN: r152589
2009-10-09 14:41:15 +00:00
Richard Guenther
b1b07c92e1 re PR driver/41637 (testsuite (-flto/-fwhopr) leaves does not clean up in /tmp)
2009-10-09  Richard Guenther  <rguenther@suse.de>

	PR driver/41637
	* lto-wrapper.c (ltrans_output_file, flto_out, args_name): New
	globals.
	(lto_wrapper_exit): New function.
	(fatal): Use it.
	(fatal_perror): Likewise.
	(fork_execute): Use global args_name, do not free it.
	(run_gcc): Use global ltrans_output_file, flto_out, do not free them.
	* lto-streamer.h: Remove duplicate prototypes.

	PR lto/41635
	PR lto/41636
	lto/
	* lto.c (read_cgraph_and_symbols): Do not assert we can open
	a file.
	* lto-elf.c (init_shdr##BITS): Fix i18n problems.
	(init_ehdr##BITS): Likewise.

From-SVN: r152588
2009-10-09 13:24:59 +00:00
Richard Guenther
9f3f7d131f cgraph.c (cgraph_create_edge): Check for NULL call_stmt before calling stmt_can_throw_external.
2009-10-09  Richard Guenther  <rguenther@suse.de>

	* cgraph.c (cgraph_create_edge): Check for NULL call_stmt
	before calling stmt_can_throw_external.

From-SVN: r152587
2009-10-09 13:22:22 +00:00
Uros Bizjak
af2efb2bbb block_2.f08: Cleanup "original" tree dump.
* gfortran.dg/block_2.f08: Cleanup "original" tree dump.

From-SVN: r152586
2009-10-09 15:18:20 +02:00
Eric Botcazou
3f49ba3f41 re PR tree-optimization/40071 (ICE (aliasing assert) in vectorizable_store at tree-vect-stmts.c:3117)
PR tree-optimization/40071
	* tree-vect-data-refs.c (vect_create_data_ref_ptr): Build a ref-all
	pointer if the original data reference doesn't conflict with the
	created vector data reference.  Fix long line.

From-SVN: r152585
2009-10-09 12:44:59 +00:00
Uros Bizjak
857607344f i386.md (any_div): New code iterator.
* config/i386/i386.md (any_div): New code iterator.
	(u): Handle div and udiv.
	(sgnprefix): Ditto.
	(<u>divqi3): Macroize insn from divqi3 and udivqi using and_div
	code iterator.
	(lfloor<MODEF:mode><SWI48:mode>2): Macroize insn from
	lfloor<mode>{si,di}2 patterns using SWI48 mode iterator.
	(lceil<MODEF:mode><SWI48:mode>2): Macroize insn from
	lceil<mode>{si,di}2 patterns using SWI48 mode iterator.

From-SVN: r152584
2009-10-09 09:43:01 +02:00
GCC Administrator
bfcd7d74a7 Daily bump.
From-SVN: r152583
2009-10-09 00:16:40 +00:00
Doug Kwan
88beb54d68 re PR rtl-optimization/41574 (Distribute floating point expressions causes bad code [4.4 only])
2009-10-08  Doug Kwan  <dougkwan@google.com>

	PR rtl-optimization/41574
	* gcc.dg/pr41574.c: New test.

From-SVN: r152580
2009-10-08 22:16:58 +00:00
Joseph Myers
3c2e7d4535 lto-elf.c (init_shdr##BITS, [...]): Remove trailing "." from diagnostics.
* lto-elf.c (init_shdr##BITS, lto_elf_begin_section_with_type,
	init_ehdr##BITS, lto_elf_file_close): Remove trailing "." from
	diagnostics.
	* lto-lang.c (lto_post_options): Remove trailing "." from
	diagnostics.

From-SVN: r152579
2009-10-08 22:54:16 +01:00
Joseph Myers
23cd46a1df * gcc.c (main): Remove trailing "." from diagnostics.
From-SVN: r152578
2009-10-08 22:41:42 +01:00
Cary Coutant
77831620cf Add support for debugging with ICF (Identical Code Folding).
gcc/ChangeLog:
	Add support for debugging with ICF (Identical Code Folding).
	* calls.c (debug.h): New #include.
	(emit_call_1): Call virtual_call_token debug hook.
	* common.opt (-fenable-icf-debug): New option.
	* dwarf2out.c (dwarf2_debug_hooks): Add entries for new hooks (two
	locations in the source).
	(poc_label_num): New variable.
	(dcall_entry, vcall_entry): New typedefs.
	(dcall_table, vcall_table): New variables.
	(struct vcall_insn): New type.
	(vcall_insn_table): New variable.
	(DEBUG_DCALL_SECTION, DEBUG_VCALL_SECTION): New macros.
	(size_of_dcall_table): New function.
	(output_dcall_table): New function.
	(size_of_vcall_table): New function.
	(output_vcall_table): New function.
	(dwarf2out_direct_call): New function.
	(vcall_insn_table_hash): New function.
	(vcall_insn_table_eq): New function.
	(dwarf2out_virtual_call_token): New function.
	(dwarf2out_virtual_call): New function.
	(dwarf2out_init): Allocate new tables and sections.
	(prune_unused_types): Mark DIEs referenced from direct call table.
	(dwarf2out_finish): Output direct and virtual call tables.
	* final.c (final_scan_insn): Call direct_call and virtual_call
	debug hooks.
	* debug.h (struct gcc_debug_hooks): Add direct_call,
	virtual_call_token, virtual_call hooks.
	(debug_nothing_uid): New function.
	* debug.c (do_nothing_debug_hooks): Add dummy entries for new hooks.
	(debug_nothing_uid): New function.
	* dbxout.c (dbx_debug_hooks): Add dummy entries for new hooks.
	* sdbout.c (sdb_debug_hooks): Likewise.
	* vmsdbgout.c (vmsdbg_debug_hooks): Likewise.
	* doc/invoke.texi (-fenable-icf-debug): New option.

gcc/testsuite/ChangeLog:
	Add support for debugging with ICF (Identical Code Folding).
	* g++.dg/debug/dwarf2/icf.C: New test.

From-SVN: r152577
2009-10-08 14:00:04 -07:00
Alexandre Oliva
968e57283e re PR debug/41353 (VTA missed-debug issues)
PR debug/41353
* regmove.c (regmove_backward_pass): Replace src with dst in the
debug insn, and check for dst before rather than after.

From-SVN: r152573
2009-10-08 19:20:22 +00:00
Janis Johnson
42ccb89075 rs6000.c (rs6000_delegitimize_address): Remove.
* config/rs6000/rs6000.c (rs6000_delegitimize_address): Remove.
(TARGET_DELEGITIMIZE_ADDRESS): Likewise.

From-SVN: r152571
2009-10-08 19:19:29 +00:00
Jan Hubicka
625f802caf Fix 41626 from Jan Hubicka
From-SVN: r152569
2009-10-08 18:52:57 +00:00
Anatoly Sokolov
007a178cff * config/avr/avr.c (last_insn_address) Remove variable.
(expand_prologue): Don't initialise last_insn_address variable.
	(final_prescan_insn): Don't output insn size.
	* config/avr/avr.opt (msize): Remove switch.
	* doc/invoke.texi (AVR Options): Remove documentation of -msize
	switch.

From-SVN: r152568
2009-10-08 22:28:48 +04:00
Adam Nemet
e3104f5500 combine.c (label_tick_ebb_start): Fix comment.
* combine.c (label_tick_ebb_start): Fix comment.
	(combine_instructions): Set label_tick and label_tick_ebb_start before
	calling setup_incoming_promotions.  Start them from 1.  Increment
	label_tick instead of deriving it from the BB index.  Rather than
	comparing ticks use the block from the previous iteration to decide
	whether to start a new EBB.  Remove empty lines before function.

testsuite/
	* gcc.target/mips/truncate-6.c: New test.

From-SVN: r152567
2009-10-08 17:54:24 +00:00
Paolo Carlini
a020110e54 bitmap_allocator.h: Minor clean-ups.
2009-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/bitmap_allocator.h: Minor clean-ups.

From-SVN: r152566
2009-10-08 16:45:58 +00:00
Jason Merrill
f7d5a7cd6b re PR c++/36816 ([c++0x] error deducing template argument taking the address of rvalue reference template)
PR c++/36816
	* pt.c (maybe_adjust_types_for_deduction): Do rvalue ref adjustment
	even when DEDUCE_EXACT.

From-SVN: r152565
2009-10-08 12:09:31 -04:00
Jason Merrill
ccb05613cf re PR c++/37177 ([c++0x] ICE on decltype(rel_ops::operator><int>);)
PR c++/37177
	* pt.c (resolve_nondeduced_context): New.
	* cvt.c (convert_to_void): Call it.
	* semantics.c (finish_decltype_type): Likewise.
	* typeck.c (decay_conversion): Here too.
	* pt.c (tsubst_decl): Don't clobber input_location.
	Don't register a bad specialization.

From-SVN: r152564
2009-10-08 12:09:22 -04:00
Michael Matz
6728ee7987 re PR middle-end/41573 (segfault in trunk related to strings)
PR middle-end/41573
	* builtins.c (fold_builtin_isascii): Use fold_build2.
	(fold_builtin_isdigit): Ditto.
	* except.c (duplicate_eh_regions_1): Tolerate NULL labels.
	* tree-cfg.c (struct rus_data, remove_useless_stmts_warn_notreached,
	remove_useless_stmts_cond, remove_useless_stmts_tf,
	remove_useless_stmts_tc, remove_useless_stmts_bind,
	remove_useless_stmts_goto, remove_useless_stmts_label,
	remove_useless_stmts_1, remove_useless_stmts,
	pass_remove_useless_stmts): Remove.
	* tree-pass.h (pass_remove_useless_stmts): Don't declare.
	* passes.c (init_optimization_passes): Don't add
	pass_remove_useless_stmts.
	* tree-eh.c (lower_eh_constructs_2): Handle empty cleanups.
	* tree.c (free_lang_data_in_decl): Don't clear DECL_INITIAL of
	static constants.
	* lto-symtab.c (lto_symtab_register_decl): Accepts DECL_INITIAL
	for static constants.
	* lto-streamer-out.c (output_gimple_stmt): Handle GIMPLE_NOP.
	* lto-streamer-in.c (input_gimple_stmt): Handle GIMPLE_NOP.

testsuite/
	* gcc.dg/tree-ssa/foldstring-1.c: Use fre dump.
	* gcc.dg/tree-ssa/useless-1.c: Use gimple dump.
	* gcc.dg/pr41573.c: New test.

From-SVN: r152563
2009-10-08 16:03:11 +00:00
Richard Guenther
0d0bfe1795 gimple.c (free_gimple_type_tables): New function.
2009-10-08  Richard Guenther  <rguenther@suse.de>

	* gimple.c (free_gimple_type_tables): New function.
	* gimple.h (free_gimple_type_tables): Declare.

	lto/
	* lto.c (read_cgraph_and_symbols): Free the gimple type merging
	hash tables.

From-SVN: r152562
2009-10-08 15:32:30 +00:00
Mark Heffernan
90e1a34930 2009-10-07 Mark Heffernan <meheff@google.com>
* ipa-prop.c (ipa_print_node_params) Only print
	names of named arguments.

From-SVN: r152561
2009-10-08 15:16:35 +00:00
Daniel Gutson
70277b3073 argv.c (consume_whitespace): New function.
2009-10-08  Daniel Gutson  <dgutson@codesourcery.com>
        Daniel Jacobowitz  <dan@codesourcery.com>
        Pedro Alves  <pedro@codesourcery.com>

        libiberty/
        * argv.c (consume_whitespace): New function.
        (only_whitespace): New function.
        (buildargv): Always use ISSPACE by calling consume_whitespace.
        (expandargv): Skip empty files.  Do not stop at the first empty
        argument (calling only_whitespace)..
        * testsuite/test-expandargv.c: (test_data): Test empty lines
        and empty arguments.
        (run_tests): Fix false positives due to shorter arguments.


Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
Co-Authored-By: Pedro Alves <pedro@codesourcery.com>

From-SVN: r152560
2009-10-08 15:14:41 +00:00
Paolo Carlini
38bf8621d9 gnu.ver: Adjust exports.
2009-10-08  Paolo Carlini  <paolo.carlini@oracle.com>

	* config/abi/pre/gnu.ver: Adjust exports.

From-SVN: r152559
2009-10-08 14:12:54 +00:00
Rafael Avila de Espindola
d520c7fb9d lto-plugin.c (add_input_library): New.
2009-10-08  Rafael Avila de Espindola  <espindola@google.com>

	* lto-plugin.c (add_input_library): New.
	(all_symbols_read_handler): Use add_input_library for items that
	start with -l.
	(process_option): Fit in 80 columns.
	(onload): Handle LDPT_ADD_INPUT_LIBRARY.

2009-10-08  Rafael Avila de Espindola  <espindola@google.com>

	* gcc.c (LINK_COMMAND_SPEC): Pass libc with -pass-through if it is
	being statically linked.

From-SVN: r152558
2009-10-08 13:59:32 +00:00
Rainer Orth
d72ff618d3 * collect2.c (add_lto_object): Only define if OBJECT_FORMAT_NONE.
From-SVN: r152557
2009-10-08 11:08:52 +00:00
Jan Hubicka
b820a2f900 re PR bootstrap/41620 (Bootstrap failure)
PR bootstrap/41620
	* ipa.c (cgraph_externally_visible_p,
	function_and_variable_visibility,
	whole_program_function_and_variable_visibility): Skip non-finalized
	nodes.

From-SVN: r152556
2009-10-08 10:06:52 +00:00
Phil Muldoon
b44d3aa84f debug.xml: Rewrite and expand GDB Python pretty-printer section.
2009-10-07  Phil Muldoon <pmuldoon@redhat.com>

	* doc/xml/manual/debug.xml: Rewrite and expand GDB Python
	pretty-printer section.

From-SVN: r152554
2009-10-08 08:27:24 +00:00
Nick Clifton
611b7b5aee mn10300.h (CONSTANT_ADDRESS_P): Do not allow CONST_DOUBLEs.
* config/mn10300/mn10300.h (CONSTANT_ADDRESS_P): Do not allow
        CONST_DOUBLEs.

From-SVN: r152551
2009-10-08 07:01:02 +00:00
Andreas Tobler
4c93ed2385 re PR bootstrap/37739 (bootstrap broken with core gcc > gcc-4.2.x)
2009-10-08  Andreas Tobler  <a.tobler@schweiz.org>

	PR bootstrap/37739
	* config.host: Use config/x-cflags-O1 for powerpc FreeBSD.

From-SVN: r152550
2009-10-08 07:09:54 +02:00
Gabriel Dos Reis
32a58b37ef * cp-tree.h: Fix location of documentation for DECL_LANG_FLAG_7.
From-SVN: r152549
2009-10-08 03:07:44 +00:00
Joseph Myers
e5a9423123 re PR c/41182 (Revision 145254 caused ICE: tree check: expected integer_cst, have nop_expr in tree_int_cst_lt, at tree.c:5259)
PR c/41182
	* c-common.c (c_fully_fold_internal): Strip nops from the result
	of recursive calls to c_fully_fold_internal.
	(c_wrap_maybe_const): New.
	(c_save_expr): Use c_wrap_maybe_const.
	* c-common.h (c_wrap_maybe_const): Declare.
	* c-typeck.c (build_conditional_expr, c_finish_stmt_expr,
	build_binary_op): Use c_wrap_maybe_const.

testsuite:
	* gcc.c-torture/compile/pr41182-1.c: New.

From-SVN: r152548
2009-10-08 01:32:51 +01:00
GCC Administrator
1afab7bdc3 Daily bump.
From-SVN: r152547
2009-10-08 00:16:51 +00:00
Kaveh R. Ghazi
2d5a82c1df arith.c (arith_power): Use mpc_pow_z.
* arith.c (arith_power): Use mpc_pow_z.
	* gfortran.h (HAVE_mpc_pow_z): Define.

From-SVN: r152544
2009-10-07 23:40:25 +00:00
Joseph Myers
4bedf19ae7 * lto.c: Only include <sys/mman.h> if HAVE_MMAP_FILE.
From-SVN: r152543
2009-10-07 23:50:09 +01:00
Kaveh R. Ghazi
7190c775ff real.c: Fix comment to reflect actual exponent size.
* real.c: Fix comment to reflect actual exponent size.

From-SVN: r152542
2009-10-07 21:15:27 +00:00
Ben Elliston
033016fabc * config/rs6000/a2.md: Add FSF comment header.
From-SVN: r152541
2009-10-08 07:15:24 +11:00
Ben Elliston
49b0ca5c9e Fix Hariharan Sandanagobalane's most recent entry.
From-SVN: r152540
2009-10-08 07:12:41 +11:00
Uros Bizjak
68bc087496 i386.md (any_extend): New code iterator.
* config/i386/i386.md (any_extend): New code iterator.
	(u, s): New code attributes.
	(sgnprefix): Ditto.
	(DWIH): Rewrite as code iterator for SI and DI modes.
	(DWI): Rewrite as mode attribute.
	(dwi): New mode attribute.
	(di): Depend on SI mode and DI mode.
	(doubleint_general_operand): Remove mode attribute.

	(*lea_1): Macroize insn from *lea_1_rex64 and *lea_1 patterns using
	DWIH mode iterator.

	(*add<mode>3_doubleword): Use DWIH as the base mode iterator.
	(*sub<mode>3_doubleword): Ditto.

	(mul<mode>3): Macroize expander from mul{hi,si,di}3 patterns
	using SWIM248 mode iterator.
	(*mul<mode>3_1): Macroize insn from mul{si,di}3_1 patterns
	using SWI48 mode iterator.
	(<u>mul<mode><dwi>3): Macroize expander from {,u}mul{sidi,diti}3
	patterns using DWIH mode iterator and any_extend code iterator.
	(<u>mulqihi3): Macroize expander from {,u}mulqihi3 patterns
	using any_extend code iterator.
	(*<u>mul<mode><dwi>3_1): Macroize insn from {,u}mul{sidi,diti}3_1
	patterns using DWIH mode iterator and any_extend code iterator.
	(*<u>mulqihi3_1): Macroize insn from {,u}mulqihi3_1 patterns
	using any_extend code iterator.
	(<s>mul<mode>3_highpart): Macroize expander from
	{s,u}mul{si,di}3_highpart patterns using DWIH mode iterator
	and any_extend code iterator.
	(*<s>muldi3_highpart_1): Macroize insn from
	*{s,u}muldi3_highpart_rex64 patterns using any_extend code iterator.
	(*<s>mulsi3_highpart_1): Macroize insn from *{s,u}mulsi3_highpart_1
	patterns using any_extend code iterator.
	(*<s>mulsi3_highpart_zext): Macroize insn from
	*{s,u}mulsi3_highpart_zext patterns using any_extend code iterator.

From-SVN: r152539
2009-10-07 22:09:01 +02:00
Jason Merrill
f484a91ab4 re PR c++/39863 ([c++0x] variadic templates : wrong error "mismatched argument pack lengths")
PR c++/39863
	* pt.c (tsubst_pack_expansion): Don't do anything now if we
	have incomplete packs of different lengths.

From-SVN: r152537
2009-10-07 14:56:39 -04:00
Jason Merrill
7097b3ac39 re PR c++/41038 (Parsing error related to qualified name id)
PR c++/41038
	* tree.c (build_qualified_name): Call convert_from_reference.

From-SVN: r152536
2009-10-07 14:56:28 -04:00
Jakub Jelinek
95a28767ab dwarf2out.c (tree_add_const_value_attribute_for_decl): Don't add DW_AT_const_value if VAR_DIE already has DW_AT_abstract_origin...
* dwarf2out.c (tree_add_const_value_attribute_for_decl): Don't add
	DW_AT_const_value if VAR_DIE already has DW_AT_abstract_origin
	refering to a DIE with DW_AT_const_value.

	* gcc.dg/debug/dwarf2/inline3.c: New test.

From-SVN: r152535
2009-10-07 20:39:52 +02:00
Daniel Kraft
6c19d9b5b2 re PR fortran/41615 (Bogus error message: "internal function" should be "module procedure")
2009-10-07  Daniel Kraft  <d@domob.eu>

	PR fortran/41615
	* resolve.c (resolve_contained_fntype): Clarify error message for
	invalid assumed-length character result on module procedures.

2009-10-07  Daniel Kraft  <d@domob.eu>

	PR fortran/41615
	* gfortran.dg/assumed_charlen_function_6.f90: New test.

From-SVN: r152534
2009-10-07 20:13:28 +02:00
Vladimir Makarov
7ba06dee52 re PR middle-end/22072 (bizarre code for int*int/2 for -Os)
2009-10-07  Vladimir Makarov  <vmakarov@redhat.com>

	PR middle-end/22072
	* ira-lives.c (check_and_make_def_conflict): Process all operands.

From-SVN: r152533
2009-10-07 17:18:38 +00:00
Jan Hubicka
3621d5ec1d cgraph.c (cgraph_node_can_be_local): Handle externally visible nodes correctly.
* cgraph.c (cgraph_node_can_be_local): Handle externally visible nodes
	correctly.

From-SVN: r152532
2009-10-07 16:36:43 +00:00
Uros Bizjak
f8921d7ddf * config/i386/i386.md (*lea_1_rex64, *lea_1, *lea_1_zext,
*lea_2_rex64): Move before *add<mode>_1 pattern.

From-SVN: r152530
2009-10-07 17:12:00 +02:00
Rafael Espindola
1fc2373614 changelog
From-SVN: r152529
2009-10-07 14:26:53 +00:00
Rafael Espindola
21b01f3c44 Update my email address.
s/plug-in/plugin/

From-SVN: r152528
2009-10-07 14:22:30 +00:00
Richard Guenther
5868776879 MAINTAINERS (LTO): List Diego Novillo, Rafael Avila de Espindola, and Richard Guenther as reviewers.
2009-10-07  Richard Guenther  <rguenther@suse.de>

	* MAINTAINERS (LTO): List Diego Novillo, Rafael Avila de Espindola,
	and Richard Guenther as reviewers.
	(LTO plugin): List Rafael Avila de Espindola and Cary Coutant
	as reviewers.

From-SVN: r152527
2009-10-07 14:12:34 +00:00
Janus Weil
93d7668704 expr.c (gfc_check_pointer_assign): Do the correct type checking when CLASS variables are involved.
2009-10-07  Janus Weil  <janus@gcc.gnu.org>

	* expr.c (gfc_check_pointer_assign): Do the correct type checking when
	CLASS variables are involved.
	* match.c (gfc_match_select_type): Parse associate-name in SELECT TYPE
	statements, and set up a local namespace for the SELECT TYPE block.
	* parse.h (gfc_build_block_ns): New prototype.
	* parse.c (parse_select_type_block): Return from local namespace to its
	parent after SELECT TYPE block.
	(gfc_build_block_ns): New function for setting up the local namespace
	for a BLOCK construct.
	(parse_block_construct): Use gfc_build_block_ns.
	* resolve.c (resolve_select_type): Insert assignment for the selector
	variable, in case an associate-name is given, and put the SELECT TYPE
	statement inside a BLOCK.
	(resolve_code): Call resolve_class_assign after checking the assignment.
	* symbol.c (gfc_find_sym_tree): Moved some code here from
	gfc_get_ha_sym_tree.
	(gfc_get_ha_sym_tree): Moved some code to gfc_find_sym_tree.


2009-10-07  Janus Weil  <janus@gcc.gnu.org>

	* gfortran.dg/same_type_as_2.f03: Modified (was illegal).
	* gfortran.dg/select_type_1.f03: Modified error message.
	* gfortran.dg/select_type_5.f03: New test.

From-SVN: r152526
2009-10-07 12:54:35 +02:00