Commit Graph

98946 Commits

Author SHA1 Message Date
Bernd Schmidt
c99102b8b4 re PR target/40697 (inefficient code to extract least bits from an integer value)
gcc/
	PR target/40697
	* optabs.c (avoid_expensive_constant): Use rtx_cost to find out
	the cost of loading the constant rather than assuming
	COSTS_N_INSNS (1).
	* config/arm/arm.c (thumb1_rtx_costs) <case CONST_INT>: If the
	outer code is AND, do the same tests as the andsi3 expander and
	return COSTS_N_INSNS (1) if and is cheap.

testsuite/
	PR target/40697
	* gcc.target/arm/thumb-andsi.c: New test.

From-SVN: r157582
2010-03-19 18:41:22 +00:00
Bernd Schmidt
002b2dee5d re PR rtl-optimization/42258 (redundant register move around mul instruction)
gcc/
	PR rtl-optimization/42258
	* ira-lives.c (check_and_make_def_conflict): Ignore conflict for a
	use that may match DEF.

testsuite/
	PR rtl-optimization/42258
	* gcc.target/arm/thumb1-mul-moves.c: New test.

From-SVN: r157581
2010-03-19 18:18:54 +00:00
Michael Matz
f9ceed32dc re PR c++/43116 (ICE when using attributes in a function alias declaration)
PR c++/43116
	* attribs.c (decl_attributes): When rebuilding a function pointer
	type use the same qualifiers as the original pointer type.

testsuite/
	* g++.dg/other/pr43116.C: New testcase.

From-SVN: r157578
2010-03-19 16:37:27 +00:00
Martin Jambor
3795eae664 gimple.texi (Logical Operators): Describe is_gimple_ip_invariant and is_gimple_ip_invariant_address.
2010-03-19  Martin Jambor  <mjambor@suse.cz>

	* doc/gimple.texi (Logical Operators): Describe is_gimple_ip_invariant
	and is_gimple_ip_invariant_address.

From-SVN: r157576
2010-03-19 17:09:16 +01:00
Ramana Radhakrishnan
ae0bef88fd Revert work around for PR40521
2010-03-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

        Revert
        2009-10-01  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
        * config/arm/arm.c (arm_override_options): Turn off
        flag_dwarf2_cfi_asm for AAPCS variants.

From-SVN: r157575
2010-03-19 16:02:49 +00:00
Ramana Radhakrishnan
9abf5d7be1 re PR target/43399 (bootstrap failure in stage1)
Fix PR target/43399

2010-03-19  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

       PR target/43399
       * config/arm/arm.c (emit_multi_reg_push): Update comments.
       Use PRE_MODIFY instead of PRE_DEC.
       (emit_sfm): Use PRE_MODIFY instead of PRE_DEC.
       (vfp_emit_fstmd): Likewise.

From-SVN: r157574
2010-03-19 15:58:37 +00:00
Bruce Korb
73489878b6 remove vestiges of inadvertently committed changes
From-SVN: r157573
2010-03-19 14:50:06 +00:00
Paolo Carlini
0c56371567 freestanding.cc: Avoid -Wall warnings.
2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/17_intro/freestanding.cc: Avoid -Wall warnings.

From-SVN: r157572
2010-03-19 14:19:23 +00:00
Rodolfo Lima
28de604e8c shared_ptr.h (shared_ptr(unique_ptr&&), [...]): Remove explicit specifier (as per DR 925).
2010-03-19  Rodolfo Lima  <rodolfo@rodsoft.org>

	* include/bits/shared_ptr.h (shared_ptr(unique_ptr&&),
	shared_ptr(auto_ptr&&)): Remove explicit specifier (as per DR 925).
	* include/bits/shared_ptr_base.h: Likewise.
	* testsuite/20_util/shared_ptr/creation/dr925.cc: New.

From-SVN: r157570
2010-03-19 13:32:05 +00:00
Michael Matz
8a0b1aa4c1 re PR target/43305 (ICE: in emit_unop_insn, at optabs.c:3838 with -Os -ffast-math and ilogbl())
PR 43305
	* builtins.c (expand_builtin_interclass_mathfn,
	expand_builtin_signbit): Use maybe_emit_unop_insn, emit libcalls
	if that fails.

testsuite/
	* gcc.dg/pr43305.c: New testcase.

From-SVN: r157567
2010-03-19 12:37:28 +00:00
Paolo Carlini
afcd05a759 random.tcc: Minor formatting changes.
2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/random.tcc: Minor formatting changes.

2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_algo.h (shuffle): Fix typo in signature.
	* include/bits/algorithmfwd.h: Adjust.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/pod.cc: Likewise.

