Commit Graph

99580 Commits

Author SHA1 Message Date
Eric Botcazou
932c865054 trans.c (call_to_gnu): Do not unnecessarily force side-effects of actual parameters before the call.
* gcc-interface/trans.c (call_to_gnu): Do not unnecessarily force
	side-effects of actual parameters before the call.

From-SVN: r158369
2010-04-15 10:17:54 +00:00
Eric Botcazou
8ff6c6640b decl.c (validate_size): Reorder, remove obsolete test and warning.
* gcc-interface/decl.c (validate_size): Reorder, remove obsolete test
	and warning.
	(set_rm_size): Reorder and remove obsolete test.

From-SVN: r158368
2010-04-15 10:10:03 +00:00
Bernd Schmidt
077668e3f5 re PR target/43742 (web.c/union_match_dups segfaults for a null *ref on sh-elf)
PR target/43742
	* config/sh/sh.md (doloop_end_split, dect): Undo previous patch.  Use
	matching constraints to ensure inputs match the output.

From-SVN: r158367
2010-04-15 08:57:27 +00:00
Jakub Jelinek
e429bb4931 trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P on VAR_DECL LBOUND and/or UBOUND, even for -O1.
* trans-decl.c (gfc_build_qualified_array): Clear DECL_IGNORED_P
	on VAR_DECL LBOUND and/or UBOUND, even for -O1.

From-SVN: r158366
2010-04-15 10:53:41 +02:00
GCC Administrator
f36ae44d4f Daily bump.
From-SVN: r158365
2010-04-15 00:17:51 +00:00
Kaz Kojima
fa66fc4052 re PR target/43742 (web.c/union_match_dups segfaults for a null *ref on sh-elf)
PR target/43742
	* config/sh/sh.md (doloop_end_split): Remove "+r" constraint
	in an input-only operand.

From-SVN: r158361
2010-04-14 23:58:10 +00:00
Anatoly Sokolov
2bd1333d62 double-int.h (HOST_BITS_PER_DOUBLE_INT): Define.
* double-int.h (HOST_BITS_PER_DOUBLE_INT): Define.
	(double_int_not, double_int_lshift, double_int_rshift): Declare.
	(double_int_negative_p): Convert to static inline function.
	* double-int.c (double_int_lshift, double_int_lshift): Add new function.
	(double_int_negative_p): Remove.
	* tree.h (lshift_double, rshift_double): 
	* tree.c (build_low_bits_mask): Clean up, use double_int_* functions.
	* fold-const.c (fold_convert_const_int_from_real,
	fold_convert_const_int_from_fixed, div_if_zero_remainder): (Ditto.).
	(lshift_double): Change type of arith argument to bool.
	(rshift_double): Change type of arith argument to bool. Correct
	comment.
	* expmed.c (mask_rtx, lshift_value): (Ditto.).

From-SVN: r158360
2010-04-15 02:05:32 +04:00
Doug Evans
8b9b8e9305 * filenames.h (HAS_DRIVE_SPEC, STRIP_DRIVE_SPEC): New macros.
From-SVN: r158359
2010-04-14 21:16:34 +00:00
Bernd Schmidt
31ce8a531c re PR rtl-optimization/21803 ([ia64] gcc produces really odd predicated code)
gcc/
	PR target/21803
	* ifcvt.c (cond_exec_process_if_block): Look for identical sequences
	at the start and end of the then/else blocks, and omit them from the
	conversion.
	* cfgcleanup.c (flow_find_cross_jump): No longer static.  Remove MODE
	argument; all callers changed.  Pass zero to old_insns_match_p instead.
	(flow_find_head_matching_sequence): New function.
	(old_insns_match_p): Check REG_EH_REGION notes for calls.
	* basic-block.h (flow_find_cross_jump,
	flow_find_head_matching_sequence): Declare functions.

gcc/testsuite/
	PR target/21803
	* gcc.target/arm/pr42496.c: New test.

From-SVN: r158357
2010-04-14 20:42:02 +00:00
Jason Merrill
943f82e768 re PR c++/36625 (bogus error on __attribute__((aligned(N))) in template code)
PR c++/36625
	* c-common.c (attribute_takes_identifier_p): New fn.
	* c-common.h: Declare it.
