Commit Graph

13963 Commits

Author SHA1 Message Date
Joseph Myers 6f5db5f7e9 inclhack.def (glibc_strncpy): New fix.
fixincludes:
	* inclhack.def (glibc_strncpy): New fix.
	* fixincl.x: Regenerate.
	* tests/base/bits/string2.h: Update.

gcc/testsuite:
	* gcc.dg/strncpy-fix-1.c: New test.

From-SVN: r157717
2010-03-24 23:20:15 +00:00
Iain Sandoe 5e599ebb7d re PR testsuite/41609 (Torture tests do not check "trivial.{m,mm}" for each run case.)
2010-03-24  Iain Sandoe  <iain.sandoe@sandoe-acoustics.co.uk>

	PR testsuite/41609
	* lib/objc-torture.exp (objc-set-runtime-options): New.
	* objc/execute/execute.exp: Check runtime options on each pass.
	* objc/execute/exceptions/exceptions.exp: Ditto.
	* objc/compile/compile.exp: Ditto.

From-SVN: r157716
2010-03-24 22:52:47 +00:00
Iain Sandoe 9debda96f5 re PR testsuite/42348 (Syntax of dg-skip-if in two obj-c++ tests)
2010-03-24  Iain Sandoe  <iain.sandoe@sandoe-acoustics.co.uk>

	PR testsuite/42348
	* lib/target-supports.exp: Add support for ObjC/ObjC++ tools in
	standard tests.
	(check_effective_target_objc2): New proc.
	(check_effective_target_next_runtime): New proc.
	* lib/objc.exp: Determine which runtime is in force and support it.
	* lib/obj-c++.exp: Ditto.

From-SVN: r157715
2010-03-24 22:51:08 +00:00
Jason Merrill bff0b1a6df re PR c++/43502 ([C++0x] uninitialised read in grokfndecl() with lambda functions cause -fcompare-debug failures)
PR c++/43502
	* parser.c (make_declarator): Initialize id_loc.
	(cp_parser_lambda_declarator_opt): And set it.

From-SVN: r157701
2010-03-24 12:49:06 -04:00
Martin Jambor 1e06efb6eb ipa-1.c: Delete trailing spaces, put the call to f into a loop.
2010-03-24  Martin Jambor  <mjambor@suse.cz>

	* gcc.dg/ipa/ipa-1.c: Delete trailing spaces, put the call to f into
	a loop.	
	* gcc.dg/ipa/ipa-2.c: Likewise.
	* gcc.dg/ipa/ipa-3.c: Likewise.
	* gcc.dg/ipa/ipa-4.c: Likewise.
	* gcc.dg/ipa/ipa-5.c: Likewise.
	* gcc.dg/ipa/ipa-7.c: Likewise.
	* gcc.dg/ipa/ipa-6.c: Delete trailing spaces, put the call to foo into
	a loop.
	* gcc.dg/ipa/ipacost-2.c: Delete trailing spaces, put the call to
	i_can_not_be_propagated_fully2 into a loop.
	* gcc.dg/ipa/ipa-8.c: New test.
	* g++.dg/ipa/iinline-1.C: Put the call to docalling into a loop.

From-SVN: r157698
2010-03-24 17:26:52 +01:00
Mike Stump b98aa20c89 re PR java/43504 (many libjava testsuite regressions on x86_64-apple-darwin10)
PR java/43504
	Revert fix for PR target/33120.

From-SVN: r157697
2010-03-24 16:07:51 +00:00
Jakub Jelinek d0ed412a96 re PR debug/19192 (Current development gcc generates inaccurate line info for example code)
PR debug/19192
	PR debug/43479
	* cfgexpand.c (gimple_assign_rhs_to_tree): Also set TREE_BLOCK
	from gimple_block.
	* expr.c (expand_expr_real): Restore previous
	curr_insn_source_location and curr_insn_block after
	expand_expr_real_1 call.
	(expand_expr_real_1) <case SSA_NAME>: Call expand_expr_real
	instead of expand_expr_real_1.

	* gcc.dg/guality/pr43479.c: New test.
	* gcc.dg/debug/dwarf2/inline2.c (third): Make a a global var
	and add volatile keyword.