From-SVN: r157565
2010-03-19 11:10:08 +00:00
Paolo Carlini
247d807571 stl_algo.h (shuffle): Add, per D3056.
2010-03-19  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_algo.h (shuffle): Add, per D3056.
	(random_shuffle): Fix signature in C++0x mode.
	(lower_bound, __lg): Move...
	* include/bits/stl_algobase.h: ... here.
	* include/bits/algorithmfwd.h: Adjust.
	* include/parallel/algorithmfwd.h: Likewise.
	* include/parallel/algo.h: Likewise.
	* include/bits/hashtable_policy.h (__lower_bound): Remove,
	adjust callers.
	* include/tr1/hashtable_policy.h (__lower_bound): Likewise.
	* include/bits/random.tcc (__detail::__transform): Add,
	adjust std::transform callers; don't include <algorithm>.
	* testsuite/25_algorithms/shuffle/1.cc: Add.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/pod.cc: Likewise.

	* include/bits/random.h: Add comments.

From-SVN: r157564
2010-03-19 10:36:57 +00:00
Jack Howarth
0aeb3cc6c9 re PR ada/42554 (Can't build GNAT tools)
PR ada/42554
	* configure.ac: Only pass -c to ranlib for darwin9 and earlier.
	* configure: Regenerate.

From-SVN: r157563
2010-03-19 10:19:52 +00:00
Richard Guenther
3e999e7b28 re PR tree-optimization/43415 (Consumes large amounts of memory and time in PRE at -O3)
2010-03-19  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/43415
	* tree-ssa-pre.c (phi_translate): Split out worker to ...
	(phi_translate_1): ... this.
	(phi_translate): Move all caching here.  Cache all NARY
	and REFERENCE translations.

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

From-SVN: r157562
2010-03-19 10:18:25 +00:00
Mike Stump
a29d9e20cc Update dates.
From-SVN: r157561
2010-03-19 09:22:38 +00:00
Mike Stump
48019e3db9 Canonicalize filenames.
From-SVN: r157560
2010-03-19 09:19:45 +00:00
Eric Botcazou
72c53a837c re PR ada/43106 (optimization error in a case statement)
PR ada/43106
	* gnat.dg/case_optimization2.adb: New test.
	* gnat.dg/case_optimization_pkg2.ad[sb]: New helper.

From-SVN: r157558
2010-03-19 07:18:47 +00:00
David S. Miller
9fd52c6c0f sparc.c: Include dwarf2out.h.
* config/sparc/sparc.c: Include dwarf2out.h.
	(emit_pic_helper): Delete.
	(pic_helper_symbol_name): Delete.
	(pic_helper_emitted_p): Delete.
	(pic_helper_needed): New.
	(USE_HIDDEN_LINKONCE): Define to '1' if HAVE_GAS_HIDDEN else '0'.
	(get_pc_thunk_name): New.
	(load_pic_register): Remove 'delay_pic_helper' arg.  Use
	get_thunk_pc_name and ggc_strdup to generate PIC thunk symbol.
	Set pic_helper_needed to true.  Don't call emit_pic_helper.
	(sparc_expand_prologue): Update load_pic_register call.
	(sparc_output_mi_thunk): Likewise.
	(sparc_file_end): Emit a hidden comdat symbol for the PIC
	thunk if possible.  Output CFI information as needed.

From-SVN: r157557
2010-03-18 22:34:12 -07:00
GCC Administrator
fda79fea62 Daily bump.
From-SVN: r157556
2010-03-19 00:16:39 +00:00
Francois-Xavier Coudert
b6010cabbb re PR target/36399 (ABI bug on darwin/x86-32)
2010-03-11  Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
	    Jack Howarth <howarth@bromo.med.uc.edu>

	PR target/36399
	* gcc/config/i386/i386.h: Fix ABI on darwin x86-32.
	* gcc/testsuite/gcc.target/i386/push-1.c: Don't xfail
	  scan-assembler-not "movups" on darwin.

Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>

From-SVN: r157553
2010-03-18 22:56:38 +00:00
Paul Thomas
1821bcfc49 re PR fortran/43039 ([lto/-fwhole-file] fortran-dev - ICE in gfc_conv_component_ref dynamic_dispatch_5.f03)
2010-03-18  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/43039
        * trans-expr.c (conv_parent_component_references): Ensure that
	'dt' has a backend_decl.

        PR fortran/43043
        * trans-expr.c (gfc_conv_structure): Ensure that the derived
	type has a backend_decl.

        PR fortran/43044
        * resolve.c (resolve_global_procedure): Check that the 'cl'
	structure is not NULL.

From-SVN: r157552
2010-03-18 21:23:35 +00:00
Aldy Hernandez
b1aa065584 tree.h: Declare make_decl_rtl_for_debug.
* tree.h: Declare make_decl_rtl_for_debug.
	* varasm.c (make_decl_rtl_for_debug): New.
	* dwarf2out.c (rtl_for_decl_location): Call it.
	* cfgexpand.c (expand_debug_expr): Call it.

From-SVN: r157551
2010-03-18 20:41:40 +00:00
Jakub Jelinek
9a05b74924 re PR target/43399 (bootstrap failure in stage1)
PR bootstrap/43399
	* var-tracking.c (adjust_mems) <case POST_MODIFY>: Allow BLKmode
	mem_mode.

From-SVN: r157550
2010-03-18 21:18:53 +01:00
Jakub Jelinek
f0c12fcc59 re PR bootstrap/43403 (ICE in stage1 compiling __bswapdi2)
PR bootstrap/43403
	* var-tracking.c (vt_init_cfa_base): Do nothing if
	cfa_base_rtx would be hard_frame_pointer_rtx or non-fixed
	register.

From-SVN: r157549
2010-03-18 21:17:32 +01:00
Alexandre Oliva
e999b0c986 re PR debug/42873 (deadlock in var tracking in recent builds)
PR debug/42873
	* var-tracking.c (canonicalize_vars_star): New.
	(dataflow_post_merge_adjust): Use it.

From-SVN: r157548
2010-03-18 21:16:48 +01:00
Jakub Jelinek
5644a3d0e3 re PR rtl-optimization/43058 (var-tracking uses up all virtual memory)
PR debug/43058
	* var-tracking.c (non_suitable_const): New function.
	(add_uses): For DEBUG_INSNs with constants, don't record any
	value, instead just the constant value itself.
	(compute_bb_dataflow) <case MO_VAL_LOC>: If PAT_VAR_LOCATION_LOC
	is not VAR_LOC_UNKNOWN_P, set var to the constant.
	(emit_notes_in_bb): Likewise.
	(emit_note_insn_var_location): For onepart variables if
	cur_loc is a VOIDmode constant, use DECL_MODE.

	* gcc.dg/pr43058.c: New test.

From-SVN: r157547
2010-03-18 21:15:05 +01:00
Martin Jambor
8132a837da re PR middle-end/42450 (another GCC 4.5 ICE on C++ templated code)
2010-03-18  Martin Jambor  <mjambor@suse.cz>

	PR middle-end/42450
	* cgraph.h (cgraph_redirect_edge_call_stmt_to_callee): Declare.
	* cgraphunit.c (cgraph_materialize_all_clones): Update calls in
	all non-clones.  Moved call redirection...
	(cgraph_redirect_edge_call_stmt_to_callee): ...to this new
	function.
	(cgraph_materialize_all_clones): Dispose of all
	combined_args_to_skip bitmaps.
	(verify_cgraph_node): Do not check for edges pointing to wrong
	nodes in inline clones.
	* tree-inline.c (copy_bb): Call
	cgraph_redirect_edge_call_stmt_to_callee.
	* ipa.c (cgraph_remove_unreachable_nodes): Call
	cgraph_node_remove_callees even when there are used clones.

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

From-SVN: r157546
2010-03-18 21:07:13 +01:00
H.J. Lu
7893d7acfe Make GCC_4.5.0 inherit GCC_4.4.0.
2010-03-18  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/libgcc-glibc.ver: Make GCC_4.5.0 inherit GCC_4.4.0.

From-SVN: r157545
2010-03-18 12:42:19 -07:00
H.J. Lu
cdfedab184 Export __extendxftf2 to GCC_4.5.0 for 32bit libgcc.
2010-03-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/43383
	* config/i386/libgcc-glibc.ver: Add __extendxftf2 to GCC_4.5.0
	for 32bit.

From-SVN: r157544
2010-03-18 11:12:31 -07:00
Michael Matz
c21372c41e re PR middle-end/43419 (gcc replaces pow(x, 0.5) by sqrt(x), invalid when x is -0)
PR middle-end/43419
	* builtins.c (expand_builtin_pow): Don't transform pow(x, 0.5)
	into sqrt(x) if we need to preserve signed zeros.

testsuite/
	* gcc.dg/pr43419.c: New testcase.

From-SVN: r157543
2010-03-18 16:07:53 +00:00
H.J. Lu
82fa5f8aa7 Remove the REG_EQUAL note if we don't know its invariant status.
gcc/

2010-03-18  Steven Bosscher  <steven@gcc.gnu.org>
	    Eric Botcazou  <ebotcazou@adacore.com>

	PR rtl-optimization/43360
	* loop-invariant.c (move_invariant_reg): Remove the REG_EQUAL
	note if we don't know its invariant status.

gcc/testsuite/

2010-03-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR rtl-optimization/43360
	* gcc.dg/torture/pr43360.c: New.

From-SVN: r157539
2010-03-18 06:10:49 -07:00
Michael Matz
eb45755f64 re PR tree-optimization/43402 (dom1 miscompiles binary search)
PR tree-optimization/43402
	* tree-cfgcleanup.c (cleanup_control_expr_graph): Don't follow
	PHI chains of ssa names registered for update.

testsuite/
	* gcc.dg/pr43402.c: New testcase.

From-SVN: r157538
2010-03-18 12:20:50 +00:00
Paolo Carlini
8269067b2c re PR c++/43418 (trunk rev157534. compile c++ with --enable-build-with-cxx fails in cp_parser_for_init_statement)
2010-03-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43418
	* parser.c (cp_parser_for_init_statement): Use NULL_TREE, not
	false, in the cp_parser_expression_statement call.

From-SVN: r157537
2010-03-18 11:46:33 +00:00
Paolo Carlini
974ed2fa6e re PR c++/43418 (trunk rev157534. compile c++ with --enable-build-with-cxx fails in cp_parser_for_init_statement)
2010-03-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43418
	* parser.c (cp_parser_for_init_statement): Use NULL_TREE, not
	false, in the cp_parser_expression_statement call.

From-SVN: r157536
2010-03-18 11:46:15 +00:00
Jerry DeLisle
bf71e8f028 transfer.c (read_sf_internal): Remove stray function declaration used during debigging.
2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* io/transfer.c (read_sf_internal): Remove stray function declaration
	used during debigging.

From-SVN: r157531
2010-03-18 03:26:07 +00:00
Peter Bergner
60936b2231 re PR target/42427 (invalid assembly code for 301.apsi for -fnon-call-exceptions)
gcc/
	PR target/42427
	* config/rs6000/rs6000.c (rs6000_split_multireg_move): Add support for
	non-offsettable and pre_modify update addressing.
	* config/rs6000/dfp.md (*movdd_hardfloat32): Make the "0", "1"
	and "2" alternatives "#".
	(*movdd_softfloat32): Make all alternatives "#";
	* config/rs6000/rs6000.md (DIFD): New define_mode_iterator.
	(*movdf_hardfloat32): Make the "0", "1" and "2" alternatives "#".
	(*movdf_softfloat32): Make all alternatives "#";
	(movdi): Use the new DIFD mode iterator to create a common splitter
	for movdi, movdf and movdd patterns.

gcc/testsuite/
	PR target/42427
	* gcc.dg/pr42427.c: New test.

From-SVN: r157530
2010-03-17 22:10:04 -05:00
Shujing Zhao
316fc112ae common.opt (dumpdir): Remove redundant tab.
gcc/
2010-03-18  Shujing Zhao  <pearly.zhao@oracle.com>

        * common.opt (dumpdir): Remove redundant tab.

gcc/fortran
2010-03-18  Shujing Zhao  <pearly.zhao@oracle.com>

        * lang.opt (-ffixed-line-length-, ffree-line-length-): Remove
        redundant tab.

From-SVN: r157529
2010-03-18 03:01:09 +00:00
Jerry DeLisle
29e8b716ec re PR fortran/43265 (No EOF condition if reading with '(x)' from an empty file)
2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/43265
	*gfortran.dg/read_empty_file.f: New test.
	*gfortran.dg/read_eof_all.f90: New test.
	*gfortran.dg/namelist_27.f90: Eliminate infinite loop posibility.
	*gfortran.dg/namelist_28.f90: Eliminate infinite loop posibility.

From-SVN: r157528
2010-03-18 02:43:10 +00:00
Jerry DeLisle
59011a60c0 re PR fortran/43265 (No EOF condition if reading with '(x)' from an empty file)
2010-03-17  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/43265
	* io/io.h: Delete prototype for read_sf, making it static.
	* io/read.c (read_x): Modify to call hit_eof if PAD="no".
	* io/transfer.c (read_sf_internal): New static function extracted from
	read_sf for use on internal units only. Handle empty string case.
	(read_sf): New factoring of this function, make it static.  Add special
	conditions for EOF based on ADVANCE="no", PAD="no", and whether any
	bytes have been previously read from the record.
	(read_block_form): Modify to call read_sf or read_sf_internal.
	(next_record_r): Add a done flag similar to next_record_w. Call hit_eof
	if internal array unit next record returns finished, meaning an EOF was
	found and not done, ie not the last record expected.  For external
	units call hit_eof if item_count is 1 or there are no pending spaces.
	(next_record): Update call to next_record_r.

From-SVN: r157527
2010-03-18 02:38:17 +00:00
Ramana Radhakrishnan
5408fbe892 Update my mail address.
From-SVN: r157524
2010-03-18 00:47:13 +00:00
GCC Administrator
fb39d2a051 Daily bump.
From-SVN: r157523
2010-03-18 00:16:40 +00:00
Sebastian Pop
3f55a3b391 Remove emails of people no longer with AMD.
2010-03-17  Sebastian Pop  <sebastian.pop@amd.com>

	* MAINTAINERS (dwarak.rajagopal@amd.com): Removed.
	(ghassan.shobaki@amd.com): Removed.

From-SVN: r157519
2010-03-17 20:26:26 +00:00
Martin Jambor
ec24771ffd re PR tree-optimization/43347 (Warning about symbols generated by SRA being used uninitialized)
2010-03-17  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/43347
	* tree-sra.c (create_access_replacement): Set TREE_NO_WARNING when the
	original base is DECL_ARTIFICIAL or DECL_IGNORED_P.

From-SVN: r157515
2010-03-17 13:02:35 +01:00
Michael Matz
4c2084cdb3 * gcc.dg/pr43300.c: Add -w.
From-SVN: r157514
2010-03-17 11:17:26 +00:00
Richard Guenther
e638cfd6d7 pr43379.c: Add -w.
2010-03-17  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/pr43379.c: Add -w.

From-SVN: r157513
2010-03-17 10:31:09 +00:00
Tobias Burnus
b3aefde213 re PR fortran/43331 (Cray pointers generate bogus IL for the middle-end)
2010-03-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/43331
        * trans-array.c (gfc_conv_array_index_offset,gfc_conv_array_ref,
        gfc_conv_ss_startstride): Remove no-longer-needed cp_was_assumed
        check.
        * decl.c (gfc_match_derived_decl): Don't mark assumed-size Cray
        pointees as having explizit size.
        * expr.c (gfc_check_assign): Remove now unreachable Cray pointee
        check.
        * trans-types.c (gfc_is_nodesc_array): Add cp_was_assumed to
        * assert.
        (gfc_sym_type): Don't mark Cray pointees as restricted pointers.
        * resolve.c (resolve_symbol): Handle cp_was_assumed.
        * trans-decl.c (gfc_trans_deferred_vars): Ditto.
        (gfc_finish_var_decl): Don't mark Cray pointees as restricted
        pointers.

2010-03-17  Tobias Burnus  <burnus@net-b.de>

        PR fortran/43331
        * gfortran.dg/cray_pointers_1.f90: Update dg-error message.

From-SVN: r157512
2010-03-17 10:53:40 +01:00
Bernd Schmidt
e33c42db5d re PR rtl-optimization/42216 (changes in scheduling regress 464.h264ref 20%)
PR rtl-optimization/42216
	* regrename.c (create_new_chain): New function, broken out from...
	(scan_rtx_reg): ... here.  Call it.  Handle the case where we are
	appending a use to an empty chain.
	(build_def_use): Remove previous changes that convert OP_INOUT to
	OP_OUT operands; instead detect the case where an OP_INOUT operand
	uses a previously untracked register and create an empty chain for
	it.

From-SVN: r157511
2010-03-17 09:25:35 +00:00
Ralf Wildenhues
4c4177dc90 Rewrite unfinished sentence in documentation.
gcc/:
	* doc/extend.texi (Function Attributes): Rewrite unfinished
	sentence in ms_abi documentation.

From-SVN: r157508
2010-03-17 06:18:19 +00:00
Alan Modra
60ac95117e linux64.opt (mprofile-kernel): Use profile_kernel var.
* config/rs6000/linux64.opt (mprofile-kernel): Use profile_kernel var.
	* config/rs6000/linux64.h (TARGET_PROFILE_KERNEL): Define.
	(SUBSUBTARGET_OVERRIDE_OPTIONS): Don't use SET_PROFILE_KERNEL.
	* config/rs6000/rs6000.c (SET_PROFILE_KERNEL): Don't define.

From-SVN: r157507
2010-03-17 15:14:37 +10:30
Jonathan Wakely
2b72aa266a debug_mode.xml: Correct debug headers.
2010-03-17  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* doc/xml/manual/debug_mode.xml: Correct debug headers.

From-SVN: r157506
2010-03-17 00:36:05 +00:00