cp/
	* parser.c (cp_parser_parenthesized_expression_list): Change
	is_attribute_list parm to int to indicate whether or not to
	handle initial identifier specially.
	(cp_parser_attribute_list): Use attribute_takes_identifier_p.

From-SVN: r158355
2010-04-14 16:17:34 -04:00
Steven G. Kargl
17fb1a8ce7 Add ChangeLog entry for my previous commit.
From-SVN: r158354
2010-04-14 19:38:07 +00:00
Uros Bizjak
feeb8c524a i386.md (*divmod<mode>4): Remove stray "&&" from splitter condition.
* config/i386/i386.md (*divmod<mode>4): Remove stray "&&" from
	splitter condition.
	(*udivmod<mode>4): Ditto.

From-SVN: r158353
2010-04-14 20:55:05 +02:00
Steven G. Kargl
1dcfe404fb intrinsic.texi: Add the missing specific name of intrinsic procedure where the specific name is...
2010-04-14  Steven G. Kargl  <kargl@gcc.gnu.org>

	* fortran/intrinsic.texi: Add the missing specific name of intrinsic
	procedure where the specific name is identical to the generic name.
	Fix inconsistent or mismatch in the argument names in intrinsic
	procedure descriptions.  Add the SCALAR allocatable description to
	ALLOCATED.

From-SVN: r158352
2010-04-14 18:32:51 +00:00
Steve Ellcey
88f33b96ba re PR testsuite/43739 (FAIL: gcc.dg/pr43643.c (test for excess errors))
2010-04-14  Steve Ellcey  <sje@cup.hp.com>

	PR testsuite/43739
	* gcc.dg/pr43643.c: Use static link on hppa*-*-hpux*.

From-SVN: r158351
2010-04-14 16:47:15 +00:00
Uros Bizjak
4a5528ccf5 i386.md (maxmin_int): Rename code attribute from maxminiprefix and update all users.
* config/i386/i386.md (maxmin_int): Rename code attribute from
	maxminiprefix and update all users.
	(maxmin_float): Ditto from maxminfprefix.
	(logic): Ditto from logicprefix.
	(absneg_mnemonic): Ditto from absnegprefix.
	* config/i386/mmx.md: Update all users of maxminiprefix,
	maxminfprefix and loficprefix for rename.
	* config/i386/sse.md: Ditto.
	* config/i386/sync.md (sync_<code><mode>): Update for
	logicprefix rename.

From-SVN: r158350
2010-04-14 18:16:31 +02:00
Manuel López-Ibáñez
289fcbbd6e re PR other/42966 (add some indication that a warning has been converted to an error)
2010-04-14  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR 42966
	* diagnostics.c (diagnostic_report_diagnostic): Mark specially
	warnings converted to errors.
	
testsuite/	
	* gcc.dg/cpp/warn-undef-2.c: Update.
	* gcc.dg/cpp/warn-traditional-2.c: Update.
	* gcc.dg/cpp/warn-comments-2.c: Update.
	* gcc.dg/cpp/warn-variadic-2.c: Update.
	* gcc.dg/cpp/warn-long-long-2.c: Update.
	* gcc.dg/cpp/warn-deprecated-2.c: Update.
	* gcc.dg/cpp/warn-multichar-2.c: Update.
	* gcc.dg/cpp/warn-normalized-3.c: Update.
	* gcc.dg/cpp/warn-cxx-compat-2.c: Update.
	* gcc.dg/cpp/warn-trigraphs-3.c: Update.
	* gcc.dg/cpp/warn-unused-macros-2.c: Update.
	* gcc.dg/cpp/warn-trigraphs-4.c: Update.
	* gcc.dg/cpp/warn-redefined-2.c: Update.
	* gfortran.dg/warning-directive-2.F90: Update.
	* c-c++-common/cpp/warning-directive-2.c: Update.

