Commit Graph

33672 Commits

Author SHA1 Message Date
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
Jan Hubicka
e76d65d26f Even more breakage. Sorry!
From-SVN: r39626
2001-02-13 11:19:12 +00:00
Alexandre Oliva
42a6ff5138 combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
* combine.c (UWIDE_SHIFT_LEFT_BY_BITS_PER_WORD): New macro.
(try_combine): Use it.

From-SVN: r39624
2001-02-13 11:07:43 +00:00
Jan Hubicka
62415523eb Fix breakage in my previous checkin.
From-SVN: r39623
2001-02-13 10:47:03 +00:00
Jan Hubicka
f84aa48ac1 i386.h (SSE_CLASS_P, [...]): New macros.
* i386.h (SSE_CLASS_P, MMX_CLASS_P, MAYBE_FLOAT_CLASS_P,
	MAYBE_SSE_CLASS_P, MAYBE_MMX_CLASS_P): New macros.
	(PREFERRED_RELOAD_CLASS, SECONDARY_MEMORY_NEEDED): Move offline.
	(REGISTER_MOVE_COST): Likewise.
	* i386-protos.h (ix86_secondary_memory_needed,
	ix86_preferred_reload_class, ix86_register_move_cost): Declare.
	* i386.c (ix86_secondary_memory_needed,
	ix86_preferred_reload_class, ix86_register_move_cost): New function.

From-SVN: r39622
2001-02-13 10:40:40 +00:00
Jan Hubicka
a946dd0074 i386.h (VALID_FP_MODE_P, [...]): New.
* i386.h (VALID_FP_MODE_P, VALID_INT_MODE_P): New.
	(HARD_REGNO_MODE_OK): Move offline to ....
	* i386.c (ix86_hard_regno_mode_ok) ... here;
	refuse all incorrect modes.
	* i386-protos.h (ix86_hard_regno_mode_ok): Declare.

From-SVN: r39621
2001-02-13 10:05:56 +00:00
Richard Henderson
1b9ea8eb1a sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the entire operator...
* sparc.md (cmp_cc_arith_op_set): Don't use match_dup on the
        entire operator; replicate that and match_dup the operands.
        (cmp_ccx_arith_op_set): Likewise.
        (cmp_cc_arith_op_not_set): Likewise.
        (cmp_ccx_arith_op_not_set): Likewise.

From-SVN: r39620
2001-02-13 00:46:52 -08:00
Jeff Law
9c5ef75ebf Daily bump.
From-SVN: r39617
2001-02-13 01:45:08 -07:00
Bryce McKinlay
7eecbdb322 BlockDataException.java: Removed.
* java/io/BlockDataException.java: Removed.
	* java/io/ObjectInputStream.java (readObject): Throw
	StreamCorruptedException, not BlockDataException.
	* Makefile.am: Remove BlockDataException.
	* Makefile.in: Rebuild.

From-SVN: r39616
2001-02-13 07:42:48 +00:00
Alexandre Oliva
5b0d91c392 * explow.c (trunc_int_for_mode): Sign-extend value to mode.
From-SVN: r39615
2001-02-13 06:39:45 +00:00
Geoffrey Keating
4b01cd8fbf * g++.dg/vtgc1.C: Update for new ABI.
From-SVN: r39614
2001-02-13 02:45:14 +00:00
Geoffrey Keating
9a155f914c sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
* config/rs6000/sysv4.h (MASK_NO_BITFIELD_WORD): New macro.
	(TARGET_NO_BITFIELD_WORD): New macro.
	(SUBTARGET_SWITCHES): Add -mbit-word, -mno-bit-word options.
	(BITFIELD_NBYTES_LIMITED): Define based on TARGET_NO_BITFIELD_WORD.

