Commit Graph

44201 Commits

Author SHA1 Message Date
Stephane Carrez
b791ff313e re PR target/7361 (Internal compiler error in reload_cse_simplify_operands, at reload1.c:8387)
PR target/7361
	* config/m68hc11/m68hc11.c (go_if_legitimate_address_internal): Accept
	constant addresses only on 68HC12.

From-SVN: r55658
2002-07-22 23:04:11 +02:00
Neil Booth
4a94111573 cppfiles.c (stack_include_file): Correct test of whether a dependency should be output.
* cppfiles.c (stack_include_file): Correct test of whether
	a dependency should be output.

From-SVN: r55657
2002-07-22 20:08:29 +00:00
David Edelsohn
7488cc6d69 * collect2.c (is_ctor_dtor): Add other possible JOINER values.
From-SVN: r55656
2002-07-22 15:31:37 -04:00
Richard Earnshaw
b41caf7c04 arm.md (movqi): If optimizing and we can create pseudos...
* arm.md (movqi): If optimizing and we can create pseudos, use
a ZERO_EXTEND to load from memory, then copy the result into the
target.
(movhi): Likewise, but only for ARMv4.

From-SVN: r55655
2002-07-22 17:41:27 +00:00
Neil Booth
492e99345f * ssa-ccp.c (PHI_PARMS): Remove.
From-SVN: r55654
2002-07-22 17:31:42 +00:00
Richard Sandiford
f01f01a6dd mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS on big-endian targets.
* config/mips/mips.h (CLASS_CANNOT_CHANGE_MODE): Include FP_REGS
	on big-endian targets.

From-SVN: r55653
2002-07-22 17:25:05 +00:00
Kaveh R. Ghazi
c2ae8aef4e hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE, [...]): New formatting macros.
* hwint.h (HOST_WIDE_INT_PRINT_DEC_SPACE,
	HOST_WIDE_INT_PRINT_UNSIGNED_SPACE,
	HOST_WIDEST_INT_PRINT_DEC_SPACE, HOST_WIDEST_INT_PRINT_DEC_SPACE):
	New formatting macros.

	* ra-debug.c (dump_static_insn_cost): Avoid string concatenation.

From-SVN: r55652
2002-07-22 17:11:57 +00:00
J"orn Rennecke
eab2120d5e rtlanal.c (subreg_regno_offset): Return correct offset for big endian paradoxical subregs.
* rtlanal.c (subreg_regno_offset): Return correct offset for
	big endian paradoxical subregs.

From-SVN: r55650
2002-07-22 15:29:28 +01:00
Kriang Lerdsuwanakij
0e902d98ae PR c++/7347, c++/7348
PR c++/7347, c++/7348
	* cp-tree.h (tsubst_flags_t): Add tf_parsing.
	* decl.c (make_typename_type): Use it.
	(make_unbound_class_template): Likewise.
	(lookup_name_real): Don't call type_access_control if scope is
	template parameter dependent.
	* parse.y (template_arg): Call make_unbound_class_template with
	tf_parsing set.
	(nest_name_specifier): Call make_typename_type with tf_parsing set.
	(typename_sub0): Likewise.
	(typename_sub1): Likewise.
	(instantiate_decl): Push class scope.
	* pt.c (regenerate_decl_from_template): Call pushclass and popclass
	for both static variable and member function template.
	(instantiate_decl) Call pushclass and popclass when tsubst'ing type
	and arguments.
	* search.c (type_access_control): Do type access for TEMPLATE_DECL
	too.

	* g++.dg/template/access4.C: New test.
	* g++.dg/template/access5.C: New test.
	* g++.old-deja/g++.pt/memtemp85.C: Fix access problem.
	* g++.old-deja/g++.pt/memtemp86.C: Likewise.
	* g++.old-deja/g++.pt/ttp58.C: Likewise.
	* g++.old-deja/g++.pt/memtemp89.C: Remove XFAIL.

From-SVN: r55649
2002-07-22 14:23:37 +00:00
J"orn Rennecke
0d541696aa optabs.c (expand_vector_unop): Don't expand using sub_optab if we got the wrong mode.
* optabs.c (expand_vector_unop): Don't expand using sub_optab
	if we got the wrong mode.

