Commit Graph

118975 Commits

Author SHA1 Message Date
John David Anglin bfcb02b208 re PR debug/54460 (FAIL: g++.dg/debug/dwarf2/nested-3.C)
PR debug/54460
	* g++.dg/debug/dwarf2/nested-3.C: Add hppa assembler comment character
	to scary regexp.

From-SVN: r191361
2012-09-16 16:43:33 +00:00
John David Anglin ac8742fd33 re PR testsuite/54007 (lto15.adb fails: gnat1: error: LTO support has not been enabled in this configuration)
PR testsuite/54007
	* gnat.dg/lto15.adb: Require lto.

From-SVN: r191360
2012-09-16 16:40:25 +00:00
John David Anglin 6ad1a8f770 bind_c_array_params_2.f90: Adjust scan-assembler-times "myBindC" for hppa*-*-hpux*.
* gfortran.dg/bind_c_array_params_2.f90: Adjust scan-assembler-times
	"myBindC" for hppa*-*-hpux*.

From-SVN: r191359
2012-09-16 16:37:56 +00:00
Tobias Burnus c3fb821439 trans-decl.c (gfc_generate_function_code): Fix gfc_option.coarray check.
2012-09-16  Tobias Burnus  <burnus@net-b.de>

        * trans-decl.c (gfc_generate_function_code): Fix
        gfc_option.coarray check.
        * trans-stmt.c (compute_inner_temp_size): Fix handling
        of gfc_option.rtcheck.

From-SVN: r191358
2012-09-16 14:11:04 +02:00
Mikael Morin 15319c3ed9 symbol.c (gfc_undo_symbols): Correctly undo namelists.
fortran/
	* symbol.c (gfc_undo_symbols): Correctly undo namelists.

testsuite/
	* gfortran.dg/namelist_75.f90: New test.

From-SVN: r191357
2012-09-16 11:26:52 +00:00
GCC Administrator ca4a1c8cb9 Daily bump.
From-SVN: r191356
2012-09-16 00:17:39 +00:00
Tom de Vries c7e04bd6be vrp82.c: New test.
2012-09-15  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/tree-ssa/vrp82.c: New test.
	* gcc.dg/tree-ssa/vrp83.c: Same.
	* gcc.dg/tree-ssa/vrp84.c: Same.

From-SVN: r191352
2012-09-15 21:00:38 +00:00
Tom de Vries b25d9e22e4 tree-vrp.c (extract_range_from_binary_expr_1): Fix bug in handling of LSHIFT_EXPR with shift range.
2012-09-15  Tom de Vries  <tom@codesourcery.com>

	* tree-vrp.c (extract_range_from_binary_expr_1): Fix bug in handling of
	LSHIFT_EXPR with shift range.  Handle more LSHIFT_EXPR cases with shift
	range.

From-SVN: r191351
2012-09-15 21:00:33 +00:00
Joseph Myers 583aa11c6b * vi.po: Update.
From-SVN: r191348
2012-09-15 20:07:47 +01:00
Tom de Vries e857cbce23 vrp80-2.c: Rename to ...
2012-09-15  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/tree-ssa/vrp80-2.c: Rename to ...
	* gcc.dg/tree-ssa/vrp81.c: ... this.

From-SVN: r191347
2012-09-15 18:48:12 +00:00
Tobias Burnus 770caa74d0 trans-io.c (gfc_trans_transfer): Add an assert.
2012-09-15  Tobias Burnus  <burnus@net-b.de>

        * trans-io.c (gfc_trans_transfer): Add an assert.

