Commit Graph

33603 Commits

Author SHA1 Message Date
Richard Henderson
121bc96b8a * toplev.c (f_options): Clarify -fschedule-insns2 documentation.
From-SVN: r39695
2001-02-14 14:38:58 -08:00
Jan Hubicka
04b1a22363 * i386.h (RETURN_IN_MEMORY): Fix formating; reject TFmodes
From-SVN: r39693
2001-02-14 22:03:39 +00:00
J"orn Rennecke
6d13965047 * g++.old-deja/g++.brendan/new2.C (main): Use sizeof.
From-SVN: r39692
2001-02-14 21:42:30 +00:00
J"orn Rennecke
49f527d515 920302-1.c (execute): Change argument type to short.
* gcc.c-torture/execute/920302-1.c (execute):
	Change argument type to short.

From-SVN: r39691
2001-02-14 21:34:52 +00:00
Jan Hubicka
3bb7e1260f Fix Richard suggested and I forgot.
From-SVN: r39690
2001-02-14 21:20:21 +00:00
Jan Hubicka
fa79946ef5 i386-protos.h (ix86_memory_move_cost): Move offline.
* i386-protos.h (ix86_memory_move_cost): Move offline.
	* i386.c (ix86_register_move_cost): Compute properly cost of
	SSE, MMX and i387 instructions.
	(*_cost): Add costs of SSE/MMX moves.
	(ix86_memory_move_cost): Move offline from ....; Likewise.
	* i386.h (MEMORY_MOVE_COST): .... here;
	(struct processor costs): Add new fields to represent costs
	of SSE/MMX moves.

From-SVN: r39689
2001-02-14 21:16:35 +00:00
Jan Hubicka
6836e0240e regclass.c (init_reg_sets_1): Reinstall the optimization of move_cost together with Matt Kraai's fix.
* regclass.c (init_reg_sets_1): Reinstall the optimization of
	move_cost together with Matt Kraai's fix.

From-SVN: r39688
2001-02-14 20:38:33 +00:00
Jeffrey Oldham
d3fb92b825 Makefile.in (OBJS): Add params.o.
2001-02-14  Jeffrey Oldham  <oldham@codesourcery.com>

	* Makefile.in (OBJS): Add params.o.

From-SVN: r39687
2001-02-14 19:44:51 +00:00
Richard Henderson
8e0b124eaf jump.c (jump_optimize_1): When we delete a conditional jump preceeding a non-conditional jump to...
* jump.c (jump_optimize_1): When we delete a conditional jump
preceeding a non-conditional jump to effectively the same place,
make sure that the combined jump skips any clobber insns between
the two labels.

Co-Authored-By: DJ Delorie <dj@redhat.com>

From-SVN: r39686
2001-02-14 13:34:25 -05:00
Jakub Jelinek
7161c1a582 * typeck.c (build_unary_op): Clarify error message.
From-SVN: r39685
2001-02-14 17:41:44 +01:00
Jeffrey Oldham
55bd9f24ca gcc.c (do_spec_1): Fix off-by-one error for '%M' case.
2001-02-14  Jeffrey Oldham  <oldham@codesourcery.com>

	* gcc.c (do_spec_1): Fix off-by-one error for '%M' case.

From-SVN: r39684
2001-02-14 16:37:14 +00:00
Mark Mitchell
c6d9a88cbc Makefile.in (toplev.o): Depend on params.h.
* Makefile.in (toplev.o): Depend on params.h.
	(intergate.o): Likewise.
	(params.o): New target.
	* flags.h (inline_max_insns): Remove.
	* integrate.c: Include params.h.
	Use MAX_INLINE_INSNS instead of inline_max_insns.
	* params.c: New file.
	* params.h: Likewise.
	* params.def: Likewise.
	* toplev.c: Include params.h.
	(lang_independent_params): New variable.
	(decode_f_option): Use the param machinery instead of setting
	max_inline_insns.
	(independent_decode_option): Handle "--param name=value".
	(main): Register language-independent parameters.

From-SVN: r39683
2001-02-14 16:24:45 +00:00
Aldy Hernandez
4806765ec4 optional parens around connstructor names
From-SVN: r39681
2001-02-14 13:58:49 +00:00
Nathan Sidwell
bfc8e1e2c4 cp-tree.h (setup_vtbl_ptr): Move prototype to semantics.c section.
cp:
	* cp-tree.h (setup_vtbl_ptr): Move prototype to semantics.c
	section.
	* init.c (emit_base_init): Remove incorrect comment about
	virtual bases.
	* method.c (make_thunk): Fix comment alignment.

