Alan Modra [Sun, 3 Oct 2004 03:31:38 +0000 (03:31 +0000)]
linux.h (TARGET_C99_FUNCTIONS): Define.
* config/rs6000/linux.h (TARGET_C99_FUNCTIONS): Define.
(OS_MISSING_POWERPC64): Move, and comment.
* config/rs6000/linux64.h (TARGET_C99_FUNCTIONS): Define.
(OS_MISSING_POWERPC64): Move, and comment.
From-SVN: r88440
Ian Lance Taylor [Sun, 3 Oct 2004 03:04:21 +0000 (03:04 +0000)]
* arm.c (output_call_mem): Add missing \t.
From-SVN: r88438
Kaveh R. Ghazi [Sun, 3 Oct 2004 01:53:09 +0000 (01:53 +0000)]
builtins.c (expand_builtin_memcmp, [...]): Delete duplicate code.
* builtins.c (expand_builtin_memcmp, expand_builtin_strcmp,
expand_builtin_strncmp): Delete duplicate code.
From-SVN: r88437
GCC Administrator [Sun, 3 Oct 2004 00:16:10 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88435
Frank Ch. Eigler [Sat, 2 Oct 2004 23:12:49 +0000 (23:12 +0000)]
tree-mudflap.c (mf_build_check_statement_for): Reorganize to take check-base and -limit arguments.
2004-10-02 Frank Ch. Eigler <fche@redhat.com>
* tree-mudflap.c (mf_build_check_statement_for): Reorganize to
take check-base and -limit arguments.
(mf_xform_derefs_1): Reorganize slightly to pass proper base/limit
check ranges for ARRAY_REF and COMPONENT_REF.
(execute_mudflap_fnction_ops, ..._decls): Limit unnecessary
instrumentation.
2004-10-02 Frank Ch. Eigler <fche@redhat.com>
* testsuite/libmudflap.c/pass50-frag.c, fail33-frag.c, fail34-frag.c:
New tests for proper base/limit checking for aggregates.
From-SVN: r88432
Joseph Myers [Sat, 2 Oct 2004 19:15:45 +0000 (20:15 +0100)]
c-objc-common.c (c_tree_printer): Correct description of %E.
* c-objc-common.c (c_tree_printer): Correct description of %E.
Don't fall through after printing an expression.
testsuite:
* gcc.dg/
20040920-1.c: Update expected message text.
From-SVN: r88431
James A. Morrison [Sat, 2 Oct 2004 18:38:29 +0000 (18:38 +0000)]
re PR treelang/17762 (treelang doesn't use mapped locations)
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
PR other/17762
* lex.l: Include input.h and errors.h
(lineno): New variable.
(LINEMAP_POSITION_FOR_COLUMN): Define as noop when USE_MAPPED_LOCATION
is not defined.
Set column position with LINEMAP_POSITION_FOR_COLUMN.
Use error instead of fprintf.
Set input_location with the value returned by linemap_start_line when
USE_MAPPED_LOCATION is defined.
(dump_lex_value): Use LOCATION_LINE.
* parse.y: Include errors.h.
Use error and warning instead of fprintf.
(return): Move exp to rule scope and always set to $2. Test against
exp instead of $2.
(init): Set $$ to $2.
(print_token): Use LOCATION_LINE.
* tree1.c (treelang_init): Call treelang_init_decl_processing last.
Call linemap_add to set input_filename when USE_MAPPED_LOCATION is
defined.
(treelang_parse_file): Always start at line one.
Rename input_filename to main_input_filename when USE_MAPPED_LOCATION is
defined.
Leave main_input_filename when done parsing the input.
(insert_tree_name): Use error instead of fprintf.
* treetree.c (tree_code_get_expression): Wrap long line.
(tree_mark_addressable): Use %qD to print out DECLs.
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
* compile/autofunc.tree: New File.
* compile/badchar.tree: New File.
* compile/externvar.tree: New File.
* compile/mismatch.tree: New File.
* compile/noproto.tree: New File.
* compile/novar.tree: New File.
* compile/var_defs.tree: Add duplicate variable.
From-SVN: r88430
James A. Morrison [Sat, 2 Oct 2004 17:42:44 +0000 (17:42 +0000)]
parse.y: Use gcc_assert and gcc_unreachable instead of abort.
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
* parse.y: Use gcc_assert and gcc_unreachable instead of abort.
* tree1.c: Likewise.
* treetree.c: Likewise.
From-SVN: r88429
James A. Morrison [Sat, 2 Oct 2004 17:40:04 +0000 (17:40 +0000)]
lex.l: Remove random whitespace.
2004-10-02 James A. Morrison <phython@gcc.gnu.org>
* lex.l: Remove random whitespace.
* parse.y: Reformat copyright notice. Indent declarations.
Wrap long lines, unwrap short lines.
* tree1.c: Reformat copyright notice. Wrap long lines.
Remove random whitespace.
(lookup_tree_name): Use LOCATION_LINE.
* treetree.c: Reformat copyright notice. Wrap long lines.
Remove random whitespace.
From-SVN: r88428
P.J. Darcy [Sat, 2 Oct 2004 16:33:06 +0000 (16:33 +0000)]
ltcf-c.sh (tpf*): Add ld_shlibs=yes.
2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
* ltcf-c.sh (tpf*): Add ld_shlibs=yes.
* ltcf-cxx.sh (tpf*): Likewise.
* ltconfig (tpf*): Add TPF OS configuration support.
From-SVN: r88427
Kazu Hirata [Sat, 2 Oct 2004 15:56:06 +0000 (15:56 +0000)]
* objc-act.c: Fix comment typos.
From-SVN: r88426
James A. Morrison [Sat, 2 Oct 2004 15:18:16 +0000 (15:18 +0000)]
parse.y (ELSE): Set tok to $1.
2004-09-28 James A. Morrison <phython@gcc.gnu.org>
* parse.y (ELSE): Set tok to $1.
* treelang.texi: Wrap comments in @r{}. Indent example comments.
Use gcc when refering to the command line or website. Update function
definition.
From-SVN: r88425
Kazu Hirata [Sat, 2 Oct 2004 12:47:11 +0000 (12:47 +0000)]
* tree-cfg.c, config/s390/tpf-unwind.h: Fix comment typos.
From-SVN: r88424
Kaz Kojima [Sat, 2 Oct 2004 07:02:41 +0000 (07:02 +0000)]
* testsuite/libffi.call/negint.c: New test case.
From-SVN: r88421
Ulrich Weigand [Sat, 2 Oct 2004 04:19:16 +0000 (04:19 +0000)]
* gcc.dg/tree-ssa/loop-1.c: Merge changed dg-options for s390-*-*.
From-SVN: r88420
Kazu Hirata [Sat, 2 Oct 2004 02:00:51 +0000 (02:00 +0000)]
tree-cfg.c (cleanup_tree_cfg): Speed up by calling delete_unrechable_blocks() only when necessary.
* tree-cfg.c (cleanup_tree_cfg): Speed up by calling
delete_unrechable_blocks() only when necessary.
From-SVN: r88419
P.J. Darcy [Sat, 2 Oct 2004 00:48:44 +0000 (00:48 +0000)]
gthr-tpf.h (__gthread_recursive_mutex_t): New type.
2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
* gthr-tpf.h (__gthread_recursive_mutex_t): New type.
(__GTHREAD_RECURSIVE_MUTEX_INIT): Define.
(__gthread_recursive_mutex_lock, __gthread_recursive_mutex_trylock,
__gthread_recursive_mutex_unlock): New functions.
From-SVN: r88418
P.J. Darcy [Sat, 2 Oct 2004 00:47:06 +0000 (00:47 +0000)]
t-tpf (LIB2ADDEH): Remove tpf-eh.c.
2004-10-02 P.J. Darcy <darcypj@us.ibm.com>
* config/s390/t-tpf (LIB2ADDEH): Remove tpf-eh.c.
* config/s390/tpf-eh.c: Remove file.
* config/s390/tpf-unwind.h: New file.
* config/s390/tpf.h (MD_FALLBACK_FRAME_STATE_FOR): Remove.
(MD_UNWIND_SUPPORT): Define.
From-SVN: r88417
GCC Administrator [Sat, 2 Oct 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88415
Joseph Myers [Fri, 1 Oct 2004 23:11:58 +0000 (00:11 +0100)]
* c-typeck.c (warn_for_assignment): Don't permit argnum == 0.
From-SVN: r88412
Ulrich Weigand [Fri, 1 Oct 2004 21:48:13 +0000 (21:48 +0000)]
s390-protos.h (s390_comparison): Add prototype.
* config/s390/s390-protos.h (s390_comparison): Add prototype.
* config/s390/s390.c (s390_comparison): New function.
(s390_branch_condition_mask): Return -1 for invalid comparisons.
(s390_branch_condition_mnemonic): Assert valid comparison.
* config/s390/s390.h (PREDICATE_CODES): Add s390_comparison.
* config/s390/s390.md ("*cjump_64", "*cjump_31", "*cjump_long",
"*icjump_64", "*icjump_31", "*icjump_long", "*trap"): Use
s390_comparison instead of comparison_operator.
* config/s390/s390.md (UNSPEC_CMPINT): New constant.
("cmpmemdi"): Remove.
("cmpmem_short", "*cmpmem_short"): Use CCUmode instead of CCSmode.
("cmpmem_long", "*cmpmem_long_64", "*cmpmem_long_31"): Likewise.
("cmpint_si"): Rename to ...
("*cmpint_si"): ... this. Use UNSPEC_CMPINT.
("cmpint_di", "*cmpint_di"): Likewise.
* config/s390/s390.c (s390_canonicalize_comparison): Remove
redundant UNSPEC_CMPINT conversions.
(s390_expand_cmpmem): Adapt to cmpint pattern changes.
From-SVN: r88410
Paolo Carlini [Fri, 1 Oct 2004 21:01:29 +0000 (21:01 +0000)]
sstream.tcc (pbackfail): Implement correctly 27.7.1.3/2, bullet 2...
2004-10-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/sstream.tcc (pbackfail): Implement correctly
27.7.1.3/2, bullet 2: if mode & ios_base::out is false do not
write in the buffer.
* testsuite/27_io/basic_stringbuf/pbackfail/char/1.cc: New.
* testsuite/27_io/basic_stringbuf/pbackfail/char/2.cc: Likewise.
* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_stringbuf/pbackfail/wchar_t/2.cc: Likewise.
* testsuite/27_io/basic_istream/putback/char/1.cc: Tweak consistently.
From-SVN: r88407
Kazu Hirata [Fri, 1 Oct 2004 18:45:28 +0000 (18:45 +0000)]
collect2.c (COLLECT_PARSE_FLAG): Remove.
* collect2.c (COLLECT_PARSE_FLAG): Remove.
(main): Remove a reference to COLLECT_PARSE_FLAG
* system.h: Poison COLLECT_PARSE_FLAG.
* doc/tm.texi (COLLECT_PARSE_FLAG): Remove.
From-SVN: r88406
Paul Brook [Fri, 1 Oct 2004 18:30:22 +0000 (18:30 +0000)]
* config/arm/crti.asm: Give _init and _fini function type.
From-SVN: r88405
Zdenek Dvorak [Fri, 1 Oct 2004 18:26:37 +0000 (20:26 +0200)]
common.opt (ftree-loop-ivcanon): Enable by default.
* common.opt (ftree-loop-ivcanon): Enable by default.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely):
Enable complete loop unrolling.
(canonicalize_induction_variables, tree_unroll_loops_completely):
Reset scev info.
* gcc.dg/tree-ssa/loop-1.c: Check that unrolling occurs already on
tree level.
From-SVN: r88404
Andrew Pinski [Fri, 1 Oct 2004 16:55:56 +0000 (16:55 +0000)]
pr17343.c: Remove.
2004-10-01 Andrew Pinski <pinskia@physics.uc.edu>
* gcc.dg/tree-ssa/pr17343.c: Remove.
From-SVN: r88401
Bernd Schmidt [Fri, 1 Oct 2004 16:25:11 +0000 (16:25 +0000)]
Change of email address
From-SVN: r88400
Paul Brook [Fri, 1 Oct 2004 15:55:21 +0000 (15:55 +0000)]
arm.c (thumb_compute_saved_rag_mask): Or with bitmask, not register number.
* config/arm/arm.c (thumb_compute_saved_rag_mask): Or with bitmask,
not register number.
(thumb_find_work_register): Search full register range.
From-SVN: r88399
Andrew Pinski [Fri, 1 Oct 2004 15:22:26 +0000 (15:22 +0000)]
re PR tree-optimization/17343 (a dispatch table can be shortened for certain switch statements)
2004-10-01 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/17343
* gcc.dg/tree-ssa/pr17343.c: New test.
2004-10-01 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/17343
* tree-cfg.c (group_case_labels): Get the label and not
the case expr for the default case.
When the label we looking at is the default, decrement the
new_size.
From-SVN: r88397
Jan Hubicka [Fri, 1 Oct 2004 15:11:25 +0000 (17:11 +0200)]
c-decl.c (c_expand_body): Update call tree_rest_of_compilation.
* c-decl.c (c_expand_body): Update call tree_rest_of_compilation.
* cgraphunit.c (cgraph_build_static_cdtor): Likewise.
* toplev.h (tree_rest_of_compilation): Update prototype.
* tree-optimize.c (tree_rest_of_compilation): Kill nested_p argument.
* misc.c (gnat_expand_body): Update call of tree_rest_of_compilation.
* semantics.c (expand_body): Update call of tree_rest_of_compilation.
* f95-lang.c (gfc_expand_function): Update call of
tree_rest_of_compilation.
* trans-decl.c (gfc_generate_constructors): Likewise.
* java.c (java_expand_body): Update call of tree_rest_of_compilation.
* treetree.c (treeland_expand_function): Update call of
tree_rest_of_compilation.
From-SVN: r88396
Kazu Hirata [Fri, 1 Oct 2004 14:51:25 +0000 (14:51 +0000)]
tree-cfg.c (cleanup_tree_cfg): Pull a call to cleanup_control_flow() out of the while loop.
* tree-cfg.c (cleanup_tree_cfg): Pull a call to
cleanup_control_flow() out of the while loop.
From-SVN: r88395
Kazu Hirata [Fri, 1 Oct 2004 13:44:20 +0000 (13:44 +0000)]
* lex.c: Fix a comment typo.
From-SVN: r88394
Kazu Hirata [Fri, 1 Oct 2004 12:54:51 +0000 (12:54 +0000)]
* java-tree.h: Fix a comment typo.
From-SVN: r88393
Andreas Schwab [Fri, 1 Oct 2004 11:11:36 +0000 (11:11 +0000)]
Fix typo.
From-SVN: r88392
Paolo Bonzini [Fri, 1 Oct 2004 09:59:01 +0000 (09:59 +0000)]
tree-vectorizer.c (vectorizable_operation): Fail unless the mode for the vector type is indeed a vector mode.
2004-10-01 Paolo Bonzini <bonzini@gnu.org>
* tree-vectorizer.c (vectorizable_operation): Fail unless
the mode for the vector type is indeed a vector mode.
From-SVN: r88390
Paolo Carlini [Fri, 1 Oct 2004 09:22:49 +0000 (09:22 +0000)]
sstream.tcc (seekpos): Minor rearrangement of two conditionals consistently with seekoff.
2004-10-01 Paolo Carlini <pcarlini@suse.de>
* include/bits/sstream.tcc (seekpos): Minor rearrangement of two
conditionals consistently with seekoff.
* include/std/std_sstream.h (setbuf): Avoid a string temporary.
(_M_sync): Simplify a bit, clean-up comment.
From-SVN: r88389
Zdenek Dvorak [Fri, 1 Oct 2004 09:06:06 +0000 (11:06 +0200)]
tree-chrec.c (chrec_fold_plus_poly_poly, [...]): Use fold_convert or build_int_cst_type instead od fonvert.
* tree-chrec.c (chrec_fold_plus_poly_poly, chrec_fold_plus_1,
chrec_fold_multiply): Use fold_convert or build_int_cst_type instead
od fonvert.
* tree-scalar-evolution.c (compute_overall_effect_of_inner_loop,
add_to_evolution, set_nb_iterations_in_loop, follow_ssa_edge_in_rhs,
follow_ssa_edge_in_rhs): Ditto.
* tree-ssa-loop-ivopts.c (struct iv): Add base_object field.
(dump_iv): Dump base_object.
(dump_use, dump_cand): Use dump_iv.
(determine_base_object): New function.
(alloc_iv): Initialize base_object field.
(record_use): Clear the ssa_name field of iv.
(get_computation_cost_at): Do not use difference of addresses of
two different objects.
(may_eliminate_iv): Do not require the loop to have just single exit.
* tree-ssa-loop-niter.c (zero_p): Do not check for overflows.
(nonzero_p): New function.
(inverse, number_of_iterations_cond, simplify_using_outer_evolutions,
tree_simplify_using_condition, simplify_using_initial_conditions,
loop_niter_by_eval, find_loop_niter_by_eval,
estimate_numbers_of_iterations_loop, compare_trees,
upper_bound_in_type, lower_bound_in_type,
can_count_iv_in_wider_type_bound): Use buildN instead of build. Use
fold_convert or build_int_cst_type instead of convert. Use (non)zero_p
instead of integer_(non)zerop.
From-SVN: r88388
Jakub Jelinek [Fri, 1 Oct 2004 07:43:03 +0000 (09:43 +0200)]
revert: tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD and TI_VA_LIST_FPR_COUNTER_FIELD.
2004-10-01 Jakub Jelinek <jakub@redhat.com>
Revert
2004-09-29 Jakub Jelinek <jakub@redhat.com>
* tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD
and TI_VA_LIST_FPR_COUNTER_FIELD.
(va_list_gpr_counter_field, va_list_fpr_counter_field): Define.
* tree-pass.h (pass_stdarg): Add.
* tree-optimize.c (init_tree_optimization_passes): Add pass_stdarg.
* tree-stdarg.c: New file.
* Makefile.in (OBJS-common): Add tree-stdarg.o.
(tree-stdarg.o): Add dependencies.
* function.h (struct function): Add va_list_gpr_size and
va_list_fpr_size fields.
* function.c (allocate_struct_function): Initialize them.
* config/i386/i386.c (ix86_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(ix86_setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(ix86_va_start): Don't set up fields that won't be used.
* config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(rs6000_va_start): Don't set up fields that won't be used.
* gcc.dg/tree-ssa/stdarg-1.c: Removed.
* gcc.dg/tree-ssa/stdarg-2.c: Removed.
* gcc.dg/tree-ssa/stdarg-3.c: Removed.
* gcc.dg/tree-ssa/stdarg-4.c: Removed.
* gcc.dg/tree-ssa/stdarg-5.c: Removed.
From-SVN: r88383
Eric Christopher [Fri, 1 Oct 2004 05:08:59 +0000 (05:08 +0000)]
dwarf2.h (dwarf_calling_convention): Add enum for renesas sh abi.
2004-09-30 Eric Christopher <echristo@redhat.com>
* dwarf2.h (dwarf_calling_convention): Add enum for renesas
sh abi.
* dwarf2out.c (add_calling_convention_attribute): New function.
(gen_subroutine_type_die): Use.
* target-def.h (TARGET_DWARF_CALLING_CONVENTION): New hook.
* target.h (gcc_target): Add dwarf_calling_convention.
* hooks.c (hook_int_tree_0): New function.
* hooks.h: Prototype.
* config/sh/sh.c: Include dwarf2.h.
(sh_dwarf_calling_convention): New function.
(TARGET_DWARF_CALLING_CONVENTION): Use.
* doc/tm.texi (TARGET_DWARF_CALLING_CONVENTION): Document.
From-SVN: r88382
Andrew Pinski [Fri, 1 Oct 2004 03:46:39 +0000 (03:46 +0000)]
re PR libobjc/16448 (FAIL: objc/execute/IMP.m compilation, -O0)
2004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
PR libobjc/16448
* exception.c: Include config.h
(objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
SJLJ_EXCEPTIONS.
* configure.ac: Find out what exception handling code we use.
* configure: Regenerate.
* config.h.in: New file, regenerate.
From-SVN: r88379
Kaveh R. Ghazi [Fri, 1 Oct 2004 02:54:39 +0000 (02:54 +0000)]
builtins.c (expand_builtin_strstr, [...]): Eliminate duplicate code.
* builtins.c (expand_builtin_strstr, expand_builtin_strchr,
expand_builtin_strrchr, expand_builtin_strpbrk,
expand_builtin_strncat, expand_builtin_strspn,
expand_builtin_strcspn, expand_builtin_fputs): Eliminate duplicate
code.
From-SVN: r88378
GCC Administrator [Fri, 1 Oct 2004 00:16:11 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88373
Ulrich Weigand [Fri, 1 Oct 2004 00:07:52 +0000 (00:07 +0000)]
s390-protos.h (s390_expand_logical_operator): Add prototype.
* config/s390/s390-protos.h (s390_expand_logical_operator): Add
prototype.
(s390_logical_operator_ok_p): Likewise.
* config/s390/s390.c (s390_expand_logical_operator): New function.
(s390_logical_operator_ok_p): Likewise.
* config/s390/s390.md ("anddi3"): New expander.
("*anddi3"): Rename from old anddi3 pattern, add Q->Q alternative.
("*anddi3_ss", "*anddi3_ss_inv"): Remove.
("andsi3"): Use s390_expand_logical_operator.
("*andsi3_esa", "*andsi3_zarch"): Add Q->Q alternative.
("*andsi3_ss", "*andsi3_ss_inv"): Remove.
("andhi3"): New expander.
("*andhi3_zarch", "*andhi3_esa"): New patterns.
("andhi3", "*andhi3_ni", "*andhi3_ss", "*andhi3_ss_inv"): Remove.
("andqi3"): New expander.
("*andqi3_zarch", "*andqi3_esa"): New patterns.
("andqi3", "*andqi3_ni", "*andqi3_ss", "*andqi3_ss_inv"): Remove.
("iordi3"): New expander.
("*iordi3"): Rename from old iordi3 pattern, add Q->Q alternative.
("*iordi3_ss", "*iordi3_ss_inv"): Remove.
("iorsi3"): Use s390_expand_logical_operator.
("*iorsi3_esa", "*iorsi3_zarch"): Add Q->Q alternative.
("*iorsi3_ss", "*iorsi3_ss_inv"): Remove.
("iorhi3"): New expiorer.
("*iorhi3_zarch", "*iorhi3_esa"): New patterns.
("iorhi3", "*iorhi3_ni", "*iorhi3_ss", "*iorhi3_ss_inv"): Remove.
("iorqi3"): New expiorer.
("*iorqi3_zarch", "*iorqi3_esa"): New patterns.
("iorqi3", "*iorqi3_ni", "*iorqi3_ss", "*iorqi3_ss_inv"): Remove.
("xordi3"): New expander.
("*xordi3"): Rename from old xordi3 pattern, add Q->Q alternative.
("*xordi3_ss", "*xordi3_ss_inv"): Remove.
("xorsi3"): New expander.
("*xorsi3"): Rename from old xorsi3 pattern, add Q->Q alternative.
("*xorsi3_ss", "*xorsi3_ss_inv"): Remove.
("xorhi3"): New expander.
("*xorqi3"): Rename from old xorhi3 pattern, add Q->Q alternative.
("*xorhi3_ss", "*xorhi3_ss_inv"): Remove.
("xorqi3"): New expander.
("*xorqi3"): Rename from old xorqi3 pattern, add Q->Q alternative.
("*xorqi3_ss", "*xorqi3_ss_inv"): Remove.
From-SVN: r88370
Roger Sayle [Thu, 30 Sep 2004 23:44:30 +0000 (23:44 +0000)]
combine.c (force_to_mode): Only convert the expression (AND (NE FOO 0) CONST) into (AND FOO CONST) if...
* combine.c (force_to_mode) <NE_EXPR>: Only convert the expression
(AND (NE FOO 0) CONST) into (AND FOO CONST) if FOO has the same
machine mode as the result.
From-SVN: r88369
Ben Elliston [Thu, 30 Sep 2004 23:40:15 +0000 (23:40 +0000)]
re PR bootstrap/17761 (sh-elf doesn't build after merge from edge-vector-branch)
PR bootstrap/17761
* lcm.c (optimize_mode_switching): Update to use EDGE_SUCC and
FOR_EACH_EDGE macros.
From-SVN: r88368
Per Bothner [Thu, 30 Sep 2004 23:35:07 +0000 (16:35 -0700)]
Simplify lexer. Implement --enable-mapped-location support.
* jcf-parse.c (parse_class_file): Use linemap_line_start.
(parse_source_file_1): Pass filename as extra parameter, so we can call
linemap_add and set input_location here, rather than in both callers.
(read_class): Pass copied filename to parse_source_file_1.
Don't initialize wfl_operator - only needed for source compilation.
(read_class, jcf_parse): Call linemap_add with LC_LEAVE.
* lex.h: Remove a bunch of debugging macros.
* lex.h (struct_java_line, struct java_error): Remove types.
(JAVA_COLUMN_DELTA): Remove - use java_lexer.next_colums instead.
(struct java_lc_s): Remove prev_col field.
(struct java_lexer): New fields next_unicode, next_columns, and
avail_unicode. New position field, and maybe token_start field.
Don't need hit_eof field - use next_unicode == -1 instead.
(JAVA_INTEGERAL_RANGE_ERROR): Rename to JAVA_RANGE_ERROR.
(JAVA_RANGE_ERROR, JAVA_FLOAT_ANGE_ERROR): Update accordingly.
* parse.h: Various changes for USE_MAPPED_LOCATION.
(EXPR_WFL_EMIT_LINE_NOTE): XXX
(BUILD_EXPR_WFL, EXPR_WFL_ADD_COL): Remove no-longer-used macros.
(struct parser_ctxt): New file_start_location field.
Remove p_line, c_line fields since we no longer save lines.
Remove elc, lineno, and current_jcf fields - no longer used.
* parse.y: Updates for USE_MAPPED_LOCATION and new lexer.
Don't use EXPR_WFL_ADD_COL since that isn't trivial with
source_location and is probably not needed anymore anyway.
Use new expr_add_Location function.
(SET_EXPR_LOCATION_FROM_TOKEN): New convenience macro.
(java_pop_parser_context): Minor cleanup.
(java_parser_context_save_global, java_parser_context_restore_global,
java_pop_parser_context): Save/restore input_location as a unit.
(issue_warning_error_from_context): If USE_MAPPED_LOCATION take
a source_location instead of a wfl context node.
(check_class_interface_creation): input_filename is not addressable.
(create_artificial_method): Calling java_parser_context_save_global
and java_parser_context_restore_global is overkill. Instead,
temporarily set input_location from class decl.
(java_layout_seen_class_methods): Set input_location from method decl.
(fix_constructors): Make more robust if no EXPR_WITH_FILE_LOCATION.
(finish_loop_body): Likewise.
* lex.c: Updates for USE_MAPPED_LOCATION. Use build_unknwon_wfl.
(java_sprint_unicode): Take a character, not index in line.
(java_sneak_uncode): Replaced by java_peek_unicode.
(java_unget_unicode): No longer used.
(java_allocate_new_line. java_store_unicode): Removed, since we
no longer remember "lines".
(java_new_lexer): Update for new data structures.
(java_read_char): Move unget_value checking to java_read_unicode.
(java_get_unicode, java_peek_unicode, java_next_unicode): New more
efficient functions that are used directly when lexing.
(java_read_unicode_collapsing_terminators): No longer needed.
(java_parse_end_comment, java_parse_escape_sequence, do_java_lex):
Re-organize to use java_peek_unicode to avoid java_unget_unicode.
(java_parse_escape_sequence): Rewrite to be simpler / more efficient.
(do_java_lex): Lots of movings around to avoid java_unget_unicode,
combine switch branches, and test for common token kinds earlier.
(java_lex_error): Rewrite.
* jv-scan.c (expand_location): New function, copied from tree.c.
(main): Set ctxp->filename instead of setting input_filename directly.
From-SVN: r88367
Per Bothner [Thu, 30 Sep 2004 23:25:27 +0000 (16:25 -0700)]
java-tree.h (JAVA_FILE_P, ZIP_FILE_P): Remove unused macros.
* java-tree.h (JAVA_FILE_P, ZIP_FILE_P): Remove unused macros.
* jcf-parse.c (java_parse_file): Don't set input_filename.
Use IS_A_COMMAND_LINE_FILENAME_P to check for duplicate filenames.
Create a list of TRANSLATION_UNIT_DECL.
(current_file_list): Is now a TRANSLATION_UNIT_DECL chain. The
reason is so we can set a DECL_SOURCE_LOCATION for each file.
(java_parse_file): Don't set unused ZIP_FILE_P, JAVA_FILE_P..
Create line-map LC_ENTER/LC_LEAVE entries for archive itself.
(file_start_location): New static.
(set_source_filename): Avoid extra access to input_filename macro.
Concatenate new name with class's package prefix.
(set_source_filename, give_name_to_class): Update.
(give_name_to_class): Set class's "line 0" input_location here.
(parse_class_file): Set input_location as a unit.
* jcf-parse.c (load_class): Sanity test if missing inner class file.
From-SVN: r88366
Per Bothner [Thu, 30 Sep 2004 23:23:52 +0000 (16:23 -0700)]
More cleanup for --enable-mapped-location.
* class.c (push_class): If USE_MAPPED_LOCATION don't set
input_location here. Instead do it in give_name_to_class.
(build_class_ref): Set DECL_ARTIFICIAL, for the sake of dwarf2out.
* expr.c (expand_byte_code): Call linemap_line_start.
* expr.c (build_expr_wfl): If USE_MAPPED_LOCATION, change final
parameters to a source_location. Don't need EXPR_WFL_FILENAME_NODE.
(expr_add_location): New function, if USE_MAPPED_LOCATION.
* class.c (maybe_layout_super_class): Adjust build_expr_wfl call
to USE_MAPPED_LOCATION case.
From-SVN: r88365
Joseph Myers [Thu, 30 Sep 2004 22:59:36 +0000 (23:59 +0100)]
* gcc.pot: Regenerate.
From-SVN: r88363
Joseph Myers [Thu, 30 Sep 2004 22:52:06 +0000 (23:52 +0100)]
c-tree.h (readonly_error): Remove.
* c-tree.h (readonly_error): Remove.
* c-typeck (enum lvalue_use): New.
(lvalue_or_else, readonly_error): Use it. All callers changed.
(readonly_error): Make static.
testsuite:
* gcc.dg/lvalue-2.c: New test.
From-SVN: r88362
Jan Hubicka [Thu, 30 Sep 2004 21:30:20 +0000 (21:30 +0000)]
Oops, revert accidental commit.
From-SVN: r88359
Jan Hubicka [Thu, 30 Sep 2004 21:25:52 +0000 (23:25 +0200)]
re PR debug/13974 (bad line marker in debug info)
PR debug/13974
* cfgrtl.c (try_redirect_by_replacing_jump,
force_nonfallthru_and_redirect, commit_one_edge_insertion,
cfg_layout_merge_blocks): Do not attach any line number information
to newly inserted instructions.
* emit-rtl.c (emit_insn*_before, emit_insn*_after): Rename to
emit_insn_*_noloc.
(emit_*insn_before, emit_insn*_after): New.
(emit_*insn_before_setloc, emit_*insn_after_setloc): Do not overwrite
existing locators.
* rtl.h (emit_*insn_before_noloc, emit_*insn_after_noloc): Declare.
(emit_*insn_before_sameloc, emit_*insn_after_sameloc): Kill.
From-SVN: r88358
Ulrich Weigand [Thu, 30 Sep 2004 21:23:29 +0000 (21:23 +0000)]
s390-protos.h (s390_arg_frame_offset): Remove.
* config/s390/s390-protos.h (s390_arg_frame_offset): Remove.
(s390_return_address_offset): Remove.
(s390_can_eliminate): Add prototype.
(s390_initial_elimination_offset): Add prototype.
* config/s390/s390.h (CAN_ELIMINATE): Call s390_can_eliminate.
(INITIAL_ELIMINATION_OFFSET): Call s390_initial_elimination_offset.
* config/s390/s390.c (s390_arg_frame_offset): Remove.
(s390_return_address_offset): Remove.
(s390_can_eliminate, s390_initial_elimination_offset): New functions.
(struct machine_function): New member split_branches_pending_p.
(s390_mainpool_start): Allow nonexistant pool insn for empty pool.
(s390_mainpool_finish): Likewise. Clear base_reg if pool empty.
(s390_optimize_prologue): Remove base_used argument. Call
s390_update_frame_layout instead of s390_register_info. Handle
prologue/epilogue insns that touch only RETURN_REGNUM.
(s390_reorg): Remove base_used. Clear split_branches_pending_p.
(s390_register_info): Remove base_used and return_addr_used
arguments, compute special register usage inline. Return live
register data to caller.
(s390_frame_info): Remove arguments, do not call s390_register_info.
(s390_init_frame_layout): New function.
(s390_update_frame_layout): Likewise.
(s390_emit_prologue): Call s390_update_frame_layout; some code
move to there. Do not emit pool placeholder insn if unnecessary.
From-SVN: r88357
Ulrich Weigand [Thu, 30 Sep 2004 21:21:57 +0000 (21:21 +0000)]
s390.c (legitimate_reload_constant_p): Remove floating point constant workaround.
* config/s390/s390.c (legitimate_reload_constant_p): Remove
floating point constant workaround.
(s390_secondary_input_reload_class): Handle PLUS reloads
with too-large constant.
(s390_expand_plus_operand): Likewise.
* config/s390/s390.md ("movdi"): Do not call force_const_mem.
("movsi"): Likewise. Also, remove workaround for non-general
operands.
("movdf"): Do not call force_const_mem.
("movsf"): Likewise. Merge expander with *movsf insn.
("*movsf"): Remove, merge with movsf expander.
From-SVN: r88356
Paul Brook [Thu, 30 Sep 2004 20:24:33 +0000 (20:24 +0000)]
symbian.h (STARTFILE_SPEC): Remove crt*.o.
* config/arm/symbian.h (STARTFILE_SPEC): Remove crt*.o.
(ENDFILE_SPEC): Define.
* config/arm/t-symbian.h (EXTRA_MULTILIB_PARTS): Set.
From-SVN: r88355
Richard Henderson [Thu, 30 Sep 2004 19:32:07 +0000 (12:32 -0700)]
* config/alpha/qrnnd.asm: Mark for noexecstack.
From-SVN: r88349
Tom Tromey [Thu, 30 Sep 2004 18:27:53 +0000 (18:27 +0000)]
2004-09-30 Tom Tromey <tromey@redhat.com>
i * java/text/MessageFormat.java (Field): Constructor now
protected.
From-SVN: r88346
Kazu Hirata [Thu, 30 Sep 2004 18:27:25 +0000 (18:27 +0000)]
* protoize.c, tree-cfg.c: Fix comment typos.
From-SVN: r88345
Tom Tromey [Thu, 30 Sep 2004 18:21:42 +0000 (18:21 +0000)]
MacSpi.java: Fixed typo.
2004-09-30 Tom Tromey <tromey@redhat.com>
* javax/crypto/MacSpi.java: Fixed typo.
From-SVN: r88344
Joseph Myers [Thu, 30 Sep 2004 18:17:54 +0000 (19:17 +0100)]
re PR c/17730 (Regression in diagnost message "invalid lvalue in unary %<&%>")
PR c/17730
* c-typeck.c (lvalue_or_else): Pass msgid directly to error.
testsuite:
* gcc.dg/pr17730-1.c: New test
From-SVN: r88343
Paolo Carlini [Thu, 30 Sep 2004 17:23:10 +0000 (17:23 +0000)]
PR libstdc++/10975 (DR 453)
2004-09-30 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/10975 (DR 453)
* include/bits/sstream.tcc (seekoff): Don't fail if __beg == 0
and __off == 0.
* docs/html/ext/howto.html: Add an entry for DR 453.
* testsuite/27_io/basic_stringbuf/seekoff/char/10975.cc: New.
* testsuite/27_io/basic_stringbuf/seekoff/wchar_t/10975.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/char/1.cc: Tweak consistently.
* testsuite/27_io/basic_ostream/tellp/char/1.cc: Likewise.
* testsuite/27_io/basic_ostream/tellp/char/2.cc: Likewise.
* testsuite/27_io/basic_istream/seekg/char/2346-fstream.cc: Fix and
move to...
* testsuite/27_io/basic_istream/seekp/char/2346-fstream.cc: ... here.
* testsuite/27_io/basic_istream/seekg/char/2346-sstream.cc: Fix and
move to...
* testsuite/27_io/basic_istream/seekp/char/2346-sstream.cc: ... here.
From-SVN: r88341
Nathan Sidwell [Thu, 30 Sep 2004 15:25:18 +0000 (15:25 +0000)]
cp-tree.h (struct lang_decl): Shrink by reordering fields and turning operator_code and fixed_offset into...
* cp-tree.h (struct lang_decl): Shrink by reordering fields and
turning operator_code and fixed_offset into bitfields.
From-SVN: r88337
Michael Koch [Thu, 30 Sep 2004 15:22:08 +0000 (15:22 +0000)]
InetAddress.java: Reformatted.
2004-09-30 Michael Koch <konqueror@gmx.de>
* java/net/InetAddress.java: Reformatted.
(loopback): Initialize with Inet4Address object.
(static): Initialize ANY_IF with Inet4Address object.
(InetAddress): Removed unused package-private constructor.
From-SVN: r88336
Michael Koch [Thu, 30 Sep 2004 14:54:13 +0000 (14:54 +0000)]
Beans.java, [...]: Reordered import statements and removed redundant modifiers.
2004-09-30 Michael Koch <konqueror@gmx.de>
* java/beans/Beans.java,
java/beans/EventHandler.java,
java/beans/EventSetDescriptor.java,
java/beans/Introspector.java,
java/beans/PropertyEditorManager.java,
java/beans/beancontext/BeanContext.java,
java/beans/beancontext/BeanContextChild.java,
java/beans/beancontext/BeanContextChildSupport.java,
java/beans/beancontext/BeanContextMembershipEvent.java:
Reordered import statements and removed redundant modifiers.
From-SVN: r88335
Diego Novillo [Thu, 30 Sep 2004 14:09:45 +0000 (14:09 +0000)]
tree-ssa-alias.c (collect_points_to_info_r): Move analysis of expressions...
* tree-ssa-alias.c (collect_points_to_info_r): Move analysis of
expressions...
(add_pointed_to_expr): ... here.
Call add_pointed_to_expr for variables with DECL_INITIAL set.
* tree-dfa.c (add_referenced_var): Scan DECL_INITIAL of any
pointer variable, if set.
From-SVN: r88334
Kazu Hirata [Thu, 30 Sep 2004 12:25:34 +0000 (12:25 +0000)]
* config/sh/sh.c: Follow spelling conventions.
From-SVN: r88333
Richard Henderson [Thu, 30 Sep 2004 08:21:27 +0000 (01:21 -0700)]
unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG.
* unwind-dw2.c (_Unwind_GetGR): Honor DWARF_ZERO_REG.
* doc/tm.texi (DWARF_ZERO_REG): New.
* config/alpha/alpha.c (alpha_sa_mask, alpha_expand_prologue,
alpha_expand_epilogue): Revert 2003-09-30 change to store zero.
* config/alpha/alpha.h (DWARF_ZERO_REG): New.
From-SVN: r88331
Per Bothner [Thu, 30 Sep 2004 02:16:46 +0000 (19:16 -0700)]
check-init.c (check_init): Handle USE_MAPPED_LOCATION case.
* check-init.c (check_init): Handle USE_MAPPED_LOCATION case.
* decl.c (finish_method, java_add_stmt): Likewise.
* java-gimplify.c (java-gimplify.c): Likewise.
* jcf-write.c (generate_bytecode_insns): Likewise.
* lang.c (java_post_options): Likewise - call linemap_add.
From-SVN: r88324
Per Bothner [Thu, 30 Sep 2004 02:16:00 +0000 (19:16 -0700)]
java-tree.h: Redefine some macros and add soem declaration to handle the USE_MAPPED_LOCATION...
* java-tree.h: Redefine some macros and add soem declaration
to handle the USE_MAPPED_LOCATION case.
* parse.h (EXPR_WFL_QUALIFICATION): Use operand 1, not 2.
* java-tree.h (EXPR_WFL_FILENAME_NODE): Use operand 2, not 1.
* java-tree.def (EXPR_WITH_FILE_LOCATION): Only need two operands in
USE_MAPPED_LOCATION case, since EXPR_WFL_FILENAME_NODE is gone.
From-SVN: r88323
Ulrich Weigand [Thu, 30 Sep 2004 01:39:35 +0000 (01:39 +0000)]
builtins.c (expand_builtin_strlen): Do not call emit_move_insn with a PLUS as source operand.
* builtins.c (expand_builtin_strlen): Do not call emit_move_insn
with a PLUS as source operand.
(expand_movstr): Likewise.
(expand_builtin_stpcpy): Likewise.
From-SVN: r88322
Richard Henderson [Thu, 30 Sep 2004 01:22:07 +0000 (18:22 -0700)]
re PR tree-optimization/17739 (tree-optimizers extend the lifetime of a hard register variable)
PR 17739
* tree-gimple.c (is_gimple_reg): Reject hard registers.
(is_gimple_asm_val): New.
* tree-gimple.h (is_gimple_asm_val): Declare.
* gimplify.c (gimplify_asm_expr): Use it.
* tree-pretty-print.c (print_declaration): Dump hard regs.
* tree-outof-ssa.c (check_replaceable): Don't check for hard regs.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Likewise.
* tree-ssa-pre.c (is_undefined_value): Likewise.
* tree-ssa-copy.c (may_propagate_copy): Likewise.
(may_propagate_copy_into_asm): Protect DECL_HARD_REGISTER.
* tree-ssa.c (warn_uninit): Likewise.
* tree.h (DECL_HARD_REGISTER): Check for VAR_DECL.
From-SVN: r88321
Per Bothner [Thu, 30 Sep 2004 01:19:46 +0000 (18:19 -0700)]
directives.c (cpp_handle_deferred_pragma): Save, clear and restore cb.line_change.
* directives.c (cpp_handle_deferred_pragma): Save, clear and restore
cb.line_change. Otherwise do_pragma will call the line_change
call-back with a meaningless line number.
From-SVN: r88320
GCC Administrator [Thu, 30 Sep 2004 00:16:12 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r88316
Fariborz Jahanian [Thu, 30 Sep 2004 00:09:42 +0000 (00:09 +0000)]
FIxed an IMA bug showed up in parse and gzip.
OKed by Richard Henderson.
From-SVN: r88312
Daniel Berlin [Wed, 29 Sep 2004 23:08:32 +0000 (23:08 +0000)]
tree.h (INDIRECT_REF_P): New macro.
2004-09-29 Daniel Berlin <dberlin@dberlin.org>
* tree.h (INDIRECT_REF_P): New macro.
* alias.c (get_alias_set): Use it
(nonoverlapping_memrefs_p): Ditto.
* emit-rtl.c (mem_expr_equal_p): Ditto.
(set_mem_attributes_minus_bitpos): Ditto.
(is_gimple_addressable): Ditto.
(get_base_address): Ditto.
* tree-ssa-alias.c (find_ptr_derefernece): Ditto.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Ditto.
* tree-ssa-dom.c (record_equivalences_from_stmt): Ditto.
* tree-ssa-loop-im.c (is_call_clobbered_ref): Ditto.
* tree-ssa-loop-ivopts.c (find_interesting_uses_address): Ditto.
(add_address_candidates): Ditto.
(rewrite_address_base): Ditto.
From-SVN: r88309
Ben Elliston [Wed, 29 Sep 2004 21:23:35 +0000 (21:23 +0000)]
tree-flow.h (struct bb_ann_d): Remove num_preds member.
* tree-flow.h (struct bb_ann_d): Remove num_preds member.
* tree-into-ssa.c (rewrite_into_ssa): Don't set it.
(rewrite_ssa_into_ssa): Likewise.
* tree-phinodes.c (create_phi_node): Access the number of
predecessor edges using EDGE_COUNT() and not num_preds.
Co-Authored-By: Andrew Pinski <pinskia@physics.uc.edu>
Co-Authored-By: Steven Bosscher <stevenb@suse.de>
From-SVN: r88308
Paolo Carlini [Wed, 29 Sep 2004 21:14:43 +0000 (21:14 +0000)]
std_sstream.h (basic_stringbuf(ios_base::openmode)): Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
2004-09-29 Paolo Carlini <pcarlini@suse.de>
* include/std/std_sstream.h (basic_stringbuf(ios_base::openmode)):
Don't use _M_stringbuf_init, keep the pointers null, per 27.7.1.1.
(str()): Slightly tweak, protect from pptr() == 0.
(_M_update_egptr()): Likewise.
* include/bits/sstream.tcc (ssekoff, seekpos): In order to check
for an empty buffer use __beg instead of _M_string.capacity().
* testsuite/27_io/basic_stringbuf/cons/char/1.cc: New.
* testsuite/27_io/basic_stringbuf/cons/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_filebuf/cons/char/1.cc: New.
* testsuite/27_io/basic_filebuf/cons/wchar_t/1.cc: Likewise.
* testsuite/27_io/basic_streambuf/cons/char/1.cc: Update.
* testsuite/27_io/basic_streambuf/cons/wchar_t/1.cc: Likewise.
2004-09-29 Paolo Carlini <pcarlini@suse.de>
Benjamin Kosnik <bkoz@redhat.com>
* testsuite/testsuite_io.h (class constraint_buf): New, extended
and templatized version of constraint_filebuf; add typedefs for
streambuf/stringbuf/filebuf and wchar_t counterparts.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r88307
Joseph Myers [Wed, 29 Sep 2004 20:27:26 +0000 (21:27 +0100)]
re PR c/7425 (deprecated attribute doesn't merge with multiple declarations)
PR c/7425
* c-decl.c (merge_decls): Merge TREE_DEPRECATED.
cp:
* decl.c (duplicate_decls): Merge TREE_DEPRECATED.
testsuite:
* gcc.dg/deprecated-3.c, g++.dg/warn/deprecated-2.C: New tests.
From-SVN: r88303
Jason Merrill [Wed, 29 Sep 2004 20:18:49 +0000 (16:18 -0400)]
revert accidental checkin
From-SVN: r88302
Tom Tromey [Wed, 29 Sep 2004 19:51:17 +0000 (19:51 +0000)]
re PR libgcj/17715 (.properties files missing from libgcj-4.0.0.jar)
PR libgcj/17715:
* Makefile.in: Rebuilt.
* Makefile.am (libgcj-@gcc_version@.jar): Include properties
files.
(all_property_files): New macro.
From-SVN: r88300
Eric Christopher [Wed, 29 Sep 2004 19:47:32 +0000 (19:47 +0000)]
fold-const.c (tree_swap_operands_p): Remove duplicated code.
2004-09-29 Eric Christopher <echristo@redhat.com>
* fold-const.c (tree_swap_operands_p): Remove duplicated code.
From-SVN: r88299
Hans-Peter Nilsson [Wed, 29 Sep 2004 19:46:18 +0000 (19:46 +0000)]
cris.md (moverside, movemside): With MEM, make sure the address is (plus reg mem).
* config/cris/cris.md (moverside, movemside): With MEM, make sure
the address is (plus reg mem).
From-SVN: r88298
Tom Tromey [Wed, 29 Sep 2004 18:31:54 +0000 (18:31 +0000)]
Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Re-sorted.
(libgcj.la): Moved to old location near lib-gnu-awt-xlib.la.
From-SVN: r88294
Jason Merrill [Wed, 29 Sep 2004 18:16:34 +0000 (14:16 -0400)]
re PR tree-optimization/17697 (ICE: Statement marked for throw, but doesn't - verify_stmts failed)
PR tree-optimization/17697
* decl.c (duplicate_decls): Copy TREE_NOTHROW from newdecl to olddecl.
From-SVN: r88293
David Edelsohn [Wed, 29 Sep 2004 15:19:56 +0000 (15:19 +0000)]
* config/rs6000/linux64.h (PROCESSOR_DEFAULT): Define.
From-SVN: r88290
Andrew Haley [Wed, 29 Sep 2004 14:13:17 +0000 (14:13 +0000)]
re PR java/17007 (Inconsistent builtin attributes set by Java front end)
2004-09-29 Andrew Haley <aph@redhat.com>
PR java/17007
* parse.y (patch_binop): Don't mess with the TREE_SIDE_EFFECTS of the
result of TRUNC_MOD_EXPR.
(patch_unaryop): Likewise for CONVERT_EXPR, which may throw.
* decl.c (java_init_decl_processing): Mark
soft_lookupinterfacemethod_node and soft_instanceof_node pure.
From-SVN: r88289
Nathan Sidwell [Wed, 29 Sep 2004 13:07:50 +0000 (13:07 +0000)]
tree.c (make_node_stat): Fix uninitialized warning.
* tree.c (make_node_stat): Fix uninitialized warning. Replace
cascaded if ... else if with a switch.
From-SVN: r88288
Richard Sandiford [Wed, 29 Sep 2004 11:42:03 +0000 (11:42 +0000)]
Regenerate.
From-SVN: r88285
Michael Roth [Wed, 29 Sep 2004 11:41:17 +0000 (11:41 +0000)]
configure.in (--without-headers): Add missing double quotes.
* configure.in (--without-headers): Add missing double quotes.
* configure: Regenerate.
From-SVN: r88284
Aaron W. LaFramboise [Wed, 29 Sep 2004 11:23:11 +0000 (05:23 -0600)]
* read-rtl.c (apply_macro_to_string): Replace index with strchr.
From-SVN: r88283
Jakub Jelinek [Wed, 29 Sep 2004 09:47:56 +0000 (11:47 +0200)]
tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD and TI_VA_LIST_FPR_COUNTER_FIELD.
* tree.h (enum tree_index): Add TI_VA_LIST_GPR_COUNTER_FIELD
and TI_VA_LIST_FPR_COUNTER_FIELD.
(va_list_gpr_counter_field, va_list_fpr_counter_field): Define.
* tree-pass.h (pass_stdarg): Add.
* tree-optimize.c (init_tree_optimization_passes): Add pass_stdarg.
* tree-stdarg.c: New file.
* Makefile.in (OBJS-common): Add tree-stdarg.o.
(tree-stdarg.o): Add dependencies.
* function.h (struct function): Add va_list_gpr_size and
va_list_fpr_size fields.
* function.c (allocate_struct_function): Initialize them.
* config/i386/i386.c (ix86_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(ix86_setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(ix86_va_start): Don't set up fields that won't be used.
* config/rs6000/rs6000.c (rs6000_build_builtin_va_list): Initialize
va_list_{g,f}pr_counter_field.
(setup_incoming_varargs): Don't do anything if reg_save
area will not be used. Only save registers that tree-stdarg.c
detected they need saving.
(rs6000_va_start): Don't set up fields that won't be used.
* gcc.c-torture/execute/stdarg-1.c: New test.
* gcc.c-torture/execute/stdarg-2.c: New test.
* gcc.c-torture/execute/stdarg-3.c: New test.
* gcc.dg/tree-ssa/stdarg-1.c: New test.
* gcc.dg/tree-ssa/stdarg-2.c: New test.
* gcc.dg/tree-ssa/stdarg-3.c: New test.
* gcc.dg/tree-ssa/stdarg-4.c: New test.
* gcc.dg/tree-ssa/stdarg-5.c: New test.
From-SVN: r88279
Jakub Jelinek [Wed, 29 Sep 2004 09:06:49 +0000 (11:06 +0200)]
builtins.def (BUILT_IN_FPUTC, [...]): Remove nothrow attribute.
* builtins.def (BUILT_IN_FPUTC, BUILT_IN_FPUTC_UNLOCKED,
BUILT_IN_FPUTS, BUILT_IN_FPUTS_UNLOCKED, BUILT_IN_FWRITE,
BUILT_IN_FWRITE_UNLOCKED, BUILT_IN_PUTCHAR, BUILT_IN_PUTCHAR_UNLOCKED,
BUILT_IN_PUTS, BUILT_IN_PUTS_UNLOCKED): Remove nothrow attribute.
* builtin-attrs.def (ATTR_NONNULL_1, ATTR_NONNULL_2, ATTR_NONNULL_1_2,
ATTR_NONNULL_1_4): New.
From-SVN: r88278
Jakub Jelinek [Wed, 29 Sep 2004 09:04:21 +0000 (11:04 +0200)]
re PR tree-optimization/17697 (ICE: Statement marked for throw, but doesn't - verify_stmts failed)
PR tree-optimization/17697
* tree-ssa-ccp.c (execute_fold_all_builtins): Update eh and cleanup
cfg if needed.
* g++.dg/opt/pr17697-1.C: New test.
* g++.dg/opt/pr17697-2.C: New test.
* g++.dg/opt/pr17697-3.C: New test.
From-SVN: r88277
Per Bothner [Wed, 29 Sep 2004 06:44:51 +0000 (23:44 -0700)]
Oops - fix typo in ChangeLog.
From-SVN: r88272
Per Bothner [Wed, 29 Sep 2004 06:42:31 +0000 (23:42 -0700)]
profile.c (brnahc_prob): Pass correct value to output_location, even when USE_MAPPED_LOCATION.
* profile.c (brnahc_prob): Pass correct value to output_location,
even when USE_MAPPED_LOCATION. Fixes bug from 09-11.
From-SVN: r88271
Jason Merrill [Wed, 29 Sep 2004 06:23:49 +0000 (02:23 -0400)]
re PR middle-end/17525 (ICE in emit_move_insn (non-BLKmode arg))
PR middle-end/17525
* class.c (build_base_field): Set TYPE_MODE.
From-SVN: r88270
Richard Henderson [Wed, 29 Sep 2004 02:50:47 +0000 (19:50 -0700)]
re PR tree-optimization/15089 (local register variable with a specified register is bad)
PR 15089
* tree-ssa-copy.c (may_propagate_copy_into_asm): New.
* tree-flow.h (may_propagate_copy_into_asm): Declare.
* tree-ssa-ccp.c (replace_uses_in): Use it.
* tree-ssa-dom.c (cprop_operand): Likewise.
From-SVN: r88269
Jeff Law [Wed, 29 Sep 2004 02:15:00 +0000 (20:15 -0600)]
tree-ssa-threadupdate.c (create_block_for_threading): Request that no outgoing edges be left in the duplicate block.
* tree-ssa-threadupdate.c (create_block_for_threading): Request
that no outgoing edges be left in the duplicate block. Do no
update information on outgoing edges or PHI nodes in target
blocks here.
(remove_ctrl_stmt_and_useless_edges): Renamed from
remove_last_stmt_and_useless_edges. Handle case where the
block is empty or has no control statements. Do not update edge
flags here.
(thread_block): Create a template block rather than copying the
original block every time. Create outgoing edges from the
duplicate blocks and update PHIs at the target of the outgoing
edges here. Fix edge flags for the original block if necessary.
* cfghooks (duplicate_block): No longer assert that the original
block has incoming edges.
From-SVN: r88267
Hans-Peter Nilsson [Wed, 29 Sep 2004 01:42:09 +0000 (01:42 +0000)]
extend.texi (Extended Asm): Add blurb about using Explicit Reg Vars to enforce register allocation with...
* doc/extend.texi (Extended Asm): Add blurb about using Explicit
Reg Vars to enforce register allocation with general constraints.
(Explicit Reg Vars): Clarify relation to asm statements.
(Local Reg Vars): Similar.
From-SVN: r88265
Ulrich Weigand [Wed, 29 Sep 2004 01:28:22 +0000 (01:28 +0000)]
sched-rgn.c (haifa_edge, [...]): Remove.
* sched-rgn.c (haifa_edge, edge_table, NEXT_IN, NEXT_OUT, FROM_BLOCK,
TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES, OUT_EDGES,
build_control_flow, new_edge): Remove.
(schedule_insns): Remove edge_table/in_edges/out_edges cleanup.
(bitlst, bitlst_table_last, bitlst_table): Remove.
(bblst): Store basic_block pointer instead of block index.
(bblst_table): Likewise.
(edgelst): Store edge pointer instead of edge index.
(edgelst_table, edgelst_last): New variables.
(extract_bitlst): Rename to ...
(extract_edgelst): ... this. Return edge pointers, not indices.
(split_edges): Update call.
(rgn_edges): Store edge pointers instead of indices.
(edge_to_bit): Remove.
(EDGE_TO_BIT): Store per-region edge index in edge->aux.
(SET_EDGE_TO_BIT): New macro.
(is_cfg_nonregular): Check for simple cases of unreachable blocks.
(find_rgns): Remove edge_list parameter. Traverse standard CFG
data structures instead of haifa_edge et al. Use edge pointers
instead of edge indices everywhere.
(compute_dom_prob_ps): Use standard CFG data structures. Account
for exit edges.
(compute_trg_info): Likewise.
(propagate_deps): Likewise.
(debug_candidate): Account for bblst data structure change.
(check_live_1, update_live_1, is_pfree): Likewise.
(IS_REACHABLE): Use standard CFG data structures.
(init_ready_list): Update bblst_table/edgelst_table allocation.
(schedule_region): Update alloc/cleanup code to data structure
changes. Use edge->aux to store per-region edge index.
(init_regions): No longer call build_control_flow. Do not
create edge list any more.
From-SVN: r88264