From-SVN: r191346
2012-09-15 19:22:10 +02:00
Georg-Johann Lay 51526856a1 re PR target/54222 ([avr] Implement fixed-point support)
gcc/
	PR target/54222
	* config/avr/avr-fixed.md (ALL2S, ALL4S, ALL24S, ALL124S,
	ALL124U): New mode iterators.
	(<code_stdname><mode>3): New insns for SS_PLUS, SS_MINUS.
	(<code_stdname><mode>3): New insns for US_PLUS, US_MINUS.
	(usneg<mode>2): New insns.
	(<code_stdname><mode>2): New expanders for SS_NEG, SS_ABS.
	(*<code_stdname><mode>2): New insns for SS_NEG, SS_ABS.
	* config/avr/avr-dimode.md (ALL8U, ALL8S): New mode iterators.
	(avr_out_plus64, avr_out_minus64): Use avr_out_plus instead.
	(<code_stdname><mode>3): New expanders for SS_PLUS, SS_MINUS.
	(<code_stdname><mode>3): New expanders for US_PLUS, US_MINUS.
	(<code_stdname><mode>3_insn): New insns.
	(<code_stdname><mode>3_const_insn): New insns.
	* config/avr/avr.md (cc): Add: plus. Remove: out_plus,
	out_plus_noclobber, minus.
	(length): Add: plus.  Remove: out_plus, out_plus_noclobber,
	plus64, minus, minus64.
	(abelian): New code_attr.
	(code_stdname): Handle: ss_plus, ss_minus, ss_neg, ss_abs,
	us_plus, us_minus, us_neg.
	(*add<mode>3, add<mode>3_clobber, add<mode>3, addpsi3, sub<mode>3):
	Use avr_out_plus to output.
	* config/avr/avr-protos.h (avr_out_plus): Change prototype.
	(avr_out_plus_noclobber, avr_out_minus): Remove.
	(avr_out_plus64, avr_out_minus64): Remove.
	* config/avr/avr.c (avr_out_plus_1): Add new default arguments
	code_sat, sign.  Saturate after operation if code_sat != UNKNOWN.
	(avr_out_plus_symbol): New static function.
	(avr_out_plus): Rewrite.
	(adjust_insn_length): Handle: ADJUST_LEN_PLUS.  Remove handling
	of: ADJUST_LEN_OUT_PLUS, ADJUST_LEN_PLUS64, ADJUST_LEN_MINUS, 
	ADJUST_LEN_MINUS64, ADJUST_LEN_OUT_PLUS_NOCLOBBER.
	(notice_update_cc): Handle: CC_PLUS.  Remove handling of: CC_MINUS,
	CC_OUT_PLUS, CC_OUT_PLUS_NOCLOBBER
	(avr_out_plus_noclobber, avr_out_minus): Remove.
	(avr_out_plus64, avr_out_minus64): Remove.
	(avr_print_operand): Print raw REGNO if 'r' is used with REG.

libgcc/
	PR target/54222
	* config/avr/lib1funcs-fixed.S (__ssneg_2, __ssabs_2, __ssneg_4,
	__ssabs_4, __clr_8, __ssneg_8, __ssabs_8,
	__usadd_8, __ussub_8, __ssadd_8, __sssub_8): New functions.
	(__divsa3): Use __negsi2 to negate r_quoL.
	* config/avr/lib1funcs.S (FALIAS): New macro.
	(__divmodsi4): Break out and use __divmodsi4_neg1 as...
	(__negsi2): ...this new function.
	* config/avr/t-avr (LIB1ASMFUNCS): Add _negsi2, _clr_8,
	_ssneg_2, _ssneg_4, _ssneg_8, _ssabs_2, _ssabs_4,
	_ssabs_8, _ssadd_8, _sssub_8, _usadd_8, _ussub_8.
	(LIB2FUNCS_EXCLUDE): Fix typo for _add _sub.
	Add: _ssadd*, _sssub*, _ssneg*, _ssabs* for signed fixed modes.
	Add: _usadd*, _ussub*, _usneg* for unsigned fixed modes.

gcc/testsuite/
	PR target/54222
	* gcc.target/avr/torture/fix-types.h: New.
	* gcc.target/avr/torture/vals-hr.def: New.
	* gcc.target/avr/torture/vals-r.def: New.
	* gcc.target/avr/torture/vals-k.def: New.
	* gcc.target/avr/torture/vals-ur.def: New.
	* gcc.target/avr/torture/vals-uk.def: New.
	* gcc.target/avr/torture/vals-uhr.def: New.
	* gcc.target/avr/torture/vals-llk.def: New.
	* gcc.target/avr/torture/vals-ullk.def: New.
	* gcc.target/avr/torture/sat-hr-plus-minus.c: New.
	* gcc.target/avr/torture/sat-r-plus-minus.c: New.
	* gcc.target/avr/torture/sat-k-plus-minus.c: New.
	* gcc.target/avr/torture/sat-ur-plus-minus.c: New.
	* gcc.target/avr/torture/sat-uk-plus-minus.c: New.
	* gcc.target/avr/torture/sat-uhr-plus-minus.c: New.
	* gcc.target/avr/torture/sat-llk-plus-minus.c: New.
	* gcc.target/avr/torture/sat-ullk-plus-minus.c: New.

