- Nov 23, 2006
-
-
Joern Rennecke authored
From-SVN: r119133
-
Manuel López-Ibáñez authored
2006-11-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org> * real.h (real_isinteger): Declare. * real.c (real_isinteger): Define. * builtins.c (integer_valued_real_p): Use it. From-SVN: r119130
-
Manuel López-Ibáñez authored
2006-11-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR c/9072 * c.opt (Wtraditional-conversion): New. (Wconversion): Update description. * c-typeck.c (convert_arguments): Warnings for prototypes causing type conversions different from what would happen in the absence of prototype are now handled by Wtraditional-conversion. * doc/invoke.texi (Wtraditional-conversion): New. (Wconversion): Update description. * doc/trouble.texi (Wconversion): Replace Wconversion by Wtraditional-conversion. testsuite/ PR c/9072 * gcc.dg/builtin-protos-1.c: Replace Wconversion by Wtraditional-conversion. * gcc.dg/overflow-warn-2.c: Likewise. * gcc.dg/Wconversion.c: Likewise. Renamed as Wtraditional-conversion.c . * gcc.dg/Wconversion-2.c: Likewise. Renamed as Wtraditional-conversion-2.c . * gcc.dg/dfp/Wconversion-2.c: Likewise. Renamed as Wtraditional-conversion-2.c * gcc.dg/Wconversion-negative-constants.c: New. From-SVN: r119129
-
Andrew Pinski authored
predict.c (tree_estimate_probability): Check to make sure current_loops is non null before calling flow_loops_dump. 2006-11-23 Andrew Pinski <pinskia@gmail.com> * predict.c (tree_estimate_probability): Check to make sure current_loops is non null before calling flow_loops_dump. 2006-11-23 Andrew Pinski <pinskia@gmail.com> * gcc.dg/tree-ssa/dump-1.c: New test. From-SVN: r119128
-
Bernd Schmidt authored
* var-tracking.c (emit_note_insn_var_location): Revert previous patch. From-SVN: r119127
-
Manuel López-Ibáñez authored
2006-11-23 Manuel Lopez-Ibanez <manu@gcc.gnu.org> * MAINTAINERS (Write After Approval): Add myself. From-SVN: r119126
-
David Ung authored
gcc: * config/mips/mips.h (ISA_HAS_FP4): Add MIPS32R2 + 64bit fpu combination. (ISA_HAS_MXHC1): True if ISA supports mfhc1 and mthc1 opcodes. (ASM_SPEC): Pass along -mfp32 and -mfp64. * config/mips/mips.c (mips_split_64bit_move): Use gen_mthc1 to set high part of FP register when in 64-bit FP register mode. Similarly use gen_mfhc1 to load high part of FP register. (override_options): Allow -mgp32 and -mfp64 combination if ISA_HAS_MXHC1 (currently for O32 only). (mips_cannot_change_mode_class): If floating-point registers are bigger than word size. disallow conversion of float register from a large integer mode to a float mode smaller than the float register size. (mips_class_max_nregs): Handle float registers case seperately. * config/mips/mips.md (define_constants): Add UNSPEC_MFHC1, UNSPEC_MTHC1. (movdi_32bit): Use !TARGET_FLOAT64 in condition pattern. (movdf_hardfloat_32bit): Similarly. (movdi_gp32_fp64): New DImode pattern for MIPS32R2 which optionally support a full 64-bit fpu. (mthc1): New pattern to generate MTHC1 instruction. (mfhc1): New pattern to generate MFHC1 instruction. * doc/invoke.texi (MIPS Options): Document the -mgp32 -mfp64 option for the MIPS32R2 and mention its use under O32 ABI. gcc/testsuite: * gcc.target/mips/mips.exp (dg-mips-options): Handle parsing of -mfp64, allowable when ISA >= 33 and float is enabled. * gcc.target/mips/mips32r2-mxhc1.c: New test for checking the use of mthc1 and mfhc1 patterns. From-SVN: r119124
-
Bernd Schmidt authored
* var-tracking.c (emit_note_insn_var_location): Take care not to cause verify_flow_info failures. From-SVN: r119116
-
Daniel Berlin authored
tree-ssa-structalias.c: Remove edge weights in favor of just processing them as complex constraints. 2006-11-22 Daniel Berlin <dberlin@dberlin.org> * tree-ssa-structalias.c: Remove edge weights in favor of just processing them as complex constraints. (struct constraint_graph): Remove weighted succs and preds. Rename nonweighted succs and preds. (constraint_edge): Removed. (constraint_edge_t): Ditto. (constraint_edge_pool): Ditto. (new_constraint_edge): Ditto. (constraint_edge_equal): Ditto. (constraint_edge_less): Ditto. (constraint_edge_vec_find): Ditto. (erase_self_graph_edge): Ditto. (add_graph_edge): Removed. (get_graph_weights): Ditto. (allocate_graph_weights): Ditto. ( (valid_weighted_graph_edge): Ditto (bitmap_other_than_zero_bit_set): Ditto. (int_add_graph_edge): Renamed to add_graph_edge. (clear_edges_for_node): Remove support for weighted edges. (merge_graph_nodes): Ditto. (valid_graph_edge): Ditto. (build_constraint_graph): Ditto. (scc_visit): Ditto. (collapse_nodes): Ditto. (process_unification_queue): Ditto. (topo_visit): Ditto. (do_ds_constraint): Ditto. (perform_var_subsitution): Ditto. (solve_graph): Ditto. (init_alias_vars): Ditto. (delete_points_to_sets): Ditto. (do_complex_constraint): Support offsetted copies here. From-SVN: r119114
-
Daniel Berlin authored
From-SVN: r119113
-
Daniel Berlin authored
From-SVN: r119112
-
Ben Elliston authored
* config/spu/spu_intrinsics.h (SPU_RdEventStatMask): Rename to SPU_RdEventMask. * config/spu/spu_mfcio.h (spu_read_event_mask): Update. From-SVN: r119111
-
Ben Elliston authored
* config/spu/spu_mfcio.h (struct mfc_list_element): Change width of size bitfield. From-SVN: r119110
-
GCC Administrator authored
From-SVN: r119108
-
- Nov 22, 2006
-
-
Ben Elliston authored
From-SVN: r119103
-
Zdenek Dvorak authored
re PR tree-optimization/29921 (internal compiler error: in set_lattice_value, at tree-ssa-ccp.c:437) PR tree-optimization/29921 * fold-const.c (operand_equal_p): Without HONOR_SIGNED_ZEROS, consider signed and unsigned zero equal. * gcc.dg/pr29921.c: New test. From-SVN: r119102
-
Tobias Schlüter authored
fortran/ PR fortran/29441 * intrinsic.c (gfc_intrinsic_func_interface): Always check if intrinsic is allowed in initialization expression. testsuite/ PR fortran/29441 * gfortran.dg/initialization_4.f90: New test. From-SVN: r119101
-
Peter Bergner authored
* config/rs6000/rs6000.c (get_store_dest): New. (adjacent_mem_locations): Use get_store_dest() to get the rtl of the store destination. From-SVN: r119099
-
Joseph Myers authored
* config/rs6000/spe.md (SPE64): New mode macro. (mov_sidf_e500_subreg0): Change to mov_si<mode>_e500_subreg0. Add memory load. (mov_si<mode>_e500_subreg0_2): New. (mov_sidf_e500_subreg4): Change to mov_si<mode>_e500_subreg4. Add memory load. (mov_si<mode>_e500_subreg4_2): New. * config/rs6000/predicates.md (input_operand): Do not allow invalid E500 subregs. (rs6000_nonimmediate_operand): Check for invalid E500 subregs also if TARGET_SPE. * config/rs6000/rs6000.c (invalid_e500_subreg): Check for subregs involving DFmode if TARGET_E500_DOUBLE. Check for subregs involving vector modes if TARGET_SPE. From-SVN: r119094
-
Kaz Kojima authored
Revert 2006-11-12 Kaz Kojima <kkojima@gcc.gnu.org> * reorg.c (emit_delay_sequence): Copy the delay slot insn. From-SVN: r119093
-
Philipp Thomas authored
From-SVN: r119092
-
Antony King authored
2006-11-22 Antony King <anthony.king@st.com> J"orn Rennecke <joern.rennecke@st.com> * include/Makefile.am (stamp-host): Remove CCODECVT_H line. * include/Makefile.in: Regenerate. Co-Authored-By:
J"orn Rennecke <joern.rennecke@st.com> From-SVN: r119091
-
Bernd Schmidt authored
* config/bfin/predicates.md (d_register_operand, mem_p_address_operand, mem_i_address_operand): New predicates. * config/bfin/bfin.c (bfin_issue_rate): New function. (TARGET_SCHED_ISSUE_RATE): New macro. * config/bfin/bfin.md (addrtype): New attribute. (slot0, slot1, slot2, store, pregs): New cpu_units. (core): Now a define_reservation. (alu): Remove some insn types from this reservation. (dsp32, load32, loadp, loadi, store32, storep, storei, multi): New insn reservations. (dummy reservation): Don't trigger for mcld insns. (absence_sets): Two new absence sets to enforce slot ordering. (popsi_insn): Set addrtype. From-SVN: r119090
-
Ira Rosen authored
* doc/c-tree.texi: Document new tree codes. * doc/md.texi: Document new optabs. * tree-pretty-print.c (dump_generic_node): Handle print of new tree codes. * optabs.c (optab_for_tree_code, init_optabs): Handle new optabs. * optabs.h (optab_index): Add new. (vec_extract_even_optab, vec_extract_odd_optab, vec_interleave_high_optab, vec_interleave_low_optab): New optabs. * genopinit.c (vec_extract_even_optab, vec_extract_odd_optab, vec_interleave_high_optab, vec_interleave_low_optab): Initialize new optabs. * expr.c (expand_expr_real_1): Add implementation for new tree codes. * tree-vectorizer.c (new_stmt_vec_info): Initialize new fields. * tree-vectorizer.h (stmt_vec_info): Add new fields for interleaving along with macros for their access. * tree-data-ref.h (first_location_in_loop, data_reference): Update comment. * tree-vect-analyze.c (toplev.h): Include. (vect_determine_vectorization_factor): Fix indentation. (vect_insert_into_interleaving_chain, vect_update_interleaving_chain, vect_equal_offsets): New functions. (vect_analyze_data_ref_dependence): Add argument for interleaving check. Check for interleaving if it's true. (vect_check_dependences): New function. (vect_analyze_data_ref_dependences): Call vect_check_dependences for every ddr. Call vect_analyze_data_ref_dependence with new argument. (vect_update_misalignment_for_peel): Update for interleaving. (vect_verify_datarefs_alignment): Check only first data-ref for interleaving. (vect_enhance_data_refs_alignment): Update for interleaving. Check only first data-ref for interleaving. (vect_analyze_data_ref_access): Check interleaving, update interleaving data. (vect_analyze_data_refs): Call compute_data_dependences_for_loop with different parameters. * tree.def (VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR, VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): New tree codes. * tree-inline.c (estimate_num_insns_1): Add cases for new codes. * tree-vect-transform.c (vect_create_addr_base_for_vector_ref): Update step in case of interleaving. (vect_strided_store_supported, vect_permute_store_chain): New functions. (vectorizable_store): Handle strided stores. (vect_strided_load_supported, vect_permute_load_chain, vect_transform_strided_load): New functions. (vectorizable_load): Handle strided loads. (vect_transform_stmt): Add argument. Handle strided stores. Check that vectorized stmt exists for patterns. (vect_gen_niters_for_prolog_loop): Update calculation for interleaving. (vect_transform_loop): Remove stmt_vec_info for strided stores after whole chain vectorization. * config/rs6000/altivec.md (UNSPEC_EXTEVEN, UNSPEC_EXTODD, UNSPEC_INTERHI, UNSPEC_INTERLO): New constants. (vpkuhum_nomode, vpkuwum_nomode, vec_extract_even<mode>, vec_extract_odd<mode>, altivec_vmrghsf, altivec_vmrglsf, vec_interleave_high<mode>, vec_interleave_low<mode>): Implement. From-SVN: r119088
-
Jerry DeLisle authored
2006-11-22 Jerry DeLisle <jvdelisle@gcc.gnu.org> * io/io.h (unit_flags): Add new flag has_recl. * io.open.c (new_unit): Set flag if RECL= was specified. * io/transfer.c (us_write): If flag set, leave recl as initialized by new_unit. From-SVN: r119087
-
GCC Administrator authored
From-SVN: r119084
-
Steven Bosscher authored
* cse.c (enum taken): Remove PATH_AROUND. (addr_affects_sp_p, invalidate_skipped_set, invalidate_skipped_block): Remove. (cse_end_of_basic_block): Remove skip_blocks and related code. (cse_main): Don't test for flag_cse_skip_blocks. Update cse_end_of_basic_block call. (cse_basic_block): Likewise. Remove PATH_AROUND case. Remove code to lengthen the path if a jump was simplified. From-SVN: r119079
-
Zdenek Dvorak authored
PR rtl-optimization/29924 * loop-unroll.c (split_edge_and_insert): Handle the case insns is NULL. (unroll_loop_runtime_iterations): Assert that the argument passed to split_edge_and_insert is not NULL. * loop-doloop.c (add_test): Ditto. From-SVN: r119078
-
Paul Thomas authored
2006-11-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/25087 * resolve.c (resolve_fl_procedure): Add an error if an external automatic character length function does not have an explicit interface. 2006-11-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/25087 * gfortran.dg/auto_char_len_4.f90: New test. From-SVN: r119077
-
Paul Thomas authored
2006-11-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/29652 * interface.c (check_interface1): Use a local value, instead of the dummy, as the inner iterator over interface symbols. 2006-11-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/29652 * gfortran.dg/generic_7.f90: New test. * gfortran.dg/defined_operators_1.f90: Add new error. From-SVN: r119076
-
- Nov 21, 2006
-
-
Zdenek Dvorak authored
* tree-loop-linear.c (linear_transform_loops): Use single_exit accessor functions. * tree-ssa-loop-niter.c (loop_only_exit_p): Ditto. * cfgloopmanip.c (update_single_exits_after_duplication, update_single_exit_for_duplicated_loop, loop_version): Ditto. * tree-scalar-evolution.c (get_loop_exit_condition, get_exit_conditions_rec, loop_closed_phi_def, number_of_iterations_in_loop, scev_const_prop): Ditto. * tree-ssa-loop-ivopts.c (single_dom_exit): Ditto. * modulo-sched.c (generate_prolog_epilog, loop_canon_p, sms_schedule): Ditto. * tree-ssa-loop-ivcanon.c (canonicalize_loop_induction_variables): Ditto. * tree-vectorizer.c (slpeel_update_phis_for_duplicate_loop, slpeel_update_phi_nodes_for_guard1, slpeel_update_phi_nodes_for_guard2, slpeel_make_loop_iterate_ntimes, slpeel_tree_duplicate_loop_to_edge_cfg, slpeel_can_duplicate_loop_p, slpeel_verify_cfg_after_peeling, slpeel_tree_peel_loop_to_edge): Ditto. * tree-if-conv.c (if_convertible_loop_p): Ditto. * tree-vect-analyze.c (vect_analyze_operations, vect_stmt_relevant_p, vect_analyze_loop_form): Ditto. * lambda-code.c (lambda_loopnest_to_gcc_loopnest, exit_phi_for_loop_p, can_convert_to_perfect_nest, perfect_nestify): Ditto. * tree-vect-transform.c (vect_create_epilog_for_reduction, vect_update_ivs_after_vectorizer, vect_do_peeling_for_loop_bound, vect_transform_loop): Ditto. * cfgloop.c (mark_single_exit_loops, verify_loop_structure): Ditto. (single_exit, set_single_exit): New functions. * cfgloop.h (struct loop): Rename single_exit field to single_exit_. (single_exit, set_single_exit): Declare. * doc/loop.texi: Undocument single_exit field. Document single_exit accessor function. From-SVN: r119075
-
Zdenek Dvorak authored
PR tree-optimization/29902 * tree-ssa-loop-manip.c (can_unroll_loop_p): Return false if any involved ssa name appears in abnormal phi node. * g++.dg/tree-ssa/pr29902.C: New test. From-SVN: r119074
-
Paul Thomas authored
2006-11-21 Paul Thomas <pault@gcc.gnu.org> PR fortran/29820 * trans-array.c (gfc_get_derived_type): Once done, spread the backend_decl to all identical derived types in all sibling namespaces. 2006-11-21 Paul Thomas <pault@gcc.gnu.org> PR fortran/29820 * gfortran.dg/used_types_13.f90: New test. From-SVN: r119073
-
Bob Wilson authored
* config/xtensa/xtensa.c (xtensa_char_to_class): Delete. (xtensa_const_ok_for_letter_p): Delete. (xtensa_extra_constraint): Delete. (override_options): Delete xtensa_char_to_class initialization. * config/xtensa/xtensa.h (REG_CLASS_FROM_LETTER): Delete. (CONST_OK_FOR_LETTER_P, CONST_DOUBLE_OK_FOR_LETTER_P): Delete. (EXTRA_CONSTRAINT): Delete. * config/xtensa/xtensa.md: Include constraints.md. (call_internal): Combine alternatives. (call_value_internal): Likewise, and remove invalid constraints. * config/xtensa/constraints.md: New file. * config/xtensa/xtensa-protos.h (xtensa_const_ok_for_letter_p): Delete. (xtensa_extra_constraint): Delete. * doc/md.texi (Machine Constraints): Refer to constraints.md for Xtensa constraints. --Ths line, and those below, will be ignored-- M gcc/doc/md.texi M gcc/ChangeLog M gcc/config/xtensa/xtensa.c M gcc/config/xtensa/xtensa.h M gcc/config/xtensa/xtensa.md A gcc/config/xtensa/constraints.md M gcc/config/xtensa/xtensa-protos.h From-SVN: r119072
-
Trevor Smigiel authored
* MAINTAINERS (spu port): Add myself as maintainer. (Write After Approval): Remove myself. From-SVN: r119071
-
Ben Elliston authored
* configure.in (skipdirs): Don't build libssp for SPU. * configure: Regenerate. From-SVN: r119070
-
Janis Johnson authored
* config/dfp-bits.c (DFP_TO_INT): Remove code to saturate result of conversion that doesn't fit. From-SVN: r119069
-
Janis Johnson authored
decnumber/ * decLibrary.c (__dec_type_swap): Add prototype. (__dfp_enable_traps, dfp_raise): Delete. gcc/ * config/dfp-bit.h (CONTEXT_TRAPS, CONTEXT_ERRORS, DFP_RAISE): Delete. * config/dfp-bit.c (dfp_unary_op, dfp_binary_op, dfp_compare_op, DFP_TO_DFP, INT_TO_DFP, BFP_TO_DFP): Remove calls to DFP_RAISE. testsuite/ * gcc.dg/dfp/snan.c: Delete. From-SVN: r119068
-
Janis Johnson authored
From-SVN: r119067
-
Douglas Gregor authored
2006-11-21 Douglas Gregor <doug.gregor@gmail.com> * cp-tree.def (STATIC_ASSERT): New. * cp-objcp-common.c (cp_tree_size): Handle STATIC_ASSERT. * error.c (dump_decl): Handle STATIC_ASSERT. * cp-tree.h (STATIC_ASSERT_CONDITION): New. (STATIC_ASSERT_MESSAGE): New. (STATIC_ASSERT_SOURCE_LOCATION): New. (struct tree_static_assert): New. (enum cp_tree_node_structure_enum): Add TS_CP_STATIC_ASSERT. (union lang_tree_node): Add static_assertion. (finish_static_assert): Declare. * cxx-pretty-print.c (pp_cxx_statement): Handle STATIC_ASSERT. (pp_cxx_declaration): Handle STATIC_ASSERT. * pt.c (instantiate_class_template): Handle STATIC_ASSERT members. (tsubst_expr): Handle STATIC_ASSERT statements. * semantics.c (finish_static_assert): New. * lex.c (D_CPP0X): New. (reswords): Add static_assert keyword. (init_reswords): If not flag_cpp0x, mask out C++0x keywords. * parser.c (cp_parser_block_declaration): Parse static assertions. (cp_parser_static_assert): New. (cp_parser_member_declaration): Parse static assertions. From-SVN: r119066
-