From-SVN: r158349
2010-04-14 16:08:23 +00:00
Uros Bizjak
d58770e719 alpha.c (alpha_adjust_cost): Remove set but not used insn_type variable.
* config/alpha/alpha.c (alpha_adjust_cost): Remove set but not
	used insn_type variable.
	(function_value): Add ATTRIBUTE_UNUSED to dummy variable declaration
	to avoid set-but-not-used warning.

From-SVN: r158348
2010-04-14 17:23:05 +02:00
Uros Bizjak
a3f1cee4d3 df-core.c (df_ref_debug): Change format string placeholder from 0x%x to %#x.
* df-core.c (df_ref_debug): Change format string placeholder
	from 0x%x to %#x.
	* dwarf2asm.c (dw2_asm_output_data_raw,
	dw2_asm_output_data_uleb128_raw, dw2_asm_output_data_uleb128,
	dw2_asm_output_data_sleb128_raw, dw2_asm_output_data_sleb128): Ditto.
	* dwarf2out.c (output_cfi, output_cfi_directive,
	dwarf2out_do_cfi_startproc, output_loc_sequence_raw,
	output_cfa_loc_raw, output_die, output_ranges, output_file_names):
	Ditto.
	* genattrtab.c (write_test_expr, write_attr_valueq): Ditto.
	* print-rtl.c (print_rtx): Ditto.

From-SVN: r158347
2010-04-14 17:08:54 +02:00
Michael Meissner
3eb4dbe35b PR 42694: Optimize pow (x, 0.25), pow (x, 0.75), pow (x, 1./6.)
From-SVN: r158346
2010-04-14 15:01:40 +00:00
Michael Matz
fc249fe5d6 re PR tree-optimization/42963 (Redundant switch labels not cleaned up anymore)
PR tree-optimization/42963
	* tree-cfg.c (touched_switch_bbs): New static variable.
	(group_case_labels_stmt): New function broken out from ...
	(group_case_labels): ... here, use the above.
	(start_recording_case_labels): Allocate touched_switch_bbs.
	(end_recording_case_labels): Deallocate it, call
	group_case_labels_stmt.
	(gimple_redirect_edge_and_branch): Remember index of affected BB.

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

From-SVN: r158345
2010-04-14 14:50:33 +00:00
Uros Bizjak
289a9f867a acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but not unused bar variable.
* acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but
	not unused bar variable.
	* configure: Regenerate.

From-SVN: r158344
2010-04-14 14:57:43 +02:00
Tristan Gingold
8406cb6260 Synchronize with src/.
2010-04-14  Tristan Gingold  <gingold@adacore.com>

	* configure.ac (alpha*-*-*vms*): Remove ld from noconfigdirs.
	* configure: Regenerate.

From-SVN: r158341
2010-04-14 09:48:21 +00:00
Uros Bizjak
0fcbf3ed80 i386.md (*popcountsi2_cmp_zext): Remove mode attribute from insn template.
* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute
	from insn template.

From-SVN: r158340
2010-04-14 11:28:05 +02:00
Eric Botcazou
831f44c638 gigi.h: Reorder declarations and tweak comments.
* gcc-interface/gigi.h: Reorder declarations and tweak comments.
	(gigi): Adjust ATTRIBUTE_UNUSED markers.
	* gcc-interface/gadaint.h: New file.
	* gcc-interface/trans.c: Include it in lieu of adaint.h.  Reorder.
	(__gnat_to_canonical_file_spec): Remove declaration.
	(number_names): Delete.
	(number_files): Likewise.
	(gigi): Adjust.
	* gcc-interface/Make-lang.in (ada/trans.o): Adjust dependencies to
	above change.

From-SVN: r158296
2010-04-14 08:14:54 +00:00
Eric Botcazou
f08863f97b decl.c (gnat_to_gnu_entity): Fix comment.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Class_Wide_Type>: Fix
	comment.
	* gcc-interface/trans.c (process_freeze_entity): Use local copy of
	Ekind.  Return early for class-wide types.  Do not compute initializer
	unless necessary.  Reuse the tree for an associated class-wide type
	only if processing its root type.

From-SVN: r158295
2010-04-14 07:58:08 +00:00
Uros Bizjak
3f529c2cad i386.md (*ashlqi3_1_slp): New insn pattern.
* config/i386/i386.md (*ashlqi3_1_slp): New insn pattern.