From-SVN: r157693
2010-03-24 14:41:30 +01:00
Mike Stump 012cd3b6b5 * g++.dg/warn/Wstrict-aliasing-float-ref-int-obj.C: Enhance portability.
From-SVN: r157690
2010-03-24 03:04:16 +00:00
Jason Merrill 5c3bacee38 * g++.dg/ext/altivec-17.C: Adjust error message.
From-SVN: r157689
2010-03-23 22:49:55 -04:00
Jason Merrill c6be04ad92 Make lambda conversion op and op() non-static.
* semantics.c (maybe_add_lambda_conv_op): Make non-static.
	Also add the thunk function returned by the conversion op.
	Mark the conversion deleted if the op() is variadic.
	* decl2.c (mark_used): Give helpful message about deleted conversion.
	* parser.c (cp_parser_lambda_declarator_opt): Don't make op() static.
	* semantics.c (finish_this_expr): Adjust.
	* mangle.c (write_closure_type_name): Adjust.
	* decl.c (grok_op_properties): Don't allow it.
	* call.c (build_user_type_conversion_1): No static conversion ops.
	(build_op_call): Or op().

	* decl2.c (change_return_type): Fix 'this' quals.

From-SVN: r157681
2010-03-23 18:29:53 -04:00
Mike Stump 5b5cfcb3b8 re PR target/33120 (Data not put in BSS section on Mac OS)
PR target/33120
	* config/darwin.h (ASM_OUTPUT_ALIGNED_BSS): Add.
	* config/darwin.c (darwin_output_aligned_bss): Add.
	* config/darwin-protos.h: Add darwin_output_aligned_bss.

testsuite:
	* g++.dg/ext/instantiate2.C: Update for .zerofill as it doesn't
	follow the usual conventions for symbol definitions.
	* gcc.target/i386/darwin-zerofill.c: Add.

From-SVN: r157677
2010-03-23 20:02:57 +00:00
Jason Merrill cc72bbaac7 re PR c++/43333 (__is_pod seems broken)
PR c++/43333
	* tree.c (pod_type_p): Use old meaning in C++98 mode.

From-SVN: r157652
2010-03-22 16:38:57 -04:00
Jason Merrill 189327376c re PR c++/43281 ([c++0x] ICE with invalid auto)
PR c++/43281
	* pt.c (contains_auto_r): New fn.
	(do_auto_deduction): Use it.
	(tsubst): Don't look at TREE_TYPE of a TEMPLATE_TYPE_PARM.

From-SVN: r157651
2010-03-22 16:38:46 -04:00
Jason Merrill ce30e6fd06 c-pretty-print.c (pp_c_specifier_qualifier_list): Use () rather than [], and move before the element type.
* c-pretty-print.c (pp_c_specifier_qualifier_list) [VECTOR_TYPE]:
	Use () rather than [], and move before the element type.
	* cp-demangle.c (d_print_mod): Use () rather than [] for vectors.

From-SVN: r157650
2010-03-22 16:38:35 -04:00
Michael Matz 047550e9f6 re PR middle-end/43475 (ICE in form_sum, at reload.c:5348)
PR middle-end/43475
	* recog.c (validate_replace_rtx_group): Replace also in
	REG_EQUAL and REG_EQUIV notes.

testsuite/
	* gfortran.dg/pr43475.f90: New testcase.

From-SVN: r157640
2010-03-22 16:28:51 +00:00
Richard Guenther 6d7971b832 re PR middle-end/43390 (ICE: integral result type precision does not match field size of BIT_FIELD_REF)
2010-03-22  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/43390
	* tree-vect-stmts.c (get_vectype_for_scalar_type): Make
	sure vector extracts are type correct.

	* gfortran.fortran-torture/execute/pr43390.f90: New testcase.

From-SVN: r157624
2010-03-22 12:39:04 +00:00
Kaveh R. Ghazi 242ba3086f ppc-sdata-1.c: Require nonpic.
* gcc.target/powerpc/ppc-sdata-1.c: Require nonpic.
	* gcc.target/powerpc/ppc-sdata-2.c: Likewise.

From-SVN: r157603
2010-03-21 19:25:00 +00:00
Simon Martin 7801b86acf re PR c++/43081 (ICE with invalid in-class initializer)
gcc/cp/

2010-03-20  Simon Martin  <simartin@users.sourceforge.net>

	PR c++/43081:
	* decl2.c (grokfield): Handle invalid initializers for member
	functions.

gcc/testsuite/

2010-03-20  Simon Martin  <simartin@users.sourceforge.net>
	    Michael Matz  <matz@suse.de>

	PR c++/43081
	* g++.dg/parse/crash56.C: New test.

