Commit Graph

116853 Commits

Author SHA1 Message Date
Richard Guenther e7ff45102c re PR tree-optimization/18437 (vectorizer failed for matrix multiplication)
2012-05-09  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/18437
	* gfortran.dg/vect/rnflow-trs2a2.f90: Move ...
	* gfortran.dg/vect/fast-math-rnflow-trs2a2.f90: ... here.

From-SVN: r187330
2012-05-09 12:59:46 +00:00
Ramana Radhakrishnan 8875e93954 tree-ssa-loop-ivopts.c (add_autoinc_candidates, [...]): Replace use of HAVE_{POST/PRE}_{INCREMENT/DECREMENT} with...
2012-05-09  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

	* tree-ssa-loop-ivopts.c (add_autoinc_candidates, get_address_cost):
	Replace use of HAVE_{POST/PRE}_{INCREMENT/DECREMENT} with
	USE_{LOAD/STORE}_{PRE/POST}_{INCREMENT/DECREMENT} appropriately.
	* config/arm/arm.h (ARM_AUTOINC_VALID_FOR_MODE_P): New.
	(USE_LOAD_POST_INCREMENT): Define.
	(USE_LOAD_PRE_INCREMENT): Define.
	(USE_LOAD_POST_DECREMENT): Define.
	(USE_LOAD_PRE_DECREMENT): Define.
	(USE_STORE_PRE_DECREMENT): Define.
	(USE_STORE_PRE_INCREMENT): Define.
	(USE_STORE_POST_DECREMENT): Define.
	(USE_STORE_POST_INCREMENT): Define.
	(arm_auto_incmodes): Add enumeration.
	* config/arm/arm-protos.h (arm_autoinc_modes_ok_p): Declare.
	* config/arm/arm.c (arm_autoinc_modes_ok_p): Define.

From-SVN: r187329
2012-05-09 12:51:36 +00:00
Jakub Jelinek cc603b4051 re PR tree-optimization/53226 (Endless loop in forwprop)
PR tree-optimization/53226
	* tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Remove
	prev and prev_initialized vars, gimple_set_plf (stmt, GF_PLF_1, false)
	before processing it and gimple_set_plf (stmt, GF_PLF_1, true) if it
	doesn't need to be revisited, look for earliest stmt with
	!gimple_plf (stmt, GF_PLF_1) if something changed.

	* gcc.c-torture/compile/pr53226.c: New test.

From-SVN: r187328
2012-05-09 14:19:34 +02:00
Terry Guo 97e574d82f genmultilib: Update copyright dates.
* genmultilib: Update copyright dates.
        * doc/fragments.texi: Ditto.

From-SVN: r187327
2012-05-09 11:52:11 +00:00
Terry Guo 43661dc4d1 Makefile.in (s-mlib): Add new argument MULTILIB_REQUIRED.
* Makefile.in (s-mlib): Add new argument MULTILIB_REQUIRED.
        * genmultilib (MULTILIB_REQUIRED): New.
        * doc/fragments.texi: Document the MULTILIB_REQUIRED.

From-SVN: r187325
2012-05-09 11:38:47 +00:00
Richard Guenther 368117e868 tree-vectorizer.h (vect_loop_versioning): Adjust prototype.
2012-05-09  Richard Guenther  <rguenther@suse.de>

	* tree-vectorizer.h (vect_loop_versioning): Adjust prototype.
	(vect_do_peeling_for_loop_bound): Likewise.
	(vect_do_peeling_for_alignment): Likewise.
	* tree-vect-loop-manip.c (conservative_cost_threshold): Remove.
	(vect_do_peeling_for_loop_bound): Get check_profitability and
	threshold as parameters.
	(vect_do_peeling_for_alignment): Likewise.
	(vect_loop_versioning): Likewise.
	* tree-vect-loop.c (vect_transform_loop): Compute check_profitability
	and threshold here.  Control where to put the check here.