From-SVN: r39679
2001-02-14 10:57:59 +00:00
Jan Hubicka
c6e95f3488 * i386.md (pushsf, pushdf_nointeger): Fix constraint.
From-SVN: r39678
2001-02-14 10:52:33 +00:00
Nathan Sidwell
394fd77650 Kill remnants of this is variable.
cp:
	Kill remnants of this is variable.
	* cp-tree.h (flag_this_is_variable): Remove.
	* decl2.c (flag_this_is_variable): Remove.
	* class.c (fixed_type_or_null): Add cdtor parm. Adjust.
	(build_vbase_path): The path is non-static, even in a cdtor.
	(resolves_to_fixed_type_p): Add additional return value.
	* search.c (init_vbase_pointers): Adjust.
	* tree.c (lvalue_p_1): Adjust.
	* typeck.c (mark_addressable): Adjust.

From-SVN: r39676
2001-02-14 10:49:27 +00:00
Richard Henderson
c7c0ae3d7f * regclass.c (init_reg_sets_1): Revert last two changes.
From-SVN: r39669
2001-02-14 02:12:20 -08:00
Nathan Sidwell
d0ab76243b pt.c (unify): Don't check cv quals of array types.
cp:
	* pt.c (unify): Don't check cv quals of array types.
testsuite:
	* g++.old-deja/g++.pt/deduct6.C: New test.

From-SVN: r39666
2001-02-14 09:50:06 +00:00
Nathan Sidwell
7773899b5f tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to check whether we already have the type.
cp:
	* tree.c (cp_build_qualified_type_real): Use CP_TYPE_QUALS to
	check whether we already have the type.
testsuite:
	* g++.old-deja/g++.pt/deduct5.C: New test.

From-SVN: r39665
2001-02-14 09:45:29 +00:00
Jeff Law
837a680a7a Daily bump.
From-SVN: r39664
2001-02-14 01:45:07 -07:00
Jakub Jelinek
fe375cf108 stor-layout.c (is_pending_size, [...]): New functions.
* stor-layout.c (is_pending_size, put_pending_size): New functions.
	(variable_size): Call put_pending_size.
	* tree.h (is_pending_size, put_pending_size): Add prototypes.
	* fold-const.c (extract_muldiv): If SAVE_EXPR is on the pending
	sizes list, put newly created SAVE_EXPR there as well.

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

	* config/ia64/ia64.c (last_group): Only 2 entries are needed.
	(errata_find_address_regs): load_group has only 2 entries.
	(errata_emit_nops): Likewise.  shladd is not problematic.
	Clear last_group if nop was emitted.
	(fixup_errata): load_group has only 2 entries.
	Optimize.

From-SVN: r39663
2001-02-14 08:57:49 +01:00
Neil Booth
ceeaadbb78 * gcc.dg/cpp/sysmac1.c, sysmac2.c: New testcases.
From-SVN: r39662
2001-02-14 07:39:40 +00:00
Neil Booth
7065e130e0 c-lex.c (lex_number): Only warn traditionally for U suffix outside system macros.
* c-lex.c (lex_number): Only warn traditionally for U suffix
        outside system macros.
        * cppexp.c (parse_number): Similarly.
        * cpplib.h (NODE_SYSHDR, cpp_sys_objmacro_p): New.
        * cppmacro.c (struct cpp_macro): New member node.
        (parse_args): Only warn about missing rest args if not
        a system macro.
        (funlike_invocation_p): Similarly for uninvoked funlike macros.
        (cpp_sys_objmacro_p): New.
        (_cpp_create_definition): Store the node with the macro defn.
        Remember if the macro is defined in a system header.