From-SVN: r191345
2012-09-15 15:52:28 +00:00
Tobias Burnus fc2655fb30 arith.c (arith_power): Call gfc_free_expr in case of error.
2012-09-15  Tobias Burnus  <burnus@net-b.de>

        * arith.c (arith_power): Call gfc_free_expr in case of error.
        * array.c (gfc_match_array_constructor): Initialize variable.
        (gfc_resolve_character_array_constructor): Remove superfluous check.
        (gfc_array_dimen_size): Add assert.
        * check.c (numeric_check): Fix implicit typing.
        * class.c (gfc_build_class_symbol): Add assert.
        (finalize_component): Free memory.
        * dump-parse-tree.c (show_namespace): Add assert.
        * trans-io.c (transfer_namelist_element, transfer_expr): Avoid
        memory leakage.
        (gfc_trans_transfer): Add assert.
        * trans.c (gfc_trans_runtime_check): Call va_end

From-SVN: r191344
2012-09-15 17:44:22 +02:00
Tobias Burnus fd2805e11b match.c (lock_unlock_statement, [...]): Fix potential double freeing.
2012-09-15  Tobias Burnus  <burnus@net-b.de>

        * match.c (lock_unlock_statement, sync_statement): Fix potential
        double freeing.
        (sync_statement): Remove unreachable code.
        * simplify.c (gfc_simplify_bessel_n2): Avoid double freeing.
        (gfc_simplify_repeat): Remove bogus code.
        * target-memory.h (gfc_target_encode_expr): Update prototype.
        * target-memory.c (gfc_target_encode_expr, encode_array,
        encode_derived): Return unsigned HOST_WIDE_INT.
        (gfc_target_interpret_expr): Add assert.
        (gfc_merge_initializers): Fix "== 0" check for mpz_t.
        * symbol.c (gfc_get_typebound_proc): Add assert.
        (gfc_merge_initializers): Remove unreachable check.

From-SVN: r191343
2012-09-15 17:42:01 +02:00
Oleg Endo 8385420c4f sh.c (sh_rtx_costs): Add handling of MEM, SIGN_EXTEND, ZERO_EXTEND and PARALLEL cases.
* config/sh/sh.c (sh_rtx_costs): Add handling of MEM, SIGN_EXTEND,
	ZERO_EXTEND and PARALLEL cases.
	(sh_address_cost): Correct rtx parsing and tweak cost estimations.

From-SVN: r191342
2012-09-15 13:24:30 +00:00
Sandra Loosemore 29454ff525 tm.texi.in (Stack Arguments): Update obsolete references to current_function_outgoing_args_size.
2012-09-14  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/

	* doc/tm.texi.in (Stack Arguments): Update obsolete references
	to current_function_outgoing_args_size.
	(Function Entry): Likewise for current_function_pops_args,
	current_function_pretend_args_size,
	current_function_outgoing_args_size, and
	current_function_epilogue_delay_list.
	(Misc): Fix garbled sentence referencing nonexistent
	current_function_leaf_function.
	* doc/tm.texi: Regenerated.

From-SVN: r191339
2012-09-14 22:03:20 -04:00
Dehao Chen 820055a0ac tree-eh.c (goto_queue_node): New field.
gcc:
	* tree-eh.c (goto_queue_node): New field.
	(record_in_goto_queue): New parameter.
	(record_in_goto_queue_label): New parameter.
	(lower_try_finally_dup_block): New parameter.
	(maybe_record_in_goto_queue): Update source location.
	(lower_try_finally_copy): Likewise.
	(honor_protect_cleanup_actions): Likewise.
	* gimplify.c (gimplify_expr): Reset the location to unknown.

testsuite:
	* g++.dg/debug/dwarf2/deallocator.C: New test.

libjava:
	* testsuite/libjava.lang/sourcelocation.java: New cases.
	* testsuite/libjava.lang/sourcelocation.out: New cases.