From-SVN: r187323
2012-05-09 11:01:16 +00:00
Rainer Orth 4ede37cd48 Fix gcc.target/i386/hle-* testcases with Sun as
* gcc.target/i386/hle-add-acq-1.c: Allow for ; after lock.
	* gcc.target/i386/hle-add-rel-1.c: Likewise.
	* gcc.target/i386/hle-and-acq-1.c: Likewise.
	* gcc.target/i386/hle-and-rel-1.c: Likewise.
	* gcc.target/i386/hle-cmpxchg-acq-1.c: Likewise.
	* gcc.target/i386/hle-cmpxchg-rel-1.c: Likewise.
	* gcc.target/i386/hle-or-acq-1.c: Likewise.
	* gcc.target/i386/hle-or-rel-1.c: Likewise.
	* gcc.target/i386/hle-sub-acq-1.c: Likewise.
	* gcc.target/i386/hle-sub-rel-1.c: Likewise.
	* gcc.target/i386/hle-xadd-acq-1.c: Likewise.
	* gcc.target/i386/hle-xadd-rel-1.c: Likewise.
	* gcc.target/i386/hle-xor-acq-1.c: Likewise.
	* gcc.target/i386/hle-xor-rel-1.c: Likewise.

From-SVN: r187321
2012-05-09 10:49:17 +00:00
Richard Sandiford 372d639526 re PR bootstrap/53249 (Bootstrap failure)
gcc/
	PR middle-end/53249
	* dwarf2out.h (get_address_mode): Move declaration to...
	* rtl.h: ...here.
	* dwarf2out.c (get_address_mode): Move definition to...
	* rtlanal.c: ...here.
	* var-tracking.c (get_address_mode): Delete.
	* combine.c (find_split_point): Use get_address_mode instead of
	targetm.addr_space.address_mode.
	* cselib.c (cselib_record_sets): Likewise.
	* dse.c (canon_address, record_store): Likewise.
	* emit-rtl.c (adjust_address_1, offset_address): Likewise.
	* expr.c (move_by_pieces, emit_block_move_via_loop, store_by_pieces)
	(store_by_pieces_1, expand_assignment, store_expr, store_constructor)
	(expand_expr_real_1): Likewise.
	* ifcvt.c (noce_try_cmove_arith): Likewise.
	* optabs.c (maybe_legitimize_operand_same_code): Likewise.
	* reload.c (find_reloads): Likewise.
	* sched-deps.c (sched_analyze_1, sched_analyze_2): Likewise.
	* sel-sched-dump.c (debug_mem_addr_value): Likewise.

From-SVN: r187320
2012-05-09 09:22:57 +00:00
Maciej W. Rozycki 45d05c5fec mips.c (mips16_gp_pseudo_reg): Remove line information from the instruction produced.
* config/mips/mips.c (mips16_gp_pseudo_reg): Remove line
	information from the instruction produced.

From-SVN: r187319
2012-05-09 09:19:44 +00:00
Richard Guenther 2af273018e stor-layout.c (bit_from_pos): Document.
2012-05-09  Richard Guenther  <rguenther@suse.de>

	* stor-layout.c (bit_from_pos): Document.
	(byte_from_pos): Likewise.  Optimize.
	(pos_from_bit): Likewise.
	(normalize_offset): Use pos_from_bit instead of replicating it.

From-SVN: r187317
2012-05-09 08:56:25 +00:00
Alan Modra 570a374aa5 re PR target/53271 (powerpc-eabispe build fails with ice on unwind-dw2.c)
PR target/53271
	* config/rs6000/rs6000.c (gen_frame_set): New function.
	(gen_frame_load, gen_frame_store): New functions.
	(rs6000_savres_rtx): Use the above.
	(rs6000_emit_epilogue, rs6000_emit_prologue): Here too.
	Correct mode used for CR2 in save/restore_world patterns.
	Don't emit instructions for eh_return frame unwind reg info.