From-SVN: r39661
2001-02-14 07:38:20 +00:00
Mark Mitchell
52682a1b77 cp-tree.h (CLASSTYPE_DESTRUCTORS): Fix typo in comment.
* cp-tree.h (CLASSTYPE_DESTRUCTORS): Fix typo in comment.
	* call.c (build_op_delete_call): Simplify to remove duplicate
	code.
	* class.c (clone_function_decl): Don't build the deleting variant
	of a non-virtual destructor.
	* decl.c (finish_destructor_body): Don't call delete if this is a
	non-virtual destructor.
	* init.c (build_delete): Explicitly call `operator delete' when
	deleting an object with a non-virtual destructor.

From-SVN: r39659
2001-02-14 06:32:15 +00:00
Bryce McKinlay
97a4d32ec6 natClass.cc (getSignature): Don't try to dereference param_types if it is null.
* java/lang/natClass.cc (getSignature): Don't try to dereference
	param_types if it is null. Instead, take this to mean "no parameters".
	* java/lang/TreeMap.java (TreeIterator.next): Throw
	NoSuchElementException in preference to
	ConcurrentModificationException.
	(TreeIterator.remove): Throw IllegalStateException in preference to
	ConcurrentModificationException.
	(SubMap.firstKey): Do a better check for empty SubMap, and if it is,
	throw a NoSuchElementException.
	(SubMap.lastKey): Likewise.

From-SVN: r39658
2001-02-14 05:32:31 +00:00
Bryce McKinlay
a142a99626 re PR libgcj/1758 (java.util package lacks TreeMap)
* java/util/TreeMap.java: New file.
        * java/util/TreeSet.java: New file.
        * Makefile.am: Add TreeMap and TreeSet. Enable WeakHashMap.
        * Makefile.in: Rebuilt.
        * java/util/HashSet.java (clone): Use constructor instead of calling
        clone on itself.
        * java/util/SortedSet.java: Sync with classpath.
        * java/util/HashMap.java (hash): Use if statement instead of ternary,
        for clarity.
	Resolves PR libgcj/1758.
	Resolves PR java/1684.

From-SVN: r39657
2001-02-14 04:44:21 +00:00
DJ Delorie
cbc59f0118 configure.in (check_languages): determine languages to check
* configure.in (check_languages): determine languages to check
* Makefile.in (check-c++): alias for check-g++
(check-f77): alias for check-g77
(CHECK_TARGETS): depend on configured languages

From-SVN: r39655
2001-02-13 20:13:42 -05:00
Alexandre Petit-Bianco
863cd85ab5 parse.y (resolve_qualified_expression_name): Try to resolve as an inner class access only if `decl' is a TYPE_DECL.
2001-02-13  Alexandre Petit-Bianco  <apbianco@redhat.com>

	* parse.y (resolve_qualified_expression_name): Try to resolve as
	an inner class access only if `decl' is a TYPE_DECL.

(http://gcc.gnu.org/ml/gcc-patches/2001-02/msg00762.html)

From-SVN: r39653
2001-02-13 16:36:22 -08:00
Jan Hubicka
ca9a9b12e9 i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
* i386.md (fixsfsi2, fixdfdi2): Fix previous patch again.
	(sqrtsf2): Use TARGET_SSE instead of TARGET_SSE2)
	(sqrtsf2 patterns): Use 'x' instead of 'Y'.
	(sqrtextendsfdf2): Disable for SSE2.

From-SVN: r39652
2001-02-14 00:15:15 +00:00
Alexandre Petit-Bianco
94807d3318 decl.c (classdollar_identifier_node): Initialize.
2001-02-13  Alexandre Petit-Bianco  <apbianco@cygnus.com>

	* decl.c (classdollar_identifier_node): Initialize.
	* java-tree.h (enum java_tree_index): New entry
	`JTI_CLASSDOLLAR_IDENTIFIER_NODE.'
	(classdollar_identifier_node): New macro.
	(ID_CLASSDOLLAR_P): Likewise.
	* parse.y (build_dot_class_method): Use `classdollar_identifier_node.'
	(build_dot_class_method_invocation): Likewise.
	(find_applicable_accessible_methods_list): `class$' can't be
	inherited.