From-SVN: r191338
2012-09-15 00:41:53 +00:00
GCC Administrator 71452ccd31 Daily bump.
From-SVN: r191335
2012-09-15 00:17:28 +00:00
David Edelsohn ae62425fb5 * configure: Regenerated.
From-SVN: r191332
2012-09-14 19:43:33 -04:00
David Edelsohn de973ab7b7 * configure: Regenerated.
From-SVN: r191331
2012-09-14 19:42:24 -04:00
David Edelsohn f783a79952 * configure: Regenerated.
From-SVN: r191330
2012-09-14 19:41:36 -04:00
David Edelsohn 4a3b8aa305 * configure: Regenerated.
From-SVN: r191329
2012-09-14 19:40:25 -04:00
David Edelsohn 249b09fa90 * configure: Regenerated.
From-SVN: r191328
2012-09-14 19:39:34 -04:00
David Edelsohn a3476c4888 * configure: Regenerated.
From-SVN: r191327
2012-09-14 19:38:45 -04:00
David Edelsohn 756529ed0f * configure: Regenerated.
From-SVN: r191326
2012-09-14 19:37:57 -04:00
David Edelsohn 47c2a6e643 * configure: Regenerated.
From-SVN: r191325
2012-09-14 19:37:13 -04:00
David Edelsohn 8e6bfa1fd3 * configure: Regenerated.
From-SVN: r191324
2012-09-14 19:36:44 -04:00
David Edelsohn 690c45b88f * configure: Regenerated.
From-SVN: r191323
2012-09-14 19:34:56 -04:00
David Edelsohn 6608378bce * configure: Regenerated.
From-SVN: r191322
2012-09-14 19:33:57 -04:00
David Edelsohn bad8a4a7fc * configure: Regenerated.
From-SVN: r191321
2012-09-14 19:32:58 -04:00
David Edelsohn cbbd536a26 * configure: Regenerated.
From-SVN: r191320
2012-09-14 19:31:56 -04:00
David Edelsohn 00c2f0ef6d * configure: Regenerated.
From-SVN: r191319
2012-09-14 19:30:29 -04:00
David Edelsohn 694a654123 * configure: Regenerated.
From-SVN: r191318
2012-09-14 19:26:42 -04:00
David Edelsohn b0bb039681 * configure: Regenerated.
From-SVN: r191317
2012-09-14 19:25:07 -04:00
David Edelsohn d7a29167f8 re PR bootstrap/38607 (AIX error messages about TOC during build)
PR target/38607
        Merge upstream change.
        * libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.

	* configure.ac: Add target-libquadmath to noconfigdirs for AIX.
        Add libgomp*.o to compare_exclusions for AIX.
        * configure: Regenerate.

From-SVN: r191316
2012-09-14 19:23:41 -04:00
Joseph Myers 9f33203d01 re PR c/54552 (Cast to pointer to VLA crash the compiler)
c:
	PR c/54552
	* c-typeck.c (c_cast_expr): When casting to a type requiring
	C_MAYBE_CONST_EXPR to be created, pass the inner expression to
	c_fully_fold first.

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

From-SVN: r191313
2012-09-14 22:16:56 +01:00
Walter Lee 9996a6d1b6 Fix grammar and spelling.
* doc/invoke.texi (Option Summary): fix typesetting for -mcpu
	option for TILEPro and TILE-Gx.
	(TILE-Gx Options): Fix grammar and spellings in documentation for
	-mcmodel.

From-SVN: r191311
2012-09-14 20:54:02 +00:00
Marc Glisse 31ed622658 re PR c++/54427 (Expose more vector extensions)
2012-09-14  Marc Glisse  <marc.glisse@inria.fr>
	PR c++/54427

gcc/ChangeLog
	* fold-const.c (fold_unary_loc): Disable for VECTOR_TYPE.
	(fold_binary_loc): Likewise.
	* gimple-fold.c (and_comparisons_1): Handle VECTOR_TYPE.
	(or_comparisons_1): Likewise.

gcc/cp/ChangeLog
	* typeck.c (cp_build_binary_op) [LSHIFT_EXPR, RSHIFT_EXPR, EQ_EXPR,
	NE_EXPR, LE_EXPR, GE_EXPR, LT_EXPR, GT_EXPR]: Handle VECTOR_TYPE.