Co-Authored-By: Michael Matz <matz@suse.de>

From-SVN: r157597
2010-03-20 18:01:18 +00:00
Paul Thomas b8849663cf re PR fortran/43450 (-fwhole-file: ICE in gfc_create_module_variable, at fortran/trans-decl.c:3386)
2010-03-20  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/43450
	* trans-decl.c (gfc_create_module_variable): With -fwhole-file
	do not assert the context of derived types.

2010-03-20  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/43450
	* gfortran.dg/whole_file_15.f90 : New test.

From-SVN: r157595
2010-03-20 16:01:17 +00:00
Jerry DeLisle 21b04412b0 re PR fortran/43409 (I/O: INQUIRE for SIZE does not work.)
2010-03-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/43409
	* gfortran.dg/inquire_size.f90: New test.

From-SVN: r157594
2010-03-20 14:42:04 +00:00
Richard Guenther d491d2af31 re PR rtl-optimization/43438 (possible wrong code bug)
2010-03-20  Richard Guenther  <rguenther@suse.de>

	PR rtl-optimization/43438
	* combine.c (make_extraction): Properly zero-/sign-extend an
	extraction of the low part of a CONST_INT.  Also handle
	CONST_DOUBLE.

	* gcc.c-torture/execute/pr43438.c: New testcase.

From-SVN: r157592
2010-03-20 13:44:18 +00:00
Dodji Seketeli 39bac0102c re PR c++/43375 (ICE during compiling SSE code)
Fix for PR c++/43375

gcc/cp/ChangeLog:
	PR c++/43375
	* method.c (make_alias_for): Avoid crashing when DECL_LANG_SPECIFIC
	is NULL.
	* decl2.c (vague_linkage_p): Likewise.

gcc/testsuite/g++.dg/ChangeLog:
	PR c++/43375
	* g++.dg/abi/mangle42.C: New test.

From-SVN: r157590
2010-03-20 09:55:32 +01:00
Andrew Pinski e49a760f33 re PR c/43211 (ICE with incomplete type in function argument)
2010-03-19  Andrew Pinski  <andrew_pinski@caviumnetworks.com>

        PR C/43211
        * c-decl.c (grokparms): Set arg_types to NULL_TREE if there was an error.

2010-03-19  Andrew Pinski  <andrew_pinski@caviumnetworks.com>

        PR C/43211
        * gcc.dg/pr43211.c: New test.
        * gcc.dg/pr18809-1.c: Don't expect an error when calling foo.

From-SVN: r157585
2010-03-19 15:52:41 -07:00
Bernd Schmidt 036efbf272 thumb-andsi.c: Correct dg-options and add dg-require-effective-target.
* gcc.target/arm/thumb-andsi.c: Correct dg-options and add
	dg-require-effective-target.

From-SVN: r157583
2010-03-19 19:42:59 +00:00
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
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
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
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
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
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
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
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
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
Uros Bizjak df3fe9b01e block-3.c: Add dg-timeout-factor.
* gcc.dg/graphite/block-3.c: Add dg-timeout-factor.

From-SVN: r157505
2010-03-17 01:30:23 +01:00
Rainer Orth adde4096d0 * ada/acats/run_all.sh: Log start and end times.
From-SVN: r157485
2010-03-16 14:46:43 +00:00
Rainer Orth ebf15f359f * gnat.dg/socket1.adb: Disable on *-*-solaris2*.
From-SVN: r157484
2010-03-16 14:43:43 +00:00
H.J. Lu 28fd1fc112 Add missing ChangeLog entries.
From-SVN: r157479
2010-03-16 05:58:10 -07:00
Richard Guenther 7686fb74ef re PR tree-optimization/43379 (ICE: error: SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set with -O2 -ftracer)
2010-03-16  Richard Guenther  <rguenther@suse.de>

	PR middle-end/43379
	* tree-cfg.c (gimple_merge_blocks): When propagating virtual
	PHI operands make sure to merge SSA_NAME_OCCURS_IN_ABNORMAL_PHI
	properly.

	* gcc.dg/pr43379.c: New testcase.