From-SVN: r55648
2002-07-22 15:22:58 +01:00
J"orn Rennecke
bb9b380534 hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
* hwint.c (define HOST_WIDE_INT_PRINT_DEC_C): New define.
	* genrecog.c (write_switch, write_cond): Use it.
	* genemit.c (gen_exp): Likewise.

From-SVN: r55647
2002-07-22 15:20:20 +01:00
Jakub Jelinek
e96eb21529 * c-decl.c (build_compound_literal): Set decl TREE_READONLY from TYPE.
From-SVN: r55646
2002-07-22 12:15:49 +02:00
Jakub Jelinek
cf3c4f5609 c-decl.c (build_compound_literal): Defer compound literal decls until until file end to emit them only if...
* c-decl.c (build_compound_literal): Defer compound literal decls
	until until file end to emit them only if they are actually used.

	* gcc.dg/gnu89-init-2.c: New test.

From-SVN: r55645
2002-07-22 12:11:16 +02:00
GCC Administrator
9f8da5fad6 Daily bump.
From-SVN: r55643
2002-07-22 07:16:57 +00:00
Kaveh R. Ghazi
533c486363 ra-build.c (check_conflict_numbers): Hide unused function.
* ra-build.c (check_conflict_numbers): Hide unused function.
	(livethrough_conflicts_bb): Avoid automatic aggregate
	initialization.
	(parts_to_webs_1): Avoid `U' integer constant modifier.
	(conflicts_between_webs): Wrap a variable in the macro controlling
	its usage.
	* ra-debug.c (ra_debug_msg): Use VA_OPEN/VA_CLOSE.
	(dump_igraph, dump_graph_cost): Avoid string concatenation
	(dump_static_insn_cost): Avoid automatic aggregate
	initialization.
	* ra-rewrite.c (insert_stores): Avoid automatic aggregate
	initialization.
	(dump_cost): Avoid string concatenation

From-SVN: r55637
2002-07-22 02:04:25 +00:00
Richard Henderson
8943a0b4d8 expr.c (expand_expr): Don't use GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.
* expr.c (expand_expr) [TRY_FINALLY_EXPR]: Don't use
        GOTO_SUBROUTINE_EXPR when finally_block can be re-expanded.

        * lang.c (java_unsafe_for_reeval): New.
        (LANG_HOOKS_UNSAFE_FOR_REEVAL): New.

From-SVN: r55636
2002-07-21 17:42:54 -07:00
Richard Henderson
b1aef35bb1 unroll.c (find_splittable_givs): Do not split DEST_ADDR givs that are not unrolled completely.
* unroll.c (find_splittable_givs): Do not split DEST_ADDR givs
        that are not unrolled completely.

From-SVN: r55635
2002-07-21 17:29:56 -07:00
Richard Henderson
5e1afb115e loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
* loop.h (LOOP_AUTO_UNROLL): Rename from LOOP_FIRST_PASS.
        * loop.c (strength_reduce): Update.
        * toplev.c (rest_of_compilation): Do unrolling in the first
        loop pass, not the second.

From-SVN: r55634
2002-07-21 17:26:03 -07:00
Richard Henderson
c67a1cf6a8 emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL when flag_argument_noalias == 2.
* emit-rtl.c (set_mem_attributes): Preserve indirection of PARM_DECL
        when flag_argument_noalias == 2.
        * alias.c (nonoverlapping_memrefs_p): Handle that.
        * print-rtl.c (print_mem_expr): Likewise.

From-SVN: r55633
2002-07-21 17:23:47 -07:00
Hartmut Schirmer
b68daef415 libgcc2.c (__divdi3, __moddi3): Use unary minus operator instead of __negdi2 directly.
* libgcc2.c (__divdi3, __moddi3): Use unary minus operator
        instead of __negdi2 directly.

From-SVN: r55632
2002-07-21 17:15:49 -07:00
Neil Booth
060a58c593 gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
* gengenrtl.c (gencode): Don't define obstack_alloc_rtx.
	* function.c (SYMBOL__MAIN): Remove definition.
	* global.c (SET_CONFLICT, REGBITP, ALLOCNO_LIVE_P): Remove.
	* predict.c (PROB_NEVER, PROB_LIKELY, PROB_UNLIKELY): Remove.
	* profile.c (GCOV_INDEX_TO_BB): Remove.
	* sched-rgn.c (ABS_VALUE, MIN_DIFF_PRIORITY, MIN_PROB_DIFF): Remove.
	* simplify-rtx.c (FIXED_BASE_PLUS_P): Remove.

From-SVN: r55631
2002-07-21 22:01:58 +00:00
Neil Booth
2f8dd115d2 c-lex.c (GET_ENVIRONMENT): Remove.
* c-lex.c (GET_ENVIRONMENT): Remove.
	* collect2.c (GET_ENV_PATH_LIST): Remove.
	(prefix_from_env): Use GET_ENVIRONMENT.
	* cppinit.c (GET_ENV_PATH_LIST): Remove.
	(init_standard_includes): Use GET_ENVIRONMENT.
	* defaults.h (GET_ENVIRONMENT): Define here if not already.
	* gcc.c (GET_ENV_PATH_LIST): Remove.
	(make_relative_prefix, process_command): Update.
	* protoize.c (GET_ENV_PATH_LIST): Remove.
	(do_processing): Update.
java:
	* jcf-path.c (GET_ENV_PATH_LIST): Remove.
	(jcf_path_init): Use GET_ENVIRONMENT.

From-SVN: r55630
2002-07-21 21:59:03 +00:00
Gabriel Dos Reis
565083069d c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
2002-07-21  Gabriel Dos Reis  <gdr@nerim.net>

        * c-decl.c (build_array_declarator): Say 'ISO C90', not 'ISO C89'.
        (grokdeclarator): Likewise.
        * c-format.c (C_STD_NAME): Likewise.
        * c-lex.c (interpret_integer): Likewise.
        * c-typeck.c (build_array_ref): Likewise.
        * cpplex.c (_cpp_lex_direct): Likewise.
        * toplev.c (documented_lang_options): Likewise.

testsuite/
2002-07-21  Gabriel Dos Reis  <gdr@nerim.net>

        * gcc.dg/c90-arraydecl-1.c: Change C89 too C90.

From-SVN: r55629
2002-07-21 21:35:17 +00:00
Neil Booth
e2f62855b2 * c-format.c (T99_I, T99_UI): Remove.
From-SVN: r55628
2002-07-21 20:39:34 +00:00
Neil Booth
c89d1dfd8b * c-typeck.c (SAVE_SPELLING_DEPTH): Remove.
From-SVN: r55627
2002-07-21 20:10:51 +00:00
Jan Hubicka
4669036917 gcse.c (do_local_cprop): Do not extend lifetimes of registers set by do_local_cprop.
* gcse.c (do_local_cprop): Do not extend lifetimes of registers set by
	do_local_cprop.

From-SVN: r55626
2002-07-21 19:38:08 +00:00
Andreas Jaeger
60ffc1b816 * reload1.c (fixup_abnormal_edges): Remove unused variable.
From-SVN: r55625
2002-07-21 21:20:22 +02:00
Bernd Schmidt
c05ffc49a3 Enhancements for the if-conversion pass
From-SVN: r55624
2002-07-21 14:32:25 +00:00
GCC Administrator
753e29b145 Daily bump.
From-SVN: r55622
2002-07-21 07:16:51 +00:00
Roger Sayle
b886c620ab decl2.c (cxx_decode_option): Simplify -fhandle-exceptions test by using positive_option.
* decl2.c (cxx_decode_option): Simplify -fhandle-exceptions
	test by using positive_option.  Make whitespace consistent.

From-SVN: r55616
2002-07-21 02:07:01 +00:00
Jan Hubicka
ae860ff787 gcse.c: Include cselib.h
* gcse.c: Include cselib.h
	(constptop_register): Break out from ...
	(cprop_insn): ... here; kill basic_block argument.
	(do_local_cprop, local_cprop_pass): New functions.
	(one_cprop_pass): Call local_cprop_pass.

From-SVN: r55615
2002-07-20 22:56:05 +00:00
Roger Sayle
0da65b89f1 simplify-rtx.c (simplify_relational_operation): Optimize abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).
* simplify-rtx.c (simplify_relational_operation): Optimize
	abs(x) < 0.0 (and abs(x) >= 0.0 when using -ffast-math).

	* gcc.c-torture/execute/20020720-1.c: New test case.

From-SVN: r55614
2002-07-20 22:24:58 +00:00
Michael Matz
68cd2524d6 * MAINTAINERS: Add myself as ra* maintainer.
From-SVN: r55613
2002-07-20 16:53:10 +00:00
Michael Matz
47cc673ae3 * ra-build.c: (remember_web_was_spilled): Use GENERAL_REGS.
From-SVN: r55612
2002-07-20 16:52:37 +00:00
Neil Booth
68e6527569 cppexp.c (struct op): Add token pointer.
* cppexp.c (struct op): Add token pointer.
	(check_promotion, CHECK_PROMOTION): New.
	(optab): Update.
	(_cpp_parse_expr): Update, use token pointer of struct op.
	(reduce): Warn about change of sign owing to promotion.
	* cppinit.c (cpp_handle_option): New warning if -Wall.
	* cpplib.h (struct cpp_options): New member.
testsuite:
	* gcc.dg/cpp/Wsignprom.c: New tests.

From-SVN: r55611
2002-07-20 13:31:56 +00:00
Gabriel Dos Reis
7a56114260 spew.c (struct uinparsed_test): Replace 'filename' and 'lineno' members with 'locus'.
* spew.c (struct uinparsed_test): Replace 'filename' and 'lineno'
        members with 'locus'.  Adjust use throughout.
        (struct feed):  Likewise.
        (alloc_unparsed_test): Change prototype, take a 'const location_t *'.
        Adjust use.
        (snarf_defarg): Use error(), not error_with_file_and_line().

From-SVN: r55610
2002-07-20 12:45:45 +00:00
GCC Administrator
3d1fc12974 Daily bump.
From-SVN: r55608
2002-07-20 07:16:56 +00:00
Phil Edwards
aa2d5ba2c7 abi.txt: New file.
2002-07-20  Phil Edwards  <pme@gcc.gnu.org>

	* docs/html/abi.txt:  New file.
	* docs/html/23_containers/howto.html:  Tweak vector-overhead text.
	* docs/html/ext/lwg-active.html, docs/html/ext/lwg-defects.html:
	Import from upstream, R22.

	* include/bits/char_traits.h, include/bits/stl_iterator.h,
	include/bits/stl_iterator_base_types.h, libsupc++/exception,
	libsupc++/new, libsupc++/typeinfo:  Use @brief markup.

	* include/bits/deque.tcc, include/bits/stl_alloc.h,
	include/bits/stl_deque.h, include/bits/stl_list.h:  Postpone removal
	of deprecated functions until 3.4.  (Same timeframe, different text.)
	* include/bits/stl_vector.h:  Ditto.  Also do the same cleanups that
	the other sequence classes received.

From-SVN: r55602
2002-07-20 06:26:27 +00:00
David Edelsohn
e3485bbc86 rs6000.md: Remove ppc630 fpcompare from single fpu list.
* config/rs6000/rs6000.md: Remove ppc630 fpcompare from single
        fpu list.  Separate Power4 compare and delayed_compare.  Correct
        Power4 fpcompare.
        (fix_truncdfsi2_internal): Restore FPR preference.
        * config/rs6000/t-aix43 (MULTILIB_MATCHES): Add mcpu?power3,
        mcpu?power4, mcpu?604e.  Remove mpower, mpower2, mpowerpc.

From-SVN: r55601
2002-07-19 22:20:16 -04:00
Momchil Velikov
449655a6fe * reload1.c (reload_as_needed): Duplicate oldpat.
From-SVN: r55600
2002-07-19 18:30:31 -07:00
Alan Modra
a0c58ea9ac New test.
From-SVN: r55599
2002-07-20 10:03:49 +09:30
Alan Modra
8b583747ad re PR rtl-optimization/7130 (miscompiled code for gcc-3.1 on powerpc-unknown-linux-gnu with -funroll-all-loops)
PR optimization/7130
	* loop.h (struct loop_info): Add "preconditioned".
	* unroll.c (unroll_loop): Set it.
	* doloop.c (doloop_modify_runtime): Correct count for unrolled loops.

From-SVN: r55598
2002-07-20 10:01:15 +09:30
Zack Weinberg
0dc36574af rtl.def (CODE_LABEL): Remove slot 8.
* rtl.def (CODE_LABEL): Remove slot 8.
	* rtl.h (struct rtx_def): Document new uses of jump and call fields.
	(LABEL_ALTERNATE_NAME): Delete.
	(LABEL_KIND, SET_LABEL_KIND, LABEL_ALT_ENTRY_P): New.
	* defaults.h: Remove default for ASM_OUTPUT_ALTERNATE_LABEL_NAME.

	* final.c (output_alternate_entry_point): New.
	(final_scan_insn): Use it instead of
	ASM_OUTPUT_ALTERNATE_LABEL_NAME.  Do not consider possibility
	of a case label being an alternate entry point.

	* cfgbuild.c (make_edges, find_bb_boundaries): Use LABEL_ALT_ENTRY_P.
	* emit-rtl.c (gen_label_rtx): Adjust call to gen_rtx_CODE_LABEL.
	Do not clear LABEL_NUSES (unnecessary) or LABEL_ALTERNATE_NAME
	(field deleted).
	* print-rtl.c, ra-debug.c: Update code to output CODE_LABELs.

	* doc/rtl.texi: Document LABEL_KIND, SET_LABEL_KIND, and
	LABEL_ALT_ENTRY_P; not LABEL_ALTERNATE_NAME.
	* doc/tm.texi: Delete documentation of
	ASM_OUTPUT_ALTERNATE_LABEL_NAME.

From-SVN: r55597
2002-07-19 23:11:19 +00:00
Rainer Orth
59267987db iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
* config/mips/iris5gas.h (DWARF2_DEBUGGING_INFO): Define.
	(PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
	(LINK_SPEC): Define.
	(STARTFILE_SPEC): Define.
	(ENDFILE_SPEC): Define.

	* config/mips/iris6-o32.h (LINK_SPEC): Move ...
	* config/mips/iris6-o32-as.h (LINK_SPEC): ... here.

	* config/mips/iris6-o32-gas.h: New file.
	* config.gcc (mips-sgi-irix6*o32): Use it.

	* config/mips/t-iris5-gas: New file.
	* config.gcc (mips-sgi-irix6*o32, mips-sgi-irix5*): Use it.

From-SVN: r55596
2002-07-19 21:58:12 +00:00
Neil Booth
75aef48add cppexp.c (ALWAYS_EVAL): Remove.
* cppexp.c (ALWAYS_EVAL): Remove.
	(optab, reduce): Always evaluate.
	(num_unary_op, num_binary_op, num_div_op): Issue diagnostics
	only if not skipping evaluation.
testsuite:
	* gcc.dg/cpp/expr.c: New tests.

From-SVN: r55595
2002-07-19 19:24:43 +00:00
Marek Michalkiewicz
72a5503d62 * config/avr/avr.c (debug_hard_reg_set): Remove.
From-SVN: r55594
2002-07-19 18:30:34 +00:00
Chris Demetriou
059ba71678 [ ChangeLog ]
2002-07-19  Chris Demetriou  <cgd@broadcom.com>

        * gcc.c (cpp_options): Include "%1" (cc1_spec).

[ cp/ChangeLog ]
2002-07-19  Chris Demetriou  <cgd@broadcom.com>

        * lang-specs.h (@c++): Include "%2" (cc1plus_spec) wherever
        cpp_options is included.

From-SVN: r55591
2002-07-19 10:12:14 -07:00
Richard Henderson
544823b621 * loop.c (loop_givs_rescan): Delete the REG_EQUAL note, not the insn.
From-SVN: r55590
2002-07-19 09:31:40 -07:00
Kaz Kojima
f4b2b0d665 configure.in (sh[34]*-*-linux*): Add brackets.
* configure.in (sh[34]*-*-linux*): Add brackets.
	* configure: Regenerate.

From-SVN: r55589
2002-07-19 15:30:58 +00:00
Bo Thorsen
7b20471292 ieeefp.h: Add x86-64 support.
2002-07-19  Bo Thorsen  <bo@berlioz.suse.de>

        * java/lang/ieeefp.h: Add x86-64 support.
        * configure.in: Likewise.
        * configure.host: Likewise.
        * configure: Regenerated.
        * sysdep/x86-64/locks.h: New file with x86-64 locks.

From-SVN: r55588
2002-07-19 16:41:15 +02:00