- 15 Apr, 2010 11 commits
-
-
2010-04-15 Thomas Schwinge <tschwinge@gnu.org> gcc/ * config.gcc <i[34567]86-*-gnu*>: Handle softfp as for Linux. libgcc/ * config.host <i[34567]86-*-gnu*>: Handle softfp as for Linux. From-SVN: r158375
Thomas Schwinge committed -
2010-04-15 Richard Guenther <rguenther@suse.de> * tree-ssa-structalias.c (struct variable_info): Add is_fn_info flag. (new_var_info): Initialize it. (dump_constraints): Support printing last added constraints. (debug_constraints): Adjust. (dump_constraint_graph): Likewise. (make_heapvar_for): Check for NULL cfun. (get_function_part_constraint): New function. (get_fi_for_callee): Likewise. (find_func_aliases): Properly implement IPA PTA constraints. (process_ipa_clobber): New function. (find_func_clobbers): Likewise. (insert_into_field_list_sorted): Remove. (create_function_info_for): Properly allocate vars for IPA mode. Do not use insert_into_field_list_sorted. (create_variable_info_for): Properly generate constraints for global vars in IPA mode. (dump_solution_for_var): Always dump the solution. (set_uids_in_ptset): Initialize DECL_PT_UID if in ipa-mode. (find_what_var_points_to): Adjust. (pt_solution_set): Change. (pt_solution_ior_into): New function. (pt_solution_empty_p): Export. (pt_solution_includes_global): Adjust. (pt_solution_includes_1): Likewise. (pt_solutions_intersect_1): Likewise. (dump_sa_points_to_info): Check some invariants. (solve_constraints): Move constraint dumping ... (compute_points_to_sets): ... here. (ipa_pta_execute): ... and here. (compute_may_aliases): Do not re-compute points-to info locally if IPA info is available. (ipa_escaped_pt): New global var. (ipa_pta_execute): Properly implement IPA PTA. * tree-into-ssa.c (dump_decl_set): Support dumping decls not in referenced-vars. * tree-flow.h (struct gimple_df): Add ipa_pta flag. * tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Adjust. (dump_points_to_solution): Likewise. * tree-dfa.c (dump_variable): Also dump DECL_PT_UID. * tree-inline.c (remap_ssa_name): Copy IPA points-to solution. (remap_gimple_stmt): Reset call clobber/use information if necessary. (copy_decl_to_var): Copy DECL_PT_UID. (copy_result_decl_to_var): Likewise. * tree.c (make_node_stat): Initialize DECL_PT_UID. (copy_node_stat): Copy it. * tree.h (DECL_PT_UID): New macro. (SET_DECL_PT_UID): Likewise. (DECL_PT_UID_SET_P): Likewise. (struct tree_decl_minimal): Add pt_uid member. * tree-ssa-alias.h (struct pt_solution): Add ipa_escaped flag. (pt_solution_empty_p): Declare. (pt_solution_set): Adjust. (ipa_escaped_pt): Declare. * cfgexpand.c (update_alias_info_with_stack_vars): Adjust. * gimple-pretty-print.c (pp_points_to_solution): New function. (dump_gimple_call): Dump call clobber/use information. * tree-dump.c (dump_option_value_in): Add TDF_ALIAS entry. * tree-pass.h (TDF_ALIAS): New dump option. * tree-pretty-print.c (dump_decl_name): Dump DECL_PT_UID if asked to. * doc/invoke.texi (-fipa-pta): Update documentation. * gcc.dg/ipa/ipa-pta-1.c: New testcase. * gcc.dg/ipa/ipa-pta-2.c: Likewise. * gcc.dg/ipa/ipa-pta-3.c: Likewise. * gcc.dg/ipa/ipa-pta-4.c: Likewise. * gcc.dg/ipa/ipa-pta-5.c: Likewise. * gcc.dg/ipa/ipa-pta-6.c: Likewise. * gcc.dg/ipa/ipa-pta-7.c: Likewise. * gcc.dg/ipa/ipa-pta-8.c: Likewise. * gcc.dg/ipa/ipa-pta-9.c: Likewise. * gcc.dg/ipa/ipa-pta-10.c: Likewise. * gcc.dg/ipa/ipa-pta-11.c: Likewise. * gcc.dg/ipa/ipa-pta-12.c: Likewise. * gcc.dg/ipa/ipa-pta-13.c: Likewise. * gcc.dg/torture/ipa-pta-2.c: Likewise. * gcc.dg/torture/ipa-pta-1.c: Adjust. From-SVN: r158374
Richard Guenther committed -
2010-04-15 Richard Guenther <rguenther@suse.de> * Makefile.in (OBJS-common): Add gimple-fold.o. (gimple-fold.o): New rule. * tree.h (maybe_fold_offset_to_reference, maybe_fold_offset_to_address, maybe_fold_stmt_addition): Move prototypes ... * gimple.h: ... here. * tree-flow.h (fold_stmt, fold_stmt_inplace, get_symbol_constant_value, may_propagate_address_into_dereference): Move prototypes ... * gimple.h: ... here. * tree-ssa-ccp.c (get_symbol_constant_value, may_propagate_address_into_dereference, maybe_fold_offset_to_array_ref, maybe_fold_offset_to_component_ref, maybe_fold_offset_to_reference, maybe_fold_offset_to_address, maybe_fold_stmt_indirect, maybe_fold_stmt_addition, maybe_fold_reference, get_maxval_strlen, ccp_fold_builtin, fold_gimple_assign, fold_gimple_cond, fold_gimple_call, fold_stmt_1, fold_stmt, fold_stmt_inplace, gimplify_and_update_call_from_tree): Move ... * gimple-fold.c: ... here. New file. (ccp_fold_builtin): Rename to ... (gimple_fold_builtin): ... this. * tree-ssa-ccp.c (execute_fold_all_builtins): Adjust. From-SVN: r158373
Richard Guenther committed -
2010-04-15 Richard Guenther <rguenther@suse.de> * fold-const.c (LOWPART, HIGHPART, BASE, encode, decode, fit_double_type, force_fit_type_double, add_double_with_sign, neg_double, mul_double_with_sign, lshift_double, rshift_double, lrotate_double, rrotate_double, div_and_round_double): Move ... * double-int.c: ... here. * tree.h (force_fit_type_double, fit_double_type, add_double_with_sign, add_double, neg_double, mul_double_with_sign, mul_double, lshift_double, rshift_double, lrotate_double, rrotate_double, div_and_round_double): Move prototypes ... * double-int.h: ... here. From-SVN: r158372
Richard Guenther committed -
* gcc-interface/trans.c (call_to_gnu): Open a nesting level if this is a statement. Otherwise, if at top-level, push the processing of the elaboration routine. In the misaligned case, issue the error messages again on entry and create the temporary explicitly. Do not issue them for CONSTRUCTORs. For a function call, emit the range check if necessary. In the copy-in copy-out case, create the temporary for the return value explicitly. Do not unnecessarily convert by-ref parameters to the formal's type. Remove obsolete guards in conditions. (gnat_to_gnu) <N_Assignment_Statement>: For a function call, pass the target to call_to_gnu in all cases. (gnat_gimplify_expr) <ADDR_EXPR>: Remove handling of SAVE_EXPR. (addressable_p) <CONSTRUCTOR>: Return false if not static. <COMPOUND_EXPR>: New case. * gcc-interface/utils2.c (build_unary_op) <ADDR_EXPR>: Fold a compound expression if it has unconstrained array type. (gnat_mark_addressable) <COMPOUND_EXPR>: New case. (gnat_stabilize_reference) <COMPOUND_EXPR>: Stabilize operands on an individual basis. From-SVN: r158371
Eric Botcazou committed -
* gcc-interface/trans.c (gigi): Do not start statement group. (Compilation_Unit_to_gnu): Set current_function_decl to NULL. Start statement group and push binding level here... (gnat_to_gnu) <N_Compilation_Unit>: ...and not here. Do not push fake contexts at top level. Remove redundant code. (call_to_gnu): Rename a local variable and constify another. * gcc-interface/utils.c (gnat_pushlevel): Fix formatting nits. (set_current_block_context): Set it as the group's block. (gnat_init_decl_processing): Delete unrelated init code. (end_subprog_body): Use NULL_TREE. From-SVN: r158370
Eric Botcazou committed -
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
Eric Botcazou committed -
* gcc-interface/decl.c (validate_size): Reorder, remove obsolete test and warning. (set_rm_size): Reorder and remove obsolete test. From-SVN: r158368
Eric Botcazou committed -
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
Bernd Schmidt committed -
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
Jakub Jelinek committed -
From-SVN: r158365
GCC Administrator committed
-
- 14 Apr, 2010 25 commits
-
-
PR target/43742 * config/sh/sh.md (doloop_end_split): Remove "+r" constraint in an input-only operand. From-SVN: r158361
Kaz Kojima committed -
* 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
Anatoly Sokolov committed -
From-SVN: r158359
Doug Evans committed -
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
Bernd Schmidt committed -
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
Jason Merrill committed -
From-SVN: r158354
Steven G. Kargl committed -
* config/i386/i386.md (*divmod<mode>4): Remove stray "&&" from splitter condition. (*udivmod<mode>4): Ditto. From-SVN: r158353
Uros Bizjak committed -
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
Steven G. Kargl committed -
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
Steve Ellcey committed -
* 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
Uros Bizjak committed -
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
Manuel López-Ibáñez committed -
* 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
Uros Bizjak committed -
* 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
Uros Bizjak committed -
From-SVN: r158346
Michael Meissner committed -
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
Michael Matz committed -
* acinclude.m4 (LIBGOMP_CHECK_SYNC_BUILTINS): Remove set but not unused bar variable. * configure: Regenerate. From-SVN: r158344
Uros Bizjak committed -
2010-04-14 Tristan Gingold <gingold@adacore.com> * configure.ac (alpha*-*-*vms*): Remove ld from noconfigdirs. * configure: Regenerate. From-SVN: r158341
Tristan Gingold committed -
* config/i386/i386.md (*popcountsi2_cmp_zext): Remove mode attribute from insn template. From-SVN: r158340
Uros Bizjak committed -
* 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
Eric Botcazou committed -
* 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
Eric Botcazou committed -
* config/i386/i386.md (*ashlqi3_1_slp): New insn pattern. From-SVN: r158293
Uros Bizjak committed -
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
Tobias Burnus committed -
2010-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/43747 gfortran.dg/initialization_24.f90: New test. From-SVN: r158291
Jerry DeLisle committed -
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
Jerry DeLisle committed -
From-SVN: r158289
GCC Administrator committed
-
- 13 Apr, 2010 4 commits
-
-
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
Steve Ellcey committed -
* 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
Ian Lance Taylor committed -
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
Joel Sherrill committed -
* 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
Jan Hubicka committed
-