Thomas Fitzsimmons [Tue, 3 May 2005 23:53:58 +0000 (23:53 +0000)]
* ChangeLog: Remove conflict indicator.
From-SVN: r99197
Thomas Fitzsimmons [Tue, 3 May 2005 23:53:27 +0000 (23:53 +0000)]
2005-05-03 Thomas Fitzsimmons <fitzsim@redhat.com>
* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c
(init_glib_threads): Check if threading system is already
initialized.
From-SVN: r99196
Andrew Overholt [Tue, 3 May 2005 22:38:17 +0000 (22:38 +0000)]
re PR libgcj/21372 (FileChannel.tryLock() return value incorrect)
2005-05-03 Andrew Overholt <overholt@redhat.com>
PR libgcj/21372:
* gnu/java/nio/channels/FileChannelImpl.java: Return null if lock
could not be acquired.
* java/nio/channels/FileLock.java (toString): Re-implement to be
in line with other implementations.
From-SVN: r99188
Jakub Jelinek [Tue, 3 May 2005 22:22:02 +0000 (00:22 +0200)]
re PR middle-end/21265 (GCC fails to optimize tail call to memset)
PR middle-end/21265
* expr.h (enum block_op_methods): Add BLOCK_OP_TAILCALL.
(clear_storage): Add argument.
* expr.c (emit_block_move_via_libcall, clear_storage_via_libcall):
Add tailcall argument, set CALL_EXPR_TAILCALL of the CALL_EXPR to
tailcall.
(emit_block_move): Handle BLOCK_OP_TAILCALL method.
(clear_storage): Add method argument, handle BLOCK_OP_TAILCALL.
(store_expr, store_constructor): Adjust callers.
* builtins.c (expand_builtin_memcpy): Pass BLOCK_OP_TAILCALL
to emit_block_move if CALL_EXPR_TAILCALL (exp).
(expand_builtin_memmove): Add ORIG_EXP argument, copy
CALL_EXPR_TAILCALL from ORIG_EXP to the new CALL_EXPR.
(expand_builtin_bcopy): Replace ARGLIST and TYPE arguments
with EXP. Pass EXP to expand_builtin_memmove.
(expand_builtin_memset): Add ORIG_EXP argument, pass
BLOCK_OP_TAILCALL to clear_storage if CALL_EXPR_TAILCALL (orig_exp).
(expand_builtin_bzero): Replace ARGLIST argument with EXP.
Pass EXP to expand_builtin_memset.
(expand_builtin_strcmp): Copy CALL_EXPR_TAILCALL from EXP to
the new CALL_EXPR.
(expand_builtin_strncmp): Likewise.
(expand_builtin_printf): Replace ARGLIST argument with EXP.
Copy CALL_EXPR_TAILCALL from EXP to the new CALL_EXPR.
(expand_builtin_fprintf): Likewise.
(expand_builtin): Adjust calls to
expand_builtin_{memmove,bcopy,memset,bzero,{,f}printf}.
* gcc.dg/
20050503-1.c: New test.
From-SVN: r99187
Jakub Jelinek [Tue, 3 May 2005 22:16:01 +0000 (00:16 +0200)]
re PR rtl-optimization/21239 (Illegal elimination of SSE2 load/store using xmm intrinsics)
* config/i386/i386.c (ix86_expand_vector_set): Fix setting 3rd and 4th
item in V4SF mode.
PR rtl-optimization/21239
* combine.c (combine_simplify_rtx) <case VEC_SELECT>: Fix a typo.
* gcc.dg/i386-sse-11.c: New test.
From-SVN: r99186
Tom Tromey [Tue, 3 May 2005 22:15:01 +0000 (22:15 +0000)]
VMSecurityManager.java (currentClassLoader): Use 'systemClasssLoader' directly.
* java/lang/VMSecurityManager.java (currentClassLoader): Use
'systemClasssLoader' directly.
From-SVN: r99185
Kazu Hirata [Tue, 3 May 2005 21:47:31 +0000 (21:47 +0000)]
tree-cfg.c (remove_bb): Remove a redundant call to set_bb_for_stmt.
* tree-cfg.c (remove_bb): Remove a redundant call to
set_bb_for_stmt.
* tree-if-conv.c (replace_phi_with_cond_modify_expr):
Likewise.
From-SVN: r99183
Tom Tromey [Tue, 3 May 2005 20:51:30 +0000 (20:51 +0000)]
re PR java/21245 (gcjh creates invalid/empty header files)
PR java/21245:
* gjavah.c (main): Unlink output file on error.
From-SVN: r99182
Joseph Myers [Tue, 3 May 2005 20:26:46 +0000 (21:26 +0100)]
* zh_CN.po: Update.
From-SVN: r99180
Kazu Hirata [Tue, 3 May 2005 20:18:32 +0000 (20:18 +0000)]
tree-flow.h (tree_ann_common_d): Move aux to ...
* tree-flow.h (tree_ann_common_d): Move aux to ...
(stmt_ann_d): ... here.
* tree-ssa-loop-im.c (LIM_DATA, determine_invariantness_stmt,
move_computations_stmt, schedule_sm): Update references to
aux.
* tree-vectorizer.h (set_stmt_info, vinfo_for_stmt): Likewise.
From-SVN: r99179
Tom Tromey [Tue, 3 May 2005 19:33:13 +0000 (19:33 +0000)]
VMSecurityManager.java (currentClassLoader): Don't call VMClassLoader.getSystemClassLoader.
* java/lang/VMSecurityManager.java (currentClassLoader): Don't
call VMClassLoader.getSystemClassLoader.
From-SVN: r99177
Richard Henderson [Tue, 3 May 2005 19:05:59 +0000 (12:05 -0700)]
* cfg.c (dump_flow_info): Use max_reg_num, not max_regno.
From-SVN: r99175
Richard Henderson [Tue, 3 May 2005 19:03:06 +0000 (12:03 -0700)]
* config/rs6000/rs6000.c: Remove conflict markers.
From-SVN: r99174
Kazu Hirata [Tue, 3 May 2005 18:47:49 +0000 (18:47 +0000)]
constants.c, [...]: Update copyright.
* constants.c, jvgenmain.c, lang.opt, resource.c: Update
copyright.
From-SVN: r99173
Kazu Hirata [Tue, 3 May 2005 18:40:36 +0000 (18:40 +0000)]
Make-lang.in, [...]: Update copyright.
* Make-lang.in, dump-parse-tree.c, invoke.texi, lang.opt,
match.h, trans-array.h: Update copyright.
From-SVN: r99172
Kazu Hirata [Tue, 3 May 2005 18:34:03 +0000 (18:34 +0000)]
* friend.c, lex.c, mangle.c, repo.c: Update copyright.
From-SVN: r99171
James E Wilson [Tue, 3 May 2005 18:32:08 +0000 (18:32 +0000)]
Fix corrupted dwarf2 file table with -fno-eliminate-unused-debug-types.
* dwarf2out.c (lookup_filename): Call maybe_emit_file.
From-SVN: r99170
DJ Delorie [Tue, 3 May 2005 17:55:46 +0000 (13:55 -0400)]
c-decl.c (store_parm_decls_oldstyle): Let diagnostic machinery decide if the warning will be printed.
* c-decl.c (store_parm_decls_oldstyle): Let diagnostic machinery
decide if the warning will be printed.
* calls.c (expand_call): Likewise.
* function.c (init-function_start): Likewise.
* common.opt (-fdiagnostics-show-option): New.
* opts.c (option_enabled): Accept the option index instead of a
pointer to the option descriptor.
* opts.h (option_enabled): Likewise.
* toplev.c (print_switch_values): Pass option index, not option
descriptor.
* diagnostic.h (diagnostic_info): Add option_index.
* diagnostic.c: Include opts.h.
(diagnostic_set_info): Initialize option_index.
(diagnostic_report_diagnostic): Amend option name if appropriate.
(warning): Check to see if the specified warning is enabled.
Store option index.
* doc/invoke.texi (-fdiagnostics-show-options): Document.
From-SVN: r99169
Richard Henderson [Tue, 3 May 2005 17:03:52 +0000 (10:03 -0700)]
rs6000.h (REG_CLASS_CONTENTS): Fix ALL_REGS and SPEC_OR_GEN_REGS definitions.
* config/rs6000/rs6000.h (REG_CLASS_CONTENTS): Fix ALL_REGS and
SPEC_OR_GEN_REGS definitions.
From-SVN: r99168
Alexandre Oliva [Tue, 3 May 2005 17:00:59 +0000 (17:00 +0000)]
re PR target/16888 (ICE: in print_reg, at config/i386/i386.c:7254)
gcc/ChangeLog:
PR target/16888
* config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Clear reg names
for unavailable registers.
gcc/testsuite/ChangeLog:
PR target/16888
* gcc.target/i386/asm-1.c: New test.
From-SVN: r99167
Kazu Hirata [Tue, 3 May 2005 16:44:24 +0000 (16:44 +0000)]
tree-mudflap.c (deferred_static_decls, [...]): Use VEC instead of VARRAY.
* tree-mudflap.c (deferred_static_decls, mudflap_enqueue_decl,
mudflap_finish_file, mudflap_finish_file): Use VEC instead of
VARRAY.
From-SVN: r99164
Joseph Myers [Tue, 3 May 2005 16:43:53 +0000 (17:43 +0100)]
* de.po: Update.
From-SVN: r99163
Kazu Hirata [Tue, 3 May 2005 16:35:17 +0000 (16:35 +0000)]
cfglayout.c (block_locators_blocks, [...]): Use VEC instead of VARRAY.
* cfglayout.c (block_locators_blocks,
insn_locators_initialize, insn_scope): Use VEC instead of
VARRAY.
From-SVN: r99162
Kazu Hirata [Tue, 3 May 2005 16:31:09 +0000 (16:31 +0000)]
* tree-cfg.c (tree_forwarder_block_p): Fix a typo.
From-SVN: r99161
Eric Botcazou [Tue, 3 May 2005 14:55:04 +0000 (16:55 +0200)]
predicates.md (const_compl_high_operand): New.
* config/sparc/predicates.md (const_compl_high_operand): New.
* config/sparc/sparc.c (sparc_emit_set_safe_HIGH64): Rename into
gen_safe_HIGH64.
(sparc_emit_set_const64_quick1): Adjust for above change.
(sparc_emit_set_const64_quick2): Likewise.
(sparc_emit_set_const64_longway): Likewise.
(sparc_emit_set_const64): Likewise.
* config/sparc/sparc.md (movhi_const64_special, movsi_const64_special,
movdi_const64_special): Delete.
(logical constant splitters): Use const_compl_high_operand.
From-SVN: r99160
Richard Guenther [Tue, 3 May 2005 14:14:19 +0000 (14:14 +0000)]
tree-ssa-ccp.c (maybe_fold_stmt_indirect): Use STRIP_TYPE_NOPS rather than STRIP_NOPS.
* tree-ssa-ccp.c (maybe_fold_stmt_indirect): Use STRIP_TYPE_NOPS
rather than STRIP_NOPS.
From-SVN: r99158
Jakub Jelinek [Tue, 3 May 2005 13:09:53 +0000 (15:09 +0200)]
re PR rtl-optimization/21330 (ICE in compare_and_jump_seq, at loop-unswitch.c:120)
PR rtl-optimization/21330
* loop-unswitch.c (may_unswitch_on): Set *cinsn only when
returning non-NULL.
(unswitch_single_loop): Clear cinsn when retrying.
* gcc.c-torture/execute/
20050502-1.c: New test.
From-SVN: r99157
Jakub Jelinek [Tue, 3 May 2005 12:58:11 +0000 (14:58 +0200)]
re PR target/21297 (buf[i+i]=0 stores buf[i] when -O2)
PR target/21297
* config/i386/i386.c (legitimize_address): When canonicalizing
ASHIFT into MULT, multiply by 1 << shift_count instead of
1 << log2 (shift_count).
* gcc.c-torture/execute/
20050502-2.c: New test.
From-SVN: r99156
Andrew MacLeod [Tue, 3 May 2005 12:19:56 +0000 (12:19 +0000)]
lambda-code.c (gcc_loop_to_lambda_loop, [...]): Use generic operand interface.
2005-05-03 Andrew MacLeod <amacleod@redhat.com>
* lambda-code.c (gcc_loop_to_lambda_loop,
lambda_loopnest_to_gcc_loopnest, phi_loop_edge_uses_def,
stmt_is_bumper_for_loop, perfect_nest_p, replace_uses_of_x_with_y): Use
generic operand interface.
* tree-data-ref.c (find_data_references_in_loop): Use generic interface.
* tree-dfa.c (collect_dfa_stats_r, mark_new_vars_to_rename): Use
generic operand interface.
* tree-flow-inline.h (delink_imm_use, link_imm_use_to_list,
link_imm_use, link_imm_use_stmt, relink_imm_use, relink_imm_use_stmt,
next_safe_imm_use, has_zero_uses, has_single_use, single_imm_use,
num_imm_uses): Use ssa_use_operand_t.
(get_def_ops, get_use_ops, get_v_may_def_ops, get_vuse_ops,
get_v_must_def_ops): Delete.
(get_def_from_ptr, get_phi_result_ptr): Get def directly now.
(get_use_op_ptr, get_def_op_ptr, get_v_may_def_result_ptr,
get_v_may_def_op_ptr, get_vuse_op_ptr, get_v_must_def_result_ptr,
get_v_must_def_kill_ptr): Delete.
(delink_stmt_imm_use): Move and use new operand interface.
(op_iter_next_use, op_iter_next_def, op_iter_next_tree, op_iter_init,
op_iter_next_tree): Use new operand implementation.
(clear_and_done_ssa_iter): New. Initialize a blank operand iterator.
(op_iter_init_use, op_iter_init_def, op_iter_init_tree): Add iterator
type check.
(op_iter_next_mustdef, op_iter_next_maydef,
op_iter_next_must_and_may_def): Delete. Replace with...
(op_iter_next_maymustdef): New. Combine must and may next operations.
(op_iter_init_maydef, op_iter_init_mustdef,
op_iter_init_must_and_may_def): Use new interface.
(single_ssa_tree_operand ): New. Process single operands only as trees.
(single_ssa_use_operand): New. Process single operands only as uses.
(single_ssa_def_operand): New. Process single operands only as defs.
(zero_ssa_operands): New. Return TRUE if there are zero operands of the
specified types.
(num_ssa_operands): New. Count the number of specified operands.
(compare_ssa_operands_equal): New. Compare two statements' operands.
(single_phi_def): New. Return true if PHI has one def of the specified
operand type.
(op_iter_init_phiuse): New. Initialize the iterator for PHI arguments.
(op_iter_init_phidef): New. Initialize the iterator for the PHI def.
* tree-flow.h (struct immediate_use_iterator_d): Use ssa_use_operand_t.
(struct stmt_ann_d): Operands field no longer require GTY().
(vn_compute, vn_lookup_or_add, vn_add, vn_lookup): Change prototype.
* tree-into-ssa.c (mark_def_sites): Use SSA_OP_VMUSTKILL.
* tree-outof-ssa.c (check_replaceable, find_replaceable_in_bb,
dump_replaceable_exprs, rewrite_trees): Use generic interface.
* tree-phinodes.c (make_phi_node, release_phi_node, resize_phi_node):
Use use_operand_p instead of ssa_imm_use_t *.
* tree-pretty-print.c (dump_vops): check if operands are active before
dumping virtual operands.
* tree-sra.c (sra_walk_function): Use ZERO_SSA_OPERANDS.
* tree-ssa-ccp.c (likely_value): Use ZERO_SSA_OPERANDS.
(ccp_fold): Use new interface.
(ccp_visit_stmt): Remove unused variables and code.
(convert_to_gimple_builtin): Insert statements before calling
mark_new_vars_to_rename.
* tree-ssa-copy.c (stmt_may_generate_copy): Use ZERO_SSA_OPERANDS.
(copy_prop_visit_cond_stmt): Use generic interface.
* tree-ssa-dom.c (struct expr_hash_elt): Use stmt pointer, not the
annotation in table.
(thread_across_edge): Use generic interface.
(initialize_hash_element): Initialzie with stmt, not annotation.
(eliminate_redundant_computations): Use generic interface.
(record_equivalences_from_stmt): Pass stmt, not annotation.
(avail_expr_hash, real_avail_expr_hash, avail_expr_eq): Use generic
interface.
* tree-ssa-dse.c (dse_optimize_stmt): Use ZERO_SSA_OPERANDS.
* tree-ssa-loop-ivopts.c (find_invariants_stmt,
find_interesting_uses_stmt, protect_loop_closed_ssa_form_use): Use
generic operand interface.
* tree-ssa-loop-niter.c (chain_of_csts_start, get_val_for): Use generic
interface.
* tree-ssa-loop-unswitch.c (tree_may_unswitch_on): Use Generic operand
Interface.
* tree-ssa-operands.c (struct opbuild_list_d): New. Operand build type.
(build_defs, build_uses, build_v_may_defs, build_vuses,
build_v_must_defs): Change type to struct opbuild_list_d.
(ops_active): New. Operands active boolean.
(operand_memory, operand_memory_index): New. Operand memory managers.
(allocate_def_optype, allocate_use_optype, allocate_v_may_def_optype,
allocate_vuse_optype, allocate_v_must_def_optype): Delete.
(free_uses, free_defs, free_vuses, free_v_may_defs, free_v_must_defs):
Change from functions to static variable list heads.
(opbuild_initialize_virtual): New. Initialize a virtual build list.
(opbuild_initialize_real): New. Initialize a virtual build list.
(opbuild_free): New. Free a build list.
(opbuild_num_elems): New. Number of items in a list.
(opbuild_append_real): New. Add a real (tree *) operand.
(opbuild_append_virtual): New. Add and sort a virtual (tree) operand.
(opbuild_first): New. Return first element index in a list.
(opbuild_next): New. Return next element in a list.
(opbuild_elem_real): New. Return real element.
(opbuild_elem_virtual): New. Return virtual element.
(opbuild_elem_uid): New. Return UID of virtual element.
(opbuild_clear): New. Reset an operand list.
(opbuild_remove_elem): New. Remove an element form a list.
(ssa_operands_active): New. Return true if operand cache is active.
(init_ssa_operands, fini_ssa_operands): Initialize new implementation.
(ssa_operand_alloc): New. Allocate memory from an operand chunk.
(correct_use_link): Use use_operand_p.
(finalize_ssa_uses, finalize_ssa_v_may_defs, finalize_ssa_defs,
finalize_ssa_vuses, finalize_ssa_v_must_defs): New implmentation.
(cleanup_v_may_defs): Use new implmentation.
(finalize_ssa_stmt_operands, start_ssa_stmt_operands): New
implementation.
(append_def, append_use, append_v_may_def, append_vuse,
append_v_must_def): Call opbuild_append routine instead of using varray.
(build_ssa_operands): Simplify to simply use stmt, don't maintain a
global parse_old_ops variable.
(free_ssa_operands): New implementation.
(update_stmt_operands): Move. Change argument to build_ssa_operands.
(copy_virtual_operands): Move. New generic implementation.
(create_ssa_artficial_load_stmt): Move. New implementation.
(swap_tree_operands): Update for new implementation.
(get_expr_operands): Add stmt parameter to calls to swap_tree_operands.
(add_call_clobber_ops, add_call_read_ops): Initialize opbuild list
rather than a varray.
(verify_imm_links): Use use_operand_p.
(dump_immediate_uses_for): If the immediate use variable is a virtual
variable, show the virtual ops in the stmt.
* tree-ssa-operands.h (def_operand_p): No longer a structure.
(NULL_DEF_OPERAND_P): Now a #define.
(def_optype_d, use_optype_d, v_def_use_operand_type, v_may_def_optype_d,
vuse_operand_type, vuse_optype_d, v_must_def_optype_d): Delete.
(def_optype_d, use_optype_d, maydef_optype_d, vuse_optype_d,
mustdef_optype_d): New. Use Linked list representation.
(SSA_OPERAND_MEMORY_SIZE): New. Size of operand memory chunk.
(struct ssa_operand_memory_d): New. Allocated Chunk node.
(struct stmt_operands_d): Change to new pointers that are not GTY.
(STMT_USE_OPS, NUM_USES, SET_USE_OP, STMT_DEF_OPS, NUM_DEFS, SET_DEF_OP,
STMT_V_MAY_DEF_OPS, NUM_V_MAY_DEFS, SET_V_MAY_DEF_RESULT,
SET_V_MAY_DEF_OP, STMT_VUSE_OPS, NUM_VUSES, SET_VUSE_OP,
STMT_V_MUST_DEF_OPS, NUM_V_MUST_DEFS, SET_V_MUST_DEF_RESULT,
SET_V_MUST_DEF_KILL): Delete.
(V_MAY_DEF_OPS, V_MAY_DEF_RESULT_PTR, V_MAY_DEF_RESULT,
V_MAY_DEF_OP_PTR, V_MAY_DEF_OP): Rename to MAYDEF_*.
(V_MUST_DEF_OPS, V_MUST_DEF_RESULT_PTR, V_MUST_DEF_RESULT,
V_MUST_DEF_KILL_PTR, V_MUST_DEF_KILL): Rename to MUSTDEF_*.
(enum ssa_op_iter_type): Operand iterator typechecking values.
(struct ssa_operand_iterator_d): Use linked lists of operands.
(SSA_OP_VMUSTDEFKILL): Rename to SSA_OP_VMUSTKILL.
(FOR_EACH_SSA_MAYDEF_OPERAND, FOR_EACH_SSA_MUSTDEF_OPERAND,
FOR_EACH_SSA_MUST_AND_MAY_DEF_OPERAND): Use op_iter_next_maymustdef.
(FOR_EACH_PHI_ARG): New. Iterate over PHI arguments.
(FOR_EACH_PHI_OR_STMT_USE): New. Iterate over PHI or stmt uses.
(FOR_EACH_PHI_OR_STMT_DEF): New. Iterate over PHI or stmt defs.
(SINGLE_SSA_TREE_OPERAND, SINGLE_SSA_USE_OPERAND,
SINGLE_SSA_DEF_OPERAND, ZERO_SSA_OPERANDS, NUM_SSA_OPERANDS): New.
* tree-ssa-opfinalize.h: New. Function templates for expansion.
(FINALIZE_ALLOC): Expands into alloc_def, alloc_use, alloc_maydef,
alloc_vuse, and alloc_mustdef.
(FINALIZE_FUNC): Expands into finalize_ssa_def_ops,
finalize_ssa_use_ops, finalize_ssa_v_may_def_ops, finalize_ssa_vuse_ops,
and finalize_ssa_v_must_def_ops.
* tree-ssa-pre.c (add_to_sets): Pass tree to vn_add.
(create_value_expr_from): Use stmt not vuse_optype as a parameter. Pass
stmt around.
(compute_avail): Use generic iterator interface.
* tree-ssa-propagate.c (first_vdef): Use generic operand interface.
(stmt_makes_single_load, stmt_makes_single_store): Use
ZERO_SSA_OPERANDS.
* tree-ssa-sink.c (is_hidden_global_store): Use ZERO_SSA_OPERANDS.
(statement_sink_location): Use generic interface.
* tree-ssa.c (verify_ssa): Use %p in fprintf. Use generic interface.
(delete_tree_ssa): Don't call release_defs. Call release_ssa_name and
reset the immediate use link nodes.
(stmt_references_memory_p): Use ZERO_SSA_OPERANDS.
* tree-ssanames.c (make_ssa_name): Use use_operand_p.
* tree-tailcall.c (find_tail_calls): Use ZERO_SSA_OPERANDS.
(eliminate_tail_call): Use generic operand interface.
* tree-vect-analyze.c (vect_analyze_data_refs): Use ZERO_SSA_OPERANDS.
(vect_mark_relevant, vect_mark_stmts_to_be_vectorized): Use generic
interface.
* tree-vect-transform.c (update_vuses_to_preheader): Use generic
interface.
* tree-vectorizer.c (rename_variables_in_bb): Use generic interface.
* tree-vn.c (struct val_expr_pair_d): Cache statment pointer instead of
vuse_optype.
(vn_compute, val_expr_pair_hash, vn_add, vn_lookup, vn_lookup_or_add):
Use statement pointer instead of vuse_optype. Use generic interface.
* tree-vrp.c (maybe_add_assert_expr): Use generic interface.
(stmt_interesting_for_vrp, vrp_visit_stmt): Use ZERO_SSA_OPERANDS.
* tree.h (struct ssa_imm_use_d): Renamed to ssa_use_operand_d.
(tree_ssa_name, phi_arg_d): Use ssa_use_operand_d.
* doc/tree-ssa.texi: Update documentation for operand interface.
From-SVN: r99155
Nathan Sidwell [Tue, 3 May 2005 11:48:37 +0000 (11:48 +0000)]
darwin.c (machopic_define_symbol): Use gcc_assert or gcc_unreachable as appropriate.
* config/darwin.c (machopic_define_symbol): Use gcc_assert or
gcc_unreachable as appropriate.
(machopic_function_base_name, machopic_indirect_data_reference,
machopic_legitimize_pic_address, darwin_non_lazy_pcrel): Likewise.
* config/host-darwin.c (darwin_gt_pch_use_address): Likewise
* config/rs6000/altivec.md (*mov<mode>_internal,
build_vector_mask_for_load): Likewise.
* config/rs6000/darwin.md (movdf_low_si, movdf_low_di,
*call_nonlocal_darwin64, *call_value_nonlocal_darwin64,
*sibcall_symbolic_64, *sibcall_value_symbolic_64): Likewise.
* config/rs6000/predicates.md (easy_fp_constant,
logical_operand): Likewise.
* config/rs6000/rs6000.c (spe_expand_predicate_builtin,
compute_save_world_info, rs6000_emit_prologue,
rs6000_output_mi_thunk): Reword comments to avoid 'abort'.
* config/rs6000/host-darwin.c (segv_handler): Use fancy_abort
directly.
From-SVN: r99152
Uros Bizjak [Tue, 3 May 2005 08:08:45 +0000 (10:08 +0200)]
re PR middle-end/21282 (Converting floor into lfloor built-in function)
PR middle-end/21282
* convert.c (convert_to_integer): Convert ceil and floor in
c99 mode only.
testsuite:
PR middle-end/21282
* gcc.dg/pr21282.c: New.
From-SVN: r99144
David Billinghurst [Tue, 3 May 2005 00:19:38 +0000 (00:19 +0000)]
pr20122.c: Clean up .vect file.
2005-05-03 David Billinghurst <David.Billinghurst@riotinto.com>
* gcc.dg/vect/pr20122.c: Clean up .vect file.
* gcc.dg/vect/vect-92.c: Likewise
* gcc.dg/vect/vect-93.c: Likewise
* gcc.dg/vect/vect-dv-1.c: Likewise
* gcc.dg/vect/vect-dv-2.c: Likewise
* gcc.dg/vect/vect-ifcvt-10.c: Likewise
From-SVN: r99135
GCC Administrator [Tue, 3 May 2005 00:17:12 +0000 (00:17 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99133.2
David Billinghurst [Tue, 3 May 2005 00:16:52 +0000 (00:16 +0000)]
vect-1.f90: Clean up .vect file.
2005-05-03 David Billinghurst <David.Billinghurst@riotinto.com>
* gfortran.dg/vect/vect-1.f90: Clean up .vect file.
* gfortran.dg/vect/vect-2.f90: Likewise
* gfortran.dg/vect/vect-3.f90: Likewise
* gfortran.dg/vect/vect-4.f90: Likewise
* gfortran.dg/vect/vect-5.f90: Likewise
From-SVN: r99131
Geoffrey Keating [Mon, 2 May 2005 23:31:43 +0000 (23:31 +0000)]
[multiple changes]
2005-04-29 Geoffrey Keating <geoffk@apple.com>
* config/rs6000/rs6000.md (floatsidf2_internal): Merge to create
define_insn_and_split. Split only when memory operand is
offsettable. Use adjust_address rather than plus_constant.
(floatunssidf2_internal): Likewise.
(fix_truncdfsi2_internal): Split only when memory operand is
offsettable. Use adjust_address rather than plus_constant.
(fix_trunctfsi2_internal): Likewise.
(floatsidf2_internal): Likewise.
Index: testsuite/ChangeLog
2005-05-02 Geoffrey Keating <geoffk@apple.com>
* gcc.dg/rs6000-fpint-2.c: New.
From-SVN: r99126
Diego Novillo [Mon, 2 May 2005 22:54:37 +0000 (22:54 +0000)]
tree-vrp.c (set_value_range_to_nonnull): Declare inline.
* tree-vrp.c (set_value_range_to_nonnull): Declare inline.
(set_value_range_to_null): Likewise.
(set_value_range_to_varying): New function. Use it in all
call sites that used to call set_value_range (vr, VR_VARYING, ...).
(extract_range_from_assert): If the integral type has a
super-type, and LIMIT is not within MIN and MAX values of that
type, set the resulting range to VR_VARYING.
From-SVN: r99125
Andrew Pinski [Mon, 2 May 2005 21:47:08 +0000 (21:47 +0000)]
re PR treelang/21345 (treelang/parse.y:454.11: parse error)
2005-05-02 Andrew Pinski <pinskia@physics.uc.edu>
PR treelang/21345
* parse.y (parameters_opt): Add semicolon at the end.
From-SVN: r99123
Hans-Peter Nilsson [Mon, 2 May 2005 21:17:37 +0000 (21:17 +0000)]
mmix.opt: New file.
* config/mmix/mmix.opt: New file.
* config/mmix/mmix.h: Move options-related comments to mmix.opt.
(mmix_cc1_ignored_option): Don't declare.
(TARGET_OPTIONS, TARGET_MASK_LIBFUNCS, TARGET_MASK_ABI_GNU)
(TARGET_MASK_FCMP_EPSILON, TARGET_MASK_ZERO_EXTEND)
(TARGET_MASK_KNUTH_DIVISION, TARGET_MASK_TOPLEVEL_SYMBOLS)
(TARGET_MASK_BRANCH_PREDICT, TARGET_MASK_USE_RETURN_INSN)
(TARGET_MASK_BASE_ADDRESSES, TARGET_LIBFUNC, TARGET_ABI_GNU,
(TARGET_FCMP_EPSILON, TARGET_ZERO_EXTEND, TARGET_KNUTH_DIVISION)
(TARGET_TOPLEVEL_SYMBOLS, TARGET_BRANCH_PREDICT)
(TARGET_BASE_ADDRESSES, TARGET_USE_RETURN_INSN, TARGET_SWITCHES):
Don't define.
(TARGET_DEFAULT): Change TARGET_MASK_... to MASK_...
* config/mmix/mmix.c (mmix_cc1_ignored_option): Remove.
(TARGET_DEFAULT_TARGET_FLAGS): Override default.
From-SVN: r99122
Kazu Hirata [Mon, 2 May 2005 20:49:16 +0000 (20:49 +0000)]
class.c (current_lang_depth, [...]): Use VEC instead of VARRAY.
* class.c (current_lang_depth, push_lang_context,
pop_lang_context): Use VEC instead of VARRAY.
* cp-tree.h (saved_scope): Use VEC for lang_base instead of
VARRAY.
* name-lookup.c (push_to_top_level): Use VEC instead of
VARRAY.
From-SVN: r99121
Joseph Myers [Mon, 2 May 2005 19:39:04 +0000 (20:39 +0100)]
re PR c/15698 (no error in presence of broken builtin fn + K&R declaration)
PR c/15698
* c-tree.h (C_DECL_BUILTIN_PROTOTYPE): New.
* c-decl.c (current_function_prototype_built_in,
current_function_prototype_arg_types): New.
(merge_decls): Keep source location of prototype followed by
nonprototype declaration. Update C_DECL_BUILTIN_PROTOTYPE.
(builtin_function): Set C_DECL_BUILTIN_PROTOTYPE.
(start_function): Always set current_function_prototype_locus,
current_function_prototype_built_in and
current_function_prototype_arg_types. Check for external
prototype whether or not visible for external function and set
current_function_prototype_arg_types accordingly.
(store_parm_decls_oldstyle): Use
current_function_prototype_arg_types for checking old-style
definition against prototype. Give warnings only if
current_function_prototype_built_in).
testsuite:
* gcc.dg/builtins-30.c: Update expected messages.
* gcc.dg/pr15698-1.c, gcc.dg/pr15698-2.c, gcc.dg/pr15698-3.c,
gcc.dg/pr15698-4.c, gcc.dg/pr15698-5.c, gcc.dg/pr15698-6.c,
gcc.dg/pr15698-7.c, pr15698-8.c: New tests.
From-SVN: r99118
Kazu Hirata [Mon, 2 May 2005 18:36:24 +0000 (18:36 +0000)]
class.c (local_classes, [...]): Use VEC instead of VARRAY.
* class.c (local_classes, init_class_processing): Use VEC
instead of VARRAY.
* cp-tree.h (local_classes): Likewise.
* mangle.c (discriminator_for_local_entity): Likewise.
* name-lookup.c (pushtag): Likewise.
From-SVN: r99115
Daniel Jacobowitz [Mon, 2 May 2005 18:25:23 +0000 (18:25 +0000)]
ggc.h (ggc_alloc_zone_pass_stat): New macro.
* ggc.h (ggc_alloc_zone_pass_stat): New macro.
(ggc_alloc_zone_stat): Don't define.
* ggc-zone.c (ggc_alloc_typed_stat, ggc_alloc_stat): Use
ggc_alloc_zone_pass_stat.
* rtl.c (rtx_alloc_stat, shallow_copy_rtx_stat): Likewise.
* tree.c (make_node_stat, copy_node_stat, make_tree_binfo_stat)
(make_tree_vec_stat, tree_cons_stat, build1_stat): Likewise.
From-SVN: r99114
Daniel Jacobowitz [Mon, 2 May 2005 18:18:37 +0000 (18:18 +0000)]
calls.c (expand_call): Handle current_function_pretend_args_size when checking for sibcalls.
* calls.c (expand_call): Handle current_function_pretend_args_size
when checking for sibcalls.
From-SVN: r99113
Kazu Hirata [Mon, 2 May 2005 18:06:27 +0000 (18:06 +0000)]
re PR tree-optimization/21294 (Missed removal of null pointer check)
gcc/
PR tree-optimization/21294
* tree-vrp.c (vrp_expr_computes_nonzero): New.
(extract_range_from_expr): Call vrp_expr_computes_nonzero.
testsuite/
PR tree-optimization/21294
* gcc.dg/tree-ssa/pr21294.c: New.
From-SVN: r99111
Janis Johnson [Mon, 2 May 2005 18:01:58 +0000 (18:01 +0000)]
re PR middle-end/19985 (executables created with -fprofile-arcs -ftest-coverage segfault in gcov_exit ())
PR 19985
* gcov-io.h: Declare gcov external functions hidden.
From-SVN: r99109
Kazu Hirata [Mon, 2 May 2005 16:57:53 +0000 (16:57 +0000)]
tree-ssa-sink.c (nearest_common_dominator_of_uses): Factor out common code.
* tree-ssa-sink.c (nearest_common_dominator_of_uses): Factor
out common code.
From-SVN: r99105
Kazu Hirata [Mon, 2 May 2005 16:47:03 +0000 (16:47 +0000)]
tree-ssa-uncprop.c (equiv_hash_elt, [...]): Use VEC instead of VARRAY.
* tree-ssa-uncprop.c (equiv_hash_elt, remove_equivalence,
record_equiv, tree_ssa_uncprop, uncprop_into_successor_phis):
Use VEC instead of VARRAY.
(equiv_free): New.
From-SVN: r99104
Paolo Bonzini [Mon, 2 May 2005 16:02:52 +0000 (16:02 +0000)]
c-common.c (resolve_overloaded_builtin): Forward to target hook for BUILT_IN_MD built-ins.
2005-05-02 Paolo Bonzini <bonzini@gnu.org>
* c-common.c (resolve_overloaded_builtin): Forward to target
hook for BUILT_IN_MD built-ins.
* c-typeck.c (finish_call_expr): Call resolve_overloaded_builtin
for all types of built-in.
* target-def.h (TARGET_RESOLVE_OVERLOADED_BUILTIN): New. Use it
in the definition of the target hooks struct.
* target.h (struct gcc_target): Add resolve_overloaded_builtin.
* config/rs6000/altivec.h: Rewritten.
* config/rs6000/rs6000-c.c (struct altivec_builtin_types,
altivec_resolve_overloaded_builtin, altivec_build_resolved_builtin,
rs6000_builtin_type, rs6000_builtin_type_compatible,
altivec_overloaded_builtins, rs6000_builtin_type,
rs6000_builtin_type_compatible): New.
* config/rs6000/rs6000.c (rs6000_builtin_types, rs6000_builtin_decls):
New.
(def_builtin): Turn into a function. Check for duplicates and store
the builtin into rs6000_builtin_decls.
(bdesc_3arg, bdesc_dst, bdesc_altivec_preds, bdesc_2arg,
bdesc_1arg): Add overloaded builtins.
(altivec_expand_builtin): Check for unresolved overloaded builtins,
do not support ALTIVEC_COMPILETIME_ERROR.
(rs6000_init_builtins): Add opaque 128-bit vector, and internal
nodes to represent front-end types.
(altivec_init_builtins, rs6000_common_init_builtins): Create builtins
with opaque arguments and/or return values.
* config/rs6000/rs6000.h (enum rs6000_builtins): Remove
ALTIVEC_COMPILETIME_ERROR and add Altivec overloaded builtins.
(rs6000_builtin_type_index): New.
(is_ev64_opaque_type): Rename to...
(rs6000_is_opaque_type): ... this.
(rs6000_cpu_cpp_builtins): Install the resolve_overloaded_builtin
target hook.
cp:
2005-05-02 Paolo Bonzini <bonzini@gnu.org>
* semantics.c (finish_call_expr): Call resolve_overloaded_builtin
for BUILT_IN_MD built-ins.
testsuite:
2005-05-02 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/altivec-3.c (vec_store): Do not use the old
__builtin_altivec_st_internal_4si built-in.
From-SVN: r99103
Mark Mitchell [Mon, 2 May 2005 15:38:38 +0000 (15:38 +0000)]
re PR c++/15875 (rejects pointer to member in template)
PR c++/15875
* g++.dg/template/ptrmem14.C: New test.
From-SVN: r99100
Kazu Hirata [Mon, 2 May 2005 15:28:51 +0000 (15:28 +0000)]
function.c (reorder_blocks, [...]): Use VEC instead of VARRAY.
* function.c (reorder_blocks, reorder_blocks_1): Use VEC
instead of VARRAY.
From-SVN: r99099
Nathan Sidwell [Mon, 2 May 2005 14:29:44 +0000 (14:29 +0000)]
bfin.c (emit_link_insn, [...]): Use gcc_assert or gcc_unreachable as appropriate.
* config/bfin/bfin.c (emit_link_insn, effective_address_32bit_p,
print_address_operand, print_operand, legitimize_pic_address,
asm_conditional_branch, bfin_gen_compare, output_push_multiple,
output_pop_multiple): Use gcc_assert or gcc_unreachable as
appropriate.
* config/bfin/bfin.md (movsf splitter, beq, bne): Likewise.
Co-Authored-By: Bernd Schmidt <bernd.schmidt@analog.com>
From-SVN: r99096
Paul Brook [Mon, 2 May 2005 13:36:53 +0000 (13:36 +0000)]
20000523-1.c: Fix bytes/bits thinko.
2005-05-02 Paul Brook <paul@codesourcery.com>
* gcc.c-torture/execute/
20000523-1.c: Fix bytes/bits thinko.
From-SVN: r99095
Dorit Naishlos [Mon, 2 May 2005 13:32:20 +0000 (13:32 +0000)]
* doc/passes.texi: Document vectorization pass.
From-SVN: r99094
Kazu Hirata [Mon, 2 May 2005 08:56:52 +0000 (08:56 +0000)]
tree-scalar-evolution.c (get_exit_conditions_rec, [...]): Use VEC instead of VARRAY.
* tree-scalar-evolution.c (get_exit_conditions_rec,
select_loops_exit_conditions,
number_of_iterations_for_all_loops,
analyze_scalar_evolution_for_all_loop_phi_nodes,
scev_analysis): Use VEC instead of VARRAY.
From-SVN: r99093
Michael Matz [Mon, 2 May 2005 04:22:45 +0000 (04:22 +0000)]
re PR c++/19542 (attribute(sentinel) has problems with C++ __null)
PR c++/19542
* c-common.c (c_common_nodes_and_builtins): Create global null_node.
(warn_strict_null_sentinel): Define.
(check_function_sentinel): Check for null_node as valid sentinel too.
* c-common.h (c_tree_index): Added CTI_NULL.
(null_node) Define global_tree[CTI_NULL].
(warn_strict_null_sentinel): Declare.
* c-opts.c: (c_common_handle_option): Handle -Wstrict-null-sentinel.
* c.opt: (Wstrict-null-sentinel): New C++ option.
* doc/invoke.texi (C++ Options): Document -Wstrict-null-sentinel.
* cp-tree.h (cp_tree_index): Remove CPTI_NULL, to be defined in C
common frontend.
(null_node): Remove.
* lex.c (cxx_init): Move null_node initialisation to C common frontend.
* g++.dg/warn/sentinel.C: New testcase for __null sentinels added.
From-SVN: r99091
GCC Administrator [Mon, 2 May 2005 00:16:24 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99089.2
Kazu Hirata [Sun, 1 May 2005 23:37:50 +0000 (23:37 +0000)]
dwarf2out.c (decl_scope_table, [...]): Use VEC instead of VARRAY.
* dwarf2out.c (decl_scope_table, push_decl_scope,
pop_decl_scope, scope_die_for, dwarf2out_init): Use VEC
instead of VARRAY.
From-SVN: r99086
Kazu Hirata [Sun, 1 May 2005 23:34:24 +0000 (23:34 +0000)]
* global.c (calculate_reg_pav): Use VEC instead of VARRAY.
From-SVN: r99085
Kazu Hirata [Sun, 1 May 2005 23:23:33 +0000 (23:23 +0000)]
gimplify.c (gimplify_compound_lval): Use VEC instead of VARRAY.
* gimplify.c (gimplify_compound_lval): Use VEC instead of
VARRAY.
From-SVN: r99083
Andrew Pinski [Sun, 1 May 2005 22:20:44 +0000 (15:20 -0700)]
re PR c++/14391 (-fno-weak vs. __GXX_WEAK__)
2005-05-01 Mark Mitchell <mark@codesourcery.com>
PR C++/14391
* c-cppbuiltin.c (c_cpp_builtins): Do not define __GXX_WEAK__ to 1
if !flag_weak.
* doc/cpp.texi (__DEPRECATED): Document.
(__EXCEPTIONS): Likewise.
(__GXX_WEAK__): Likewise.
From-SVN: r99082
Mark Mitchell [Sun, 1 May 2005 20:30:40 +0000 (20:30 +0000)]
c-cppbuiltin.c (c_cpp_builtins): Do not define __GXX_WEAK__ to 1 if !flag_weak.
* c-cppbuiltin.c (c_cpp_builtins): Do not define __GXX_WEAK__ to 1
if !flag_weak.
* doc/cpp.texi (__DEPRECATED): Document.
(__EXCEPTIONS): Likewise.
(__GXX_WEAK__): Likewise.
* g++.dg/cpp/weak.C: New test.
From-SVN: r99080
Mark Mitchell [Sun, 1 May 2005 18:23:27 +0000 (18:23 +0000)]
function.c (INVOKE__main): Do not define.
* function.c (INVOKE__main): Do not define.
(expand_main_function): Check HAS_INIT_SECTION when determining
whether or not to call __main.
From-SVN: r99076
Paolo Carlini [Sun, 1 May 2005 16:26:43 +0000 (16:26 +0000)]
os_defines.h: Remove obsolete __off_t, __off64_t, __ssize_t defines.
2005-05-01 Paolo Carlini <pcarlini@suse.de>
* config/os/aix/os_defines.h: Remove obsolete __off_t,
__off64_t, __ssize_t defines.
* config/os/djgpp/os_defines.h: Likewise.
* config/os/hpux/os_defines.h: Likewise.
* config/os/irix/irix5.2/os_defines.h: Likewise.
* config/os/irix/irix6.5/os_defines.h: Likewise.
* config/os/solaris/solaris2.5/os_defines.h: Likewise.
* config/os/solaris/solaris2.6/os_defines.h: Likewise.
* config/os/solaris/solaris2.7/os_defines.h: Likewise.
* docs/html/17_intro/porting.html: Don't discuss the defines.
* docs/html/17_intro/porting.texi: Likewise.
From-SVN: r99072
Kazu Hirata [Sun, 1 May 2005 15:30:05 +0000 (15:30 +0000)]
* tree-ssa-loop-ivopts.c: Fix a comment typo.
From-SVN: r99071
Paul Brook [Sun, 1 May 2005 15:28:53 +0000 (15:28 +0000)]
arm.h (ARM_EMIT_TRAMPOLINE_CACHE_CLEAR): Define.
2005-01-05 Paul Brook <paul@codesourcery.com>
* config/arm/arm.h (ARM_EMIT_TRAMPOLINE_CACHE_CLEAR): Define.
(INITIALIZE_TRAMPOLINE): Use it.
* config/arm/linux-gas.h (INITIALIZE_TRAMPOLINE): Remove.
* config/arm/netbsd.h (INITIALIZE_TRAMPOLINE): Remove.
* config/arm/netbsd-elf.h (INITIALIZE_TRAMPOLINE): Remove.
From-SVN: r99068
Gerald Pfeifer [Sun, 1 May 2005 13:39:37 +0000 (13:39 +0000)]
install.texi (Specific): Omit dots in the @anchors names for i?86-*-sco3.2v5*...
* doc/install.texi (Specific): Omit dots in the @anchors names
for i?86-*-sco3.2v5*, i?86-*-solaris2.10, and sparc-sun-solaris2.7.
Omit underscores for x86_64-*-* and the "all ELF targets" entry.
From-SVN: r99067
Joseph Myers [Sun, 1 May 2005 10:56:28 +0000 (11:56 +0100)]
* zh_CN.po: New file.
From-SVN: r99064
Zdenek Dvorak [Sun, 1 May 2005 08:08:14 +0000 (10:08 +0200)]
re PR tree-optimization/18316 (Missed IV optimization)
PR tree-optimization/18316
PR tree-optimization/19126
* tree.c (build_int_cst_type): Avoid shift by size of type.
* tree-scalar-evolution.c (simple_iv): Add allow_nonconstant_step
argument.
* tree-scalar-evolution.h (simple_iv): Declaration changed.
* tree-ssa-loop-ivopts.c (struct iv_cand): Add depends_on
field.
(dump_cand): Dump depends_on information.
(determine_biv_step): Add argument to simple_iv call.
(contains_abnormal_ssa_name_p): Handle case expr == NULL.
(find_bivs, find_givs_in_stmt_scev): Do not require step to be a
constant.
(add_candidate_1): Record depends_on for candidates.
(tree_int_cst_sign_bit, constant_multiple_of): New functions.
(get_computation_at, get_computation_cost_at, may_eliminate_iv):
Handle ivs with nonconstant step.
(iv_ca_set_remove_invariants, iv_ca_set_add_invariants): New functions.
(iv_ca_set_no_cp, iv_ca_set_cp): Handle cand->depends_on.
(create_new_iv): Unshare the step before passing it to create_iv.
(free_loop_data): Free cand->depends_on.
(build_addr_strip_iref): New function.
(find_interesting_uses_address): Use build_addr_strip_iref.
(strip_offset_1): Split the recursive part from strip_offset.
Strip constant offset component_refs and array_refs.
(strip_offset): Split the recursive part to strip_offset_1.
(add_address_candidates): Removed.
(add_derived_ivs_candidates): Do not use add_address_candidates.
(add_iv_value_candidates): Add candidates with stripped constant
offset. Consider all candidates with initial value 0 important.
(struct affine_tree_combination): New.
(aff_combination_const, aff_combination_elt, aff_combination_scale,
aff_combination_add_elt, aff_combination_add,
tree_to_aff_combination, add_elt_to_tree, aff_combination_to_tree,
fold_affine_sum): New functions.
(get_computation_at): Use fold_affine_sum.
* tree-ssa-loop-manip.c (create_iv): Handle ivs with nonconstant step.
* tree-ssa-loop-niter.c (number_of_iterations_exit): Add argument
to simple_iv call.
* gcc.dg/tree-ssa/loop-8.c: New test.
From-SVN: r99059
Michael Matz [Sun, 1 May 2005 00:48:43 +0000 (00:48 +0000)]
i386.md (movmemsi): Also active when TARGET_INLINE_ALL_STRINGOPS.
* config/i386/i386.md (movmemsi): Also active when
TARGET_INLINE_ALL_STRINGOPS.
* gcc.dg/inline-mcpy.c: New test.
From-SVN: r99054
GCC Administrator [Sun, 1 May 2005 00:16:36 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99052.2
Thomas Koenig [Sat, 30 Apr 2005 20:51:39 +0000 (20:51 +0000)]
re PR libfortran/18958 ([4.0 only] eoshift segfaults when shifting off the end of an array)
2005-04-30 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/18958
libgfortran.h: Change typedef of index_type from size_t
to ssize_t.
2005-04-30 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/18958
* gfortran.dg/eoshift.f90: New test case.
From-SVN: r99047
Eric Botcazou [Sat, 30 Apr 2005 20:38:46 +0000 (22:38 +0200)]
re PR target/20633 ([4.0 only] libgcc2.c:1623: error: size of array 'compile_type_assert' is negative)
PR bootstrap/20633
* config/freebsd-spec.h (FBSD_CPP_SPEC): Add %(cpp_arch).
From-SVN: r99046
Paul Brook [Sat, 30 Apr 2005 19:40:53 +0000 (19:40 +0000)]
bpabi.h (RENAME_LIBRARY_SET): Always use .thumb_set in thumb mode.
2005-04-30 Paul Brook <paul@codesourcery.com>
* config/arm/bpabi.h (RENAME_LIBRARY_SET): Always use .thumb_set in
thumb mode.
* config/arm/ieee754-df.S: Use __INTERWORKING_STUBS__.
* config/arm/ieee754-sf.S: Ditto.
* config/arm/lib1funcs.asm: Define and use __INTERWORKING_STUBS__.
(FUNC_ALIAS): Use .thumb_set for thumb routines.
From-SVN: r99043
Paul Thomas [Sat, 30 Apr 2005 18:17:54 +0000 (18:17 +0000)]
Fix matmul PR18857 and supply testcase
From-SVN: r99041
Kazu Hirata [Sat, 30 Apr 2005 16:05:21 +0000 (16:05 +0000)]
tree-ssanames.c: Fix a comment typo.
* tree-ssanames.c: Fix a comment typo.
* doc/options.texi: Fix a typo.
From-SVN: r99038
Nathan Sidwell [Sat, 30 Apr 2005 16:04:24 +0000 (16:04 +0000)]
h8300.c (byte_reg): Use gcc_assert and gcc_unreachable as appropriate.
* config/h8300/h8300.c (byte_reg): Use gcc_assert and
gcc_unreachable as appropriate.
(split_adds_subs, cond_string, print_operand,
h8300_initial_elimination_offset, h8300_classify_operand,
h8300_unary_length, h8300_short_immediate_length,
h8300_bitfield_length, h8300_binary_length,
h8300_insn_length_from_table, compute_mov_length, output_plussi,
compute_plussi_length, compute_plussi_cc, output_logical_op,
compute_logical_op_length, compute_logical_op_cc,
output_h8sx_shift, get_shift_alg, h8300_shift_needs_scratch_p,
output_a_shift, compute_a_shift_length, compute_a_shift_cc,
output_a_rotate, compute_a_rotate_length, fix_bit_operand,
h8300_regs_ok_for_stm): Likewise.
* config/h8300/h8300.md (*movsi_h8300, *movsf_h8300,
monitor_prologue): Likewise.
From-SVN: r99037
Kazu Hirata [Sat, 30 Apr 2005 15:01:47 +0000 (15:01 +0000)]
loop-invariant.c (invariants, [...]): Use VEC instead of VARRAY.
* loop-invariant.c (invariants, create_new_invariant,
get_inv_cost, best_gain_for_invariant,
find_invariants_to_move, move_invariants,
init_inv_motion_data, free_inv_motion_data): Use VEC instead
of VARRAY.
From-SVN: r99035
Paolo Carlini [Sat, 30 Apr 2005 06:54:08 +0000 (06:54 +0000)]
re PR libstdc++/21286 (filebuf::xsgetn vs pipes)
2005-04-29 Paolo Carlini <pcarlini@suse.de>
Nathan Myers <ncm@cantrip.org>
PR libstdc++/21286
* include/bits/fstream.tcc (basic_filebuf<>::xsgetn):
Loop on short reads; remove the work-around for
libstdc++/20806, not needed anymore.
Co-Authored-By: Nathan Myers <ncm@cantrip.org>
From-SVN: r99033
Richard Henderson [Sat, 30 Apr 2005 03:17:53 +0000 (20:17 -0700)]
function.c (instantiate_decls): Remove valid_only argument.
* function.c (instantiate_decls): Remove valid_only argument.
(instantiate_decls_1, instantiate_decl): Likewise.
(instantiate_virtual_regs_1): Delete.
(instantiate_virtual_regs_lossage): Delete.
(instantiate_virtual_regs_in_rtx): New.
(safe_insn_predicate): New.
(instantiate_virtual_regs_in_insn): New.
(instantiate_virtual_regs): Update to match all that. Only run
instantiate_decls once.
From-SVN: r99032
GCC Administrator [Sat, 30 Apr 2005 00:16:30 +0000 (00:16 +0000)]
Daily bump.
[[Split portion of a mixed commit.]]
From-SVN: r99028.2
Michael Koch [Fri, 29 Apr 2005 22:10:09 +0000 (22:10 +0000)]
2005-04-29 Michael Koch <konqueror@gmx.de>
* java/net/NetworkInterface.java
(static): Removed.
(NetworkInterface(String,InetAddress)): Made package-private.
(NetworkInterface(String,InetAddress[])): New constructor.
(getRealNetworkInterfaces): Removed.
(getByName): Use VMNetworkInterface.getInterfaces().
(getByInetAddress): Likewise.
(getNetworkInterfaces): Likewise.
* java/net/VMNetworkInterface.java,
java/net/natVMNetworkInterfaceNoNet.cc,
java/net/natVMNetworkInterfacePosix.c,c
java/net/natVMNetworkInterfaceWin32.cc: New files.
* java/net/natNetworkInterfaceNoNet.cc,
java/net/natNetworkInterfacePosix.cc,
java/net/natNetworkInterfaceWin32.cc: Removed.
* configure.ac
* Makefile.am
* configure, Makefile.in: Regenerated.
From-SVN: r99021
Richard Henderson [Fri, 29 Apr 2005 21:42:27 +0000 (14:42 -0700)]
gengtype.c (write_func_for_structure): Split out ...
* gengtype.c (write_func_for_structure): Split out ...
(output_type_enum): ... new function. Fix thinko accessing
TYPE_PARAM_STRUCT data.
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>
From-SVN: r99020
Tom Tromey [Fri, 29 Apr 2005 20:27:58 +0000 (20:27 +0000)]
tree.c (build_block): Removed unused 'tags' argument.
gcc:
* tree.c (build_block): Removed unused 'tags' argument.
* tree.h (build_block): Removed argument.
gcc/java:
* expr.c (build_jni_stub): Updated for change to build_block.
gcc/treelang:
* treetree.c (poplevel): Updated for change to build_block.
gcc/fortran:
* f95-lang.c (poplevel): Updated for change to build_block.
From-SVN: r99019
Andrew Pinski [Fri, 29 Apr 2005 20:19:42 +0000 (13:19 -0700)]
expr.c (force_evaluation_order): Declare 'saved' earlier.
2005-04-29 Andrew Pinski <pinskia@gcc.gnu.org>
* expr.c (force_evaluation_order): Declare 'saved' earlier.
From-SVN: r99018
Andrew Haley [Fri, 29 Apr 2005 20:02:47 +0000 (20:02 +0000)]
Class.h (_Jv_ResolvePoolEntry): Declare as friend.
2005-04-29 Andrew Haley <aph@redhat.com>
* java/lang/Class.h (_Jv_ResolvePoolEntry): Declare as friend.
From-SVN: r99016
Andrew Pinski [Fri, 29 Apr 2005 18:50:57 +0000 (11:50 -0700)]
re PR tree-optimization/21272 (SSA_NAME def follows use with -ftree-vectorize)
2005-04-29 Devang Patel <dpatel@apple.com>
PR tree-optimization/21272
PR tree-optimization/21266
* tree-if-conv.c (find_phi_replacement_condition): Fix think-o.
From-SVN: r99013
Paolo Carlini [Fri, 29 Apr 2005 18:50:00 +0000 (18:50 +0000)]
re PR libstdc++/21238 (conflicting "typedef __numpunct_cache<_CharT> __cache_type;" in std::numpunct<CharT> makes specialization impossible)
2005-04-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/21238
* include/bits/locale_facets.tcc (num_get::_M_extract_float,
num_get::_M_extract_int, num_get::do_get(bool&),
num_put::_M_insert_int, num_put::_M_insert_float,
num_put::do_put(bool), money_get::_M_extract,
money_put::_M_insert): Adjust the __cache_type typedef not to
forward to a numpunct/moneypunct typedef.
* testsuite/testsuite_character.h: Add pod_uint and its numpunct
and moneypunct specializations.
* testsuite/testsuite_character.cc: Add numpunct<pod_uint>::id
and moneypunct<pod_uint>::id.
* testsuite/22_locale/num_get/3.cc: New.
* testsuite/22_locale/num_put/3.cc: Likewise.
* testsuite/22_locale/money_get/3.cc: Likewise.
* testsuite/22_locale/money_put/3.cc: Likewise.
* include/bits/locale_facets.tcc (money_put::_M_insert,
time_get::_M_extract_name): Prefer operator== to operator!=
on char_types.
From-SVN: r99012
Dalibor Topic [Fri, 29 Apr 2005 18:47:42 +0000 (18:47 +0000)]
2005-04-29 Dalibor Topic <robilad@kaffe.org>
* java/nio/channels/FileChannelImpl.java
(FileChannelImpl(String, int)): Removed.
(FileChannelImpl(File, int)): Added. Check if opened file is a
directory.
* java/io/FileInputStream.java(FileInputStream): Fixed javadocs.
Call FileChannelImpl(File, int).
* java/io/FileOutputStream.java (FileInputStream): Call
FileChannelImpl(File, int).
* java/io/RandomAccessFile.java (RandomAccessFile):
Call FileChannelImpl(File, int). Switched constructors around.
From-SVN: r99011
Andrew Haley [Fri, 29 Apr 2005 18:43:25 +0000 (18:43 +0000)]
re PR java/19285 (Interfaces not initialized by static field access)
2005-04-28 Andrew Haley <aph@redhat.com>
PR java/19285
* java-tree.h (soft_resolvepoolentry_node): New.
(alloc_constant_fieldref): Declare.
* expr.c (expand_java_field_op): Don't call class_init for
accesses to static fields with indirect dispatch.
* builtins.c (initialize_builtins): Add "__builtin_expect".
* decl.c (soft_resolvepoolentry_node): New variable.
(java_init_decl_processing): Create a decl for
"_Jv_ResolvePoolEntry".
* class.c (build_fieldref_cache_entry): New function.
(build_static_field_ref): Rewrite for indirect dispatch.
* constants.c (find_name_and_type_constant_tree): New function.
(alloc_constant_fieldref): Likewise.
(build_constants_constructor): Handle CONSTANT_Fieldref and
CONSTANT_NameAndType.
PR java/21115
* expr.c (force_evaluation_order): Convert outgoing args smaller
than integer.
From-SVN: r99010
Michael Matz [Fri, 29 Apr 2005 18:39:22 +0000 (18:39 +0000)]
re PR rtl-optimization/21144 (Apparent infinite loop in reload)
PR rtl-optimization/21144
* postreload.c (reload_cse_move2add): Check for VOIDmode.
From-SVN: r99008
Andrew Haley [Fri, 29 Apr 2005 18:35:36 +0000 (18:35 +0000)]
re PR java/19285 (Interfaces not initialized by static field access)
2005-04-27 Andrew Haley <aph@redhat.com>
PR java/19285
* prims.cc (_Jv_ResolvePoolEntry): New function.
* include/jvm.h (_Jv_Linker::find_field): New arg: found_class.
* link.cc (_Jv_Linker::find_field): New arg: found_class.
(resolve_pool_entry): Initialize the class in which a field is
found.
(link_symbol_table): Pass new arg to found_class.
From-SVN: r99006
Bob Wilson [Fri, 29 Apr 2005 16:40:52 +0000 (16:40 +0000)]
xtensa.h (OPTIMIZATION_OPTIONS): Define to disable flag_reorder_blocks.
* config/xtensa/xtensa.h (OPTIMIZATION_OPTIONS): Define to disable
flag_reorder_blocks.
From-SVN: r99000
Kazu Hirata [Fri, 29 Apr 2005 16:23:18 +0000 (16:23 +0000)]
re PR tree-optimization/21030 (ICE in set_value_range building 176.gcc with -O2)
gcc/
PR tree-optimization/21030
* tree-vrp.c (adjust_range_with_scev): Do not create invalid
ranges where VR->MAX is smaller than VR->MIN.
testsuite/
PR tree-optimization/21030
* gcc.dg/tree-ssa/pr21030.c: New.
From-SVN: r98999
Devang Patel [Fri, 29 Apr 2005 16:10:12 +0000 (09:10 -0700)]
re PR tree-optimization/21272 (SSA_NAME def follows use with -ftree-vectorize)
PR tree-optimization/21272
* tree-if-conv.c (find_phi_replacement_condition): Fix think-o.
* gcc.dg/vect/vect-ifcvt-10.c: New.
From-SVN: r98998
Kazu Hirata [Fri, 29 Apr 2005 15:34:45 +0000 (15:34 +0000)]
* tree-flow-inline.h, tree-ssa-operands.c: Fix comment typos.
From-SVN: r98994
Jakub Jelinek [Fri, 29 Apr 2005 15:31:39 +0000 (17:31 +0200)]
[multiple changes]
2005-04-29 Jakub Jelinek <jakub@redhat.com>
PR fortran/13082
PR fortran/18824
* trans-expr.c (gfc_conv_variable): Handle return values in functions
with alternate entry points.
* resolve.c (resolve_entries): Remove unnecessary string termination
after snprintf. Set result of entry master.
If all entries have the same type, set entry master's type
to that common type, otherwise set mixed_entry_master attribute.
* trans-types.c (gfc_get_mixed_entry_union): New function.
(gfc_get_function_type): Use it for mixed_entry_master functions.
* gfortran.h (symbol_attribute): Add mixed_entry_master bit.
* decl.c (gfc_match_entry): Set entry->result properly for
function ENTRY.
* trans-decl.c (gfc_get_symbol_decl): For entry_master, skip over
__entry argument.
(build_entry_thunks): Handle return values in entry thunks.
Clear BT_CHARACTER's ts.cl->backend_decl, so that it is not
shared between multiple contexts.
(gfc_get_fake_result_decl): Use DECL_ARGUMENTS from
current_function_decl instead of sym->backend_decl. Skip over
entry master's entry id argument. For mixed_entry_master entries or
their results, return a COMPONENT_REF of the fake result.
(gfc_trans_deferred_vars): Don't warn about missing return value if
at least one entry point uses RESULT.
(gfc_generate_function_code): For entry master returning
CHARACTER, copy ts.cl->backend_decl to all entry result syms.
* trans-array.c (gfc_trans_dummy_array_bias): Don't consider return
values optional just because they are in entry master.
* gfortran.dg/entry_4.f90: New test.
* gfortran.fortran-torture/execute/entry_1.f90: New test.
* gfortran.fortran-torture/execute/entry_2.f90: New test.
* gfortran.fortran-torture/execute/entry_3.f90: New test.
* gfortran.fortran-torture/execute/entry_4.f90: New test.
* gfortran.fortran-torture/execute/entry_5.f90: New test.
* gfortran.fortran-torture/execute/entry_6.f90: New test.
* gfortran.fortran-torture/execute/entry_7.f90: New test.
2005-04-29 Tobias Schl"uter <tobias.schlueter@physik.uni-muenchen.de>
* gfortran.fortran-torture/execute/entry_8.f90: New test.
From-SVN: r98993
Kazu Hirata [Fri, 29 Apr 2005 15:06:07 +0000 (15:06 +0000)]
tree-flow-inline.h: Fix a comment typo.
* tree-flow-inline.h: Fix a comment typo.
* doc/tree-ssa.texi: Fix a typo.
From-SVN: r98992
Nathan Sidwell [Fri, 29 Apr 2005 14:45:43 +0000 (14:45 +0000)]
fr30.c (fr30_expand_prologue): Use gcc_assert and gcc_unreachable as appropriate.
* config/fr30/fr30.c (fr30_expand_prologue): Use gcc_assert and
gcc_unreachable as appropriate.
(fr30_expand_epilogue, fr30_setup_incoming_varargs,
fr30_print_operand, fr30_move_double): Likewise.
* config/fr30/fr30.md (*movsi_internal, *movsf_internal): Likewise.
From-SVN: r98991
Francois-Xavier Coudert [Fri, 29 Apr 2005 14:24:04 +0000 (16:24 +0200)]
configure.ac: Check for ftruncate and chsize.
* configure.ac: Check for ftruncate and chsize.
* io/unix.c (fd_truncate): Provide chsize as alternative to
ftruncate.
* config.h.in: Regenerate.
* configure: Regenerate.
From-SVN: r98989
Mark Mitchell [Fri, 29 Apr 2005 14:22:10 +0000 (14:22 +0000)]
arm.h (ARM_EABI_CTORS_SECTION_OP): Do not define if a definition has already been provided.
* config/arm/arm.h (ARM_EABI_CTORS_SECTION_OP): Do not define if a
definition has already been provided.
(ARM_EABI_DTORS_SECTION_OP): Likewise.
* config/arm/symbian.h (ARM_EABI_CTORS_SECTION_OP): Define.
(ARM_EABI_DTORS_SECTION_OP): Likewise.
From-SVN: r98988