- 12 Jun, 2005 4 commits
-
-
2005-06-12 James A. Morrison <phython@gcc.gnu.org> PR tree-optimization/14796 * fold-const.c (fold_binary): Transform (A >> C) << C into one BIT_AND_EXPR. <shift>: Transform (A OP c1) OP c2 into A OP (c1 + c2). From-SVN: r100853
James A. Morrison committed -
* config/rs6000/predicates.md (reg_or_arith_cint_operand): Delete. (reg_or_add_cint_operand): Rename from reg_or_add_cint64_operand. Handle SImode. (reg_or_sub_cint_operand): Likewise. (mask_operand): Handle DImode. (mask64_operand): Delete. (and64_operand): Delete. * config/rs6000/rs6000.c (num_insns_constant): Use mask_operand instead of mask64_operand. (print_operand): Likewise. (rs6000_rtx_costs): Use mask_operand and reg_or_add_cint_operand and reg_or_sub_cint_operand instead of *64_* variants. * config/rs6000/rs6000.h (EXTRA_CONSTRAINT): Use mask_operand instead of mask64_operand. * config/rs6000/rs6000.md: Use mask_operand and and_operand instead of *64_* variants. (FP): New. (add_op2): Delete. (add<mode>3): Use reg_or_add_cint_operand. (sub_op2): Delete. (sub<mode>3): Use reg_or_sub_cint_operand. (udiv<mode>3, div<mode>3, div<mode>3_no_mq, mod<mode>3, mov<mode>_internal2, mov<mode>, cmp<mode>, cmp<mode>, cmp<mode>_internal1, indirect_jump<mode>, ctr<mode>, ctr<mode>_internal1, ctr<mode>_internal2, ctr<mode>_internal5, ctr<mode>_internal6, save_fpregs_<mode>, return_internal_<mode>, return_and_restore_fpregs_<mode>, eh_set_lr_<mode>, various unnamed patterns): New. (udivsi3, divsi3, divsi3_no_mq, modsi3, movsi_internal2, movsi, cmpsi, cmpsi_internal1, indirect_jumpsi, ctrsi, ctrsi_internal1, ctrsi_internal2, ctrsi_internal5, ctrsi_internal6, save_fpregs_si, return_internal_si, return_and_restore_fpregs_si, eh_set_lr_si, udivdi3, divdi3, divdi3_no_mq, moddi3, movdi_internal2, movdi, cmpdi, cmpdi_internal1, indirect_jumpdi, ctrdi, ctrdi_internal1, ctrdi_internal2, ctrdi_internal5, ctrdi_internal6, save_fpregs_di, return_internal_di, return_and_restore_fpregs_di, eh_set_lr_di, movhi, movqi, cmpsf, cmpdf, cmptf, various unnamed patterns): Delete. From-SVN: r100852
Geoffrey Keating committed -
2005-06-11 Daniel Berlin <dberlin@dberlin.org> Fix PR tree-optimization/22005 Fix PR tree-optimization/22025 * tree-ssa-structalias.c (struct variable_info): Add has_union member. (create_variable_info_for): Mark variables containing unions. Don't sort the field stack if notokay is true. (find_what_p_points_to): Convert variables containing unions back to their SFT's if necessary. From-SVN: r100851
Daniel Berlin committed -
[[Split portion of a mixed commit.]] From-SVN: r100849.2
GCC Administrator committed
-
- 11 Jun, 2005 8 commits
-
-
PR fortran/17792 PR fortran/21375 * gfortran.dg/deallocate_statO.f90: New test. From-SVN: r100847
Steven G. Kargl committed -
* rtl.h (to_rtx_code): Remove. * machmode.h (to_machine_mode): Likewise. * read-rtl.c (apply_mode_macro): Replace to_machine_mode with explicit cast. (apply_mode_maps): Likewise. (read_rtx_1): Likewise. (apply_code_macro): Replace to to_rtx_code with explicit cast. (check_code_macro): Likewise. (read_rtx_1): Likewise. From-SVN: r100846
Gabriel Dos Reis committed -
PR fortran/17792 PR fortran/21375 * trans-array.c (gfc_array_deallocate): pstat is new argument (gfc_array_allocate): update gfc_array_deallocate() call. (gfc_trans_deferred_array): ditto. * trans-array.h: update gfc_array_deallocate() prototype. * trans-decl.c (gfc_build_builtin_function_decls): update declaration * trans-stmt.c (gfc_trans_deallocate): Implement STAT= feature. From-SVN: r100845
Steven G. Kargl committed -
* c-typeck.c (convert_for_assignment): Avoid cheking OPT_Wc___compat, as it is always true. From-SVN: r100843
Gabriel Dos Reis committed -
2005-06-11 Thomas Koenig <Thomas.Koenig@onlinde.de> PR libfortran/21333 * Makefile.am: Add in_pack_c4.c, in_pack_c8.c, in_unpack_c4.c and in_unpack_c8.c. * Makefile.in: Regenerate. * libgfortran.h: Declare internal_pack_c4, internal_pack_c8, internal_unpack_c4 and internal_unpack_c8. * m4/in_pack.m4: Use rtype_ccode insteald of rtype_kind in function name. Use sizeof (rtype_name) as size for memory allocation. * m4/in_unpack.m4: Use rtype_ccode insteald of rtype_kind in function name. Use sizeof (rtype_name) for calculation of sizes for memcpy. * runtime/in_pack_generic.c: For real, integer and logical call internal_pack_4 if size==4 and internal_pack_8 if size==8. For complex, call internal_pack_c4 if size==8 and internal_pack_c8 if size==16. * runtime/in_unpack_generic.c: For real, integer and logical call internal_unpack_4 if size==4 and internal_unpack_8 if size==8. For complex, call internal_unpack_c4 if size==8 and internal_unpack_c8 if size==16. * generated/in_pack_i4.c: Regenerated. * generated/in_pack_i8.c: Regenerated. * generated/in_unpack_i4.c: Regenerated. * generated/in_unpack_i8.c: Regenerated. * generated/in_pack_c4.c: New file. * generated/in_pack_c8.c: New file. * generated/in_unpack_c4.c: New file. * generated/in_unpack_c8.c: New file. 2005-05-11 Thomas Koenig <Thomas.Koenig@online.de> * gfortran.fortran-torture/execute/in-pack.f90: New test. From-SVN: r100842
Thomas Koenig committed -
From-SVN: r100841
David Edelsohn committed -
lambda-code.c (replace_uses_equiv_to_x_with_y): Verify the step is an INTEGER_CST before calling int_cst_value. 2005-06-11 Daniel Berlin <dberlin@dberlin.org> * lambda-code.c (replace_uses_equiv_to_x_with_y): Verify the step is an INTEGER_CST before calling int_cst_value. From-SVN: r100839
Daniel Berlin committed -
[[Split portion of a mixed commit.]] From-SVN: r100836.2
GCC Administrator committed
-
- 10 Jun, 2005 13 commits
-
-
PR target/21981 * config/i386/i386.c (ix86_function_value_regno_p): Return true for FIRST_MMX_REG if TARGET_MMX. (ix86_return_in_memory): Return 1 for MMX/3dNow vectors. Delete wrong comment. (ix86_struct_value_rtx): Emit warning for MMX ABI violations. (ix86_value_regno): Return FIRST_MMX_REG for MMX vector modes. From-SVN: r100832
Uros Bizjak committed -
lambda-code.c (replace_uses_equiv_to_x_with_y): Check step and access function against chrec_dont_know. 2005-06-10 Daniel Berlin <dberlin@dberlin.org> * lambda-code.c (replace_uses_equiv_to_x_with_y): Check step and access function against chrec_dont_know. From-SVN: r100831
Daniel Berlin committed -
2005-06-10 Daniel Berlin <dberlin@dberlin.org> * lambda-code.c (replace_uses_of_x_with_y): Renamed and rewritten slightly. (exit_phi_for_loop_p): New function. (can_put_in_inner_loop): Ditto. (can_convert_to_perfect_nest): Ditto. (perfect_nestify): Create iv with right type. Rewrite statements in correct order. From-SVN: r100827
Daniel Berlin committed -
tree-ssa-alias.c (new_type_alias): Use existing type tag if VAR has just one in its may_aliases list. 2005-06-10 Keith Besaw <kbesaw@us.ibm.com> * tree-ssa-alias.c (new_type_alias): Use existing type tag if VAR has just one in its may_aliases list. From-SVN: r100824
Keith Besaw committed -
PR c++/10611 * cvt.c (build_expr_type_conversion): Same. * typeck.c (build_binary_op): Handle vectors. (common_type): Same. (type_after_usual_arithmetic_conversions): Same. * testsuite/g++.dg/conversion/simd2.C: New. From-SVN: r100823
Aldy Hernandez committed -
PR 17961 * config/rs6000/sysv4.h (ROUND_TYPE_ALIGN): Remove. * config/rs6000/linux64.h (ROUND_TYPE_ALIGN): Remove vector check. * testsuite/gcc.dg/simd-3.c: New. From-SVN: r100820
Aldy Hernandez committed -
Oked by David Edelsohn. From-SVN: r100818
Fariborz Jahanian committed -
tree-vect-analyze.c (vect_analyze_data_ref_dependence): DRs whose dependence-distance modulo VF is 0 are recorded in the... * tree-vect-analyze.c (vect_analyze_data_ref_dependence): DRs whose dependence-distance modulo VF is 0 are recorded in the SAME_ALIGN_REFs VEC in each DR. (vect_enhance_data_refs_alignment): Avoid 80 column overflow. The alignment information of DRs that are in the SAME_ALIGN_REFs VEC of the DR we want to peel for, is set to 0. * tree-vect-transform.c (vect_do_peeling_for_loop_bound): Fix printout. * tree-vectorizer.c (destroy_loop_vec_info): Free the SAME_ALIGN_REFs VEC. * tree-vectorizer.h (dr_p): New type. Defined to use the VEC API. (_stmt_vec_info): Added new field same_align_refs. (STMT_VINFO_SAME_ALIGN_REFS): New macro. From-SVN: r100817
Dorit Nuzman committed -
From-SVN: r100816
Nathan Sidwell committed -
* config/rs6000/linux.h (NO_PROFILE_COUNTERS): Define. * config/rs6000/linux64.h (NO_PROFILE_COUNTERS): Define as 1. * config/rs6000/rs6000.c (output_function_profiler): Obey NO_PROFILE_COUNTERS. Handle TARGET_SECURE_PLT. Use "bcl 20,31" for -fPIC. Delete save_lr and substitute its value into strings. From-SVN: r100814
Alan Modra committed -
2005-06-09 Dale Johannesen <dalej@apple.com> * config/i386/i386.c (optimization_options): Make -fno-math-errno the default on Darwin. * config/rs6000/rs6000.c (optimization_options): Ditto. * doc/invoke.texi (-fno-math-errno): Document. 2005-06-09 Dale Johannesen <dalej@apple.com> * config/rs6000/rs6000.c (TARGET_INSN_VALID_WITHIN_DOLOOP): Change to TARGET_INVALID_WITHIN_DOLOOP. From-SVN: r100813
Dale Johannesen committed -
* config/rs6000/rs6000.md (eq): Convert to define_insn_and_split. * config/rs6000/predicates.md (scc_eq_operand): New. From-SVN: r100812
David Edelsohn committed -
[[Split portion of a mixed commit.]] From-SVN: r100810.2
GCC Administrator committed
-
- 09 Jun, 2005 15 commits
-
-
* config/sh/sh.md (mextr_rl): Set buffer size properly. (*mextr_lr): Likewise. From-SVN: r100808
Kaz Kojima committed -
From-SVN: r100807
Gabriel Dos Reis committed -
PR c/21759 * c.opt (Wc++-compat): New. * doc/invoke.texi (-Wc++-compat): Document. * c-typeck.c (convert_for_assignment): Check for implicit conversion void* -> T*. testsuite/ * gcc.dg/Wcxx-compat-1.c: New. From-SVN: r100806
Gabriel Dos Reis committed -
2005-06-09 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/21480 * m4/reshape.m4: Use sizeof (rtype_name) for sizes to be passed to reshape_packed. * generated/reshape_c4.c: Regenerated. * generated/reshape_c8.c: Regenerated. * generated/reshape_i4.c: Regenerated. * generated/reshape_i8.c: Regenerated. 2005-06-09 Thomas Koenig <Thomas.Koenig@online.de> PR libfortran/21480 * gfortran.dg/reshape-complex.f90: Add a test for a packed complex array. From-SVN: r100805
Thomas Koenig committed -
* machmode.h (to_machine_mode): New. * rtl.h (to_rtx_code): Likewise. * read-rtl.c (apply_mode_macro): Convert mode to machine_mode. (print_c_condition): Convert return value of htab_find(). (apply_code_macro): Add explicit cast when convertin to enums. (apply_mode_maps): Likewise. (check_code_macro): Likewise. (read_rtx_1): Likewise. From-SVN: r100804
Gabriel Dos Reis committed -
* config/ia64/ia64.c (update_set_flags): Just return for IF_THEN_ELSE. Use SCALAR_FLOAT_MODE_P. * config/ia64/vect.md (vcondv2sf): Remove code check on comparison. (fselect): Rename from fpcmp; use %F. (fpcmp): New. From-SVN: r100803
Richard Henderson committed -
cgraphunit.c (cgraph_create_edges): Do not walk BLOCK; finalize local statics when doing unit-at-a-time. * cgraphunit.c (cgraph_create_edges): Do not walk BLOCK; finalize local statics when doing unit-at-a-time. (cgraph_varpool_assemble_pending_decls): Output debug info. * dwarf2out.c (decls_for_scope): Skip local statics. (dwarf2out_decl): Handle local statics. * passes.c (rest_of_decl_compilation): Do not differentiate local and global statics in unit-at-a-time. * tree-inline.c (remap_decls): Put local static into unexpanded_vars_list rather than introducing duplicated VAR_DECL node. From-SVN: r100802
Jan Hubicka committed -
2005-06-09 Daniel Berlin <dberlin@dberlin.org> * config/rs6000/rs6000.c: (rs6000_insn_valid_within_doloop): Fix prototype. From-SVN: r100801
Daniel Berlin committed -
2005-06-08 Daniel Berlin <dberlin@dberlin.org> * Makefile.in (OBJS-common): Add tree-ssa-structalias.o. * tree-flow.h (find_what_p_points_to): Add prototype. (push_fields_onto_fieldstack): Ditto. (sort_fieldstack): Ditto. * tree-optimize.c (init_tree_optimization_passes): Add pass_build_pta and pass_del_pta. * tree-pass.h (pass_build_pta): New structure. (pass_del_pta): Ditto. * tree-ssa-alias.c (compute_flow_sensitive_aliasing): Disambiguate using new alias analyzer. (push_fields_onto_fieldstack): Removed from here. (bitpos_of_field): Ditto. (fieldoff_compare): Ditto. * tree-ssa-structalias.c: New file. * tree-ssa-structalias.h: Ditto. From-SVN: r100800
Daniel Berlin committed -
/: * c-typeck.c (build_c_cast): Check type punning on COMPONENT_REF too. testsuite: * gcc.dg/alias-8.c: New. From-SVN: r100799
Nathan Sidwell committed -
* config/bfin/bfin.c (enum bfin_builtins): Moved here from... * config/bfin/bfin.h (enum bfin_builtins): ... here. From-SVN: r100798
Bernd Schmidt committed -
2005-06-09 Adrian Straetling <straetling@de.ibm.com> * target.h (insn_valid_within_doloop): Rename into "invalid_within_doloop". Change return type to "const char *". Update Comment. * targhooks.h (default_insn_valid_within_doloop): Rename into "default_invalid_within_doloop". * targhooks.c (default_insn_valid_within_doloop): Likewise. Update Comment. * target-def.h (TARGET_INSN_VALID_WITHIN_DOLOOP): Rename target hook into "TARGET_INVALID_WITHIN_DOLOOP". Default it to "default_invalid_within_doloop". * hooks.c (hook_constcharptr_rtx_null): New function. (hook_bool_rtx_true): Remove. * hooks.h (hook_constcharptr_rtx_null): Declare. (hook_bool_rtx_true): Remove. * loop-doloop.c (doloop_valid_p): Temporarily store return value of "invalid_within_doloop" and print error message if non-null. Update Comment. * doc/tm.texi: Update documentation. * config/s390/s390.c: Adjust to new hook name and new default hook. * config/rs6000/rs6000.c: (rs6000_insn_valid_within_doloop): Rename into "rs6000_invalid_within_doloop". (rs6000_invalid_within_doloop): Change return type to "static const char *" and replace return values. Update Comment. From-SVN: r100797
Adrian Straetling committed -
* config/bfin/bfin.opt (mlong-calls): New. * config/bfin/predicates.md (call_insn_operand): Disallow SYMBOL_REF if TARGET_LONG_CALLS. From-SVN: r100796
Bernd Schmidt committed -
* gjavah.c (error): Add ATTRIBUTE_PRINTF_1. * java-tree.h (parse_error_context): Move... * parse.h (parse_error_context): ... here, add ATTRIBUTE_GCC_DIAG. * parse.y (parse_warning_context): Add ATTRIBUTE_GCC_DIAG. * verify-impl.c (debug_print): Add ATTRIBUTE_PRINTF_1. From-SVN: r100795
Kaveh R. Ghazi committed -
PR tree-opt/20610 * tree.h (DECL_COMPLEX_GIMPLE_REG_P): New. (struct tree_decl): Add gimple_reg_flag. * integrate.c (copy_decl_for_inlining): Copy it. * gimplify.c (internal_get_tmp_var): Set it. (gimplify_bind_expr): Likewise. (gimplify_function_tree): Likewise. (gimplify_modify_expr_complex_part): New. (gimplify_modify_expr): Use it. * tree-gimple.c (is_gimple_reg_type): Allow complex. (is_gimple_reg): Allow complex with DECL_COMPLEX_GIMPLE_REG_P set. * tree-complex.c (complex_lattice_t): New. (complex_lattice_values, complex_variable_components): New. (some_nonzerop, find_lattice_value, is_complex_reg, init_parameter_lattice_values, init_dont_simulate_again, complex_visit_stmt, complex_visit_phi, create_components, update_complex_components, update_parameter_components, update_phi_components, update_all_vops, expand_complex_move): New. (extract_component): Handle INDIRECT_REF, COMPONENT_REF, ARRAY_REF, SSA_NAME. (update_complex_assignment): Use update_complex_components; handle updates of return_expr properly. (expand_complex_addition): Use complex lattice values. (expand_complex_multiplication): Likewise. (expand_complex_division): Likewise. (expand_complex_libcall): Use update_complex_components. (expand_complex_comparison): Use update_stmt. (expand_complex_operations_1): Use expand_complex_move, retrieve lattice values. (tree_lower_complex): Compute lattice values. (tree_lower_complex_O0): Duplicate from tree_lower_complex. (pass_lower_complex_O0): Rename from pass_lower_complex. (pass_lower_complex, gate_no_optimization): New. * tree-optimize.c (init_tree_optimization_passes): Update for complex pass changes. * tree-pass.h (pass_lower_complex_O0): Declare. From-SVN: r100793
Richard Henderson committed
-