From-SVN: r158293
2010-04-14 08:36:53 +02:00
Tobias Burnus
64f002ed70 re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2010-04-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * array.c (gfc_find_array_ref): Handle codimensions.
        (gfc_match_array_spec,gfc_match_array_ref): Use gfc_fatal_error.
        * check.c (is_coarray, dim_corank_check, gfc_check_lcobound,
        gfc_check_image_index, gfc_check_this_image, gfc_check_ucobound):
        New functions.
        * gfortran.h (gfc_isym_id): Add GFC_ISYM_IMAGE_INDEX,
        GFC_ISYM_LCOBOUND, GFC_ISYM_THIS_IMAGE,
        GFC_ISYM_UCOBOUND.
        * intrinsic.h (add_functions): Add this_image, image_index,
        lcobound and ucobound intrinsics.
        * intrinsic.c (gfc_check_lcobound,gfc_check_ucobound,
        gfc_check_image_index, gfc_check_this_image,
        gfc_simplify_image_index, gfc_simplify_lcobound,
        gfc_simplify_this_image, gfc_simplify_ucobound):
        New function prototypes.
        * intrinsic.texi (IMAGE_INDEX, LCOBOUND, THIS_IMAGE
        IMAGE_INDEX): Document new intrinsic functions.
        * match.c (gfc_match_critical, sync_statement): Make
        * -fcoarray=none
        error fatal.
        * simplify.c (simplify_bound_dim): Handle coarrays.
        (simplify_bound): Update simplify_bound_dim call.
        (gfc_simplify_num_images): Add -fcoarray=none check.
        (simplify_cobound, gfc_simplify_lcobound, gfc_simplify_ucobound,
        gfc_simplify_ucobound, gfc_simplify_ucobound): New functions.

2010-04-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/18918
        * gfortran.dg/coarray_9.f90: Update dg-errors.
        * gfortran.dg/coarray_10.f90: New test.
        * gfortran.dg/coarray_11.f90: New test.

From-SVN: r158292
2010-04-14 07:43:30 +02:00
Jerry DeLisle
e1859f3336 re PR fortran/43747 (ICE in find_array_section, at fortran/expr.c:1551)
2010-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/43747
	gfortran.dg/initialization_24.f90: New test.

From-SVN: r158291
2010-04-14 05:27:29 +00:00
Jerry DeLisle
b1ccc24ee2 re PR fortran/43747 (ICE in find_array_section, at fortran/expr.c:1551)
2010-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/43747
	* constructor.c: Fix typo in comment.
	* expr.c (find_array_section): Add check for max array limit.

From-SVN: r158290
2010-04-14 05:16:59 +00:00
GCC Administrator
f89e2a3c2c Daily bump.
From-SVN: r158289
2010-04-14 00:17:06 +00:00
Steve Ellcey
3591b8e2a0 configure: Regenerate after change to elf.m4.
2010-04-13  Steve Ellcey  <sje@cup.hp.com>

	* configure: Regenerate after change to elf.m4.

In config subdir:

2010-04-13  Steve Ellcey  <sje@cup.hp.com>

	* elf.m4: Add hppa[12]*-*-hpux* to list of non-elf platforms.

From-SVN: r158285
2010-04-13 22:54:07 +00:00
Ian Lance Taylor
896e7917c0 hash_map: Don't #include "backward_warning.h" if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
* include/backward/hash_map: Don't #include "backward_warning.h"
	if _GLIBCXX_PERMIT_BACKWARD_HASH is defined.
	* include/backward/hash_set: Likewise.

From-SVN: r158281
2010-04-13 20:24:40 +00:00
Joel Sherrill
014edf49f8 gsocket.h: Run-time can no longer be built without network OS headers available.
2010-04-13  Joel Sherrill <joel.sherrill@oarcorp.com>

	* gsocket.h: Run-time can no longer be built without network
	OS headers available.  Changing RTEMS GNAT build procedure to
	reflect this and letting run-time build use network .h files.