gcc/testsuite/ChangeLog
	* g++.dg/other/vector-compare.C: New testcase.
	* gcc/testsuite/c-c++-common/vector-compare-3.c: New testcase.
	* gcc.dg/vector-shift.c: Move ...
	* c-c++-common/vector-shift.c: ... here.
	* gcc.dg/vector-shift1.c: Move ...
	* c-c++-common/vector-shift1.c: ... here.
	* gcc.dg/vector-shift3.c: Move ...
	* c-c++-common/vector-shift3.c: ... here.
	* gcc.dg/vector-compare-1.c: Move ...
	* c-c++-common/vector-compare-1.c: ... here.
	* gcc.dg/vector-compare-2.c: Move ...
	* c-c++-common/vector-compare-2.c: ... here.
	* gcc.c-torture/execute/vector-compare-1.c: Move ...
	* c-c++-common/torture/vector-compare-1.c: ... here.
	* gcc.c-torture/execute/vector-compare-2.x: Delete.
	* gcc.c-torture/execute/vector-compare-2.c: Move ...
	* c-c++-common/torture/vector-compare-2.c: ... here.
	* gcc.c-torture/execute/vector-shift.c: Move ...
	* c-c++-common/torture/vector-shift.c: ... here.
	* gcc.c-torture/execute/vector-shift2.c: Move ...
	* c-c++-common/torture/vector-shift2.c: ... here.
	* gcc.c-torture/execute/vector-subscript-1.c: Move ...
	* c-c++-common/torture/vector-subscript-1.c: ... here.
	* gcc.c-torture/execute/vector-subscript-2.c: Move ...
	* c-c++-common/torture/vector-subscript-2.c: ... here.
	* gcc.c-torture/execute/vector-subscript-3.c: Move ...
	* c-c++-common/torture/vector-subscript-3.c: ... here.

From-SVN: r191308
2012-09-14 17:17:01 +00:00
Richard Earnshaw 0290430b75 re PR target/54516 (ICE in reload_cse_simplify_operands, at postreload.c:403 with -O1 -march=armv7-a -mthumb)
PR target/54516
	PR rtl-optimization/54540
	* reload.c (find_dummy_reload): Don't use OUT as a reload reg
	for IN if it overlaps a fixed register.

From-SVN: r191307
2012-09-14 17:10:45 +00:00
Richard Earnshaw cde43acdba Temporarily revert previous
From-SVN: r191306
2012-09-14 17:08:42 +00:00
Richard Earnshaw 57132d23fa reload.c (find_dummy_reload): Don't use OUT as a reload reg for IN if it overlaps a fixed register.
* reload.c (find_dummy_reload): Don't use OUT as a reload reg
	for IN if it overlaps a fixed register.

From-SVN: r191305
2012-09-14 17:02:04 +00:00
Joseph Myers a27d595da2 re PR c/54103 (ICE at gimplify.c:7790 on current trunk)
c:
	PR c/54103
	* c-typeck.c (build_unary_op): Pass original argument of
	TRUTH_NOT_EXPR to c_objc_common_truthvalue_conversion, then remove
	any C_MAYBE_CONST_EXPR, if it has integer operands.
	(build_binary_op): Pass original arguments of TRUTH_ANDIF_EXPR,
	TRUTH_ORIF_EXPR, TRUTH_AND_EXPR, TRUTH_OR_EXPR and TRUTH_XOR_EXPR
	to c_objc_common_truthvalue_conversion, then remove any
	C_MAYBE_CONST_EXPR, if they have integer operands.  Use
	c_objc_common_truthvalue_conversion not
	c_common_truthvalue_conversion.
	(c_objc_common_truthvalue_conversion): Build NE_EXPR directly and
	call note_integer_operands for arguments with integer operands
	that are not integer constants.

testsuite:
	* gcc.c-torture/compile/pr54103-1.c,
	gcc.c-torture/compile/pr54103-2.c,
	gcc.c-torture/compile/pr54103-3.c,
	gcc.c-torture/compile/pr54103-4.c,
	gcc.c-torture/compile/pr54103-5.c,
	gcc.c-torture/compile/pr54103-6.c: New tests.
	* gcc.dg/c90-const-expr-8.c: Update expected column number.

From-SVN: r191304
2012-09-14 17:59:10 +01:00
Paolo Carlini 937f6ef145 decl.c (make_typename_type): Only error out if tf_error is set in complain.
2012-09-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* decl.c (make_typename_type): Only error out if tf_error is set
	in complain.

