aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2008-12-11* config/mips/mips.md (*branch_bit<bbv><mode>,Adam Nemet2-8/+14
*branch_bit<bbv><mode>_inverted): Renumber operands so that the label becomes operands[1]. From-SVN: r142694
2008-12-11re PR middle-end/38413 ([graphite] ICE: in build2_stat, at tree.c:3293)Sebastian Pop2-1/+20
2008-12-11 Sebastian Pop <sebastian.pop@amd.com> PR middle-end/38413 * gcc.dg/graphite/pr38413.c: New. From-SVN: r142691
2008-12-11re PR middle-end/38459 ([graphite] SEGFAULT in cloog_clast_create)Sebastian Pop2-0/+14
2008-12-11 Sebastian Pop <sebastian.pop@amd.com> PR middle-end/38459 * gfortran.dg/graphite/pr37857.f90: New. From-SVN: r142690
2008-12-11[multiple changes]Sebastian Pop14-81/+684
2008-12-11 Harsha Jagasia <harsha.jagasia@amd.com> PR tree-optimization/38446 * graphite.c (register_bb_in_sese): New. (bb_in_sese_p): Check if bb belongs to sese region by explicitly looking at the bbs in the region. * graphite.h (sese): Add region_basic_blocks pointer set to structure and initialize at the time of defining new scop. 2008-12-11 Tobias Grosser <grosser@fim.uni-passau.de> * graphite.c (new_graphite_bb): Initialize GBB_STATIC_SCHEDULE. (find_params_in_bb): Do not free data refs. (free_graphite_bb): Add FIXME on disabled free_data_refs. 2008-12-11 Sebastian Pop <sebastian.pop@amd.com> * graphite.c (struct ivtype_map_elt): New. (debug_ivtype_elt, debug_ivtype_map_1, debug_ivtype_map, new_ivtype_map_elt, ivtype_map_elt_info, eq_ivtype_map_elts, gcc_type_for_cloog_iv): New. (loop_iv_stack_patch_for_consts): Use the type of the induction variable from the original loop, except for the automatically generated loops, i.e., in the case of a strip-mined loop, in which case there is no original loop: in that case just use integer_type_node. (new_graphite_bb): Initialize GBB_CLOOG_IV_TYPES. (free_graphite_bb): Free GBB_CLOOG_IV_TYPES. (clast_name_to_gcc): Accept params to be NULL. (clast_to_gcc_expression): Take an extra parameter for the type. Convert to that type all the expressions built by this function. (gcc_type_for_clast_expr, gcc_type_for_clast_eq): New. (graphite_translate_clast_equation): Compute the type of the clast_equation before translating its LHS and RHS. (clast_get_body_of_loop, gcc_type_for_iv_of_clast_loop): New. (graphite_create_new_loop): Compute the type of the induction variable before translating the lower and upper bounds and before creating the induction variable. (rename_variables_from_edge, rename_phis_end_scop): New. (copy_bb_and_scalar_dependences): Call rename_phis_end_scop. (sese_add_exit_phis_edge): Do not use integer_zero_node. (find_cloog_iv_in_expr, compute_cloog_iv_types_1, compute_cloog_iv_types): New. (gloog): Call compute_cloog_iv_types before starting the translation of the clast. * graphite.h (struct graphite_bb): New field cloog_iv_types. (GBB_CLOOG_IV_TYPES): New. (debug_ivtype_map): Declared. (oldiv_for_loop): New. 2008-12-10 Tobias Grosser <grosser@fim.uni-passau.de> PR middle-end/38459 * graphite.c (new_scop): Initialize SCOP_ADD_PARAMS. (param_index): Assert if parameter is not know after parameter detection. (find_params_in_bb): Detect params directly in GBB_CONDITIONS. (find_scop_parameters): Mark, that we have finished parameter detection. (graphite_transform_loops): Move condition detection before parameter detection. * graphite.h (struct scop): Add SCOP_ADD_PARAMS. 2008-12-11 Harsha Jagasia <harsha.jagasia@amd.com> PR tree-optimization/38446 * gcc.dg/graphite/pr38446.c: New. 2008-12-11 Sebastian Pop <sebastian.pop@amd.com> * gcc.dg/graphite/scop-16.c: Test only scop specific info. * gcc.dg/graphite/scop-17.c: Same. * gcc.dg/graphite/block-5.c: New. * gcc.dg/graphite/block-6.c: New. * gcc.dg/graphite/pr37485.c: Clean dump file after. * gcc.dg/graphite/pr37684.c: Same. * gcc.dg/graphite/block-2.c: Same. 2008-12-10 Tobias Grosser <grosser@fim.uni-passau.de> PR middle-end/38459 * gfortran.dg/graphite/pr38459.f90: New. From-SVN: r142688
2008-12-11re PR testsuite/35677 (Intermitent failure "FAIL: libgomp.fortran/crayptr2.f90")John David Anglin2-2/+12
PR testsuite/35677 * emutls.c (__emutls_get_address): Make sure offset is really zero before initializing the object's offset. From-SVN: r142687
2008-12-11Make-lang.in (install-finclude-dir): Use correct mode argument for ↵Richard Guenther2-1/+6
mkinstalldirs. 2008-12-11 Richard Guenther <rguenther@suse.de> * Make-lang.in (install-finclude-dir): Use correct mode argument for mkinstalldirs. From-SVN: r142676
2008-12-11re PR c++/38253 (g++.dg/ipa/iinline-1.C scan-ipa-dump inline fails on powerpc)Jakub Jelinek2-1/+9
PR c++/38253 * gimplify.c (gimplify_init_constructor): Don't force constructor into memory if there is just one nonzero element. From-SVN: r142674
2008-12-11Fix testsuite/gfortran.dg/graphite/id-4.f90.Sebastian Pop21-763/+1307
2008-12-11 Sebastian Pop <sebastian.pop@amd.com> Fix testsuite/gfortran.dg/graphite/id-4.f90. * graphite.c (scan_tree_for_params): Do not compute the multiplicand when not needed. 2008-12-11 Sebastian Pop <sebastian.pop@amd.com> * graphite.c (build_scops_1): Initialize open_scop.exit and sinfo.last. 2008-12-11 Sebastian Pop <sebastian.pop@amd.com> Jan Sjodin <jan.sjodin@amd.com> Harsha Jagasia <harsha.jagasia@amd.com> PR middle-end/37852 PR middle-end/37883 PR middle-end/37928 PR middle-end/37980 PR middle-end/38038 PR middle-end/38039 PR middle-end/38073 PR middle-end/38083 PR middle-end/38125 * tree-phinodes.c (remove_phi_nodes): New, extracted from... * tree-cfg.c (remove_phi_nodes_and_edges_for_unreachable_block): ...here. * tree-flow.h (remove_phi_nodes, canonicalize_loop_ivs): Declared. * Makefile.in (graphite.o): Depend on value-prof.h. (graphite.o-warn): Removed -Wno-error. * tree-parloops.c (canonicalize_loop_ivs): Allow reduction_list to be a NULL pointer. Call update_stmt. Return the newly created cannonical induction variable. * graphite.h (debug_rename_map): Declared. Fix some comments. * graphite.c: Reimplement the code generation from graphite to gimple. Include value-prof.h. (loop_iv_stack_get_iv): Do not return NULL for constant substitutions. (get_old_iv_from_ssa_name): Removed. (graphite_stmt_p): New. (new_graphite_bb): Test for useful statements before building a graphite statement for the basic block. (free_graphite_bb): Do not free GBB_DATA_REFS: this is a bug in free_data_ref that calls BITMAP_FREE (DR_VOPS (dr)) without reason. (recompute_all_dominators, graphite_verify, nb_reductions_in_loop, graphite_loop_normal_form): New. (scop_record_loop): Call graphite_loop_normal_form. (build_scop_loop_nests): Iterate over all the blocks of the function instead of relying on the incomplete information from SCOP_BBS. Return the success of the operation. (find_params_in_bb): Use the data from GBB_DATA_REFS. (add_bb_domains): Removed. (build_loop_iteration_domains): Don't call add_bb_domains. Add the iteration domain only to the basic blocks that have been translated to graphite. (build_scop_conditions_1): Add constraints only if the basic block have been translated to graphite. (build_scop_data_accesses): Completely disabled until data dependence is correctly implemented. (debug_rename_elt, debug_rename_map_1, debug_rename_map): New. (remove_all_edges_1, remove_all_edges): Removed. (get_new_name_from_old_name): New. (graphite_rename_variables_in_stmt): Renamed rename_variables_in_stmt. Call get_new_name_from_old_name. Use replace_exp and update_stmt. (is_old_iv): Renamed is_iv. (expand_scalar_variables_stmt): Extra parameter for renaming map. Use replace_exp and update_stmt. (expand_scalar_variables_expr): Same. Use the map to get the new names for the renaming of induction variables and for the renaming of variables after a basic block has been copied. (expand_scalar_variables): Same. (graphite_rename_variables): Renamed rename_variables. (move_phi_nodes): Removed. (get_false_edge_from_guard_bb): New. (build_iv_mapping): Do not insert the induction variable of a loop in the renaming iv map if the basic block does not belong to that loop. (register_old_new_names, graphite_copy_stmts_from_block, copy_bb_and_scalar_dependences): New. (translate_clast): Heavily reimplemented: copy basic blocks, do not move them. Finally, in call cleanup_tree_cfg in gloog. At each translation step call graphite_verify ensuring the consistency of the SSA, loops and dominators information. (collect_virtual_phis, find_vdef_for_var_in_bb, find_vdef_for_var_1, find_vdef_for_var, patch_phis_for_virtual_defs): Removed huge hack. (mark_old_loops, remove_dead_loops, skip_phi_defs, collect_scop_exit_phi_args, patch_scop_exit_phi_args, gbb_can_be_ignored, scop_remove_ignoreable_gbbs, ): Removed. (remove_sese_region, ifsese, if_region_entry, if_region_exit, if_region_get_condition_block, if_region_set_false_region, create_if_region_on_edge, move_sese_in_condition, bb_in_sese_p, sese_find_uses_to_rename_use, sese_find_uses_to_rename_bb, sese_add_exit_phis_edge, sese_add_exit_phis_var, rewrite_into_sese_closed_ssa): New. (gloog): Remove dead code. Early return if code cannot be generated. Call cleanup_tree_cfg once the scop has been code generated. (graphite_trans_scop_block, graphite_trans_loop_block): Do not block loops with less than two loops. (graphite_apply_transformations): Remove the call to scop_remove_ignoreable_gbbs. (limit_scops): When build_scop_loop_nests fails, continue on next scop. Fix open_scop.entry. (graphite_transform_loops): Call recompute_all_dominators: force the recomputation of correct CDI_DOMINATORS and CDI_POST_DOMINATORS. Call initialize_original_copy_tables and free_original_copy_tables to be able to copy basic blocks during code generation. When build_scop_loop_nests fails, continue on next scop. (value_clast): New union. (clast_to_gcc_expression): Fix type cast warning. 2008-12-11 Sebastian Pop <sebastian.pop@amd.com> * gcc.dg/graphite/pr37928.c: New. * gcc.dg/graphite/pr37883.c: New. * gcc.dg/graphite/pr38073.c: New. * gcc.dg/graphite/pr38125.c: New. * gfortran.dg/graphite/pr38083.f90: New. * gfortran.dg/graphite/pr37852.f90: New. * gfortran.dg/graphite/pr37980.f90: New. * gfortran.dg/graphite/id-2.f90: New. * gfortran.dg/graphite/id-4.f90: New. * gcc.dg/graphite/scop-18.c: Remove reduction, test for the number of detected scops. Copy exact same test for loop blocking... * gcc.dg/graphite/block-1.c: Fix the number of expected loops to be blocked as reductions are not handled. * gcc.dg/graphite/block-4.c: ...here. New. From-SVN: r142673
2008-12-11re PR tree-optimization/38464 (vect/costmodel/ppc/costmodel-slp-12.c fails ↵Ira Rosen2-2/+8
to vectorize) PR tree-optimization/38464 * gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c: Check that three loops are vectorized. From-SVN: r142672
2008-12-11Daily bump.GCC Administrator1-1/+1
From-SVN: r142666
2008-12-10re PR tree-optimization/36792 (Revision 137631 causes many failures)Richard Guenther2-0/+7
2008-12-10 Richard Guenther <rguenther@suse.de> PR tree-optimization/36792 * tree-ssa-pre.c (compute_avail): Handle tcc_comparison like tcc_binary. From-SVN: r142662
2008-12-10re PR c++/35319 (ICE throwing fixed-point types)Jason Merrill4-0/+73
PR c++/35319 * mangle.c (write_builtin_type): Add mangling for decimal floating point and fixed point types. (write_type): Pass FIXED_POINT_TYPE along. * cp-demangle.c (cplus_demangle_type): Support fixed-point types. (d_print_comp, d_dump): Likewise. From-SVN: r142661
2008-12-10re PR tree-optimization/36792 (Revision 137631 causes many failures)Daniel Berlin4-5/+15
2008-12-10 Daniel Berlin <dberlin@dberlin.org> PR tree-optimization/36792 * tree-ssa-pre.c (compute_avail): Don't insert defs into maximal set. From-SVN: r142659
2008-12-10re PR target/37033 (Revision 138733 breaks -g vs -g0 for PCH)Alexandre Oliva2-2/+13
gcc/ChangeLog: PR target/37033 * dwarf2out.c (saved_do_cfi_asm): New. (dwarf2out_do_frame): Take it into account. (dwarf2out_d_cfi_asm): Likewise. Set it when appropriate. libcpp/ChangeLog: PR target/37033 * pch.c (cpp_valid_state): Improve message for poisoned symbols. Allow for differences in __GCC_HAVE_DWARF2_CFI_ASM. From-SVN: r142652
2008-12-10re PR middle-end/38271 (Spurious / missing "... used uninitialized in this ↵Alexandre Oliva4-3/+35
function" warning) gcc/ChangeLog: PR middle-end/38271 * tree-sra.c (sra_build_bf_assignment): Avoid warnings for variables initialized from SRAed bit fields. gcc/testsuite/ChangeLog: PR middle-end/38271 * gcc.dg/torture/pr38271.c: New. From-SVN: r142651
2008-12-10Martin Guy <martinwguy@yahoo.it> PR target/37668Martin Guy2-1/+11
Martin Guy <martinwguy@yahoo.it> PR target/37668 * arm.c (arm_size_rtx_costs, case NEG): Don't fall through if the result will be in an FPU register. From-SVN: r142647
2008-12-10re PR tree-optimization/37416 (Failure to return number of loop iterations)Ira Rosen2-0/+6
PR tree-optimization/37416 * gcc.dg/vect/pr36630.c: Expect 1 vectorized loop. From-SVN: r142643
2008-12-10re PR target/37170 (gcc.dg/weak/weak-1.c)Eric Botcazou2-1/+11
PR target/37170 PR target/38448 * final.c (output_addr_const) <SYMBOL_REF>: Call assemble_external on the associated SYMBOL_REF_DECL node, if any. From-SVN: r142640
2008-12-1020020919-1.c: Correct target selector to alpha*-*-*.Uros Bizjak29-18/+61
* gcc.dg/20020919-1.c: Correct target selector to alpha*-*-*. * gcc.dg/pr31866.c: Ditto. * gcc.dg/torture/type-generic-1.c: Add -mieee for alpha*-*-* targets. * g++.dg/torture/type-generic-1.C: Ditto. * gfortran.dg/boz_9.f90: Ditto. * gfortran.dg/boz_14.f90: Ditto. * gfortran.dg/init_flag_3.f90: Ditto. * gfortran.dg/init_flag_4.f90: Ditto. * gfortran.dg/init_flag_5.f90: Ditto. * gfortran.dg/integer_exponentiation_1.f90: Ditto. * gfortran.dg/integer_exponentiation_5.F90: Ditto. * gfortran.dg/isnan_1.f90: Ditto. * gfortran.dg/isnan_2.f90: Ditto. * gfortran.dg/module_nan.f90: Ditto. * gfortran.dg/nan_1.f90: Ditto. * gfortran.dg/nan_2.f90: Ditto. * gfortran.dg/nan_3.f90: Ditto. * gfortran.dg/nan_4.f90: Ditto. * gfortran.dg/namelist_42.f90: Ditto. * gfortran.dg/namelist_43.f90: Ditto. * gfortran.dg/nearest_1.f90: Ditto. * gfortran.dg/nearest_2.f90: Ditto. * gfortran.dg/nearest_3.f90: Ditto. * gfortran.dg/pr37243.f: Ditto. * gfortran.dg/real_const_3.f90: Ditto. * gfortran.dg/transfer_simplify_2.f90: Ditto. * gfortran.fortran-torture/execute/intrinsic_spacing.x: New file. * gfortran.dg/default_format_denormal_1.f90: XFAIL on alpha. From-SVN: r142639
2008-12-10sync.md (sync_<optab>_12): Replace MIPS_SYNC_OP_12_NOT_NOP with ↵David Daney3-49/+78
MIPS_SYNC_OP_12_AND. * config/mips/sync.md (sync_<optab>_12): Replace MIPS_SYNC_OP_12_NOT_NOP with MIPS_SYNC_OP_12_AND. (sync_old_<optab>_12): Remove third paramater to MIPS_SYNC_OLD_OP_12 macro, replace MIPS_SYNC_OLD_OP_12_NOT_NOP with MIPS_SYNC_OLD_OP_12_AND. (sync_new_<optab>_12): Replace MIPS_SYNC_NEW_OP_12_NOT_NOP with MIPS_SYNC_NEW_OP_12_AND. (sync_nand_12): Replace MIPS_SYNC_OP_12_NOT_NOT with MIPS_SYNC_OP_12_XOR, reduce length attribute to 40. (sync_old_nand_12): Remove third paramater to MIPS_SYNC_OLD_OP_12 macro, replace MIPS_SYNC_OLD_OP_12_NOT_NOT with MIPS_SYNC_OLD_OP_12_XOR and reduce length attribute to 40. (sync_new_nand_12): Replace MIPS_SYNC_NEW_OP_12_NOT_NOT with MIPS_SYNC_NEW_OP_12_XOR. * config/mips/mips.h (MIPS_SYNC_OP_12, MIPS_SYNC_OP_12_NOT_NOP, MIPS_SYNC_OP_12_NOT_NOT,MIPS_SYNC_OLD_OP_12_NOT_NOP, MIPS_SYNC_OLD_OP_12_NOT_NOT, MIPS_SYNC_NEW_OP_12, MIPS_SYNC_NEW_OP_12_NOT_NOP, MIPS_SYNC_NEW_OP_12_NOT_NOT, MIPS_SYNC_NAND, MIPS_SYNC_OLD_NAND, MIPS_SYNC_NEW_NAND): Rewritten to implement new __sync_nand semantics. (MIPS_SYNC_OLD_OP_12): Implement new __sync_nand semantics, and remove third parameter. (MIPS_SYNC_OLD_OP_12_NOT_NOP_REG, MIPS_SYNC_OLD_OP_12_NOT_NOT_REG): Removed. (MIPS_SYNC_OP_12_NOT_NOP): Renamed to MIPS_SYNC_OP_12_AND. (MIPS_SYNC_OP_12_NOT_NOT): Renamed to MIPS_SYNC_OP_12_XOR. (MIPS_SYNC_OLD_OP_12_NOT_NOP): Renamed to MIPS_SYNC_OLD_OP_12_AND. (MIPS_SYNC_OLD_OP_12_NOT_NOT): Renamed to MIPS_SYNC_OLD_OP_12_XOR. (MIPS_SYNC_NEW_OP_12_NOT_NOP): Renamed to MIPS_SYNC_NEW_OP_12_AND. (MIPS_SYNC_NEW_OP_12_NOT_NOT): Renamed to MIPS_SYNC_NEW_OP_12_XOR From-SVN: r142638
2008-12-10graphite.c (graphite_transform_loops): Always call find_transform () in ↵Tobias Grosser2-0/+13
ENABLE_CHECKING. 2008-12-09 Tobias Grosser <grosser@fim.uni-passau.de> * graphite.c (graphite_transform_loops): Always call find_transform () in ENABLE_CHECKING. So we test these code paths, even if we do not generate code. From-SVN: r142630
2008-12-10Fix typo in commentMark Mitchell2-2/+2
From-SVN: r142629
2008-12-10re PR c++/37971 (Rejects default argument that is a template via access ↵Mark Mitchell7-30/+99
failure) PR c++/37971 * class.c (resolve_address_of_overloaded_function): Check accessibility of member functions unless FLAGS indicates otherwise. * call.c (standard_conversion): Adjust flags passed to instantiate_type. (convert_default_arg): Do not perform access checks. * cp-tree.h (tsubst_flags_t): Add tf_no_access_control. PR c++/37971 * g++.dg/overload/defarg2.C: New test. * g++.dg/overload/defarg3.C: Likewise. From-SVN: r142628
2008-12-10graphite.c (print_graphite_bb): Fix printing to file != dump_file.Tobias Grosser2-2/+6
2008-12-09 Tobias Grosser <grosser@fim.uni-passau.de> * graphite.c (print_graphite_bb): Fix printing to file != dump_file. From-SVN: r142626
2008-12-10Daily bump.GCC Administrator1-1/+1
From-SVN: r142623
2008-12-09gimplify.c (gimplify_init_constructor): Revert to using < rather than <= for ↵Jason Merrill2-8/+11
sparseness test. * gimplify.c (gimplify_init_constructor): Revert to using < rather than <= for sparseness test. From-SVN: r142618
2008-12-10re PR middle-end/38454 (memcpy folding breaks -D_FORTIFY_SOURCE=2 protection)Jakub Jelinek8-0/+97
PR middle-end/38454 * function.h (struct function): Add always_inline_functions_inlined. * ipa-inline.c (cgraph_early_inlining): Set it to true. * tree-optimize.c (execute_fixup_cfg): Likewise. * builtins.c (avoid_folding_inline_builtin): New function. (fold_call_expr): Don't optimize always_inline builtins before inlining. (fold_call_stmt): Likewise. (fold_builtin_call_array): Likewise. Don't call fold_builtin_varargs for BUILT_IN_MD builtins. * gcc.dg/memset-1.c: New test. * gcc.dg/memcpy-2.c: New test. From-SVN: r142617
2008-12-09re PR tree-optimization/37416 (Failure to return number of loop iterations)Jakub Jelinek2-0/+17
PR tree-optimization/37416 * tree-scalar-evolution.c (follow_ssa_edge_in_rhs): Handle NOP_EXPR. From-SVN: r142616
2008-12-09* doc/sourcebuild.texi (Test Directives): Fix formatting.Janis Johnson2-1/+5
From-SVN: r142611
2008-12-09tm.texi (TARGET_IRA_COVER_CLASSES): Modify description.Vladimir Makarov19-295/+719
2008-12-09 Vladimir Makarov <vmakarov@redhat.com> * doc/tm.texi (TARGET_IRA_COVER_CLASSES): Modify description. * doc/invoke.texi (-fira-region): Describe new option. (-fira-algorithm): Change the values. * ira-conflicts.c (build_conflict_bit_table, build_allocno_conflicts): Use ira_reg_classes_intersect_p. (ira_build_conflicts): Use flag flag_ira_region instead of flag_ira_algorithm. Prohibit usage of callee-saved likely spilled base registers for allocnos crossing calls. * flags.h (enum ira_algorithm): Redefine. (enum ira_region): New. (flag_ira_region): New. * cfgloopanal.c (estimate_reg_pressure_cost): Use flag_ira_region instead of flag_ira_algorithm. * toplev.c (flag_ira_algorithm): Change the initial value. (flag_ira_region): New. * ira-int.h (ira_reg_classes_intersect_p, ira_reg_class_super_classes): New. * ira-color.c (update_copy_costs): Use ira_reg_classes_intersect_p. Use right class to find hard reg index. (update_conflict_hard_regno_costs): Ditto. Add a new parameter. (assign_hard_reg): Ditto. Pass additional argument to update_conflict_hard_regno_costs. Do not uncoalesce for priority coloring. (allocno_priorities, setup_allocno_priorities, allocno_priority_compare_func): Move before color_allocnos. (color_allocnos): Add priority coloring. Use flag flag_ira_region instead of flag_ira_algorithm. (move_spill_restore): Check classes of the same reg allocno from different regions. (update_curr_costs): Use ira_reg_classes_intersect_p. (ira_reassign_conflict_allocnos): Ditto. * opts.c (decode_options): Always set up flag_ira. Set up flag_ira_algorithm. Warn CB can not be used for architecture. (common_handle_option): Modify code for -fira-algorithm. Add code to process -fira-region. * ira-lives.c (update_allocno_pressure_excess_length): Process superclasses too. (set_allocno_live, clear_allocno_live, mark_reg_live, mark_reg_dead, process_bb_node_lives): Ditto. * ira-emit.c (ira_emit): Fix insn codes. * ira-build.c (propagate_allocno_info): Use flag flag_ira_region instead of flag_ira_algorithm. (allocno_range_compare_func): Ignore classes for priority coloring. (setup_min_max_conflict_allocno_ids): Ditto. (ira_flattening): Use ira_reg_classes_intersect_p. * genpreds.c (write_enum_constraint_num): Output CONSTRAINT__LIMIT. * common.opt (fira-algorithm): Modify. (fira-region): New. * ira.c (setup_class_hard_regs): Initialize. (setup_cover_and_important_classes): Modify code setting class related info for priority coloring. (setup_class_translate): Ditto. (ira_reg_classes_intersect_p, ira_reg_class_super_classes): New. (setup_reg_class_intersect_union): Rename to setup_reg_class_relations. Add code for setting up new variables. (find_reg_class_closure): Do not check targetm.ira_cover_classes. (ira): Use flag flag_ira_region instead of flag_ira_algorithm. * ira-costs.c (common_classes): New. (print_costs): Use flag flag_ira_region instead of flag_ira_algorithm. (find_allocno_class_costs): Ditto. Use common_classes. Translate alt_class. (ira_costs): Allocate/deallocate common_classes. * config/m32c/m32.h (REG_ALLOC_ORDER): Add reg 19. (REG_CLASS_CONTENTS, reg_class, REG_CLASS_NAMES): New entries for R02A_REGS. * reload1.c (choose_reload_regs): Use MODE_INT for partial ints in smallest_mode_for_size. From-SVN: r142610
2008-12-10* config/rs6000/linux-unwind.h (get_regs): Constify casts.Ben Elliston2-5/+9
From-SVN: r142609
2008-12-09re PR fortran/36376 (-cpp -save-temps passes unknown options to f951)Daniel Franke2-10/+32
2008-12-09 Daniel Franke <franke.daniel@gmail.com> PR fortran/36376 PR fortran/37468 * lang-specs.h: Pass on -i* options to f951 to (probably) report them as unknown. Duplicate gcc.c (cpp_options), but omit -fpch-preprocess on -save-temps. From-SVN: r142608
2008-12-09re PR fortran/36457 (preprocessing: option -idirafter undefined for fortran)Daniel Franke5-1/+37
2008-12-09 Daniel Franke <franke.daniel@gmail.com> PR fortran/36457 * lang.opt: Added option idirafter. * cpp.h (gfc_cpp_add_include_path_after): New prototype. * cpp.c (gfc_cpp_handle_option): Recognize and handle OPT_dirafter. (gfc_cpp_add_include_path_after): New, adds user-defined search path after any other paths. * invoke.texi (idirafter): New. (no-range-check): Fixed entry in option-index. From-SVN: r142607
2008-12-09re PR fortran/37469 (invalid GMP usage on ↵Mikael Morin2-4/+19
gfortran.dg/parameter_array_init_3.f90) 2008-12-09 Mikael Morin <mikael.morin@tele2.fr> PR fortran/37469 * expr.c (find_array_element): Simplify array bounds. Assert that both bounds are constant expressions. From-SVN: r142606
2008-12-09re PR fortran/35983 (C_LOC in derived type constructor gives weird result)Mikael Morin4-14/+40
2008-12-09 Mikael Morin <mikael.morin@tele2.fr> PR fortran/35983 * trans-expr.c (gfc_trans_subcomponent_assign): Add se's pre and post blocks to current block. (gfc_trans_structure_assign): Remove specific handling of C_NULL_PTR and C_NULL_FUNPTR. 2008-12-09 Mikael Morin <mikael.morin@tele2.fr> PR fortran/35983 * gfortran.dg/pr35983.f90: New test. From-SVN: r142605
2008-12-09re PR testsuite/38420 (gcc.target/i386/pr37248-2.c doesn't work on ia32)H.J. Lu3-2/+8
2008-12-09 H.J. Lu <hongjiu.lu@intel.com> PR testsuite/38420 * gcc.target/i386/pr37248-2.c: Support hex dump on 32bit host. * gcc.target/i386/pr37248-3.c: Likewise. From-SVN: r142601
2008-12-09* predict.c (estimate_bb_frequencies): Fix test if profile is present.Jan Hubicka2-1/+5
From-SVN: r142600
2008-12-09re PR testsuite/37326 (gcc.dg/tree-ssa/ssa-store-ccp-3.c ↵Steve Ellcey2-1/+6
scan-tree-dump-times optimized "conststaticvariable" 1) PR testsuite/37326 * gcc.dg/tree-ssa/ssa-store-ccp-3.c: Skip on hppa*64-*-*. From-SVN: r142599
2008-12-09re PR tree-optimization/35468 (LHS of assignment can be folded to a constant ↵Jakub Jelinek5-2/+36
causing ICE) PR tree-optimization/35468 * tree-ssa-ccp.c (fold_stmt_r): Don't fold reads from constant string on LHS. * gcc.dg/pr35468.c: New test. * gcc.c-torture/compile/pr35468.c: New test. From-SVN: r142598
2008-12-09re PR tree-optimization/38445 (ICE in tree-ssa-struct-alias when compiling ↵Richard Guenther2-4/+18
grub-0.97) 2008-12-09 Richard Guenther <rguenther@suse.de> PR tree-optimization/38445 * tree-ssa-structalias.c (emit_pointer_definition): Only visit names once. (emit_alias_warning): Adjust. From-SVN: r142590
2008-12-09fixed-value.c (do_fixed_add): Add comment.Andrew Haley4-0/+12
2008-12-09 Andrew Haley <aph@redhat.com> * fixed-value.c (do_fixed_add): Add comment. * tree-ssa-loop-ivopts.c (iv_ca_cost): Likewise. * builtins.c (fold_builtin_sqrt): Likewise. From-SVN: r142589
2008-12-09re PR ada/38450 (ada bootstrap is broken)Jakub Jelinek3-6/+13
PR ada/38450 * gcc-interface/utils.c (finish_record_type): Use SET_TYPE_MODE. * gcc-interface/decl.c (gnat_to_gnu_entity, make_aligning_type): Likewise. From-SVN: r142588
2008-12-09function.c (aggregate_value_p): Get fntype from CALL_EXPR in any case.Kai Tietz4-14/+32
2008-12-09 Kai Tietz <kai.tietz@onevision.com> PR/38366 * function.c (aggregate_value_p): Get fntype from CALL_EXPR in any case. * calls.c (nitialize_argument_information): Add fntype argument and use it for calls.promote_function_args. (expand_call): Pass fntype to aggregate_value_p if no fndecl available and pass additional fntype to initialize_argument_information. * config/i386/i386.c (ix86_reg_parm_stack_space): Remove cfun part to get function abi type. (init_cumulative_args): Use for abi kind detection fntype, when no fndecl is available. From-SVN: r142584
2008-12-092008-12-09 Andreas Krebbel <krebbel1@de.ibm.com>Andreas Krebbel2-105/+76
* config/s390/s390.md (movti, movdi_64, movdi_31, *movsi_zarch, *movhi, *movqi, *mov<mode>_64, *mov<mode>_31, *mov<mode>_64dfp, *mov<mode>_64, *mov<mode>_31, mov<mode>): Remove Q->Q alternative. (Integer->BLKmode splitter): Removed. From-SVN: r142583
2008-12-09alpha.c (alpha_set_memflags): Process memory references in full insn sequence.Uros Bizjak2-10/+14
* config/alpha/alpha.c (alpha_set_memflags): Process memory references in full insn sequence. From-SVN: r142581
2008-12-09re PR c++/38410 (g++.dg/eh/crossjump1.C (internal compiler error))Jason Merrill4-4/+31
PR c++/38410 * gimplify.c (gimplify_init_constructor): Don't write out a static copy of the CONSTRUCTOR for TREE_ADDRESSABLE types or small sparse initializers. From-SVN: r142580
2008-12-09emutls.c (__emutls_get_address): Prototype.Ben Elliston2-0/+6
* emutls.c (__emutls_get_address): Prototype. (__emutls_register_common): Likewise. From-SVN: r142579
2008-12-09re PR middle-end/38084 ([graphite] ICE : in build_graphite_scops, at ↵Tobias Grosser4-22/+82
graphite.c:1829) 2008-12-09 Tobias Grosser <grosser@fim.uni-passau.de> PR middle-end/38084 Fix testsuite/gfortran.dg/graphite/id-3.f90. * graphite.c (scopdet_basic_block_info): Fix bug that found some regions more than once. * testsuite/gfortran.dg/graphite/id-3.f90: New. * gcc/testsuite/gcc.dg/graphite/pr38084.c: New. From-SVN: r142578
2008-12-09* config/dfp-bit.c (DFP_TO_INT): Remove unnecessary cast.Ben Elliston2-1/+5
From-SVN: r142577
2008-12-09* config/rs6000/darwin-ldouble.c (fmsub): Remove unused variable, v.Ben Elliston2-1/+5
From-SVN: r142576