From-SVN: r39613
2001-02-13 02:44:54 +00:00
Martin Schwidefsky
c4880c9936 Add config suport for s390
From-SVN: r39612
2001-02-12 23:47:41 +00:00
Richard Kenner
fa49fd0f8a cselib.c: New file, from simplify-rtx.c.
* cselib.c: New file, from simplify-rtx.c.
	* simplify-rtx.c: Remove cselib parts.
	* Makefile.in: Add cselib.o.

From-SVN: r39611
2001-02-12 18:15:38 -05:00
Geoffrey Keating
ca5adc63bd rs6000.c (rs6000_float_const): Remove warning.
* config/rs6000/rs6000.c (rs6000_float_const): Remove warning.
	(setup_incoming_varargs): Remove warning.

	* config/rs6000/rs6000.c (validate_condition_mode): When
	flag_fast_math, allow floating-point conditionals to be reversed.
	(rs6000_generate_compare): When flag_fast_math, don't generate
	cror operations for FP conditionals.

From-SVN: r39610
2001-02-12 19:47:11 +00:00
Geoffrey Keating
c36ae96c0c In gcc/:
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Handle
	-mcall-i960.
	(ASM_SPEC): Likewise.
	(CC1_ENDIAN_LITTLE_SPEC): Likewise.
	(CC1_SPEC): Likewise.
	(LINK_TARGET_SPEC): Likewise.
	(CPP_ENDIAN_SPEC): Likewise.

	* Makefile.in (check-consistency): New target.

In gcc/testsuite/:
	* consistency.vlad: New directory, 1665 files.

From-SVN: r39609
2001-02-12 19:40:17 +00:00
Joseph Myers
f43b27955c c-decl.c (grokdeclarator): In C99 mode...
* c-decl.c (grokdeclarator): In C99 mode, give the more specific
	"return type defaults" warning for functions with return type
	defaulting to int.
	* c-lang.c (c_init): In C99 mode, enable warnings for implicit
	function declarations by default rather than only when pedantic.

testsuite:
	* gcc.dg/c99-impl-int-1.c: Use stricter error string for implicit
	return type.
	* gcc.dg/cpp/digraphs.c: Declare puts.

From-SVN: r39608
2001-02-12 17:31:42 +00:00
Jeff Sturm
c6b33a47ea interpret.cc (continue1): [insn_invokevirtual] Do an explicit null pointer check.
2001-02-12  Jeff Sturm  <jeff.sturm@commerceone.com>
            Tom Tromey  <tromey@redhat.com>

	* interpret.cc (continue1): [insn_invokevirtual] Do an explicit
	null pointer check.

Co-Authored-By: Tom Tromey <tromey@redhat.com>

From-SVN: r39607
2001-02-12 17:30:00 +00:00
Jan Hubicka
7004b11bf0 regclass.c (init_reg_sets_1): Optimize calculation of move_cost arrays.
* regclass.c (init_reg_sets_1): Optimize calculation of move_cost
	arrays.

From-SVN: r39606
2001-02-12 16:30:08 +00:00
Nathan Sidwell
45abaea89c typeck2.c (process_init_constructor): Check TREE_HAS_CONSTRUCTOR before issuing missing init warning.
cp:
	* typeck2.c (process_init_constructor): Check
	TREE_HAS_CONSTRUCTOR before issuing missing init warning.
testsuite:
	* g++.old-deja/g++.other/warn5.C: New test.

From-SVN: r39605
2001-02-12 15:09:01 +00:00
Nathan Sidwell
996065b440 pt.c (maybe_adjust_types_for_deduction, [...]): Remove spurious information in comment.
cp:
	* pt.c (maybe_adjust_types_for_deduction, DEDUCE_ORDER case):
	Remove spurious information in comment. Allow further
	adjustments of REFERENCE_TYPE args.
testsuite:
	* g++.old-deja/g++.pt/spec40.C: New test.

From-SVN: r39604
2001-02-12 14:38:25 +00:00
Nathan Sidwell
82c18d5c67 extend.texi (Deprecated): Deprecate new initializer lists.
.:	* extend.texi (Deprecated): Deprecate new initializer lists.
cp:
	* errfn.c (cp_deprecated): Tweak diagnostic text.
	* parse.y (new_initializer): Deprecate initializer lists
	extension.