From-SVN: r191303
2012-09-14 14:43:05 +00:00
Eric Botcazou 5ef0b50ddc re PR rtl-optimization/44194 (struct returned by value generates useless stores)
PR rtl-optimization/44194
	* calls.c (expand_call): In the PARALLEL case, copy the return value
	into pseudos instead of spilling it onto the stack.
	* emit-rtl.c (adjust_address_1): Rename ADJUST into ADJUST_ADDRESS and
	add new ADJUST_OBJECT parameter.
	If ADJUST_OBJECT is set, drop the underlying object if it cannot be
	proved that the adjusted memory access is still within its bounds.
	(adjust_automodify_address_1): Adjust call to adjust_address_1.
	(widen_memory_access): Likewise.
	* expmed.c (store_bit_field_1): Call adjust_bitfield_address instead
	of adjust_address.  Do not drop the underlying object of a MEM.
	(store_fixed_bit_field): Likewise.
	(extract_bit_field_1): Likewise.  Fix oversight in recursion.
	(extract_fixed_bit_field): Likewise.
	* expr.h (adjust_address_1): Adjust prototype.
	(adjust_address): Adjust call to adjust_address_1.
	(adjust_address_nv): Likewise.
	(adjust_bitfield_address): New macro.
	(adjust_bitfield_address_nv): Likewise.
	* expr.c (expand_assignment): Handle a PARALLEL in more cases.
	(store_expr): Likewise.
	(store_field): Likewise.

	* dse.c: Fix typos in the head comment.

From-SVN: r191302
2012-09-14 13:28:44 +00:00
Christian Bruel fcf8632eed re PR target/54546 (SH: Enable -fshrink-wrap)
PR target/54546
       * config/sh/sh-protos.h (sh_need_epilogue): Delete.
       (sh_can_use_simple_return_p): Declare.
       * config/sh/sh.c (sh_can_use_simple_return_p): Define.
       (sh_need_epilogue, sh_need_epilogue_known): Delete.
       (sh_output_function_epilogue): Remove sh_need_epilogue_known.
       * config/sh/sh.md (simple_return, return): Define.
       (epilogue): Use inline return rtl.
       (sh_expand_epilogue): Cleanup parameters boolean type.
       * config/sh/iterators.md (any_return): New iterator.

From-SVN: r191301
2012-09-14 15:22:29 +02:00
Christian Bruel 312f9b9de7 predicates.md (t_reg_operand): Check REG_P for SUBREG.
2012-09-14  Christian Bruel  <christian.bruel@st.com>

       * config/sh/predicates.md (t_reg_operand): Check REG_P for SUBREG.
       * config/sh/sh.c (sequence_insn_p: Check INSNP_P for SEQUENCE.

From-SVN: r191300
2012-09-14 15:01:56 +02:00
Jakub Jelinek 5f08ae1eb5 re PR target/54564 (Broken __builtin_ia32_vfmadds[sd]3)
PR target/54564
	* config/i386/sse.md (fmai_vmfmadd_<mode>): Use (match_dup 1)
	instead of (match_dup 0) as second argument to vec_merge.
	(*fmai_fmadd_<mode>, *fmai_fmsub_<mode>): Likewise.
	Remove third alternative.
	(*fmai_fnmadd_<mode>, *fmai_fnmsub_<mode>): Likewise.  Negate
	operand 2 instead of operand 1, but put it as first argument
	of fma.

	* config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss,
	_mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead
	of the first.

From-SVN: r191298
2012-09-14 14:37:16 +02:00
Jakub Jelinek aeeede334c re PR target/54564 (Broken __builtin_ia32_vfmadds[sd]3)
PR target/54564
	* config/i386/sse.md (fmai_vmfmadd_<mode>): Use (match_dup 1)
	instead of (match_dup 0) as second argument to vec_merge.
	(*fmai_fmadd_<mode>, *fmai_fmsub_<mode>): Likewise.
	Remove third alternative.
	(*fmai_fnmadd_<mode>, *fmai_fnmsub_<mode>): Likewise.  Negate
	operand 2 instead of operand 1, but put it as first argument
	of fma.

	* config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss,
	_mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead
	of the first.

From-SVN: r191297
2012-09-14 14:36:33 +02:00
Paolo Carlini 02cbc6d6a7 2012-09-14 Paolo Carlini <paolo.carlini@oracle.com>
* Tweak last ChangeLog entry.

From-SVN: r191296
2012-09-14 12:23:12 +00:00
Richard Guenther edb32daf78 re PR tree-optimization/54565 (pass_update_address_taken before forwprop1 for vectors)
2012-09-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/54565
	* passes.c (init_optimization_passes): Adjust comments.
	(execute_function_todo): Do not execute execute_update_addresses_taken
	before processing TODO_rebuild_alias.
	* tree-ssa-ccp.c (do_ssa_ccp): Schedule TODO_update_address_taken.

	* gcc.dg/tree-ssa/ssa-ccp-17.c: Adjust.
	* gcc.dg/tree-ssa/forwprop-6.c: Likewise.  Remove XFAIL.

From-SVN: r191295
2012-09-14 12:22:27 +00:00