- May 09, 2012
-
-
Richard Sandiford authored
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
-
Maciej W. Rozycki authored
* config/mips/mips.c (mips16_gp_pseudo_reg): Remove line information from the instruction produced. From-SVN: r187319
-
Richard Guenther authored
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
-
Alan Modra authored
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
-
Dehao Chen authored
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
-
Jan Hubicka authored
* 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
-
David S. Miller authored
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
-
GCC Administrator authored
From-SVN: r187307
-
- May 08, 2012
-
-
Manuel López-Ibáñez authored
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
-
Richard Sandiford authored
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
-
Oleg Endo authored
PR target/51244 * config/sh/sh.md (*branch_true, *branch_false): New insns. From-SVN: r187298
-
Teresa Johnson authored
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
-
Jan Hubicka authored
* 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
-
Jan Hubicka authored
* 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
-
Uros Bizjak authored
From-SVN: r187290
-
Uros Bizjak authored
PR target/53250 * config/i386/i386.c (ix86_set_reg_reg_cost): New function. (ix86_rtx_costs): Handle SET. From-SVN: r187289
-
Michael Matz authored
* 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
-
Hans-Peter Nilsson authored
PR target/53272 * gcc.dg/torture/pr53272-1.c, gcc.dg/torture/pr53272-2.c: New test. From-SVN: r187284
-
Hans-Peter Nilsson authored
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
-
Richard Guenther authored
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
-
Georg-Johann Lay authored
* 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
-
Dehao Chen authored
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
-
Uros Bizjak authored
* config/i386/i386.c (has_dispatch): Use TARGET_BDVER1 and TARGET_BDVER2 defines where appropriate. From-SVN: r187276
-
GCC Administrator authored
From-SVN: r187275
-
- May 07, 2012
-
-
Eric Botcazou authored
* 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
-
Eric Botcazou authored
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
-
Ian Lance Taylor authored
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
-
Ian Lance Taylor authored
This patch corrects an ICE in handling on constant expressions such as const r = ^'a' Part of issue 9. From-SVN: r187264
-
Ian Lance Taylor authored
The Go specification only accepts the NOT operator on boolean types. Fixes issue 10. From-SVN: r187262
-
Georg-Johann Lay authored
* config/avr/avr.c (avr_prologue_setup_frame): Fix mode passed down to plus_constant. (expand_epilogue): Ditto. From-SVN: r187259
-
Steven Bosscher authored
* postreload.c (reload_cse_regs): Make static. * reload.h (reload_cse_regs): Remove prototype. From-SVN: r187258
-
Rainer Orth authored
* Makefile.am (libatomic.map-sun): Handle objects in libatomic_la_LIBADD. * aclocal.m4: Regenerate. * Makefile.in: Regenerate. From-SVN: r187257
-
Rainer Orth authored
* configure.ac: Add $XPCFLAGS to CFLAGS, not $XCFLAGS. * configure: Regenerate. From-SVN: r187256
-
Richard Henderson authored
From-SVN: r187255
-
Georg-Johann Lay authored
From-SVN: r187254
-
Janne Blomqvist authored
2012-05-07 Janne Blomqvist <jb@gcc.gnu.org> * configure.ac: Bump minimum MPFR version to 2.4.0. * configure: Regenerated. From-SVN: r187253
-
Steven Bosscher authored
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
-
Uros Bizjak authored
* 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
-
Steven Bosscher authored
* tree-cfg.c (verify_gimple_switch): Tighten checks. From-SVN: r187242
-
Jakub Jelinek authored
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
-