Commit Graph

41016 Commits

Author SHA1 Message Date
Alexandre Oliva
eae63c0ae1 acinclude.m4 (CXX): AC_SUBST it, instead of glibcpp_CXX.
* acinclude.m4 (CXX): AC_SUBST it, instead of glibcpp_CXX.
* aclocal.m4, configure: Rebuilt.

From-SVN: r49974
2002-02-22 21:31:06 +00:00
Philipp Thomas
0bc1e80dca tempbuf.h: get_temporary_buffer and return_temporary_buffer are in namespace std...
2002-02-22  Philipp Thomas  <pthomas@suse.de>

        * include/backward/tempbuf.h: get_temporary_buffer and
        return_temporary_buffer are in namespace std, not in __gnu_cxx.

From-SVN: r49973
2002-02-22 21:23:09 +00:00
Richard Kenner
b76b08ef94 expr.c (store_expr): When converting expression to promoted equivalent type...
* expr.c (store_expr): When converting expression to promoted
	equivalent type, allow using SUBREG_REG of TARGET as the target
	of the expansion of EXP.
	* loop.c (basic_induction_var, case SUBREG): Always look inside.
	* config/alpha/alpha.c (rtx_equiv_function_matters): Delete decl.
	(alpha_emit_set_const): Handle SImode when can't make new pseudos.
	(alpha_emit_set_const_1, alpha_sa_mask): Use no_new_pseudos.
	* config/alpha/alpha.md (addsi3, subsi3): Don't use if optimizing.

From-SVN: r49972
2002-02-22 16:18:25 -05:00
Jakub Jelinek
3256b817fc re PR c++/5748 (g++ dies with optimization)
PR c++/5748
	* stmt.c (expand_anon_union_decl): Set TREE_USED on the anon union
	decl if any of elements was TREE_USED.

	* g++.dg/opt/anonunion1.C: New test.

From-SVN: r49971
2002-02-22 22:09:09 +01:00
Alexandre Oliva
9e0625a316 sol2.h: Don't include sys/mman.h.
* config/sparc/sol2.h: Don't include sys/mman.h.
* config/sparc/sparc.c (arith_operand): Use SMALL_INT32.
(arith_4096_operand): Don't throw high bits away.
(const64_operand): Take sign extension of CONST_INTs into account.
(const64_high_operand, sparc_emit_set_const32): Likewise.
(GEN_HIGHINT64): Likewise.
(sparc_emit_set_const64_quick1): Likewise.
(const64_is_2insns): Likewise.
(print_operand): Use trunc_int_for_mode for sign extension.
* config/sparc/sparc.h (SMALL_INT32): Likewise.
* config/sparc/sparc.md (movqi): Sign-extend CONST_DOUBLE
chars.  Assume CONST_INT is already properly sign-extended.
(movdi split): Sign-extend each SImode part.
(andsi3 split): Don't mask high bits off, so that result
remains properly sign-extend.
(iorsi3 split): Likewise.
(xorsi3 split): Likewise.

From-SVN: r49970
2002-02-22 18:43:54 +00:00
Jakub Jelinek
25c8b645ed re PR other/5746 (0220 cvs crashes using undeclared type)
PR other/5746
	* semantics.c (finish_switch_cond): Don't call get_unwidened
	if error_mark_node.