From-SVN: r187316
2012-05-09 17:47:09 +09:30
Dehao Chen 99b113f978 predict-1.c: Remove the replicated text in this test.
gcc/testsuite

	* gcc.dg/predict-1.c: Remove the replicated text in this test.
	* gcc.dg/predict-2.c: Likewise.
	* gcc.dg/predict-3.c: Likewise.
	* gcc.dg/predict-4.c: Likewise.
	* gcc.dg/predict-5.c: Likewise.
	* gcc.dg/predict-6.c: Likewise.

From-SVN: r187315
2012-05-09 07:10:45 +00:00
Jan Hubicka 0d6bf48c3e cgraphbuild.c (build_cgraph_edges): Do not finalize vars with VALUE_EXPR.
* cgraphbuild.c (build_cgraph_edges): Do not finalize vars
	with VALUE_EXPR.
	* cgraph.h (varpool_can_remove_if_no_refs): Vars with VALUE_EXPR
	are removable.
	* toplev.c (wrapup_global_declaration_2): Vars with VALUE_EXPR
	need to wrapup.
	(compile_file): Do not output variables.
	* cgraphbuild.c (varpool_finalize_decl): When var is finalized late,
	output it.
	* langhooks.c: Include timevar.h
	(write_global_declarations): Finalize compilation unit after wrapup;
	set timevars correctly.
	* passes.c (rest_of_decl_compilation): Decls with VALUE_EXPR needs
	not to be added to varpool.
	* varpool.c (varpool_assemble_decl): Sanity check that we are called
	only on cases where it makes sense; skip constant pool and value expr
	vars.

	* lto.c (do_whole_program_analysis): Set timevars correctly.
	(lto_main): Likewise.
	
	* trans-common.c (create_common): Do not fake TREE_ASM_WRITTEN.
	* trans-decl.c (gfc_finish_cray_pointee): Likewise.

From-SVN: r187314
2012-05-09 07:01:39 +00:00
David S. Miller 36e0c0a515 Remove -Y option from linker command line on Linux/Sparc.
gcc/

	* config/sparc/linux.h (LINK_SPEC): Don't pass "-Y" option.
	* config/sparc/linux64.h (LINK_ARCH32_SPEC): Likewise.
	* config/sparc/linux64.h (LINK_ARCH64_SPEC): Likewise.

From-SVN: r187309
2012-05-08 21:57:49 -07:00
GCC Administrator bc88cc2436 Daily bump.
From-SVN: r187307
2012-05-09 00:18:43 +00:00
Manuel López-Ibáñez 1e53794867 re PR c++/53261 (ICE in tree_strip_nop_conversions)
2012-05-09  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR c++/53261
c-family/
	* c-common.c (warn_logical_operator): Check that argument of
	integer_zerop is not NULL.

From-SVN: r187300
2012-05-08 22:14:34 +00:00
Richard Sandiford b3c9bb62b7 re PR rtl-optimization/53278 (internal compiler error: in df_uses_record, at df-scan.c:3179 when compiling libgcc2.c __mulvdi3 on armv5tel-linux)
gcc/
	PR rtl-optimization/53278
	* lower-subreg.c (decompose_multiword_subregs): Remove left-over
	speed_p code from earlier patch.

From-SVN: r187299
2012-05-08 21:42:03 +00:00
Oleg Endo ef402c6521 re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
PR target/51244
	* config/sh/sh.md (*branch_true, *branch_false): New insns.

From-SVN: r187298
2012-05-08 21:36:30 +00:00
Teresa Johnson 4e8ee9cbf7 This patch adds functionality to libgcov to enable user applications to collect...
This patch adds functionality to libgcov to enable user applications to
collect profile data only in regions of interest. This is useful, for
example, to collect profile data from a long-running server only
during the time when it is serving requests.

Specifically, the new routines __gcov_reset will clear all profile counters
to zero and __gcov_dump will write out the profile information collected so
far. A global variable is used to prevent writing out the profile a
second time during exit.