(http://gcc.gnu.org/ml/gcc-patches/2001-02/msg00760.html)

From-SVN: r39650
2001-02-13 16:03:11 -08:00
Jan Hubicka
7093c9eac4 i386.md (movsfcc_1): Support integer cmove instruction.
* i386.md (movsfcc_1): Support integer cmove instruction.
	(movdfcc_1): Likewise; new splitter.

From-SVN: r39648
2001-02-13 23:12:49 +00:00
Jan Hubicka
0644b62861 i386.c (output_fp_compare): Support SSE.
* i386.c (output_fp_compare): Support SSE.
	(prepare_fp_compare_args): SSE comparisons always support memory.
	* i386.h (TARGET_CMOVE): SSE imply cmove.
	* i386.md (cmp?f2): Enable for SSE too.
	(cmpfp_i*): Support SSE.
	(cmpfp_i_sse): New.
	(cmpfp_i_sse_only): New.
	(s*, b* fp expanters): Enable for SSE too.
	(fp_jcc_1_sse, fp_jcc_1_sse_only, fp_jcc_2_sse, fp_jcc_2_sse_only):
	New patterns.

From-SVN: r39647
2001-02-13 22:32:32 +00:00
Jan Hubicka
1464632be3 * regclass.c (init_reg_sets_1): Silence warning.
From-SVN: r39646
2001-02-13 22:10:04 +00:00
Jan Hubicka
a8083431ba i386.md (sqrt?f2): Change to expander.
* i386.md (sqrt?f2): Change to expander.
	(sqrt?f2_1, sqrt?f2_sse_only, sqrt?f2_i387): New.

From-SVN: r39645
2001-02-13 21:04:57 +00:00
Richard Kenner
d9c695fff1 rtlanal.c (find_reg_equal_equiv_note): New function.
* rtlanal.c (find_reg_equal_equiv_note): New function.
	* simplify-rtx.c (simplify_gen_unary, simplify_gen_ternary): New fns.
	(simplify_gen_relational, simplify_replace_rtx): Likewise.
	* rtl.h: Add declarations for above functions.

From-SVN: r39644
2001-02-13 15:43:13 -05:00
Jan Hubicka
848e0190fb cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to conditionals.
* cse.c (cse_main): Converts ifdefs on PIC_OFFSET_TABLE_REGNUM to
	conditionals.
	* defaults.h (PIC_OFFSET_TABLE_REGNUM): Default to INVALID_REGNUM.
	* emit-rtl.c (init_emit_once): Convert ifdefs to conditionals.
	* flow.c (mark_regs_live_at_end): Likewise.
	(calculate_global_regs_live): Likewise.
	* gcse.c (compute_hash_table): Likewise.
	(compute_kill_rd): Likewise.
	* resource.c (mark_target_live_regs): Likewise.
	* rtl.h (INVALID_REGNUM): New macro.

From-SVN: r39643
2001-02-13 20:17:45 +00:00
Jan Hubicka
b1675dbd66 * i386.md (fixsfsi2, fixdfdi2): Fix previous patch.
From-SVN: r39642
2001-02-13 20:01:27 +00:00
Tom Tromey
f3b43865ac PipedReader.java (ready): Throw IOException if pipe closed.
* java/io/PipedReader.java (ready): Throw IOException if pipe
	closed.
	* java/io/FilterReader.java (close): Don't clear `in'.
	* java/io/CharArrayReader.java (mark): Throw IOException if stream
	closed.
	(read, ready, reset, skip): Added exception message.
	* java/io/BufferedReader.java (mark, reset, ready, read, skip):
	Perform checkStatus check inside synchronized block.

From-SVN: r39641
2001-02-13 18:55:13 +00:00
Tom Tromey
967eb03e12 * gnu/awt/j2d/AbstractGraphicsState.java (clone): Made public.
From-SVN: r39640
2001-02-13 18:48:46 +00:00
Tom Tromey
1eba9d1f8f re PR libgcj/1351 (_Jv_select -vs- Thread.interrupt)
Fix for PR libgcj/1351:
	* posix.cc (_Jv_select): Throw InterruptedIOException if thread is
	interrupted.
	Include Thread.h and InterruptedIOException.h.

From-SVN: r39639
2001-02-13 18:44:51 +00:00
Dirk Mueller
f4483e8502 function.h: Do not use rel_ops for older headers either.
2001-02-13  Dirk Mueller <dmuell@gmx.net>
            Phil Edwards  <pme@sources.redhat.com>

	* include/backward/function.h:  Do not use rel_ops for older
	  headers either.
	* include/backward/pair.h:  Likewise.

Co-Authored-By: Phil Edwards <pme@gcc.gnu.org>

From-SVN: r39637
2001-02-13 16:09:05 +00:00
Jan Hubicka
1698bba11f i386.md (fixsfsi2, fixdfdi2): Force operand to register for SSE.
* i386.md (fixsfsi2, fixdfdi2): Force operand to register
	for SSE.

From-SVN: r39636
2001-02-13 15:34:11 +00:00
Jan Hubicka
1deaa899db i386.md (add?f3, [...]): Enable for TARGET_SSE(2) too.
* i386.md (add?f3, sub?f3, mul?f3, dif?f3): Enable for TARGET_SSE(2)
	too.
	(fop_sf_comm, fop_df_comm, fop_sf_1, fop_df_1): Support SSE.
	(fop_sf_comm_sse, fop_df_comm_sse): New patterns.
	(fop_sf_1_sse, fop_df_1_sse): New patterns
	(fop_*): Disable float_extend and float patterns for SSE compilation.
	* i386.c (output_387_binary_op): Support SSE.

From-SVN: r39635
2001-02-13 13:54:44 +00:00
Jan Hubicka
42a0aa6ff6 i386.md (dummy_extendsfdf2): Support SSE2
* i386.md (dummy_extendsfdf2): Support SSE2
	(extendsfdf2): Enable if 80387 or SSE2.
	(extendsfdf2_1): Support SSE2. Disable if SSE2 is avialble
	and no MIX_I387_SSE2
	(extendsfdf2_1_sse_only): New pattern.
	(truncdfsf2): Enable if SSE2 or 80387; Always use SSE only version
	of SSE.
	(truncdfsf2_1): Support SSE.
	(truncdfsf2_2): Support SSE.
	(truncdfsf2_2_1_sse): New pattern.
	(fixtruncsfsi2): Always use SSE if available.
	(fix_truncsfsi_sse): New pattern.
	(fix_truncdfsi_sse): New pattern.
	(floatsis?f2): Support SSE.
	(floatsidf2_i387): New pattern.
	(floatsidf2_sse): Likewise.

From-SVN: r39634
2001-02-13 13:18:08 +00:00
Jason Merrill
3b6bd11551 * lang-specs.h: Add more __EXCEPTIONS.
From-SVN: r39633
2001-02-13 08:11:40 -05:00
Richard Kenner
1ffc5c6e21 configure.in: Use "have_gnat" variable, not "gnat".
* configure.in: Use "have_gnat" variable, not "gnat".
	* configure: Regenerated.

From-SVN: r39632
2001-02-13 08:00:04 -05:00
Andreas Schwab
7b18790c85 * MAINTAINERS: Update mail address.
From-SVN: r39631
2001-02-13 12:59:57 +00:00
Richard Kenner
8a7199ad7b sparc.c (function_value): Treat all non-record aggregate types like used to treat UNION_TYPE.
* config/sparc/sparc.c (function_value): Treat all non-record
	aggregate types like used to treat UNION_TYPE.

From-SVN: r39629
2001-02-13 07:53:46 -05:00
Jan Hubicka
446988df3b i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
* i386.c (print_reg): Use ANY_FP_REG instead of FP_REG
	* i386.h (MASK_128BIT_LONG_DOUBLE): Renumber
	(MASK_SSE2): New.
	(MASK_MIX_SSE_I387): New.
	(TARGET_SSE): SSE2 imply SSE.
	(TARGET_SSE2, TARGET_MIX_SSE_I387): New.
	(TARGET_SWITCHES): Add "sse2", "mix-sse-i387".
	(enum reg_class): Add new classes.
	(REG_CLASS_NAMES): Likewise.
	(REG_CLASS_CONTENTS): Likewise.
	(ANY_FP_REG_P, ANY_FP_REGNO_P, SSE_REG_P, SSE_FLOAT_MODE): New macros.
	(REG_CLASS_FROM_LETTER): 'x' and 'y' is SSE_REGS only when SSE is
	supported. Add 'Y' to be SSE_REGS when SSE2 is supported.
	(CLASS_MAX_NREGS): Use new macros.
	(REGISTER_MOVE_COST): Rewrite using SECONDARY_MEMORY_MAYBE_NEEDED.
	* i386.md (pushsf, movsf): Support SSE.
	(pushdf_nointeger, pushdf_integer, pushdf): Support SSE, update
	splitters to use ANY_FP_REGNO_P.
	(movdf_nointeger, movdf_integer): Likewise.

From-SVN: r39628
2001-02-13 12:33:15 +00:00
Jan Hubicka
c26a370f75 I will write 100 times "bootsrap must be run from tree you've modified"
From-SVN: r39627
2001-02-13 11:21:14 +00:00