From-SVN: r49969
2002-02-22 18:42:19 +01:00
Jim Blandy
00c2f96f89 Allow the user to specify functions for allocating memory for splay tree roots and nodes.
include:
Allow the user to specify functions for allocating memory for
splay tree roots and nodes.
* splay-tree.h (splay_tree_allocate_fn, splay_tree_deallocate_fn):
New types.
(splay_tree): New fields: `allocate', `deallocate', and
`allocate_data'.
(splay_tree_new_with_allocator): New function declaration.

libiberty:
* splay-tree.c (splay_tree_xmalloc_allocate,
splay_tree_xmalloc_deallocate): New functions.
(splay_tree_new): Call splay_tree_new_with_allocator, passing the
above functions and a dummy data pointer.
(splay_tree_new_with_allocator): New function.
(splay_tree_delete_helper, splay_tree_delete, splay_tree_insert,
splay_tree_remove): Use the splay tree's allocation and
deallocation functions.

From-SVN: r49968
2002-02-22 17:01:23 +00:00
Per Bothner
453c182f82 parse.y (patch_method_invocation): Set CAN_COMPLETE_NORMALLY on call to finit$ (otherwise generate_bytecode_insns...
* parse.y (patch_method_invocation): Set CAN_COMPLETE_NORMALLY on call
	to finit$ (otherwise generate_bytecode_insns drops it). However, we
	don't need to set it on the COMPOUND_EXPR - the caller does that.

From-SVN: r49966
2002-02-22 05:57:43 -08:00
Per Bothner
0bf188159d Connection.java (conect): Open the input and/or output streams immediately here, instead of using File.exists.
* gnu/gcj/protocol/file/Connection.java (conect):  Open the input
	and/or output streams immediately here, instead of using File.exists.
	(inputStream, outputStream):  New fields to save open streams.
	(getInputStream, getOutputStream):  Use already-opened streams.

From-SVN: r49965
2002-02-22 05:53:23 -08:00
Benjamin Kosnik
696179ca62 configure.in (target_alias): Default to yes.
2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (target_alias): Default to yes.
	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
	libgcc to default case.

From-SVN: r49962
2002-02-22 12:09:56 +00:00
Nathan Sidwell
4f2b0fb25e PR c++/2645, DR 295
cp:
	PR c++/2645, DR 295
	* cp-tree.h (tsubst_flags_t): Add tf_ignore_bad_quals,
	tf_keep_type_decl.
	(make_typename_type): Use tsubst_flags_t.
	* decl.c (make_typename_type): Adjust. Return non-artificial
	TYPE_DECLs, if required.
	(grokdeclarator): Simplify CVR qualification handling. Allow bad
	qualifiers on typedef types.
	* decl2.c (handle_class_head): Adjust make_typename_type call.
	* parse.y (nested_name_specifier): Likewise.
	(typename_sub0): Likewise.
	(typename_sub1): Likewise.
	* pt.c (convert_template_argument): Adjust make_typename_type
	return value.
	(tsubst): Adjust cp_build_qualified_type_real calls.
	(check_cv_quals_for_unify): Cope with alowing bad qualifications
	on template type parms.
	(instantiate_decl): Recheck substitutions to give warnings on bad
	qualifications.
	* tree.c (cp_build_qualified_type_real): Use tf_allow_bad_quals.
testsuite:
	* g++.dg/template/qualttp19.C: New test.
	* g++.dg/template/qualttp20.C: New test.
	* g++.old-deja/g++.jason/report.C: Adjust expected errors
	* g++.old-deja/g++.other/qual1.C: Likewise.

From-SVN: r49961
2002-02-22 11:57:52 +00:00
Richard Sandiford
54fec3d54a * fold-const.c (fold): Fix typo in comments.
From-SVN: r49960
2002-02-22 11:50:47 +00:00
Benjamin Kosnik
ab3bc736d9 configure.in (target_alias): Default to yes.
2002-02-21  Benjamin Kosnik  <bkoz@redhat.com>

	* configure.in (target_alias): Default to yes.
	* acinclude.m4 (GLIBCPP_ENABLE_SYMVERS): Add check for shared
	libgcc to default case.

From-SVN: r49959
2002-02-22 11:36:26 +00:00
GCC Administrator
d8e7756c8a Daily bump.
From-SVN: r49957
2002-02-22 08:19:09 +00:00
Diego Novillo
667ada9b65 * Makefile.in (langhooks.o): Update dependencies.
From-SVN: r49956
2002-02-21 23:42:38 -05:00
Diego Novillo
29ac78d5fe * langhooks.c: Include flags.h.
From-SVN: r49955
2002-02-21 23:23:21 -05:00
Alexandre Oliva
a37049c13b acinclude.m4 (LIB_AC_PROG_CXX): Copied from libstdc++-v3.
* acinclude.m4 (LIB_AC_PROG_CXX): Copied from libstdc++-v3.
Use it.
* Makefile.am (LIBLINK): Use CXX (and its tag) for linking.
* aclocal.m4, configure, Makefile.in: Rebuilt.

From-SVN: r49954
2002-02-22 03:21:28 +00:00
Alexandre Oliva
fcc0a3ef15 configure.in (CXX_FOR_TARGET): Add -shared-libgcc for libstdc++-v3 and libjava.
* configure.in (CXX_FOR_TARGET): Add -shared-libgcc for
libstdc++-v3 and libjava.

From-SVN: r49953
2002-02-22 03:21:02 +00:00
Mark Mitchell
4a376f91d0 Fix typo
[[Split portion of a mixed commit.]]

From-SVN: r49952.2
2002-02-22 01:54:44 +00:00
Mark Mitchell
b8f9335260 gcc_release: Correct handling of diff-generation.
* gcc_release: Correct handling of diff-generation.  Add
	"diffs" major mode.

[[Split portion of a mixed commit.]]

From-SVN: r49951.2
2002-02-22 01:52:35 +00:00
Aldy Hernandez
87b3cd7699 cl
From-SVN: r49949
2002-02-22 00:22:33 +00:00
Aldy Hernandez
8fc2ba41f9 forgot cl
From-SVN: r49948
2002-02-22 00:21:35 +00:00
Aldy Hernandez
6aa77e6c39 attr-alwaysinline.c: New.
2002-02-21  Aldy Hernandez  <aldyh@redhat.com>

        * gcc.dg/attr-alwaysinline.c: New.

        * c-common.c (c_common_post_options): Set inline trees by
        default.

        * doc/extend.texi (Function Attributes): Document always_inline
        attribute.
        Update documentation about inlining when not optimizing.

        * cp/decl.c (duplicate_decls): Merge always_inline attribute.

        * cp/tree.c (cp_cannot_inline_tree_fn): Do not inline at -O0
        unless DECL_ALWAYS_INLINE.

        * c-objc-common.c (c_cannot_inline_tree_fn): Do not inline at -O0
        unless DECL_ALWAYS_INLINE.
        (c_disregard_inline_limits): Disregard if always_inline set.

        * langhooks.c (lhd_tree_inlining_disregard_inline_limits):
        Disregard if always_inline set.
        (lhd_tree_inlining_cannot_inline_tree_fn): Do not inline at -O0
        unless DECL_ALWAYS_INLINE.

        * attribs.c (handle_always_inline_attribute): New.
        (c_common_attribute_table): Add always_inline.

        * config/rs6000/altivec.h: Add prototypes for builtins
        requiring the always_inline attribute.

From-SVN: r49947
2002-02-22 00:09:04 +00:00
Eric Christopher
c410d49e43 expmed.c (store_bit_field): Try to simplify the subreg before generating a new one when...
2002-02-21  Eric Christopher  <echristo@redhat.com>

	* expmed.c (store_bit_field): Try to simplify the subreg
	before generating a new one when when the mode size of
	value is less than maxmode.

From-SVN: r49946
2002-02-22 00:07:06 +00:00
Richard Henderson
e3c8ea6725 emit-rtl.c (offset_address): Use simplify_gen_binary rather than gen_rtx_PLUS to form the sum.
* emit-rtl.c (offset_address): Use simplify_gen_binary rather
        than gen_rtx_PLUS to form the sum.
        * explow.c (force_reg): Rearrange to not allocate new pseudo
        when force_operand returns a register.
        * expr.c (expand_assignment): Allow offset_rtx expansion to
        return a sum.  Do not force addresses into registers.
        (expand_expr): Likewise.
        * simplify-rtx.c (simplify_gen_binary): Use simplify_plus_minus
        to canonicalize arithmetic that didn't simpify.
        (simplify_plus_minus): New argument force; update
        all callers.  Don't split CONST unless we can do something with it,
        and wouldn't lose the constness of the operands.

        * config/i386/i386.c (legitimize_pic_address): Recognize UNSPECs
        that we generated earlier.

From-SVN: r49945
2002-02-21 15:06:16 -08:00
Tom Tromey
c1a046e50e dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
* dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed.
	(output_line_info): Use constant `1', with a long explanatory
	comment.
	* system.h (DWARF_LINE_MIN_INSTR_LENGTH): Poison.

