Age | Commit message (Collapse) | Author | Files | Lines |
|
2005-03-18 Dale Johannese <dalej@apple.com>
* cp/tree.c (cp_tree_equal): Handle SSA_NAME.
From-SVN: r96938
|
|
2005-03-23 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/20601
* tree-ssa-pre.c (insert_aux): Add missing condition to
constification.
From-SVN: r96937
|
|
From-SVN: r96935
|
|
there is no definition.
* lib/target-supports.exp (check_iconv_available): Default
libiconv to -liconv, if there is no definition.
* testsuite/lib/libstdc++.exp (libstdc++_init): Improve handling
of compilers not in the build directory.
(libstdc++_wchar_t): New variable.
(libstdc++_threads): Likewise.
(libstdc++_test_objs): Likewise.
(v3_target_compile): Use libstdc++_test_objs.
(v3-list-tests): Remove.
(listdc++_build_support): New function.
* testsuite/libstdc++-dg/normal.exp: Rework to dynamically
generate list of tests.
From-SVN: r96934
|
|
* final.c (final_scan_insn): Don't remove no-op instructions.
* reload1.c (reload): Remove simple no-op instructions even when
not optimizing.
From-SVN: r96933
|
|
PR tree-optimization/20501
* tree-vect-analyze.c (vect_enhance_data_refs_alignment): Debug print
reporting that peeling for alignment is applied moved to...
* (vect_analyze_data_refs_alignment): Here.
From-SVN: r96932
|
|
From-SVN: r96931
|
|
* config.gcc (alpha*-dec-osf[45]*): Remove target_cpu_default.
Define TARGET_SUPPORT_ARCH except on Tru64 UNIX V4.0A.
From-SVN: r96927
|
|
* convert.c (convert): Replace fold (buildN (...)) with fold_buildN.
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_trans_allocate_temp_array gfc_trans_array_constructor_value,
gfc_conv_array_index_ref, gfc_trans_array_bound_check,
gfc_conv_array_index_offset, gfc_conv_scalarized_array_ref,
gfc_conv_array_ref, gfc_trans_preloop_setup, gfc_conv_ss_startstride,
gfc_conv_loop_setup, gfc_array_init_size, gfc_trans_array_bounds,
gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
gfc_conv_expr_descriptor): Likewise.
* trans-expr.c (gfc_conv_powi, gfc_conv_string_tmp,
gfc_conv_concat_op, gfc_conv_expr_op): Likewise.
* trans-intrinsic.c (build_round_expr, gfc_conv_intrinsic_bound,
gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_sign,
gfc_conv_intrinsic_minmaxloc, gfc_conv_intrinsic_minmaxval,
gfc_conv_intrinsic_btest, gfc_conv_intrinsic_bitop,
gfc_conv_intrinsic_singlebitop, gfc_conv_intrinsic_ibits,
gfc_conv_intrinsic_ishft, gfc_conv_intrinsic_ishftc,
gfc_conv_intrinsic_merge, prepare_arg_info,
gfc_conv_intrinsic_rrspacing, gfc_conv_intrinsic_repeat): Likewise.
* trans-stmt.c (gfc_trans_simple_do, gfc_trans_do, gfc_trans_do_while,
gfc_trans_forall_loop, gfc_do_allocate, generate_loop_for_temp_to_lhs,
generate_loop_for_rhs_to_temp, compute_inner_temp_size,
allocate_temp_for_forall_nest, gfc_trans_pointer_assign_need_temp,
gfc_trans_forall_1, gfc_evaluate_where_mask, gfc_trans_where_assign):
Likewise.
* trans-types.c (gfc_get_dtype, gfc_get_array_type_bounds): Likewise.
* trans.c (gfc_add_modify_expr): Likewise.
From-SVN: r96926
|
|
From-SVN: r96924
|
|
called once, independent of asms in code.
* doc/tm.texi (TARGET_MD_ASM_CLOBBERS): Adjust wording to not
imply that this is called once, independent of asms in code.
Adjust to now being pased output and input lists. Mention helper
function decl_overlaps_hard_reg_set_p.
* hooks.c (hook_tree_tree_tree_tree_3rd_identity): Rename from
hook_tree_tree_identity and to take three trees, returning third.
* hooks.h (hook_tree_tree_tree_tree_3rd_identity): Adjust the
prototype.
* stmt.c: include hard-reg-set.h before tree.h.
(decl_overlaps_hard_reg_set_p): New function, broken out from...
(decl_conflicts_with_clobbers_p): Call
decl_overlaps_hard_reg_set_p.
(expand_asm_operands): Pass output and input lists in call to
targetm.md_asm_clobbers.
* target-def.h (TARGET_MD_ASM_CLOBBERS): Define as
hook_tree_tree_tree_tree_3rd_identity.
* target.h (struct gcc_target.md_asm_clobbers): Take three tree
parameters.
* tree.h [HARD_CONST] (decl_overlaps_hard_reg_set_p): Prototype.
* config/i386/i386.c (ix86_md_asm_clobbers): Adjust to three
parameters, first two unused.
* config/cris/cris.c (cris_md_asm_clobbers): Adjust to added
parameters. Only add MOF to clobbers if there's no 'h' mentioned
in constraint letters and MOF is not mentioned as a asm-declared
register in neither of the input and output lists.
From-SVN: r96923
|
|
* optabs.c (expand_binop): Make sure the first subword's result
gets stored.
From-SVN: r96921
|
|
2005-03-22 James A. Morrison <phython@gcc.gnu.org>
* treetree.c (tree_code_if_start): Use fold_buildN.
(tree_code_create_variable): Likewise.
(tree_code_generate_return): Likewise.
(tree_code_get_expression): Likewise.
(tree_code_add_parameter): Likewise.
From-SVN: r96920
|
|
2005-03-22 James A. Morrison <phython@gcc.gnu.org>
* treelang.h (struct parameter_part): Skip WHERE_TO_PUT_VAR_TREE
during GC.
From-SVN: r96919
|
|
* c-common.c (c_common_truthvalue_conversion): Adjust comment.
Call c_common_truthvalue_conversion rather than
lang_hooks.truthvalue_conversion.
* c-convert.c (convert): Call c_objc_common_truthvalue_conversion.
* c-objc-common.c (c_objc_common_truthvalue_conversion): Move to
c-typeck.c.
* c-objc-common.h (LANG_HOOKS_TRUTHVALUE_CONVERSION): Change to
c_common_truthvalue_conversion.
* c-parser.c (c_parser_paren_condition, c_parser_for_statement,
c_parser_conditional_expression, c_parser_binary_expression): Call
c_objc_common_truthvalue_conversion.
* c-typeck.c (build_unary_op): Call
c_objc_common_truthvalue_conversion.
(build_conditional_expr): Do not call
lang_hooks.truthvalue_conversion.
(build_binary_op): Call c_common_truthvalue_conversion.
(c_objc_common_truthvalue_conversion): Moved from
c-objc-common.c. Call default_function_array_conversion instead
of default_conversion.
objc:
* objc-act.c (next_sjlj_build_enter_and_setjmp,
next_sjlj_build_catch_list, next_sjlj_build_try_catch_finally):
Call c_common_truthvalue_conversion.
From-SVN: r96917
|
|
* c-common.h (default_conversion): Remove.
(perform_integral_promotions): Add.
* c-tree.h (default_conversion): Add.
* c-typeck.c (perform_integral_promotions): New, split out from
default_conversion.
* c-common.c (check_case_value): Use perform_integral_promotions,
not default_conversion.
(c_add_case_label): Don't continue processing case label after
found to be pointer.
cp:
* cp-tree.h (perform_integral_promotions): Remove.
(default_conversion): Add.
From-SVN: r96916
|
|
2005-03-23 Mark Mitchell <mark@codesourcery.com>
* gcc.c (do_spec_1): Do not add a -L path for a directory in
the prefix list if we have already added a multilib directory
based on that path.
(main): Do not add MD_EXEC_PREFIX to the list of directories to
search with -L.
From-SVN: r96915
|
|
* reload1.c (indirect_symref_ok): Make it global.
* reload.h: Add a prototype for indirect_symref_ok.
From-SVN: r96913
|
|
* reload1.c (indirect_symref_ok, reload_obstack): Make them
static.
* reload.h: Remove the prototype for indirect_symref_ok.
From-SVN: r96911
|
|
[[Split portion of a mixed commit.]]
From-SVN: r96908.2
|
|
* config/sh/sh.md (ashlhi3): Rename to *ashlhi3_n and add a new
ashlhi3 expander.
From-SVN: r96905
|
|
* tree.h (DECL_IGNORED_P, DECL_IN_SYSTEM_HEADER): Clarify comments.
Also fix a typo in a previous ChangeLog
From-SVN: r96903
|
|
hooks says the writer wants it.
2005-03-22 Daniel Berlin <dberlin@dberlin.org>
* c-opts.c (c_common_parse_file): Only start/end main source file
if debug hooks says the writer wants it.
* dbxout.c (dbx_debug_hooks): Add start_end_main_source_file
member.
(xcoff_debug_hooks): Ditto.
* debug.c (do_nothing_hooks): Ditto.
* debug.h (gcc_debug_hooks): Ditto.
* dwarf2out.c (dwarf2_debug_hooks): Ditto.
* sdbout.c (sdb_debug_hooks): Ditto.
* vmsdbgout.c (vmsdbg_debug_hooks): Ditto.
From-SVN: r96902
|
|
* doc/extend.texi: Deprecate C++ min/max operators.
* parser.c (cp_parser_warn_min_max): New function.
(cp_parser_binary_expression): Use it.
(cp_parser_assignment_operator_opt): Likewise.
(cp_parser_operator): Likewise.
* g++.dg/opt/max1.C: Run with -Wno-deprecated.
* g++.dg/opt/pr7503-2.C: Likewise.
* g++.dg/opt/pr7503-3.C: Likewise.
* g++.dg/opt/pr7503-4.C: Likewise.
* g++.dg/opt/pr7503-5.C: Likewise.
* g++.dg/warn/minmax.C: New test.
From-SVN: r96899
|
|
From-SVN: r96895
|
|
artificial original candidates.
* tree-ssa-loop-ivopts.c (determine_iv_cost): Do not try to preserve
artificial original candidates.
From-SVN: r96894
|
|
* Makefile.am: Added new files.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure.ac: add checks for signal.h headers file, as well as
following functions: chdir, strerror, getlogin, gethostname, kill,
link, symlink, perror, sleep, time.
* configure: Regenerate.
* intrinsics/chdir.c, intrinsics/gerror.c, intrinsics/getlog.c,
intrinsics/hostnm.c, intrinsics/ierrno.c, intrinsics/kill.c,
intrinsics/link.c, intrinsics/perror.c, intrinsics/rename.c,
intrinsics/sleep.c, intrinsics/symlnk.c, intrinsics/time.c: Newly
implementend g77 intrinsics.
* check.c (gfc_check_chdir, gfc_check_chdir_sub, gfc_check_kill,
gfc_check_kill_sub, gfc_check_link, gfc_check_link_sub,
gfc_check_symlnk, gfc_check_symlnk_sub, gfc_check_rename,
gfc_check_rename_sub, gfc_check_sleep_sub, gfc_check_gerror,
gfc_check_getlog, gfc_check_hostnm, gfc_check_hostnm_sub,
gfc_check_perror): new functions to check newly implemented
g77 intrinsics.
* gfortran.h: adding symbols for new intrinsics.
* intrinsic.c (add_functions): adding new intrinsics.
(add_subroutines): adding new intrinsics.
* intrinsic.h: prototype for all checking and resolving
functions.
* iresolve.c (gfc_resolve_chdir, gfc_resolve_chdir_sub,
gfc_resolve_hostnm, gfc_resolve_ierrno, gfc_resolve_kill,
gfc_resolve_link, gfc_resolve_rename, gfc_resolve_symlnk,
gfc_resolve_time, gfc_resolve_time8, gfc_resolve_rename_sub,
gfc_resolve_kill_sub, gfc_resolve_link_sub,
gfc_resolve_symlnk_sub, gfc_resolve_sleep_sub,
gfc_resolve_gerror, gfc_resolve_getlog, gfc_resolve_hostnm_sub,
gfc_resolve_perror): new functions to resolve intrinsics.
* trans-intrinsic.c (gfc_conv_intrinsic_function): add case
for new symbols.
* g77_intrinsics_funcs.f: New test.
* g77_intrinsics_sub.f: New test.
From-SVN: r96893
|
|
on argument sizes.
* cgraphunit.c (cgraph_estimate_size_after_inlining): Compute
call cost based on argument sizes.
(cgraph_mark_inline_edge): Avoid inline unit from shringking by
inlining.
* params.def: (max-inline-inssn-single): Set to 450.
(max-inline-insns-auto): Set to 90.
(max-inline-insns-recursive): Set to 450
(max-inline-insns-recursive-auto): Set to 450.
(large-function-insns): Set to 2700.
(inline-call-cost): New parameter.
* tree-inline.c (estimate_move_cost): New function.
(estimate_num_insns_1): Compute move sizes costs by estimate_move_cost
for non-gimple-regs, set cost to 0 for gimple-regs. Compute call size
based on arguments.
* tree-inline.h (estimate_move_cost): Declare.
* invoke.texi: (max-inline-inssn-single): Change default to 450.
(max-inline-insns-auto): Change default to 90.
(max-inline-insns-recursive): Change default to 450
(max-inline-insns-recursive-auto): Change default to 450.
(large-function-insns): Change default to 2700.
(inline-call-cost): Document new parameter.
* gcc.dg/winline-6.c: Modify so inlined function have nonzero cost.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r96892
|
|
(TARGET_DEFAULT): Delete.
* config/i860/i860.opt: New file.
From-SVN: r96884
|
|
(frv_cpu_string, frv_condexec_insns_str, frv_condexec_insns)
(frv_condexec_temps_str, frv_condexec_temps, frv_sched_lookahead_str)
(frv_sched_lookahead): Delete.
* config/frv/frv.h (MASK_DEFAULT_ALLOC_CC): Move to frv.c.
(target_flags, MASK_GPR_32, MASK_FPR_32, MASK_SOFT_FLOAT)
(MASK_ALLOC_CC, MASK_DWORD, MASK_DOUBLE, MASK_MEDIA, MASK_MULADD)
(MASK_LIBPIC, MASK_ACC_4, MASK_PACK, MASK_LONG_CALLS)
(MASK_ALIGN_LABELS, MASK_LINKED_FP, MASK_BIG_TLS, MASK_DEBUG_ARG)
(MASK_DEBUG_ADDR, MASK_DEBUG_STACK, MASK_DEBUG, MASK_DEBUG_LOC)
(MASK_DEBUG_COND_EXEC, MASK_NO_COND_MOVE, MASK_NO_SCC)
(MASK_NO_COND_EXEC, MASK_NO_VLIW_BRANCH, MASK_NO_MULTI_CE)
(MASK_FDPIC, MASK_INLINE_PLT, MASK_GPREL_RO, MASK_DEFAULT)
(TARGET_GPR_32, TARGET_FPR_32, TARGET_SOFT_FLOAT, TARGET_ALLOC_CC)
(TARGET_DWORD, TARGET_DOUBLE, TARGET_MEDIA, TARGET_MULADD)
(TARGET_LIBPIC, TARGET_ACC_4, TARGET_DEBUG_ARG, TARGET_DEBUG_ADDR)
(TARGET_DEBUG_STACK, TARGET_DEBUG, TARGET_DEBUG_LOC)
(TARGET_DEBUG_COND_EXEC, TARGET_NO_COND_MOVE, TARGET_NO_SCC)
(TARGET_NO_COND_EXEC, TARGET_NO_VLIW_BRANCH, TARGET_NO_MULTI_CE)
(TARGET_NO_NESTED_CE, TARGET_FDPIC, TARGET_INLINE_PLT, TARGET_BIG_TLS)
(TARGET_GPREL_RO, TARGET_PACK, TARGET_LONG_CALLS, TARGET_ALIGN_LABELS)
(TARGET_LINKED_FP, TARGET_GPR_64, TARGET_FPR_64, TARGET_HARD_FLOAT)
(TARGET_FIXED_CC, TARGET_COND_MOVE, TARGET_SCC, TARGET_COND_EXEC)
(TARGET_VLIW_BRANCH, TARGET_MULTI_CE, TARGET_NESTED_CE, TARGET_ACC_8)
(TARGET_SWITCHES, TARGET_OPTIONS, DEFAULT_CONDEXEC_TEMPS)
(DEFAULT_BRANCH_COST, DEFAULT_CONDEXEC_INSNS): Delete.
* config/frv/frv.c (frv_branch_cost_string, frv_branch_cost_int)
(frv_cpu_string, frv_condexec_insns_str, frv_condexec_insns)
(frv_condexec_temps_str, frv_condexec_temps, frv_sched_lookahead_str)
(frv_sched_lookahead): Delete.
(MASK_DEFAULT_ALLOC_CC): Moved from frv.h.
(TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Override defaults.
(frv_handle_option): New function. Move -mcpu= handling from...
(frv_override_options): ...here. Remove handling of other
TARGET_OPTIONS.
(frv_ifcvt_modify_tests): Check !TARGET_COND_EXEC instead of
TARGET_NO_COND_EXEC and !TARGET_NESTED_CE to TARGET_NO_NESTED_CE.
(frv_ifcvt_modify_multiple_tests): Likewise !TARGET_MULTI_CE
and TARGET_NO_MULTI_CE.
(frv_for_each_packet): Likewise TARGET_NO_VLIW_BRANCH and
!TARGET_VLIW_BRANCH.
* config/frv/frv.opt: New file.
From-SVN: r96883
|
|
* fold-const.c (fold_build1, fold_build2, fold_build3): New.
* tree.h: Add corresponding prototypes.
From-SVN: r96881
|
|
* fold-const.c (fold_ternary): Take decomposed arguments of
CALL_EXPR.
(fold): Update a call to fold_ternary.
From-SVN: r96880
|
|
PR c++/19980
* decl.c (start_preparsed_function): Robustify.
* g++.dg/template/redecl3.C: New test.
From-SVN: r96872
|
|
PR c++/20499
* parser.c (cp_parser_class_head): Return NULL_TREE when
encountering a redefinition.
* g++.dg/parse/error16.C: Tweak error markers.
From-SVN: r96870
|
|
PR target/20561
* cfglayout.c (reemit_insn_block_notes): Don't put block notes in
between jump table and its label.
* final.c (shorten_branches): Handle notes in between ADDR_VEC
resp. ADDR_DIFF_VEC and the label preceeding it.
(final_scan_insn): Likewise. Ensure ADDR_VEC resp. ADDR_DIFF_VEC
is emitted in the right section.
* gcc.dg/20050321-2.c: New test.
From-SVN: r96867
|
|
cp:
PR c++/20465
PR c++/20381
* typeck.c (build_ptrmemfunc): Allow OFFSET_REF when processing a
template.
testsuite:
PR c++/20465
PR c++/20381
* g++.dg/template/ptrmem12.C: New.
From-SVN: r96862
|
|
* fold-const.c (fold_unary, fold_binary): Update comments
about arguments.
From-SVN: r96855
|
|
miscompilation.)
PR rtl-optimization/20527
* combine.c (can_combine_p) [AUTO_INC_DEC]: When INSN has an
REG_INC note, test that the register also isn't mentioned in PRED
or SUCC.
From-SVN: r96853
|
|
miscompilation.)
PR rtl-optimization/20527
* gcc.c-torture/execute/pr20527-1.c: New test.
From-SVN: r96852
|
|
* dwarf2out.c (dwarf_type_encoding_name): Remove unused prototype
and definition.
From-SVN: r96851
|
|
From-SVN: r96849
|
|
[[Split portion of a mixed commit.]]
From-SVN: r96847.2
|
|
* gcc.misc-tests/options.exp (check_for_options): Create a real C
program, compile it into a real executable and then delete the .c
and .x files afterwards, to avoid problems on testglue targets.
From-SVN: r96844
|
|
PR middle-end/20557
* bb-reorder.c (duplicate_computed_gotos): Use can_duplicate_block_p
to determine whether a block can be duplicated, rather than test
whether the block contains noncopyable insns ourselves.
From-SVN: r96836
|
|
* config/i860/i860.h (PREDICATE_CODES): Remove nonexistent
predicates.
From-SVN: r96834
|
|
From-SVN: r96831
|
|
(TARGET_DEFAULT, target_flags, TARGET_SWITCHES): Delete.
* config/fr30/fr30.opt: New file.
From-SVN: r96830
|
|
2005-03-18 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/20542
* tree-flow-inline.h (overlap_subvar): Move to here.
* tree-ssa-operands.c: From here.
* tree-flow.h (overlap_subvar): Declare.
* tree-ssa-alias.c (add_pointed_to_var): Use overlap_subvar here.
* tree-ssa-loop-im.c (is_call_clobbered_ref): Return proper answer
for variables with subvars.
From-SVN: r96829
|
|
From-SVN: r96828
|
|
* config/xtensa/lib1funcs.asm (__mulsi3): Use symbolic name for ACCLO.
* config/xtensa/xtensa.md (movsi_internal, movhi_internal,
movqi_internal): Likewise.
From-SVN: r96826
|