testsuite:
	* g++.old-deja/g++.robertl/eb63.C: Remove new initializer list
	case.
	* g++.old-deja/g++.ext/arrnew.C: Deprecate.

From-SVN: r39603
2001-02-12 14:29:13 +00:00
Nathan Sidwell
48ce6bbbe6 mkdeps.c (deps_add_default_target): Robustify.
* mkdeps.c (deps_add_default_target): Robustify. Add
	basename component only.
	* cpp.texi (-M): Describe how default target is generated.
	* invoke.texi (-M): Likewise.

From-SVN: r39602
2001-02-12 14:06:22 +00:00
Kazu Hirata
823a99190d toplev.c (push_float_handler): Remove.
2001-02-12  Kazu Hirata  <kazu@hxi.com>

	* toplev.c (push_float_handler): Remove.
	(pop_float_handler): Remove.
	* toplev.h: Remove prototypes for the above functions.

From-SVN: r39601
2001-02-12 12:32:56 +00:00
Mark Mitchell
1f84ec231e Remove old ABI support.
From-SVN: r39599
2001-02-12 09:58:18 +00:00
Mark Mitchell
11662aaaa5 * src/locale.cc: Remove bogus locale::id definitions.
From-SVN: r39598
2001-02-12 09:06:39 +00:00
Jeff Law
0c0c8d256b Daily bump.
From-SVN: r39597
2001-02-12 01:45:08 -07:00
Jakub Jelinek
d02b54f66d c-common.c (constant_fits_type_p): New function.
* c-common.c (constant_fits_type_p): New function.
	(convert_and_check): Use it.

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

From-SVN: r39596
2001-02-12 09:34:30 +01:00
Mark Mitchell
b1012f1b4c Makefile.in (GXX_ABI_FLAG): Don't define.
* Makefile.in (GXX_ABI_FLAG): Don't define.
	* configure.in (--enable-new-gxx-abi): Remove option.
	* config.in: Regenerated.
	* configure: Likewise.

	* decl2.c (flag_vtable_thunks): Always set it to 1.
	(flag_new_abi): Likewise.
	* lang-specs.h: Remove conditional on ENABLE_NEW_GXX_ABI.

From-SVN: r39595
2001-02-12 07:35:05 +00:00
Alexandre Oliva
e8eacc3f8c lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular basic block.
* lcm.c (compute_earliest): Let EXIT_BLOCK be handled as a regular
basic block.
(optimize_mode_switching) [NORMAL_MODE]: Set up EXIT_BLOCK as a
regular basic block, and arrange for all edges into it to switch
to normal mode.

From-SVN: r39594
2001-02-12 06:18:44 +00:00
Jeffrey Oldham
79ff6e278e crash26.C: XFAIL if parser produces excess errors message but not if it crashes.
2001-02-09  Jeffrey Oldham  <oldham@codesourcery.com>

	* g++.old-deja/g++.other/crash26.C: XFAIL if parser produces
	excess errors message but not if it crashes.
	* g++.old-deja/g++.other/crash27.C: Likewise.
	* g++.old-deja/g++.other/crash28.C: Likewise.
	* g++.old-deja/g++.other/crash30.C: Likewise.
	* g++.old-deja/g++.other/crash32.C: Likewise.
	* g++.old-deja/g++.other/crash35.C: Likewise.
	* g++.old-deja/g++.pt/inherit2.C: Likewise.

From-SVN: r39593
2001-02-12 04:10:07 +00:00
Gabriel Dos Reis
1c7c97cc63 std_valarray.h: #undef _DEFINE_LOGICAL_OPERATOR...
* include/bits/std_valarray.h: #undef _DEFINE_LOGICAL_OPERATOR,
        not _DEFINE_VALARRAY_OPERATOR which is not existent.

From-SVN: r39592
2001-02-11 22:42:36 +00:00