From-SVN: r158279
2010-04-13 19:41:05 +00:00
Jan Hubicka
1ce18dc875 ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting of optimized out static functions.
* ipa-inline.c (cgraph_mark_inline_edge): Avoid double accounting
	of optimized out static functions.
	(cgraph_edge_badness): Add DUMP parameter and dump reasons for the
	cost computation.  Also sanity check for overflows.
	(update_caller_keys): Update cgraph_edge_badness call; properly
	update fibheap and sanity check that it is up to date.
	(add_new_edges_to_heap): Update cgraph_edge_badness.
	(cgraph_decide_inlining_of_small_function): Likewise;
	add sanity checking that badness in heap is up to date;
	improve dumping of reason; Update badness of calls to the
	offline copy of function currently inlined; dump badness
	of functions not inlined because of unit growth limits.

From-SVN: r158278
2010-04-13 18:22:35 +00:00
Jason Merrill
44b2dc6ca3 call.c (type_decays_to): Check MAYBE_CLASS_TYPE_P instead of CLASS_TYPE_P.
* call.c (type_decays_to): Check MAYBE_CLASS_TYPE_P instead of
	CLASS_TYPE_P.
	* parser.c (cp_parser_lambda_expression): Complain about lambda in
	unevaluated context.
	* pt.c (iterative_hash_template_arg): Don't crash on lambda.

From-SVN: r158277
2010-04-13 13:24:52 -04:00
Manuel López-Ibáñez
4867a0c6f8 Commit gcc/testsuite/ChangeLog for revision 158275.
2010-04-13  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* gcc.dg/cpp/cpp.exp: Test also c-c++-common/cpp.
	* g++.dg/dg.exp: Likewise.
	* gcc.dg/cpp/warning-directive-1.c: Move to ...
	* c-c++-common/cpp/warning-directive-1.c: ... here.
	* gcc.dg/cpp/warning-directive-2.c: Move to ...
	* c-c++-common/cpp/warning-directive-2.c: ... here.
	* gcc.dg/cpp/warning-directive-3.c: Move to ...
	* c-c++-common/cpp/warning-directive-3.c: ... here.
	* gcc.dg/cpp/warning-directive-4.c: Move to ...
	* c-c++-common/cpp/warning-directive-4.c: ... here.
	* g++.dg/cpp/warning-directive-1.C: Delete.
	* g++.dg/cpp/warning-directive-2.C: Delete.
	* g++.dg/cpp/warning-directive-3.C: Delete.
	* g++.dg/cpp/warning-directive-4.C: Delete.
	* gcc.dg/cpp/normalised-3.c: Delete.
	* g++.dg/cpp/normalised-1.C: Rename as ...
	* c-c++-common/cpp/normalised-3.c: ... this.

From-SVN: r158276
2010-04-13 16:29:54 +00:00
Manuel López-Ibáñez
97a3f2bd66 cpp.exp: Test also c-c++-common/cpp.
2010-04-13  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* gcc.dg/cpp/cpp.exp: Test also c-c++-common/cpp.
	* g++.dg/dg.exp: Likewise.
	* gcc.dg/cpp/warning-directive-1.c: Move to ...
	* c-c++-common/cpp/warning-directive-1.c: ... here.
	* gcc.dg/cpp/warning-directive-2.c: Move to ...
	* c-c++-common/cpp/warning-directive-2.c: ... here.
	* gcc.dg/cpp/warning-directive-3.c: Move to ...
	* c-c++-common/cpp/warning-directive-3.c: ... here.
	* gcc.dg/cpp/warning-directive-4.c: Move to ...
	* c-c++-common/cpp/warning-directive-4.c: ... here.
	* g++.dg/cpp/warning-directive-1.C: Delete.
	* g++.dg/cpp/warning-directive-2.C: Delete.
	* g++.dg/cpp/warning-directive-3.C: Delete.
	* g++.dg/cpp/warning-directive-4.C: Delete.
	* gcc.dg/cpp/normalised-3.c: Delete.
	* g++.dg/cpp/normalised-1.C: Rename as ...
	* c-c++-common/cpp/normalised-3.c: ... this.