2012-05-08   Teresa Johnson  <tejohnson@google.com>

	* libgcc/libgcov.c (gcov_clear, __gcov_reset): New functions.
	(__gcov_dump): Ditto.
	(gcov_dump_complete): New global variable.
	(gcov_exit): Export hidden to enable use in L_gcov_dump.
	(__gcov_flush): Outline functionality now in gcov_clear.
	* libgcc/Makefile.in (L_gcov_reset, L_gcov_dump): Define.
	* gcc/gcov-io.h (__gcov_reset, __gcov_dump): Declare.
	* gcc/doc/gcov.texi: Add note on using __gcov_reset and __gcov_dump.

From-SVN: r187297
2012-05-08 21:22:28 +00:00
Jan Hubicka 564fe867d8 cgraph.c (cgraph_call_edge_duplication_hooks): Export.
* cgraph.c (cgraph_call_edge_duplication_hooks): Export.
	(cgraph_create_node_1): Rename to ...
	(cgraph_create_empty_node): ... this one; export.
	(cgraph_create_node): Update.
	(cgraph_set_call_stmt_including_clones): Move to cgraphclones.c
	(cgraph_create_edge_including_clones): Likewise.
	(cgraph_find_replacement_node): Likewise.
	(cgraph_clone_edge): Likewise.
	(cgraph_clone_node): Likewise.
	(clone_function_name): Likewise.
	(cgraph_create_virtual_clone): Likewise.
	(cgraph_remove_node_and_inline_clones): Likewise.
	(cgraph_redirect_edge_call_stmt_to_callee): Move here from
	cgraphunit.c
	* cgraph.h: Reorder declarations so they match file of origin.
	(cgraph_create_empty_node): Declare.
	* cgraphunit.c (update_call_expr): Move to cgraphclones.c
	(cgraph_copy_node_for_versioning): Likewise.
	(cgraph_function_versioning): Likewise.
	(cgraph_materialize_clone): Likewise.
	(cgraph_redirect_edge_call_stmt_to_callee): Likewise.
	(cgraph_materialize_all_clones): Likewise.
	* cgraphclones.c: New file.
	* Makefile.in: Update for cgraphclones.

From-SVN: r187296
2012-05-08 21:05:38 +00:00
Jan Hubicka 66a20fc2a7 cgraph.c (cgraph_call_edge_duplication_hooks): Export.
* cgraph.c (cgraph_call_edge_duplication_hooks): Export.
	(cgraph_create_node_1): Rename to ...
	(cgraph_create_empty_node): ... this one; export.
	(cgraph_create_node): Update.
	(cgraph_set_call_stmt_including_clones): Move to cgraphclones.c
	(cgraph_create_edge_including_clones): Likewise.
	(cgraph_find_replacement_node): Likewise.
	(cgraph_clone_edge): Likewise.
	(cgraph_clone_node): Likewise.
	(clone_function_name): Likewise.
	(cgraph_create_virtual_clone): Likewise.
	(cgraph_remove_node_and_inline_clones): Likewise.
	(cgraph_redirect_edge_call_stmt_to_callee): Move here from
	cgraphunit.c
	* cgraph.h: Reorder declarations so they match file of origin.
	(cgraph_create_empty_node): Declare.
	* cgraphunit.c (update_call_expr): Move to cgraphclones.c
	(cgraph_copy_node_for_versioning): Likewise.
	(cgraph_function_versioning): Likewise.
	(cgraph_materialize_clone): Likewise.
	(cgraph_redirect_edge_call_stmt_to_callee): Likewise.
	(cgraph_materialize_all_clones): Likewise.
	* cgraphclones.c: New file.
	* Makefile.in: Update for cgraphclones.

From-SVN: r187295
2012-05-08 21:03:18 +00:00
Uros Bizjak aedfe0a806 * ChangeLog: Fix PR number of my last commit.
From-SVN: r187290
2012-05-08 18:09:30 +02:00
Uros Bizjak 3f3dcbb393 re PR target/53250 ([SH] ICE: in change_address_1, at emit-rtl.c:2018)
PR target/53250
	* config/i386/i386.c (ix86_set_reg_reg_cost): New function.
	(ix86_rtx_costs): Handle SET.

