Alan Modra [Mon, 14 Mar 2005 07:24:29 +0000 (07:24 +0000)]
rs6000-protos.h: Replace "struct rtx_def *" throughout with its typedef, "rtx".
* config/rs6000/rs6000-protos.h: Replace "struct rtx_def *"
throughout with its typedef, "rtx".
* config/rs6000/rs6000.c: Likewise. Formatting fixes.
(rs6000_tls_symbol_ref_1): Remove inline keyword.
* config/rs6000/rs6000.h (REG_ALLOC_ORDER): Formatting. Reorder
regs in comment to match code.
From-SVN: r96420
Kazu Hirata [Mon, 14 Mar 2005 04:33:46 +0000 (04:33 +0000)]
tree-cfg.c (verify_stmts): Check that bb_for_stmt (stmt) == bb for every PHI node and statement.
* tree-cfg.c (verify_stmts): Check that
bb_for_stmt (stmt) == bb for every PHI node and statement.
From-SVN: r96418
Mark Mitchell [Mon, 14 Mar 2005 04:02:20 +0000 (04:02 +0000)]
Update message
From-SVN: r96417
Mark Mitchell [Mon, 14 Mar 2005 03:54:21 +0000 (03:54 +0000)]
re PR c++/20157 (Internal compiler error on invalid code)
PR c++/20157
* pt.c (determine_specialization): Reject non-specializations.
PR c++/20157
* g++.dg/template/error18.C: New test.
From-SVN: r96414
Kazu Hirata [Mon, 14 Mar 2005 02:56:51 +0000 (02:56 +0000)]
regclass.c (reg_class_superclasses, [...]): Make them static.
* regclass.c (reg_class_superclasses, reg_class_subclasses):
Make them static.
* hard-reg-set.h: Remove the corresponding declarations.
From-SVN: r96410
Kazu Hirata [Mon, 14 Mar 2005 02:55:03 +0000 (02:55 +0000)]
function.c (get_func_frame_size): Make it static.
* function.c (get_func_frame_size): Make it static.
* function.h: Remove the corresponding type.
From-SVN: r96409
Kazu Hirata [Mon, 14 Mar 2005 02:53:59 +0000 (02:53 +0000)]
except.c (check_handled): Make it static.
* except.c (check_handled): Make it static.
* except.h: Remove the corresponding prototype.
From-SVN: r96408
Alan Modra [Mon, 14 Mar 2005 02:23:49 +0000 (02:23 +0000)]
config.gcc: Remove excess indentation.
* config.gcc: Remove excess indentation.
(powerpc*-*-*, rs6000-*-*): Accept --with-cpu/tune power5 and 8548.
From-SVN: r96405
GCC Administrator [Mon, 14 Mar 2005 00:16:58 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r96401
Roger Sayle [Sun, 13 Mar 2005 22:34:03 +0000 (22:34 +0000)]
re PR middle-end/19331 (Inefficient code generated for bitfield assignment)
PR middle-end/19331
* tree.c (get_unwidened): Treat CONVERT_EXPR and NOP_EXPR identically.
* fold-const.c (fold_sign_changed_comparison): Likewise.
(fold_binary): Optimize comparisons against widened operands if
the extension is represented by a CONVERT_EXPR, same as a NOP_EXPR.
From-SVN: r96397
Ben Elliston [Sun, 13 Mar 2005 22:17:59 +0000 (22:17 +0000)]
re PR c++/16792 (ICE in gen_subprogram_die, at dwarf2out.c:11267)
PR debug/16792
* g++.dg/debug/pr16792.C: New test.
From-SVN: r96396
Eric Botcazou [Sun, 13 Mar 2005 22:11:46 +0000 (23:11 +0100)]
sparc.c (struct_value_alias_set): New global variable.
* config/sparc/sparc.c (struct_value_alias_set): New global variable.
(sparc_override_options): Initialize it.
(sparc_struct_value_rtx): Set it on the MEM to be returned.
From-SVN: r96395
Joseph Myers [Sun, 13 Mar 2005 21:13:41 +0000 (21:13 +0000)]
anon-struct-6.c, [...]: Ensure uniqueness of test assertion names.
* gcc.dg/anon-struct-6.c, gcc.dg/array-8.c,
gcc.dg/cpp/
19940712-1.c, gcc.dg/cpp/
19951025-1.c,
gcc.dg/cpp/tr-warn6.c, gcc.dg/deprecated.c, gcc.dg/init-bad-1.c,
gcc.dg/init-bad-2.c, gcc.dg/init-bad-3.c, gcc.dg/m-un-2.c,
gcc.dg/parm-mismatch-1.c, gcc.dg/redecl-1.c: Ensure uniqueness of
test assertion names.
From-SVN: r96391
David Edelsohn [Sun, 13 Mar 2005 20:28:29 +0000 (20:28 +0000)]
predicates.md (mem_or_easy_const_operand): Delete.
* config/rs6000/predicates.md (mem_or_easy_const_operand): Delete.
(reg_or_none500mem_operand): New predicate.
(zero_reg_mem_operand): New predicate.
* config/rs6000/rs6000.md (extendsfdf2): Change operand1 predicate
to reg_or_none500mem_operand.
(extendsfdf2_fpr): Add MEM alternative.
(extenddftf2_internal): Change operand2 predicate to
zero_reg_mem_operand.
From-SVN: r96390
Tobias Schlüter [Sun, 13 Mar 2005 19:28:18 +0000 (20:28 +0100)]
re PR fortran/18600 (ICE NIST FM020.f reduced case)
PR fortran/18600
* gfortran.dg/stfunc_1.f90: New test.
From-SVN: r96389
Tobias Schlüter [Sun, 13 Mar 2005 18:46:36 +0000 (19:46 +0100)]
re PR fortran/16907 (Non-integer array indices rejected)
fortran/
PR fortran/16907
* resolve.c (gfc_resolve_index): Allow REAL indices as an extension.
testsuite/
PR fortran/16907
* gfortran.dg/real_index_1.f90: New test.
From-SVN: r96385
Tobias Schlüter [Sun, 13 Mar 2005 18:37:17 +0000 (19:37 +0100)]
re PR fortran/20323 (optional arguments incorrectly accepted in specification expressions)
fortran/
PR fortran/20323
* resolve.c (gfc_resolve): Check if character lengths are
specification expressions.
testsuite/
PR fortran/20323
* gfortran.dg/spec_expr_1.f90: New test.
From-SVN: r96382
Daniel Jacobowitz [Sun, 13 Mar 2005 18:09:55 +0000 (18:09 +0000)]
ggc-zone.c: Rewritten.
* ggc-zone.c: Rewritten.
* alloc-pool.c (dump_alloc_pool_statistics): Don't print statistics
if there are none.
* configure.ac: Define GGC_ZONE for --with-gc=zone.
* config.in: Regenerated.
* configure: Regenerated.
* gentype.c (write_types_process_field, write_func_for_structure):
Pass new argument to gt_pch_note_object.
* ggc-common.c (struct ptr_data): Add TYPE.
(gt_pch_note_object): Take TYPE argument and save it.
(call_count): Update call to ggc_pch_count_object.
(call_alloc): Update call to ggc_pch_alloc_object.
(gt_pch_save): Call ggc_pch_prepare_write after paddng the PCH
file.
* ggc-none.c (rtl_zone, garbage_zone, ggc_alloc_zone_stat): Delete.
* ggc-page.c (rtl_zone, tree_zone, garbage_zone)
(ggc_alloc_zone_stat): Delete.
(ggc_pch_count_object, ggc_pch_alloc_object): Add TYPE argument.
* ggc.h (gt_pch_note_object, ggc_pch_count_object)
(ggc_pch_alloc_object): Update prototypes.
(garbage_zone): Delete.
(tree_zone, rtl_zone, ggc_alloc_zone_stat, ggc_alloc_zone): Move to
GGC_ZONE conditional. Update. Change tree_zone and rtl_zone into
pointers.
(tree_id_zone): New variable.
(ggc_alloc_cleared_zone): Remove unused.
(ggc_alloc_zone): Define.
(ggc_alloc_rtvec, ggc_alloc_tree): Update to use ggc_alloc_zone.
* rtl.c (rtx_alloc_stat, shallow_copy_rtx_stat): Use
ggc_alloc_zone_stat.
* stringpool.c (gt_pch_n_S): Update call to gt_pch_note_object.
* tree.c (copy_node_stat, make_tree_binfo_stat, make_tree_vec_stat)
(tree_cons_stat, build1_stat): Update call to ggc_alloc_zone_stat.
(make_node_stat): Likewise. Use tree_id_zone.
From-SVN: r96381
Daniel Jacobowitz [Sun, 13 Mar 2005 18:03:25 +0000 (18:03 +0000)]
configure.ac: Check for MIPS TLS.
* configure.ac: Check for MIPS TLS.
* configure: Regenerated.
* config/mips/mips-protos.h (enum mips_symbol_type): Add
SYMBOL_TLS, SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL,
SYMBOL_GOTTPREL, and SYMBOL_TPREL.
* config/mips/mips.c (mips_regno_to_class): Handle V1_REG.
(TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
(mips_classify_symbol, mips_symbolic_constant_p)
(mips_symbolic_address_p, mips_symbol_insns): Handle TLS symbols.
(mips_tls_operand_p, mips_call_tls_get_addr)
(mips_legitimize_tls_address, mips_cannot_force_const_mem)
(mips_tls_symbol_ref_1): New functions.
(mips_legitimize_address, mips_legitimize_const_move): Call
mips_legitimize_tls_address.
(override_options): Handle V1_REG and TLS symbols. Disable TLS
for MIPS16.
* config/mips/mips.h (enum reg_class, REG_CLASS_NAMES)
(REG_CLASS_CONTENTS, GR_REG_CLASS_P): Include V1_REG.
(mips_char_to_class): Document V1_REG.
(HAVE_AS_TLS): Provide default.
* config/mips/mips.md (UNSPEC_TLS_LDM, UNSPEC_TLS_GET_TP): New
constants.
(load_got<mode>): Renamed from *load_got<mode>. Allow when
!TARGET_ABICALLS.
(tls_get_tp_<mode>): New instruction.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r96380
Daniel Jacobowitz [Sun, 13 Mar 2005 17:57:49 +0000 (17:57 +0000)]
configure.ac: Update checks for target tools.
* configure.ac: Update checks for target tools.
* configure: Regenerated.
From-SVN: r96379
Daniel Jacobowitz [Sun, 13 Mar 2005 17:56:14 +0000 (17:56 +0000)]
* varasm.c (decl_tls_model): Check flag_shlib instead of flag_pic.
From-SVN: r96378
Roger Sayle [Sun, 13 Mar 2005 17:06:42 +0000 (17:06 +0000)]
expmed.c (expand_mult): Use synthetic multiplication sequences for more classes of DImode...
* expmed.c (expand_mult): Use synthetic multiplication sequences for
more classes of DImode multiplication by constant. Allow both
multiplication by small negative constants (by performing a
multiplication by a positive constant and negating the result) and
multiplications by large powers of two, by using a left shift.
From-SVN: r96377
Kazu Hirata [Sun, 13 Mar 2005 15:58:31 +0000 (15:58 +0000)]
tree-ssa-phiopt.c (value_replacement): Remove local variable result.
* tree-ssa-phiopt.c (value_replacement): Remove local variable
result.
From-SVN: r96376
Kazu Hirata [Sun, 13 Mar 2005 15:57:31 +0000 (15:57 +0000)]
tree-ssa-live.c (build_tree_conflict_graph): Remove local variable ann.
* tree-ssa-live.c (build_tree_conflict_graph): Remove local
variable ann.
From-SVN: r96375
Kazu Hirata [Sun, 13 Mar 2005 15:55:32 +0000 (15:55 +0000)]
* tree-cfg.c (group_case_labels): Remove local variable type.
From-SVN: r96374
Kazu Hirata [Sun, 13 Mar 2005 15:54:15 +0000 (15:54 +0000)]
lambda-code.c (lambda_compute_auxillary_space): Remove local variable determinant.
* lambda-code.c (lambda_compute_auxillary_space): Remove local
variable determinant.
From-SVN: r96373
Kazu Hirata [Sun, 13 Mar 2005 15:53:13 +0000 (15:53 +0000)]
builtins.c (expand_builtin_mathfn_3): Remove local variable before_call.
* builtins.c (expand_builtin_mathfn_3): Remove local variable
before_call.
From-SVN: r96372
Kazu Hirata [Sun, 13 Mar 2005 15:51:08 +0000 (15:51 +0000)]
builtins.c (fold_trunc_transparent_mathfn, [...]): Use TYPE (TYPE (fndecl)) instead of TREE_TYPE (exp).
* builtins.c (fold_trunc_transparent_mathfn,
fold_fixed_mathfn, fold_builtin_atan, fold_builtin_trunc,
fold_builtin_floor, fold_builtin_ceil, fold_builtin_round,
fold_builtin_lround, fold_builtin_bitop, fold_builtin_memcpy,
fold_builtin_strcpy, fold_builtin_strncpy,
fold_builtin_signbit): Use TYPE (TYPE (fndecl)) instead of
TREE_TYPE (exp).
From-SVN: r96371
Kazu Hirata [Sun, 13 Mar 2005 14:23:31 +0000 (14:23 +0000)]
c-decl.c (c_init_decl_processing): Remove useless calls to build_function_type.
* c-decl.c (c_init_decl_processing): Remove useless calls to
build_function_type.
From-SVN: r96370
Kazu Hirata [Sun, 13 Mar 2005 14:06:48 +0000 (14:06 +0000)]
builtin-attrs.def, [...]: Update copyright.
* builtin-attrs.def, c-lex.c, c-pragma.h, reg-stack.c,
config/mips/vr.h: Update copyright.
From-SVN: r96369
Feng Wang [Sun, 13 Mar 2005 14:05:58 +0000 (14:05 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2005-03-13 Feng Wang <fengwang@nudt.edu.cn>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r96368
Kazu Hirata [Sun, 13 Mar 2005 13:31:01 +0000 (13:31 +0000)]
tree-into-ssa.c (find_idf): Speed up by putting the indexes of basic blocks into work_stack.
* tree-into-ssa.c (find_idf): Speed up by putting the indexes
of basic blocks into work_stack.
From-SVN: r96367
Andy Hutchinson [Sun, 13 Mar 2005 10:09:53 +0000 (10:09 +0000)]
re PR target/18251 (unable to find a register to spill in class `POINTER_REGS')
PR target/18251
* config/avr/avr.md (movmemhi): Rewrite as RTL loop.
(*movmemqi_insn): Delete.
(*movmemhi): Delete.
From-SVN: r96365
Kazu Hirata [Sun, 13 Mar 2005 04:35:12 +0000 (04:35 +0000)]
builtins.c (fold_builtin_classify): Take decomposed arguments of CALL_EXPR.
* builtins.c (fold_builtin_classify): Take decomposed
arguments of CALL_EXPR.
(fold_builtin_1): Update a call to fold_builtin_classify.
From-SVN: r96364
Joseph Myers [Sun, 13 Mar 2005 01:09:47 +0000 (01:09 +0000)]
re PR c/20402 (gcc.dg/noncompile/920923-1.c ICE)
PR c/20402
* c-parser.c (c_parser_struct_or_union_specifier): Don't fall
through into call to parser_xref_tag after parse error.
(c_parser_struct_declaration): Consistently return NULL_TREE on
error.
testsuite:
* gcc.dg/noncompile/920923-1.c: Detail expected diagnostics for
new parser.
From-SVN: r96363
Daniel Berlin [Sun, 13 Mar 2005 00:46:07 +0000 (00:46 +0000)]
In gcc/ada/ 2005-03-12 Daniel Berlin <dberlin@dberlin.org>
In gcc/ada/
2005-03-12 Daniel Berlin <dberlin@dberlin.org>
* misc.c (gnat_post_options): Turn off structural
aliasing for now.
In gcc/
2005-03-12 Daniel Berlin <dberlin@dberlin.org>
* tree-flow-inline.h (ref_contains_array_ref): New function.
(lookup_subvars_for_var): Ditto.
(get_subvars_for_var): Ditto.
(var_can_have_subvars): Ditto.
* tree-flow.h (mem_tag_kind): Add STRUCT_FIELD.
(struct subvar): New type.
* tree-dfa.c (okay_component_ref_for_subvars): New function.
* tree-optimize.c (init_tree_optimization_passes): Call
pass_create_structure_vars.
* tree-ssa-alias.c: Include vec.h.
(init_alias_info): Don't auto-clear call clobbered on struct-field
tags.
(compute_flow_insensitive_aliasing): Handle subvars.
(group_aliases): Handle STRUCT_FIELD aliases.
(setup_pointers_and_addressables): Ditto.
Don't mark variables non-addressable if they still have
addressable subvars.
Also mark subvars addressable when the real variable is marked
addressable.
(add_pointed_to_var): Try to prune the pointed-to set by only
pointing to subvars when possible.
Otherwise, make sure we set addresses_needed and pt_vars to
properly include subvars.
(bitpos_of_field): New function.
(push_fields_onto_fieldstack): Ditto.
(get_or_create_used_part_for): Ditto.
(create_overlap_variables_for): Ditto.
(find_used_portions): Ditto.
(create_structure_vars): Ditto.
(pass_create_structure_vars): New structure.
* tree-ssa-operands.c (finalize_ssa_v_must_defs): Remove assert.
(get_expr_operands): Handle subvars. Also try to turn
COMPONENT_REF accesses into must-defs now that we can accurately
portray it.
(note_addressable): Try to only mark as addressable those subvars
we know a COMPONENT_REF touches.
(overlap_subvar): New function.
* tree-vect-analyze.c (vect_object_analysis): Add new parameter.
Handle subvar storing.
(vect_address_analysis): Update caller of vect_object_analysis.
* tree-vect-transform.c (vect_create_data_ref_ptr): Copy subvars.
* tree-vectorizer.h (struct _stmt_vec_info): Add subvars member.
(STMT_VINFO_SUBVARS): New macro.
* common.opts: add flag_tree_salias.
* opts.c (decode_options): flag_tree_salias defaults to on.
* doc/invoke.texi: Document fdump-tree-svars and -ftree-salias.
* doc/tree-ssa.texi: Document structural alias analysis.
From-SVN: r96362
GCC Administrator [Sun, 13 Mar 2005 00:16:54 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r96360
Tobias Schlüter [Sat, 12 Mar 2005 21:48:48 +0000 (22:48 +0100)]
Correct wrong date on ChangeLog entry
From-SVN: r96353
Tobias Schlüter [Sat, 12 Mar 2005 21:44:44 +0000 (22:44 +0100)]
re PR fortran/20361 (-fmax-stack-var-size=N not working for equivalence)
fortran/
PR fortran/20361
* trans-array.c (gfc_stack_space_left): Remove unused variable.
(gfc_can_put_var_on_stack): Move to trans-decl.c, remove #if 0'ed
code.
* trans-array.h (gfc_stack_space_left, gfc_can_put_var_on_stack):
Remove declaration / prototype.
* trans-common.c (build_equiv_decl): Give union a name. Check if
it can be put on the stack.
* trans-decl.c (gfc_stack_space_left): Move function here.
(gfc_build_qualified_array): Fix comment typo.
* trans.h (gfc_put_var_on_stack): Add prototype.
testsuite/
PR fortran/20361
* gfortran.dg/largeequiv_1.f90: New test.
From-SVN: r96352
Steven Bosscher [Sat, 12 Mar 2005 20:53:19 +0000 (20:53 +0000)]
tree-cfg.c (make_goto_expr_edges): Don't use error_mark_node.
* tree-cfg.c (make_goto_expr_edges): Don't use error_mark_node.
* tree-ssa-dce.c (mark_stmt_necessary): Don't check for it.
* tree-ssa-operands.c (get_expr_operands): Likewise.
(get_expr_operands): Likewise for ERROR_MARK.
From-SVN: r96351
Kazu Hirata [Sat, 12 Mar 2005 18:38:17 +0000 (18:38 +0000)]
tree-ssa-live.c (create_ssa_var_map, [...]): Remove local variable snn.
* tree-ssa-live.c (create_ssa_var_map,
calculate_live_on_entry): Remove local variable snn.
From-SVN: r96348
Kazu Hirata [Sat, 12 Mar 2005 18:37:18 +0000 (18:37 +0000)]
tree-inline.c (expand_call_inline): Remove local variable decl.
* tree-inline.c (expand_call_inline): Remove local variable
decl.
From-SVN: r96347
Kazu Hirata [Sat, 12 Mar 2005 18:35:48 +0000 (18:35 +0000)]
tree-if-conv.c (tree_if_convert_cond_expr): Remove local variable new_cond.
* tree-if-conv.c (tree_if_convert_cond_expr): Remove local
variable new_cond.
(combine_blocks): Remove local variables exits and new_e.
From-SVN: r96346
Kazu Hirata [Sat, 12 Mar 2005 18:34:42 +0000 (18:34 +0000)]
reg-stack.c (move_for_stack_reg): Remove local variable push_insn.
* reg-stack.c (move_for_stack_reg): Remove local variable
push_insn.
(compare_for_stack_reg): Remove local variable flags_user.
(convert_regs_1): Remove local variable deleted.
From-SVN: r96345
Kazu Hirata [Sat, 12 Mar 2005 18:33:25 +0000 (18:33 +0000)]
gimplify.c (gimplify_expr): Remove local variables r0 and r1.
* gimplify.c (gimplify_expr): Remove local variables r0 and
r1.
From-SVN: r96344
Kazu Hirata [Sat, 12 Mar 2005 18:32:26 +0000 (18:32 +0000)]
c-decl.c (c_init_decl_processing): Remove local variables ptr_ftype_void and ptr_ftype_ptr.
* c-decl.c (c_init_decl_processing): Remove local variables
ptr_ftype_void and ptr_ftype_ptr.
From-SVN: r96343
Kazu Hirata [Sat, 12 Mar 2005 16:14:42 +0000 (16:14 +0000)]
builtins.c (fold_builtin_logarithm): Take decomposed arguments of CALL_EXPR.
* builtins.c (fold_builtin_logarithm): Take decomposed
arguments of CALL_EXPR.
(fold_builtin_1): Update a call to fold_builtin_logarithm.
From-SVN: r96342
Kazu Hirata [Sat, 12 Mar 2005 16:13:41 +0000 (16:13 +0000)]
builtins.c (fold_builtin_exponent): Take decomposed arguments of CALL_EXPR.
* builtins.c (fold_builtin_exponent): Take decomposed
arguments of CALL_EXPR.
(fold_builtin_1): Update a call to fold_builtin_exponent.
From-SVN: r96341
Andreas Tobler [Sat, 12 Mar 2005 16:00:38 +0000 (17:00 +0100)]
stacktrace.cc (GetCallerInfo): Return nothing in case of SJLJ_EXCEPTIONS is defined.
2005-03-12 Andreas Tobler <a.tobler@schweiz.ch>
* stacktrace.cc (GetCallerInfo): Return nothing in case of
SJLJ_EXCEPTIONS is defined.
From-SVN: r96340
Per Bothner [Sat, 12 Mar 2005 15:40:35 +0000 (07:40 -0800)]
decl-2.c: Add extra line breaks.
* gcc.dg/decl-2.c: Add extra line breaks. That way we can verify
that diagnotics refer to correct token.
* gcc.dg/unused-3.c: Likewise.
From-SVN: r96339
Kazu Hirata [Sat, 12 Mar 2005 14:11:16 +0000 (14:11 +0000)]
value-prof.c (mod_subtract_transform): Remove local variable value.
* value-prof.c (mod_subtract_transform): Remove local variable
value.
From-SVN: r96338
Kazu Hirata [Sat, 12 Mar 2005 14:09:23 +0000 (14:09 +0000)]
tree-vect-transform.c (vect_get_new_vect_var): Remove local variable prefix_len.
* tree-vect-transform.c (vect_get_new_vect_var): Remove local
variable prefix_len.
From-SVN: r96337
Kazu Hirata [Sat, 12 Mar 2005 14:07:53 +0000 (14:07 +0000)]
tree-ssa-pre.c (compute_avail): Remove local variable val.
* tree-ssa-pre.c (compute_avail): Remove local variable val.
(mark_operand_necessary): Remove local variable ver.
From-SVN: r96336
Kazu Hirata [Sat, 12 Mar 2005 14:06:31 +0000 (14:06 +0000)]
tree-ssa-phiopt.c (tree_ssa_phiopt): Remove local variable removed_phis.
* tree-ssa-phiopt.c (tree_ssa_phiopt): Remove local variable
removed_phis.
From-SVN: r96335
Kazu Hirata [Sat, 12 Mar 2005 14:04:33 +0000 (14:04 +0000)]
tree-ssa.c (kill_redundant_phi_nodes): Remove local variable var.
* tree-ssa.c (kill_redundant_phi_nodes): Remove local variable
var.
From-SVN: r96334
Geoffrey Keating [Sat, 12 Mar 2005 10:44:06 +0000 (10:44 +0000)]
Index: libcpp/ChangeLog
2005-03-12 Geoffrey Keating <geoffk@apple.com>
* directives.c (glue_header_name): Update call to cpp_spell_token.
* internal.h (_cpp_interpret_identifier): New.
* charset.c (_cpp_interpret_identifier): New.
(_cpp_valid_ucn): Allow UCN version of '$'.
* lex.c (lex_identifier): Add extra parameter to indicate if initial
character was '$' or '\'. Support identifiers with UCNs.
(forms_identifier_p): Allow UCNs.
(_cpp_lex_direct): Pass extra parameter to lex_identifier.
(utf8_to_ucn): New.
(cpp_spell_token): Add FORSTRING parameter. Use it.
(cpp_token_as_text): Update call to cpp_spell_token.
(cpp_output_token): Write UCNs back out.
(stringify_arg): Update call to cpp_spell_token.
(paste_tokens): Likewise.
(cpp_macro_definition): Likewise.
* macro.c (stringify_arg): Likewise.
(paste_tokens): Likewise.
(cpp_macro_definition): Likewise.
* include/cpplib.h: Add parameter to cpp_spell_token.
Index: gcc/ChangeLog
2005-03-12 Geoffrey Keating <geoffk@apple.com>
* c-lex.c (c_lex_with_flags): Add parameter to call to
cpp_spell_token.
Index: gcc/testsuite/ChangeLog
2005-03-12 Geoffrey Keating <geoffk@apple.com>
* gcc.dg/ucnid-1.c: New.
* gcc.dg/ucnid-2.c: New.
* gcc.dg/ucnid-3.c: New.
* gcc.dg/ucnid-4.c: New.
* gcc.dg/ucnid-5.c: New.
* gcc.dg/ucnid-6.c: New.
* gcc.dg/cpp/ucnid-1.c: New.
* gcc.dg/cpp/ucnid-2.c: New.
* gcc.dg/cpp/ucnid-3.c: New.
* g++.dg/other/ucnid-1.C: New.
From-SVN: r96333
Geoffrey Keating [Sat, 12 Mar 2005 10:26:56 +0000 (10:26 +0000)]
* gcc.dg/vmx/darwin-abi-3.c: Delete.
From-SVN: r96332
Per Bothner [Sat, 12 Mar 2005 06:57:15 +0000 (22:57 -0800)]
direct2.c: With new lexer changes...
* gcc.dg/cpp/direct2.c: With new lexer changes, error "before string
constant" is now actually on same line as string constant.
* gcc.dg/cpp/direct2s.c: Likewise.
From-SVN: r96331
Per Bothner [Sat, 12 Mar 2005 06:39:31 +0000 (22:39 -0800)]
cp-tree.h (struct cp_declarator): New id_loc field.
* cp-tree.h (struct cp_declarator): New id_loc field.
* cp/parser.c (cp_lexer_get_preprocessor_token): Set cp_token's
location using c_lex_with_flags, instead of input_location.
(cp_parser_direct_declarator): Set declarator's id_loc from
cp_token's id_loc.
From-SVN: r96330
Per Bothner [Sat, 12 Mar 2005 06:37:46 +0000 (22:37 -0800)]
c-tree.h (struct c_declarator): New id_loc field.
* c-tree.h (struct c_declarator): New id_loc field.
* c-pragma.h (c_lex_with_flags): Take position reference.
* c-lex.c (c_lex_with_flags): Set passed-in location from cpp token,
iff USE_MAPPED_LOCATION. (Type doesn't match otherwise.)
(c_lex): Pass dummy location to c_lex_with_flags.
* c-parser.c (c_lex_one_token): Set c_token's location using
c_lex_with_flags, instead of input_location, which might be "ahead".
(c_parser_direct_declarator): Set declarator's id_loc from
c_token's id_loc.
* c-decl.c (grokdeclarator): Set DECL_SOURCE_LOCATION from
declarator's id_loc, rather than probably-imprecise input_location.
(build_id_declarator): Initialize c_declarator's id_loc field.
From-SVN: r96329
Roger Sayle [Sat, 12 Mar 2005 04:56:29 +0000 (04:56 +0000)]
re PR middle-end/20419 (ICE in gen_lowpart_general, at rtlhooks.c:58)
PR middle-end/20419
* builtins.c (expand_builtin_signbit): Force the signbit's word
into an integer register to avoid SUBREGs of floating point modes.
From-SVN: r96328
Ranjit Mathew [Sat, 12 Mar 2005 03:07:56 +0000 (03:07 +0000)]
jacks.xfail: Add XFAILs for new JSR-201 tests.
* testsuite/libjava.jacks/jacks.xfail: Add XFAILs for new JSR-201
tests.
From-SVN: r96327
Kaveh R. Ghazi [Sat, 12 Mar 2005 02:06:20 +0000 (02:06 +0000)]
Make-lang.in (fortran-warn): Set to $(STRICT_WARN) -Wno-error.
* Make-lang.in (fortran-warn): Set to $(STRICT_WARN) -Wno-error.
* decl.c, trans.c: Don't use C++ style comments.
* gfortran.h (sym_flavor, procedure_type, sym_intent, gfc_access,
ifsrc): Give names to enums and use ENUM_BITFIELD.
(gfc_access): Remove trailing comma.
From-SVN: r96323
Kazu Hirata [Sat, 12 Mar 2005 00:34:07 +0000 (00:34 +0000)]
cfglayout.c, [...]: Update copyright.
* cfglayout.c, loop-doloop.c, profile.c, target-def.h,
target.h, targhooks.c, tracer.c, tree-ssa-loop-ch.c,
tree-ssa-loop-unswitch.c, tree-ssa-loop.c, vec.c, vmsdbgout.c,
config/m32r/m32r.md, config/xtensa/xtensa.h: Update copyright.
From-SVN: r96320
GCC Administrator [Sat, 12 Mar 2005 00:16:43 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r96318
David Edelsohn [Fri, 11 Mar 2005 22:58:49 +0000 (22:58 +0000)]
re PR rtl-optimization/20306 (FP complex modes moved via GPRs)
PR rtl-optimization/20306
* expr.c (emit_move_complex): Set try_int false if mode is
MODE_COMPLEX_FLOAT and mov_optab exists for inner mode. Only try
emit_block_move if try_int is true.
From-SVN: r96312
Andreas Tobler [Fri, 11 Mar 2005 21:33:56 +0000 (22:33 +0100)]
libjava.exp (libjava_init): Use the same target check for Darwin.
2005-03-11 Andreas Tobler <a.tobler@schweiz.ch>
* testsuite/lib/libjava.exp (libjava_init): Use the same target
check for Darwin.
(libjava_arguments): Likewise.
* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Likewise.
(gcj_jni_test_one): Likewise.
(gcj_jni_invocation_compile_c_to_binary): Likewise.
Add flags to keep the Darwin linker quiet.
(gcj_jni_invocation_test_one): Use the same target check for Darwin.
Add -liconv for Darwin.
From-SVN: r96311
Richard Henderson [Fri, 11 Mar 2005 17:50:30 +0000 (09:50 -0800)]
re PR target/20415 (Vector init builtin produces invalid instruction pshufw)
PR target/20415
* config/i386/mmx.md (vec_dupv4hi): Fix predicate.
* config/i386/i386.c (ix86_expand_vector_init_duplicate): Update
to match.
From-SVN: r96304
Tom Tromey [Fri, 11 Mar 2005 17:35:37 +0000 (17:35 +0000)]
Main.java (main): Handle '-p'.
libjava:
* gnu/gcj/tools/gcj_dbtool/Main.java (main): Handle '-p'.
(usage): Document '-p'.
* Makefile.in: Rebuilt.
* Makefile.am (dbexecdir): New variable.
(db_name): Likewise.
(dbexec_DATA): Likewise.
($(db_name)): New target.
(AM_CXXFLAGS): Define LIBGCJ_DEFAULT_DATABASE.
* java/lang/natRuntime.cc (insertSystemProperties): Set default
system database.
gcc/java:
* gcj.texi (Invoking gcj-dbtool): Document 'gcj-dbtool -p'.
(libgcj Runtime Properties): Document the default .db.
From-SVN: r96303
Richard Sandiford [Fri, 11 Mar 2005 16:38:27 +0000 (16:38 +0000)]
mips.h (mips_fix_vr4130_string): Declare.
* config/mips/mips.h (mips_fix_vr4130_string): Declare.
(TARGET_FIX_VR4130): New macro.
(TARGET_OPTIONS): Add -mfix-vr4130.
(ISA_HAS_MACCHI): New macro.
(ASM_SPEC): Add -mfix-vr4130.
* config/mips/mips.c (mips_fix_vr4130_string): New variable.
(override_options): Handle mips_fix_vr4130_string.
(mips_avoid_hazards): Clear all_noreorder_p
if we're working around VR4130 errata and the macc alternatives
are not available.
* config/mips/mips.md (mfhilo_<mode>): Turn into a define_expand.
(*mfhilo_<mode>, *mfhilo_<mode>_macc): New insns.
* config/mips/vr.h (DEFAULT_VR_ARCH): Set to mfix-vr4130.
(MULTILIB_DEFAULTS): Remove leading "march=".
(DRIVER_SELF_SPECS): Likewise. Make -mfix-vr4130 imply -march=vr4130
if no architecture option is given.
* config/mips/t-vr (MULTILIB_OPTIONS): Use -mfix-vr4130 for the
VR4130 multilibs.
(MULTILIB_MATCHES): Map -march=vr4130 to the -mfix-vr4130 multilibs.
* doc/invoke.texi: Document -mfix-vr4130.
From-SVN: r96301
Richard Sandiford [Fri, 11 Mar 2005 15:28:34 +0000 (15:28 +0000)]
mips.c (override_options): Only warn about -mint64 deprecation if TARGET_INT64.
* config/mips/mips.c (override_options): Only warn about -mint64
deprecation if TARGET_INT64.
From-SVN: r96299
Kaveh R. Ghazi [Fri, 11 Mar 2005 13:33:21 +0000 (13:33 +0000)]
builtin-attrs.def (ATTR_NONNULL_LIST, [...]): New "nonnull" attribute lists which are non-specific regarding the nonnull...
* builtin-attrs.def (ATTR_NONNULL_LIST, ATTR_NOTHROW_NONNULL,
ATTR_CONST_NOTHROW_NONNULL, ATTR_PURE_NOTHROW_NONNULL,
ATTR_MALLOC_NOTHROW_NONNULL): New "nonnull" attribute lists which
are non-specific regarding the nonnull parameter positions.
(ATTR_NONNULL_1_2, ATTR_NONNULL_1_4, ATTR_NOTHROW_NONNULL_1_2,
ATTR_NOTHROW_NONNULL_1_4, ATTR_CONST_NOTHROW_NONNULL_1,
ATTR_PURE_NOTHROW_NONNULL_1, ATTR_PURE_NOTHROW_NONNULL_1_2,
ATTR_MALLOC_NOTHROW_NONNULL_1): Delete.
* builtins.def: Use the non-specific "nonnull" attibute lists.
From-SVN: r96298
Zdenek Dvorak [Fri, 11 Mar 2005 09:30:50 +0000 (10:30 +0100)]
basic-block.h (single_succ_p, [...]): Improve comments.
* basic-block.h (single_succ_p, single_pred_p, single_succ_edge,
single_pred_edge, single_succ, single_pred): Improve comments.
From-SVN: r96293
Zdenek Dvorak [Fri, 11 Mar 2005 09:05:12 +0000 (10:05 +0100)]
basic-block.h (single_succ_p, [...]): New inline functions.
* basic-block.h (single_succ_p, single_pred_p, single_succ_edge,
single_pred_edge, single_succ, single_pred): New inline functions.
* bb-reorder.c (rotate_loop, find_traces_1_round,
add_labels_and_missing_jumps, fix_up_fall_thru_edges,
duplicate_computed_gotos): Use the single_succ/pred functions.
* cfganal.c (forwarder_block_p): Ditto.
* cfgbuild.c (compute_outgoing_frequencies): Ditto.
* cfgcleanup.c (try_simplify_condjump, try_forward_edges,
outgoing_edges_match, try_crossjump_to_edge, try_optimize_cfg,
merge_seq_blocks): Ditto.
* cfghooks.c (split_edge, tidy_fallthru_edges): Ditto.
* cfglayout.c (fixup_reorder_chain): Ditto.
* cfgloop.c (mark_single_exit_loops, update_latch_info,
canonicalize_loop_headers, verify_loop_structure): Ditto.
* cfgloopmanip.c (remove_path, unloop, loop_delete_branch_edge,
mfb_update_loops, create_preheader, force_single_succ_latches,
create_loop_notes): Ditto.
* cfgrtl.c (rtl_can_merge_blocks, try_redirect_by_replacing_jump,
force_nonfallthru_and_redirect, rtl_tidy_fallthru_edge,
commit_one_edge_insertion, purge_dead_edges,
cfg_layout_can_merge_blocks_p): Ditto.
* except.c (sjlj_emit_function_enter): Ditto.
* flow.c (init_propagate_block_info): Ditto.
* function.c (thread_prologue_and_epilogue_insns): Ditto.
* gcse.c (find_implicit_sets, bypass_conditional_jumps,
insert_insn_end_bb): Ditto.
* ifcvt.c (merge_if_block, find_if_block, find_if_case_1,
find_if_case_2): Ditto.
* lambda-code.c (perfect_nestify): Ditto.
* lcm.c (optimize_mode_switching): Ditto.
* loop-doloop.c (doloop_modify): Ditto.
* loop-init.c (loop_optimizer_init): Ditto.
* loop-iv.c (simplify_using_initial_values): Ditto.
* loop-unroll.c (unroll_loop_runtime_iterations): Ditto.
* loop-unswitch.c (unswitch_loop): Ditto.
* modulo-sched.c (generate_prolog_epilog): Ditto.
* predict.c (combine_predictions_for_insn, estimate_probability,
tree_estimate_probability, last_basic_block_p,
estimate_bb_frequencies): Ditto.
* profile.c (branch_prob): Ditto.
* regrename.c (copyprop_hardreg_forward): Ditto.
* sched-rgn.c (is_cfg_nonregular, find_rgns, update_live): Ditto.
* tracer.c (layout_superblocks): Ditto.
* tree-cfg.c (tree_can_merge_blocks_p, tree_merge_blocks,
cfg_remove_useless_stmts_bb, cleanup_control_flow,
cleanup_control_expr_graph, disband_implicit_edges,
tree_find_edge_insert_loc, bsi_commit_edge_inserts,
tree_verify_flow_info, tree_make_forwarder_block,
tree_forwarder_block_p, remove_forwarder_block,
remove_forwarder_block_with_phi, merge_phi_nodes): Ditto.
* tree-if-conv.c (tree_if_conversion): Ditto.
* tree-mudflap.c (mf_build_check_statement_for): Ditto.
* tree-ssa-dce.c (remove_dead_stmt): Ditto.
* tree-ssa-dom.c (dom_opt_finalize_block): Ditto.
* tree-ssa-loop-ch.c (should_duplicate_loop_header_p,
copy_loop_headers): Ditto.
* tree-ssa-loop-im.c (loop_commit_inserts): Ditto.
* tree-ssa-loop-ivopts.c (compute_phi_arg_on_exit): Ditto.
* tree-ssa-loop-manip.c (split_loop_exit_edge, ip_normal_pos,
lv_adjust_loop_entry_edge, tree_ssa_loop_version): Ditto.
* tree-ssa-loop-niter.c (simplify_using_initial_conditions): Ditto.
* tree-ssa-loop-unswitch.c (simplify_using_entry_checks): Ditto.
* tree-ssa-phiopt.c (tree_ssa_phiopt, value_replacement): Ditto.
* tree-ssa-pre.c (compute_antic_aux, insert_aux, init_pre): Ditto.
* tree-ssa-threadupdate.c (redirect_edges): Ditto.
* tree-tailcall.c (independent_of_stmt_p, find_tail_calls,
eliminate_tail_call, tree_optimize_tail_calls_1): Ditto.
* tree-vect-analyze.c (vect_analyze_loop_form): Ditto.
* tree-vect-transform.c (vect_update_ivs_after_vectorizer): Ditto.
* tree-vectorizer.c (slpeel_update_phi_nodes_for_guard,
slpeel_add_loop_guard): Ditto.
From-SVN: r96292
Francois-Xavier Coudert [Fri, 11 Mar 2005 08:03:02 +0000 (09:03 +0100)]
[multiple changes]
2005-03-12 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20124
* gfortran.dg/pr20124.f90: New Test
2005-03-11 Francois-Xavier Coudert <coudert@clipper.ens.fr>
PR libfortran/20124
* write.c (output_float): Adds a nzero_real variable to store
the number of leading zeros whatever the format width is. Corrects
the rounding of numbers less than 10^(-width). Fixes typo in an
error message. Updates copyright years
From-SVN: r96291
Jeff Law [Fri, 11 Mar 2005 04:52:42 +0000 (21:52 -0700)]
re PR tree-optimization/15784 (fold misses binary optimization)
PR tree-optimization/15784
* fold-const.c (fold): Fold ~A + 1 to -A. Fold -A - 1
and -1 - A to ~A.
* stmt.c (expand_case): Don't change index_type. Convert minval
to the proper type.
From-SVN: r96289
Bryce McKinlay [Fri, 11 Mar 2005 04:30:20 +0000 (04:30 +0000)]
exception.cc: Remove stray MethodRef.h include.
2005-03-10 Bryce McKinlay <mckinlay@redhat.com>
* exception.cc: Remove stray MethodRef.h include.
* java/lang/natClass.cc: Likewise.
* gnu/gcj/runtime/MethodRef.java: Removed.
* gnu/gcj/runtime/StackTrace.java, gnu/gcj/runtime/natNameFinder.cc,
gnu/gcj/runtime/natStackTrace.cc: Really removed.
* java/lang/natRuntime.cc (_load): Remove unsed variable.
* Makefile.am (ordinary_java_source_files): Remove MethodRef.java.
* Makefile.in: Rebuilt.
From-SVN: r96288
James A. Morrison [Fri, 11 Mar 2005 03:18:56 +0000 (03:18 +0000)]
re PR tree-optimization/20130 (Fold a * -1 - 1 into ~a;)
2005-03-11 James A. Morrison <phython@gcc.gnu.org>
PR tree-optimization/20130
* fold-const.c (fold): Fold x * -1 into -x.
From-SVN: r96283
Kaz Kojima [Fri, 11 Mar 2005 03:14:44 +0000 (03:14 +0000)]
re PR rtl-optimization/20331 (Wrong code generation for the argument of the pure function in PIC)
PR rtl-optimization/20331
* rtlanal.c (modified_between_p): Check its address first for MEM.
(modified_in_p): Likewise.
From-SVN: r96282
Ranjit Mathew [Fri, 11 Mar 2005 01:47:31 +0000 (01:47 +0000)]
Fix non-Ada bootstrap failure reported by Ranjit Mathew 2005-03-10 Ranjit Mathew <rmathew@hotmail.com>
Fix non-Ada bootstrap failure reported by Ranjit Mathew
2005-03-10 Ranjit Mathew <rmathew@hotmail.com>
* gcc_release (ADA_DIRS): Add "gnattools".
From-SVN: r96281
Joseph Myers [Fri, 11 Mar 2005 00:40:03 +0000 (00:40 +0000)]
* config.gcc (hppa*64*-*-hpux11*): Use pa/t-hpux-shlib.
From-SVN: r96280
Steve Ellcey [Fri, 11 Mar 2005 00:38:32 +0000 (00:38 +0000)]
re PR target/20095 (gcc.dg/cleanup-5.c fails on ia64-hpux)
PR target/20095
* gcc.dg/cleanup-5.c: xfail for ia64-hp-hpux11.*
From-SVN: r96279
John David Anglin [Fri, 11 Mar 2005 00:29:37 +0000 (00:29 +0000)]
* objc.dg/stabs-1.m (dg-final): Change regexp pattern for hppa SOM.
From-SVN: r96278
GCC Administrator [Fri, 11 Mar 2005 00:16:51 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r96276
Tom Tromey [Thu, 10 Mar 2005 23:40:15 +0000 (23:40 +0000)]
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Added MethodRef.java.
From-SVN: r96270
Steven Bosscher [Thu, 10 Mar 2005 23:28:01 +0000 (23:28 +0000)]
expr.c (expand_expr_real_1): If possible, use a conditional move for expanding MIN_EXPR and MAX_EXPR.
* expr.c (expand_expr_real_1): If possible, use a conditional
move for expanding MIN_EXPR and MAX_EXPR.
Use temp for moving around rtx-en.
From-SVN: r96269
Steve Ellcey [Thu, 10 Mar 2005 22:46:08 +0000 (22:46 +0000)]
forced1.C: Fix comment.
* g++.dg/eh/forced1.C: Fix comment.
* g++.dg/eh/forced2.C: Ditto.
* g++.dg/eh/forced3.C: Ditto.
* g++.dg/eh/forced4.C: Ditto.
From-SVN: r96267
Andrew Pinski [Thu, 10 Mar 2005 22:13:01 +0000 (22:13 +0000)]
re PR rtl-optimization/20412 (RTL checking failure in the combiner)
PR rtl-opt/20412
* simplify-rtx.c (simplify_relational_operation_1): Fix typo - check the
correct mode.
PR rtl-opt/20412
* gcc.c-torture/compile/pr20412.c: New test.
From-SVN: r96264
Roger Sayle [Thu, 10 Mar 2005 21:39:01 +0000 (21:39 +0000)]
builtins.c (expand_builtin_signbit): Extend to handle floating point modes wider than the largest integer type...
* builtins.c (expand_builtin_signbit): Extend to handle floating
point modes wider than the largest integer type, using the
operand_subword_force function to obtain the signbit's word.
* gcc.dg/builtins-32.c: Add new run-time tests for long double.
From-SVN: r96263
Jakub Jelinek [Thu, 10 Mar 2005 21:26:12 +0000 (22:26 +0100)]
re PR target/20322 (Miscompilation of libcpp/expr.c at -O2+)
PR target/20322
* combine.c (try_combine): If recog_for_combine added CLOBBERs
to NEWI2PAT, fail to combine if they are used by NEWPAT.
* gcc.dg/
20050307-1.c: New test.
From-SVN: r96260
Aldy Hernandez [Thu, 10 Mar 2005 20:45:58 +0000 (20:45 +0000)]
* doc/invoke.texi: Add 8540 to list of cpus in rs6000 cpu section.
From-SVN: r96256
Chris Burdess [Thu, 10 Mar 2005 19:44:22 +0000 (19:44 +0000)]
SAXEventSink.java: Ignore element declarations if not currently parsing the DTD.
2005-03-10 Chris Burdess <dog@bluezoo.org>
* gnu/xml/dom/ls/SAXEventSink.java: Ignore element declarations if
not currently parsing the DTD.
From-SVN: r96255
Bryce McKinlay [Thu, 10 Mar 2005 19:02:21 +0000 (19:02 +0000)]
New Stack Trace infrastructure.
2005-03-10 Bryce McKinlay <mckinlay@redhat.com>
New Stack Trace infrastructure.
* Makefile.am (libgcj0_convenience_la_SOURCES): Add stacktrace.cc.
(gnu/gcj/runtime/StackTrace.lo): Removed.
(ordinary_java_source_files): Remove obsolete files.
(nat_source_files): Remove obsolete files. Add natVMThrowable.cc.
* configure.host (fallback_backtrace_h): Set backtrace header
for mingw and cygwin targets.
* configure.ac: Make symlink for fallback backtrace headers.
* Makefile.in, configure: Rebuilt.
* defineclass.cc (_Jv_ClassReader::read_one_code_attribute):
Read 'LineNumberTable' attribute.
(_Jv_ClassReader::read_one_class_attribute): Read 'SourceFile'
attribute.
(_Jv_ClassReader::handleCodeAttribute): Initialize method line
table fields.
* exception.cc: Remove unused include.
* interpret.cc (DIRECT_THREADED, insn_slot): Moved to java-interp.h.
(SAVE_PC): New macro. Save current PC in the interpreter frame.
(NULLCHECK, NULLARRAYCHECK): Use SAVE_PC.
(_Jv_InterpMethod::compile): Translate bytecode PC values in the line
table to direct threaded instruction values.
(_Jv_StartOfInterpreter, _Jv_EndOfInterpreter): Removed.
(_Jv_InterpMethod::run): No longer member function. All
callers updated. Remove _Unwind calls. Call SAVE_PC whenever a call
is made or where an instruction could throw.
(_Jv_InterpMethod::get_source_line): New. Look up source line numbers
in line_table.
* prims.cc (catch_segv): Construct exception after MAKE_THROW_FRAME.
(catch_fpe): Likewise.
* stacktrace.cc: New file. Stack trace code now here.
* gnu/gcj/runtime/MethodRef.java:
* gnu/gcj/runtime/NameFinder.java: Mostly reimplemented. Now simply
calls addr2line to look up PC addresses in a given binary or shared
library.
* gnu/gcj/runtime/StackTrace.java, gnu/gcj/runtime/natNameFinder.cc,
gnu/gcj/runtime/natStackTrace.cc: Removed.
* gnu/java/lang/MainThread.java (call_main): Add comment warning that
this function name is specially recognised by the stack trace code
and shouldn't be changed.
* include/java-interp.h (DIRECT_THREADED, insn_slot): Moved here.
(struct _Jv_LineTableEntry, line_table, line_table_len): New.
(_Jv_InterpMethod::run): Update declaration.
(_Jv_StackTrace_): New friend. NameFinder and StackTrace no longer
friends.
(_Jv_InterpFrame): Renamed from _Jv_MethodChain. Add PC field.
* include/java-stack.h: New file. Declarations for stack tracing.
* include/jvm.h (_Jv_Frame_info): Removed.
* java/lang/Class.h: Update friend declarations.
* java/lang/VMClassLoader.java (getSystemClassLoader): Simplify
exception message.
* java/lang/VMThrowable.java (fillInStackTrace): Now native.
(getStackTrace): Now native.
(data): New RawDataManaged field.
* java/lang/natClass.cc: Update includes.
(forName): Use _Jv_StackTrace::GetCallingClass for
calling-classloader check.
(getClassLoader): Likewise.
* java/lang/natRuntime.cc: Update includes.
(_load): Use _Jv_StackTrace::GetFirstNonSystemClassLoader.
* java/lang/natVMSecurityManager.cc: Update includes.
(getClassContext): Use _Jv_StackTrace::GetClassContext.
* java/lang/natVMThrowable.cc: New file. Native methods for
VMThrowable.
* java/lang/reflect/natArray.cc: Update includes.
(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/lang/reflect/natConstructor.cc: Update includes.
(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/lang/reflect/natField.cc: Update includes.
(getAddr): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/lang/reflect/natMethod.cc: Update includes.
(invoke): Use _Jv_StackTrace::GetCallingClass to implement
accessibility check.
* java/util/natResourceBundle.cc: Update includes.
(getCallingClassLoader): Use _Jv_StackTrace::GetCallingClass.
* java/util/logging/natLogger.cc: Update includes. Use
_Jv_StackTrace::GetCallerInfo to get call-site info.
* sysdep/generic/backtrace.h: Fallback backtrace code. Stub
implementation.
* sysdep/i386/backtrace.h: New. Fallback backtrace code. i386
implementation.
From-SVN: r96253
Ranjit Mathew [Thu, 10 Mar 2005 18:57:01 +0000 (18:57 +0000)]
re PR java/20312 (No warning on bad method)
* testsuite/libjava.compile/PR20312.java: New file.
* testsuite/libjava.compile/PR20312.xfail: Likewise.
* testsuite/libjava.jacks/jacks.xfail: Remove 9.2-implicit-15.
From-SVN: r96252
Ranjit Mathew [Thu, 10 Mar 2005 18:40:26 +0000 (18:40 +0000)]
re PR java/20312 (No warning on bad method)
PR java/20312
* parse.y (checks_throws_clauses): Check exceptions list even when
the base class does not come from a source file being compiled.
(java_complete_lhs): Remove unused variable 'wfl'.
From-SVN: r96251
Kazu Hirata [Thu, 10 Mar 2005 18:18:48 +0000 (18:18 +0000)]
* tree-outof-ssa.c (analyze_edges_for_bb): Update a comment.
From-SVN: r96250
Kazu Hirata [Thu, 10 Mar 2005 17:58:23 +0000 (17:58 +0000)]
tree-outof-ssa.c (analyze_edges_for_bb): Make the return type void.
* tree-outof-ssa.c (analyze_edges_for_bb): Make the return
type void.
(perform_edge_inserts): Unconditionally call
free_dominator_info.
From-SVN: r96249
Bob Wilson [Thu, 10 Mar 2005 16:44:48 +0000 (16:44 +0000)]
* config/xtensa/xtensa.h (MEMBER_TYPE_FORCES_BLK): Define.
From-SVN: r96245
Nathan Sidwell [Thu, 10 Mar 2005 15:40:11 +0000 (15:40 +0000)]
* bitmap.c (bitmap_copy): Remove manual loop unrolling.
From-SVN: r96243
Nathan Sidwell [Thu, 10 Mar 2005 15:36:42 +0000 (15:36 +0000)]
value-prof.c (rtl_find_values_to_profile): Use gcc_assert and gcc_unreachable.
* value-prof.c (rtl_find_values_to_profile): Use gcc_assert and
gcc_unreachable.
(rtl_register_value_prof_hooks,
tree_value_profile_transformations,
tree_register_value_prof_hooks): Likewise.
* var-tracking.c (stack_adjust_offset_pre_post,
variable_htab_free, variable_union, dataflow_set_different_2,
count_uses, variable_was_changed, set_frame_base_location,
set_variable_part, emit_note_insn_var_location, vt_emit_notes,
vt_add_function_parameters): Likewise.
* varasm.c (named_section_real, named_section, make_decl_rtl,
asm_emit_uninitialised, assemble_integer, decode_addr_const,
const_hash_1, compare_constant, copy_constant, force_const_mem,
output_constant_pool_2, output_constant_pool_1, output_constant,
output_constructor, make_decl_one_only, decl_tls_model,
default_no_named_section, default_elf_select_section_1,
default_unique_section_1): Likewise.
* vec.c (vec_gc_o_reserve, vec_heap_o_reserve): Likewise.
* vmsdbgout.c (addr_const_to_string): Likewise.
From-SVN: r96242