From-SVN: r158275
2010-04-13 16:26:01 +00:00
Eric Botcazou
9e9ef331eb re PR middle-end/32628 (bogus integer overflow warning)
PR middle-end/32628
	* c-common.c (pointer_int_sum): Disregard overflow that occured only
	because of sign-extension change when converting to sizetype here...
	* fold-const.c (fold_convert_const_int_from_int): ...and not here.

	* fold-const.c (fold_binary_op_with_conditional_arg): Do not restrict
	the folding to constants.  Remove redundant final conversion.
	(fold_binary) <associate>: Do not associate if the re-association of
	constants alone overflows.
	(fold_binary) <FLOOR_MOD_EXPR>: Move transformation into BIT_AND_EXPR
	to the end of the list.
	(multiple_of_p) <COND_EXPR>: New case.

From-SVN: r158274
2010-04-13 15:47:38 +00:00
Manuel López-Ibáñez
9db94baaef opt-functions.awk (opt_sanitized_name): New.
2010-04-13  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* opt-functions.awk (opt_sanitized_name): New.
	(opt_enum): New.
	* optc-gen.awk: Use it
	* opth-gen.awk: Use it.

From-SVN: r158272
2010-04-13 14:27:22 +00:00
Martin Jambor
0f2ffb9ac5 tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
2010-04-13  Martin Jambor  <mjambor@suse.cz>

	* tree-sra.c (replace_uses_with_default_def_ssa_name): New function.
	(sra_modify_assign): Delete stmts loading dead data even if racc has no
	children.  Call replace_uses_with_default_def_ssa_name to handle
	SSA_NAES on lhs.

	* testsuite/gcc.dg/tree-ssa/sra-9.c: New test.

From-SVN: r158271
2010-04-13 15:47:34 +02:00
Michael Matz
f78b86c049 re PR middle-end/43730 (internal compiler error: in expand_builtin_interclass_mathfn, at builtins.c:2313)
PR middle-end/43730
	* builtins.c (expand_builtin_interclass_mathfn): Also create
	a register if the predicate doesn't match.

testsuite/
	* gcc.dg/pr43730.c: New test.

From-SVN: r158268
2010-04-13 13:35:30 +00:00
Diego Novillo
0e6229c2ef Add CL entry
From-SVN: r158267
2010-04-13 09:30:41 -04:00
Diego Novillo
10d43c2d1b Makefile.in (c-pch.o, [...]): Depend on timevar.h.
2010-04-12  Diego Novillo  <dnovillo@google.com>

	* Makefile.in (c-pch.o, ggc-common.o): Depend on timevar.h.
	* c-pch.c: Include timevar.h.
	(c_common_write_pch): Use TV_PCH_SAVE and TV_PCH_CPP_SAVE timers.
	(c_common_read_pch): Use TV_PCH_RESTORE and TV_PCH_CPP_RESTORE
	timers.
	* ggc-common.c: Include timevar.h.
	(gt_pch_save): Use TV_PCH_PTR_REALLOC and TV_PCH_PTR_SORT
	timers.
	* timevar.def (TV_PCH_SAVE): Define.
	(TV_PCH_CPP_SAVE): Define.
	(TV_PCH_PTR_REALLOC): Define.
	(TV_PCH_PTR_SORT): Define.
	(TV_PCH_RESTORE): Define.
	(TV_PCH_CPP_RESTORE): Define.

From-SVN: r158266
2010-04-13 09:30:31 -04:00
Michael Matz
143597ffda tree-ssa-reassoc.c (repropagate_negates): Merge negates also into MINUS_EXPRs.
* tree-ssa-reassoc.c (repropagate_negates): Merge negates also
	into MINUS_EXPRs.
	(can_reassociate_p): New function.
	(break_up_subtract_bb, reassociate_bb): Use it.

testsuite/
	* gcc.dg/tree-ssa/negate.c: New testcase.

From-SVN: r158265
2010-04-13 12:39:53 +00:00
Richard Guenther
54c5ec4fbf re PR bootstrap/43737 (Bootstrap broken at -O3)
2010-04-13  Richard Guenther  <rguenther@suse.de>

	PR bootstrap/43737
	* builtins.c (c_readstr): Fix assert.