From-SVN: r187289
2012-05-08 18:01:54 +02:00
Michael Matz bcc708fcdc basic-block.h (struct rtl_bb_info): Remove visited member and move head_ member to ...
* basic-block.h (struct rtl_bb_info): Remove visited member and
	move head_ member to ...
	(struct basic_block_def.basic_block_il_dependent): ... the new
	member x, replacing but containing old member rtl.
	(enum bb_flags): New BB_VISITED flag.
	(BB_HEADER, BB_FOOTER): New macros.

	* jump.c (mark_all_labels): Adjust.
	* cfgcleanup.c (try_optimize_cfg): Adjust.
	* cfglayout.c (record_effective_endpoints): Adjust.
	(relink_block_chain): Ditto (and don't fiddle with visited).
	(fixup_reorder_chain): Adjust.
	(fixup_fallthru_exit_predecessor): Ditto.
	(cfg_layout_duplicate_bb): Ditto.
	* combine.c (update_cfg_for_uncondjump): Adjust.
	* bb-reorder.c (struct bbro_basic_block_data_def): Add visited
	member.
	(bb_visited_trace): New accessor.
	(mark_bb_visited): Move in front.
	(rotate_loop): Use bb_visited_trace.
	(find_traces_1_round): Ditto.
	(emit_barrier_after): Ditto.
	(copy_bb): Ditto, and initialize visited on resize.
	(reorder_basic_blocks): Initize visited member.
	(duplicate_computed_gotos): Clear bb flags at start, use
	BB_VISITED flags.

	* cfgrtl.c (try_redirect_by_replacing_jump): Adjust.
	(rtl_verify_flow_info_1): Ditto.
	(cfg_layout_split_block): Ditto.
	(cfg_layout_delete_block): Ditto.
	(cfg_layout_merge_blocks): Ditto.
	(init_rtl_bb_info): Adjust and initialize il.x.head_ member.

From-SVN: r187288
2012-05-08 15:54:13 +00:00
Hans-Peter Nilsson 88231ff681 re PR target/53272 (wrong condition-codes for strict-low-part destination and small-integer source)
PR target/53272
	* gcc.dg/torture/pr53272-1.c, gcc.dg/torture/pr53272-2.c: New test.

From-SVN: r187284
2012-05-08 15:21:50 +00:00
Hans-Peter Nilsson b3374f1493 re PR target/53272 (wrong condition-codes for strict-low-part destination and small-integer source)
PR target/53272
	* config/cris/cris.c (cris_normal_notice_update_cc): For TARGET_V32,
	when a constant source operand matches an "I" constraint, the "no
	CC0 change" applies to a register-destination only, not a
	strict_low_part-destination.

From-SVN: r187283
2012-05-08 15:20:52 +00:00
Richard Guenther ad9fc55abd fold-const.c (fold_binary_loc): Fold (X * CST1) & CST2 to zero or to (X * CST1) & CST2' when...
2012-05-08  Richard Guenther  <rguenther@suse.de>

	* fold-const.c (fold_binary_loc): Fold (X * CST1) & CST2
	to zero or to (X * CST1) & CST2' when CST1 has trailing zeros.

	* gcc.dg/fold-bitand-4.c: New testcase.

From-SVN: r187280
2012-05-08 12:50:18 +00:00
Georg-Johann Lay 04d170d214 Makefile.in (TEXI_GCC_FILES): Add avr-mmcu.texi.
* Makefile.in (TEXI_GCC_FILES): Add avr-mmcu.texi.
	* doc/avr-mmcu.texi: New auto-generated file.
	* doc/invoke.texi (AVR Options): Include avr-mmcu.texi in order
	to document all valid -mmcu= arguments.
	* config/avr/avr.h (arch_info_s): New struct definition.
	* config/avr/avr-devices.c (avr_texinfo): New variable.
	* config/avr/gen-avr-mmcu-texi.c: New file.
	* config/avr/t-avr: New rules and dependencies to build	avr-mmcu.texi.

From-SVN: r187279
2012-05-08 12:28:29 +00:00
Dehao Chen 9c04723a04 predict.c (find_qualified_ssa_name): New
2012-05-08  Dehao Chen  <dehao@google.com>
gcc/
	* predict.c (find_qualified_ssa_name): New
	(find_ssa_name_in_expr): New
	(find_ssa_name_in_assign_stmt): New
	(is_comparison_with_loop_invariant_p): New
	(is_bound_expr_similar): New
	(predict_iv_comparison): New
	(predict_loops): Add heuristic for loop-nested branches that compare an
	induction variable to a loop bound variable.
	* predict.def (PRED_LOOP_IV_COMPARE): New macro
testsuite/
	* gcc.dg/predict-1.c: Check if LOOP_IV_COMPARE static predict
	heuristic is working properly.
	* gcc.dg/predict-2.c: Likewise.
	* gcc/dg/predict-3.c: Likewise.
	* gcc/dg/predict-4.c: Likewise.
	* gcc/dg/predict-5.c: Likewise.
	* gcc/dg/predict-6.c: Likewise.

From-SVN: r187277
2012-05-08 10:01:44 +00:00
Uros Bizjak 536b0cb7af i386.c (has_dispatch): Use TARGET_BDVER1 and TARGET_BDVER2 defines where appropriate.
* config/i386/i386.c (has_dispatch): Use TARGET_BDVER1 and
	TARGET_BDVER2 defines where appropriate.

From-SVN: r187276
2012-05-08 08:56:11 +02:00
GCC Administrator ca9daea1ef Daily bump.
From-SVN: r187275
2012-05-08 00:18:16 +00:00
Eric Botcazou 36d2188379 configure.ac (PLUGIN_LD): Rename into...
* configure.ac (PLUGIN_LD): Rename into...
	(PLUGIN_LD_SUFFIX): ...this and strip the target_alias triplet.
	* config.in: Regenerate.
	* configure: Likewise.
	* collect2.c (main): Set plugin_ld_suffix to PLUGIN_LD_SUFFIX.

From-SVN: r187269
2012-05-07 19:59:56 +00:00
Eric Botcazou b48e22b2bd tree-dfa.c (get_ref_base_and_extent): Do the offset computation using the precision of the index type.
* tree-dfa.c (get_ref_base_and_extent) <ARRAY_REF>: Do the offset
	computation using the precision of the index type.
	* gimple-fold.c (fold_const_aggregate_ref_1) <ARRAY_REF>: Likewise.
	(fold_array_ctor_reference): Do index computations in the index type.

From-SVN: r187268
2012-05-07 18:57:23 +00:00
Ian Lance Taylor 62beea506b compiler: fix an ICE when parsing 0xdie, reject token 0x123i.
The lexer used to incorrectly accept a token like 0x123i
and interpreted it as 123i. It also used to die when encountering
0xdie.

From-SVN: r187266
2012-05-07 18:53:28 +00:00
Ian Lance Taylor ca30ba74c9 compiler: fix ICE in handling of rune constants.
This patch corrects an ICE in handling on constant expressions
such as

const r = ^'a'

Part of issue 9.

From-SVN: r187264
2012-05-07 18:36:36 +00:00
Ian Lance Taylor c414667bc2 compiler: reject NOT operator on integer types.
The Go specification only accepts the NOT operator on boolean
types.

Fixes issue 10.

From-SVN: r187262
2012-05-07 18:24:17 +00:00
Georg-Johann Lay 55796e9021 avr.c (avr_prologue_setup_frame): Fix mode passed down to plus_constant.
* config/avr/avr.c (avr_prologue_setup_frame): Fix mode passed
	down to plus_constant.
	(expand_epilogue): Ditto.

From-SVN: r187259
2012-05-07 16:31:44 +00:00
Steven Bosscher 8bb91f498b postreload.c (reload_cse_regs): Make static.
* postreload.c (reload_cse_regs): Make static.
	* reload.h (reload_cse_regs): Remove prototype.

From-SVN: r187258
2012-05-07 16:26:14 +00:00
Rainer Orth 527eeee5b3 Allow for objects in libatomic_la_LIBADD
* Makefile.am (libatomic.map-sun): Handle objects in
	libatomic_la_LIBADD.
	* aclocal.m4: Regenerate.
	* Makefile.in: Regenerate.

From-SVN: r187257
2012-05-07 16:11:14 +00:00
Rainer Orth e9885be5c6 Don't include XCFLAGS in CFLAGS
* configure.ac: Add $XPCFLAGS to CFLAGS, not $XCFLAGS.
	* configure: Regenerate.

From-SVN: r187256
2012-05-07 16:10:11 +00:00
Richard Henderson e220a04734 * config/alpha/alpha.md (clear_cache): New pattern.
From-SVN: r187255
2012-05-07 08:55:11 -07:00
Georg-Johann Lay 6aa52a58b7 config/avr/avr.c: Adjust indentation.
From-SVN: r187254
2012-05-07 15:34:27 +00:00
Janne Blomqvist f7d6bc0160 Bump minimum required MPFR version to 2.4.0.
2012-05-07  Janne Blomqvist  <jb@gcc.gnu.org>

	* configure.ac: Bump minimum MPFR version to 2.4.0.
	* configure: Regenerated.

From-SVN: r187253
2012-05-07 18:30:42 +03:00
Steven Bosscher 5be1632b7d re PR middle-end/53245 (ice in expand_case)
PR middle-end/53245
	* gimplify.c (preprocess_case_label_vec_for_gimple): If low or high
	is folded to a type boundary value, verify that the resulting case
	label is still a care range.

From-SVN: r187248
2012-05-07 14:40:33 +00:00
Uros Bizjak 60197adbfd i386.md (ctz<mode>2): Emit rep;bsf only for TARGET_GENERIC, when not optimizing for size.
* config/i386/i386.md (ctz<mode>2): Emit rep;bsf
	only for TARGET_GENERIC, when not optimizing for size.
	(*ffs<mode>_1): Ditto.

From-SVN: r187247
2012-05-07 16:38:41 +02:00
Steven Bosscher 198fc9f199 tree-cfg.c (verify_gimple_switch): Tighten checks.
* tree-cfg.c (verify_gimple_switch): Tighten checks.

From-SVN: r187242
2012-05-07 13:47:11 +00:00
Jakub Jelinek 7a04f01cb7 re PR tree-optimization/53239 (VRP vs named value return opt)
PR tree-optimization/53239
	* tree-vrp.c (get_value_range): Set VR of
	SSA_NAME_IS_DEFAULT_DEF of DECL_BY_REFERENCE RESULT_DECL
	to nonnull.

	* g++.dg/opt/vrp3.C: New test.
	* g++.dg/opt/vrp3-aux.cc: New file.
	* g++.dg/opt/vrp3.h: New file.

From-SVN: r187240
2012-05-07 15:31:00 +02:00
Rainer Orth 4f22d4300f Allow for / comments in g++.dg/debug/dwarf2/nested-3.C
* g++.dg/debug/dwarf2/nested-3.C: Allow for / comments and missing
	.uleb128 support in assembler output.

From-SVN: r187236
2012-05-07 12:59:43 +00:00
Richard Biener fb7c3cc87e re PR lto/53195 (ICE seg fault in lto (in set_is_used (tp=Unhandled dwarf expression opcode 0xf3 ) at ../.././gcc/tree-flow-inline.h:567))
2012-05-07  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/53195
	* tree-inline.c (setup_one_parameter): Properly add referenced
	vars from the parameters new known value.

From-SVN: r187235
2012-05-07 12:59:05 +00:00
Steven Bosscher 75647adeca m68k.c (m68k_sched_branch_type): Remove.
* config/m68k/m68k.c (m68k_sched_branch_type): Remove.
	(sched_branch_type): Remove.
	(m68k_sched_md_init_global): Don't allocate it.
	(m68k_sched_md_finish_global): Don't free it.
	* config/m68k/m68k.h (m68k_sched_branch_type): Remove prototype.
	* config/m68k/m68k.md: Set the type of insns using m68k_sched_branch_type
	to bcc directly.

From-SVN: r187234
2012-05-07 12:29:05 +00:00