From-SVN: r49944
2002-02-21 23:03:14 +00:00
J"orn Rennecke
31fbaad438 jump.c (redirect_jump): If old label has no UID, don't try to delete it.
* jump.c (redirect_jump): If old label has no UID, don't try to
	delete it.

From-SVN: r49943
2002-02-21 22:48:02 +00:00
J"orn Rennecke
a7f52356c5 sh.md (insv): Provide byte offsets for gen_rtx_SUBREG.
* sh.md (insv): Provide byte offsets for gen_rtx_SUBREG.
	If input is constant, do shifts at compile time.

From-SVN: r49942
2002-02-21 21:29:28 +00:00
Joseph Myers
924fcc4ea5 * doc/extend.texi: Fix some more overfull hboxes.
From-SVN: r49941
2002-02-21 21:22:09 +00:00
Jakub Jelinek
e5a2088897 re PR rtl-optimization/4994 (ICE with "-fno-exceptions -O2 -mmmx -march=athlon")
PR optimization/4994
	* config/i386/i386.md (movsi_1, movsf_1): Support MMX -> MMX
	register moves.

	* g++.dg/opt/mmx1.C: New test.

From-SVN: r49939
2002-02-21 22:16:22 +01:00
Jakub Jelinek
22273300ad re PR c++/4574 (Internal compiler error in `expand_and', at expmed.c:4055)
PR c++/4574
	* expr.h (expand_and): Add mode argument.
	* expmed.c (expand_and): Add mode argument.
	(expand_mult_highpart_adjust, emit_store_flag): Adjust callers.
	* expr.c (store_field, expand_expr, do_store_flag): Likewise.
	* except.c (expand_builtin_extract_return_addr): Likewise.
	* config/alpha/alpha.c (alpha_initialize_trampoline): Likewise.
	* config/sparc/sparc.c (sparc_initialize_trampoline): Likewise.
	* config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Likewise.
	Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x).
	* config/c4x/c4x.md: Use GEN_INT (x) instead of
	gen_rtx (CONST_INT, VOIDmode, x).

	* gcc.dg/20020220-1.c: New test.

From-SVN: r49938
2002-02-21 22:11:08 +01:00
Jakub Jelinek
7133e9921a re PR c/4697 (Warning 'value computed is not used' missing)
PR c/4697:
	* stmt.c (warn_if_unused_value): Move side effects test once more.

	* gcc.dg/20020220-2.c: New test.

From-SVN: r49937
2002-02-21 21:23:48 +01:00
Torbjorn Granlund
e2ec05a6c9 avr.md: Add more patterns for mized-mode add and subtract (addsi3_zero_extend...
* config/avr/avr.md: Add more patterns for mized-mode add and subtract
        (addsi3_zero_extend, subhi3_zero_extend1, subsi3_zero_extend).

From-SVN: r49936
2002-02-21 22:27:50 +03:00
Alexandre Oliva
9dd791c86c rtlanal.c (replace_rtx): Don't make a CONST_INT the operand of SUBREG or ZERO_EXTEND.
* rtlanal.c (replace_rtx): Don't make a CONST_INT the operand of
SUBREG or ZERO_EXTEND.

From-SVN: r49935
2002-02-21 19:21:35 +00:00
Andreas Tobler
287dd527bd ffi_darwin.c (ffi_prep_args): Skip appropriate number of GPRs for floating-point arguments.
2002-02-21  Andreas Tobler  <toa@pop.agri.ch>

        * src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
        number of GPRs for floating-point arguments.

From-SVN: r49934
2002-02-21 14:14:28 -05:00
J"orn Rennecke
7ab562744f sh.h (current_function_anonymous_args): Remove.
* sh.h (current_function_anonymous_args): Remove.
	(SETUP_INCOMING_VARARGS): Don't set it - just check that one
	of current_function_varargs and current_function_stdarg is set.
	* sh.c (sh_expand_prologue): Check current_function_varargs /
	current_function_stdarg / TARGET_SH5 instead of
	current_function_anonymous_args.

	* sh64.h (TARGET_VERSION): Define.

Fix comments that to refer to SH architecture -
the architecture is no longer exclusive to Hitachi.

From-SVN: r49931
2002-02-21 16:42:28 +00:00
Nic Ferrier
7384051993 Makefile.am (libgcj.jar:): Change to -CLASSPATH
* Makefile.am (libgcj.jar:): Change to -CLASSPATH
	(.class.h:): Ditto.
	(java/lang/ClassLoader.h:): Ditto.
	(java/lang/Thread.h:): Ditto.
	(java/lang/String.h:): Ditto.
	(java/lang/reflect/Constructor.h:): Ditto.
	(java/lang/reflect/Field.h:): Ditto.
	(java/lang/reflect/Method.h:): Ditto.
	(gnu/gcj/runtime/VMClassLoader.h:): Ditto.
	(java/io/ObjectInputStream$$GetField.h:): Ditto.
	(java/io/ObjectOutputStream$$PutField.h:): Ditto.
	* Makefile.in: Rebuilt with libgcj Automake.

From-SVN: r49927
2002-02-21 10:58:12 +00:00
GCC Administrator
bf1d016476 Daily bump.
From-SVN: r49925
2002-02-21 08:16:32 +00:00
David Edelsohn
764c58733b - remove mistaken ChangeLog item.
From-SVN: r49924
2002-02-20 21:48:08 -05:00
David Edelsohn
b1765bde41 [multiple changes]
2002-02-20  David Edelsohn  <edelsohn@gnu.org>

        * config/rs6000/rs6000.h (EPILOGUE_USES): Conditionalize
        VRSAVE_REGNO on TARGET_ALTIVEC.

2002-02-20  Alan Modra  <amodra@bigpond.net.au>

        * config/rs6000/rs6000.c (includes_lshift_p): Mask irrelevant
        bits of SImode const_int.
        (includes_rshift_p): Likewise.
        (print_operand): Call mask_operand and mask64_operand with correct
        mode.
        (rs6000_output_function_epilogue): Pad traceback table to word.
        * config/rs6000/rs6000.h (MASK_64BIT): Correct comment.
        (EXTRA_CONSTRAINT, 'S' and 'T'): Call mask_operand and
        mask64_operand with correct mode.
        (RETURN_IN_MEMORY): Use HOST_WIDE_INT, not HOST_WIDEST_INT.
        (FUNCTION_ARG_REGNO_P): Correct parentheses.

From-SVN: r49923
2002-02-20 21:34:20 -05:00
Nic Ferrier
3babb2e39c gcj.texi: Option --classpath' becomes --CLASSPATH.'Option `--CLASSPATH' becomes...
* gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option
 	`--CLASSPATH' becomes `--classpath.'
	* gjavah.c: Likewise.
	* jcf-dump.c: Likewise.
	* lang-options.h: Likewise.
	* lang.c: Likewise.
	* jcf-path.c: Updated comment.
	(jcf_path_classpath_arg): Renamed `jcf_path_CLASSPATH_arg.'
	(jcf_path_CLASSPATH_arg): Renamed `jcf_path_classpath_arg.'
	* jcf.h (jcf_path_CLASSPATH_arg): Ditto.
	(jcf_path_CLASSPATH_arg): Ditto.
	(classpath_u): Updated leading comment.

From-SVN: r49922
2002-02-20 23:22:32 +00:00
Jakub Jelinek
149d6f9edd re PR debug/4461 (Invalid dawrf2 debug code)
PR debug/4461
	* varasm.c (get_pool_constant_mark): New.
	* rtl.h (get_pool_constant_mark): Add prototype.
	* dwarf2out.c (mem_loc_descriptor): A pool constant cannot
	be represented if it has not been output.

	* gcc.dg/debug/20020220-1.c: New test.

From-SVN: r49921
2002-02-21 00:19:24 +01:00
Alexandre Oliva
4161da1219 combine.c (do_SUBST): Sanity check substitutions of CONST_INTs...
* combine.c (do_SUBST): Sanity check substitutions of
CONST_INTs, and reject them in SUBREGs and ZERO_EXTENDs.
(subst): Simplify SUBREG or ZERO_EXTEND instead of SUBSTing a
CONST_INT into its operand.
(known_cond): Likewise, for ZERO_EXTEND.
* simplify-rtx.c (simplify_unary_operation): Fix condition to
allow for simplification of wide modes.  Reject CONST_INTs in
ZERO_EXTEND when their actual mode is not given.

From-SVN: r49920
2002-02-20 23:15:00 +00:00
Alexandre Oliva
8e8d61f5c1 * gcc.c-torture/compile/20020110.c: New test.
From-SVN: r49919
2002-02-20 23:13:17 +00:00
Nic Ferrier
db444fbe8e gcj.texi: Option --classpath' becomes --CLASSPATH.'Option `--CLASSPATH' becomes...
* gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option
 	`--CLASSPATH' becomes `--classpath.'
        * gjavah.c: Likewise.
        * jcf-dump.c: Likewise.
        * lang-options.h: Likewise.
        * lang.c: Likewise.
        * jcf-path.c: Updated comment.
        (jcf_path_classpath_arg): Renamed `jcf_path_CLASSPATH_arg.'
        (jcf_path_CLASSPATH_arg): Renamed `jcf_path_classpath_arg.'
        * jcf.h (jcf_path_CLASSPATH_arg): Ditto.
        (jcf_path_CLASSPATH_arg): Ditto.
        (classpath_u): Updated leading comment.

From-SVN: r49918
2002-02-20 23:12:25 +00:00
Alexandre Oliva
3704ef744f c-decl.c (pushdecl): If no global declaration is found for an extern declaration in block scope...
* c-decl.c (pushdecl): If no global declaration is found for an
extern declaration in block scope, try a limbo one.

From-SVN: r49917
2002-02-20 23:10:36 +00:00
Jakub Jelinek
7552da58e1 re PR c++/4401 (Array subscript evaluation sometimes wrong for 64-bit architectures)
PR c++/4401
	* c-common.c (pointer_int_sum): Moved from...
	* c-typeck.c (pointer_int_sum): ...here.
	* c-common.h (pointer_int_sum): Add prototype.

	* typeck.c (cp_pointer_int_sum): Renamed from
	pointer_int_sum, call pointer_int_sum.

	* g++.dg/opt/ptrintsum1.C: New test.

From-SVN: r49916
2002-02-21 00:05:47 +01:00
Jakub Jelinek
00fae85dcb re PR c++/5713 (Redeclaration causes ice in in make_decl_rtl, at varasm.c:835)
PR c++/5713
	* c-decl.c (duplicate_decls): Return 0 if issued error about
	redeclaration.

	* decl.c (duplicate_decls): Return 0 if issued error about
	redeclaration.

	* gcc.dg/noncompile/20020220-1.c: New test.

From-SVN: r49915
2002-02-20 23:59:35 +01:00
Jakub Jelinek
4636c87e23 re PR c/4389 (Improper constant folding)
PR c/4389
	* tree.c (host_integerp): Ensure that the constant integer is
	representable in a HOST_WIDE_INT or an unsigned HOST_WIDE_INT
	when pos is zero or non-zero respectively.  Clarify comment.
	* c-format.c (check_format_info_recurse): Fix host_integerp
	usage; the pos argument should be zero when assigning to a
	signed HOST_WIDE_INT.

	* gcc.dg/20020219-1.c: New test.

From-SVN: r49914
2002-02-20 23:54:35 +01:00
Phil Edwards
c98b201bd9 acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Also check version.
2002-02-20  Phil Edwards  <pme@gcc.gnu.org>

	* acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES):  Also check version.
	(GLIBCPP_ENABLE_SYMVERS):  Redo logic, use linker version.
	* configure.in (GLIBCPP_ENABLE_SYMVERS):  Move later in the script.
	* aclocal.m4:  Regenerate.
	* configure:  Regenerate.
	* config/linker-map.dummy:  New file.  Contains nothing useful.

From-SVN: r49913
2002-02-20 22:10:39 +00:00