From-SVN: r157478
2010-03-16 12:31:38 +00:00
Jakub Jelinek 457eeaae81 re PR debug/43051 (VTA causes a stack living parameter unavailable in most of the function)
PR debug/43051
	PR debug/43092
	* cselib.c (cselib_preserve_constants,
	cfa_base_preserved_val): New static variables.
	(preserve_only_constants): New function.
	(cselib_reset_table): If cfa_base_preserved_val is non-NULL, don't
	clear its REG_VALUES.  If cselib_preserve_constants, don't 
	empty the whole hash table, but preserve there VALUEs with constants,
	cfa_base_preserved_val and cfa_base_preserved_val plus constant.
	(cselib_preserve_cfa_base_value): New function.
	(cselib_invalidate_regno): Don't invalidate cfa_base_preserved_val.
	(cselib_init): Change argument to int bitfield.  Set
	cselib_preserve_constants to whether CSELIB_PRESERVE_CONSTANTS
	is in it.
	(cselib_finish): Clear cselib_preserve_constants and
	cfa_base_preserved_val.
	* cselib.h (enum cselib_record_what): New enum.
	(cselib_init): Change argument to int.
	(cselib_preserve_cfa_base_value): New prototype.
	* postreload.c (reload_cse_regs_1): Adjust cselib_init caller.
	* dse.c (dse_step1): Likewise.
	* cfgcleanup.c (thread_jump): Likewise.
	* sched-deps.c (sched_analyze): Likewise.
	* gcse.c (local_cprop_pass): Likewise.
	* simplify-rtx.c (simplify_replace_fn_rtx): Add argument to callback.
	If FN is non-NULL, call the callback always and whenever it returns
	non-NULL just return that.  Only do rtx_equal_p if FN is NULL.
	* rtl.h (simplify_replace_fn_rtx): Add argument to callback.
	* combine.c (propagate_for_debug_subst): Add old_rtx argument,
	compare from with old_rtx and if it isn't rtx_equal_p, return NULL.
	* Makefile.in (var-tracking.o): Depend on $(RECOG_H).
	* var-tracking.c: Include recog.h.
	(bb_stack_adjust_offset): Remove.
	(vt_stack_adjustments): Don't call it, instead just gather the
	adjustments using insn_stack_adjust_offset_pre_post on each bb insn.
	(adjust_stack_reference): Remove.
	(compute_cfa_pointer): New function.
	(hard_frame_pointer_adjustment, cfa_base_rtx): New static variables.
	(struct adjust_mem_data): New type.
	(adjust_mems, adjust_mem_uses, adjust_mem_stores, adjust_insn): New
	functions.
	(get_address_mode): New function.
	(replace_expr_with_values): Use it.
	(use_type): Don't do cselib_lookup for VAR_LOC_UNKNOWN_P.
	Use get_address_mode.  For cfa_base_rtx return MO_CLOBBER.
	(adjust_sets): Remove.
	(add_uses): Don't add extra MO_VAL_USE for cfa_base_rtx plus constant.
	Use get_address_mode.
	(get_adjusted_src): Remove.
	(add_stores): Don't call it.  Never reuse expr SET.  Don't add extra
	MO_VAL_USE for cfa_base_rtx plus constant.  Use get_address_mode.
	(add_with_sets): Don't call adjust_sets.
	(fp_setter, vt_init_cfa_base): New functions.
	(vt_initialize): Change return type to bool.  Move most of pool etc.
	initialization to the beginning of the function from end.  Pass
	CSELIB_RECORD_MEMORY | CSELIB_PRESERVE_CONSTANTS to cselib_init.
	If !frame_pointer_needed, call vt_stack_adjustment before mos
	vector is filled, call vt_init_cfa_base if argp/framep has been
	eliminated to sp.  If frame_pointer_needed and argp/framep has
	been eliminated to hard frame pointer, set
	hard_frame_pointer_adjustment and call vt_init_cfa_base after
	encountering fp setter in the prologue.  For MO_ADJUST, call
	log_op_type before pusing the op into mos vector, not afterwards.
	Call adjust_insn before cselib_process_insn/add_with_sets,
	call cancel_changes (0) afterwards.
	(variable_tracking_main_1): Adjust for vt_initialize calling
	vt_stack_adjustments and returning whether it succeeded or not.

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

From-SVN: r157476
2010-03-16 11:50:42 +01:00
Janis Johnson d205bdbed7 re PR testsuite/43363 (FAIL: g++.dg/ext/altivec-17.C)
PR testsuite/43363
	* g++.dg/ext/altivec-17.C: Handle changes to error message.

From-SVN: r157467
2010-03-15 21:27:23 +00:00