From-SVN: r158264
2010-04-13 12:23:17 +00:00
Richard Guenther
9d7b53ccae re PR middle-end/43735 (FAIL: gcc.dg/guality/inline-params.c)
2010-04-13  Richard Guenther  <rguenther@suse.de>

	PR testsuite/43735
	* gcc.dg/guality/inline-params.c: Remove -fwhopr XPASS.

From-SVN: r158263
2010-04-13 11:50:54 +00:00
Iain Sandoe
5f1c83e119 re PR other/31400 (enable static linking of support libraries through -static-libXY)
gcc/fortran:
2010-04-13  Iain Sandoe  <iains@gcc.gnu.org>

	PR bootstrap/31400
	* gfortranspec.c (lookup_option): Check for -static and return
	OPTION_static.
	(lang_specific_driver): Break when OPTION_static is discovered.

From-SVN: r158262
2010-04-13 11:37:34 +00:00
Uros Bizjak
719938ae43 i386.md (extendsidi2 splitter): Also check for DX_REG when generating cltd insn.
* config/i386/i386.md (extendsidi2 splitter): Also check for DX_REG
	when generating cltd insn.

	(*ashl<mode>3_1): Remove special handling for register operand 2.
	(*ashlsi3_1_zext): Ditto.
	(*ashlhi3_1): Ditto.
	(*ashlhi3_1_lea): Ditto.
	(*ashlqi3_1): Ditto.
	(*ashlqi3_1_lea): Ditto.
	(*<shiftrt_insn><mode>3_1): Ditto.
	(*<shiftrt_insn>si3_1_zext): Ditto.
	(*<shiftrt_insn>qi3_1_slp): Ditto.
	(*<rotate_insn><mode>3_1): Ditto.
	(*<rotate_insn>si3_1_zext): Ditto.
	(*<rotate_insn>qi3_1_slp): Ditto.

From-SVN: r158261
2010-04-13 12:27:03 +02:00
Richard Guenther
3e8542ca16 tree-ssa-structalias.c (callused_id): Remove.
2010-04-13  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-structalias.c (callused_id): Remove.
	(call_stmt_vars): New.
	(get_call_vi): Likewise.
	(lookup_call_use_vi): Likewise.
	(lookup_call_clobber_vi): Likewise.
	(get_call_use_vi): Likewise.
	(get_call_clobber_vi): Likewise.
	(make_transitive_closure_constraints): Likewise.
	(handle_const_call): Adjust to do per-call call-used handling.
	(handle_pure_call): Likewise.
	(find_what_var_points_to): Remove general callused handling.
	(init_base_vars): Likewise.
	(init_alias_vars): Initialize call_stmt_vars.
	(compute_points_to_sets): Process call-used and call-clobbered
	vars for call statements.
	(delete_points_to_sets): Free call_stmt_vars.

From-SVN: r158260
2010-04-13 09:53:19 +00:00
Richard Guenther
777e1f09ff tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Only add RW dependence for dependence distance zero.
2010-04-13  Richard Guenther  <rguenther@suse.de>

	* tree-vect-data-refs.c (vect_analyze_data_ref_dependence):
	Only add RW dependence for dependence distance zero.
	Adjust maximal vectorization factor according to dependences.
	Move alignment handling ...
	(vect_find_same_alignment_drs): ... here.  New function.
	(vect_analyze_data_ref_dependences): Adjust.
	(vect_analyze_data_refs_alignment): Call vect_find_same_alignment_drs.
	(vect_analyze_data_refs): Adjust minimal vectorization factor
	according to data references.
	* tree-vect-loop.c (vect_analyze_loop): Analyze data-ref
	dependences before determining the vectorization factor.
	Analyze alignment after determining the vectorization factor.
	* tree-vect-slp.c ((vect_slp_analyze_bb): Analyze data-ref
	dependences before alignment.
	* tree-vectorizer.h (vect_analyze_data_ref_dependences):
	Adjust prototype.
	(vect_analyze_data_refs): Likewise.
	(MAX_VECTORIZATION_FACTOR): New define.

	* gcc.dg/vect/no-vfa-vect-depend-1.c: Adjust.

From-SVN: r158259
2010-04-13 09:48:26 +00:00