Commit Graph

25715 Commits

Author SHA1 Message Date
Clinton Popetz
1e7a71c153 mips.c (mips_va_arg): For EABI...
* config/mips/mips.c (mips_va_arg): For EABI, emit the queued
        integer vararg POSTINCREMENT before the destination of the jump
        for the hard fp case.
        (function_arg_pass_by_reference): Pass a copy of CUM to
	FUNCTION_ARG.

        * config/mips/mips.h (GO_IF_LEGITIMATE_ADDRESS): Move check
        for CONSTANT_ADDRESS_P above while loop for subreg.

From-SVN: r31328
2000-01-11 12:42:30 -05:00
Clinton Popetz
a249decd13 flow.c (propagate_block): When a prologue/epilogue insn is marked dead...
* flow.c (propagate_block): When a prologue/epilogue insn
        is marked dead, unconditionally clear libcall_is_dead and
        insn_is_dead, and only dump rtl if warnings aren't being
        suppressed.

From-SVN: r31327
2000-01-11 12:26:28 -05:00
Jan Hubicka
7c7ef435b1 i386.c (ix86_attr_length_default): Handle TYPE_STR and TYPE_CLD.
* i386.c (ix86_attr_length_default): Handle TYPE_STR and TYPE_CLD.
	* i386.md (FIRST_PSEUDO_REGISTER): Set to 20.
	(FIXED_REGISTERS): Set dirflag as fixed.
	(CALL_USED_REGISTERS): Set dirflag as used.
	(REG_ALLOC_ORDER): Set dirflag as last one.
	(DIRFLAG_REG): New macro.
	(MD_ASM_CLOBBERS): Asm clobber dirflag for backward compatibility.
	(HI_REGISTER_NAMES): Add dirflag.
	(DEBUF_PRINT_REG): Handle dirflag.
	* i386.md (type attribute): New cld and str types.
	(length_opcode attribute): Set cld and str to 1.
	(memory attribute): Set str to unknown - it is not clear from the
	patterns.
	(pent_np function unit): Prefixed string operations takes 12 cycles
	minimally; cld takes 2 cycles.
	(ppro_uops attribute): Str is "many" and cld is "few".
	(ppro_p0 unit): Handle cld here.
	(k6_alux unit): Handle cld and str types.
	(k6_load unit): It is ocupied by str opcodes.
	(k6_store unit): It is ocupied by str opcodes.
	(athlon_decode): Str is vector decoded.
	(athlon_ieu): Handle str and cld.
	(cld pattern): New.
	(movstrsi, clrstr, cmpstr, strlen expander): Emit cld instruction
	(movstrsi_1, clrstrsi_1, cmpstrsi_1, strlensi_1,
	cmpstrsi_nz_1 insn): Do not output cld instruction

From-SVN: r31326
2000-01-11 15:44:34 +00:00
Jeffrey A Law
a500c31b2e i386.c (ix86_expand_setcc): Fix typo.
* i386.c (ix86_expand_setcc): Fix typo.
        (ix86_expand_movcc): Similarly.

From-SVN: r31325
2000-01-11 06:37:37 -07:00
Jeff Law
bbf27bbe57 Copyright date.
From-SVN: r31324
2000-01-11 06:24:58 -07:00
David Starner
ce8f925bbf gcc.texi (G++ and GCC): Add Java and Chill.
* gcc.texi (G++ and GCC): Add Java and Chill.
        (Bug Critera): Don't list languages.

        * gcc.texi (Incompatibilities): No longer claim most C compilers
        are K&R.

        * gcc.texi (G++ and GCC): Update other front-ends list.

From-SVN: r31323
2000-01-11 06:23:59 -07:00
Jeffrey A Law
8613329216 * Band-aid until haifa's bitset implementation is nuked.
* haifa-sched.c (extract_bitlst): New parameter for size of the
        bitset in bits.  All callers changed.  Avoid looking at undefined
        bits in the bitset.
        (edgeset_bitsize): New variable.
        (schedule_region): Initialize edgeset_bitsize.

From-SVN: r31322
2000-01-11 05:50:18 -07:00
Mark Mitchell
c6f3ffc624 friend.c (do_friend): Don't resolve scopes when processing template declarations...
* friend.c (do_friend): Don't resolve scopes when processing
	template declarations, even if the qualifying scope doesn't
	involve template parameters.

From-SVN: r31321
2000-01-11 08:54:28 +00:00
Jeff Law
da36fb7797 Daily bump.
From-SVN: r31320
2000-01-11 01:45:06 -07:00
Mark Mitchell
376f73bd08 class.c (dfs_modify_vtables_queue_p): Remove.
* class.c (dfs_modify_vtables_queue_p): Remove.
	(modify_all_vtables): Use dfs_unmarked_real_bases_queue_p
	and dfs_marked_real_bases_queue_p instead of
	dfs_modify_vtables_queue_p.

From-SVN: r31319
2000-01-11 06:50:19 +00:00
Zack Weinberg
1e57ec7533 New test - apostrophes, Hollerith constants, and cpp
From-SVN: r31318
2000-01-11 06:06:11 +00:00
Mark Mitchell
2db7017d94 Fix typos in previous change
From-SVN: r31317
2000-01-11 04:18:25 +00:00
Mark Mitchell
9d4c0187c6 class.c (build_vbase_path): Simplify.
* class.c (build_vbase_path): Simplify.
	(dfs_propagate_binfo_offsets): New function.
	(propagate_binfo_offsets): Use it.
	(remove_base_field): Simplify.
	(dfs_set_offset_for_vbases): Remove.
	(dfs_set_offset_for_shared_vbases): New function.
	(dfs_set_offset_for_unshared_vbases): Likewise.
	(layout_virtual_bases): Use them.
	(layout_basetypes): Don't call propagate_binfo_offsets.
	* search.c (dfs_get_vbase_types): Clone completely fresh binfos
	for the vbases.

From-SVN: r31316
2000-01-11 04:13:27 +00:00
Mark Mitchell
d77249e795 class.c (build_base_field): New function, split out from ...
* class.c (build_base_field): New function, split out from ...
	(build_base_fields): ... here.  Use it.  Allocate primary bases
	first, under the new ABI.
	(get_vtable_entry): Remove.
	(remove_base_field): New function, split out from ...
	(remove_base_fields): ... here.  Adjust since primary bases come
	first under the new ABI.

From-SVN: r31315
2000-01-11 03:15:32 +00:00
Mark Mitchell
d569399b27 cp-tree.h (expand_direct_vtbls_init): Remove declaration.
* cp-tree.h (expand_direct_vtbls_init): Remove declaration.
	(initialize_vtbl_ptrs): New function.
	(expand_indirect_vtbls_init): Change prototype.
	(convert_pointer_to_vbase): Declare.
	* init.c (expand_direct_vtbls_init): Remove.
	(dfs_initialize_vtbl_ptrs): New function.
	(initialize_vtbl_ptrs): Likewise.
	(emit_base_init): Use initialize_vtbl_ptrs.
	* search.c (convert_pointer_to_vbase): Make it global.
	(expand_indirect_vtbls_init): Remove vtable initialization code.
	* semantics.c (setup_vtbl_ptr): Use initialize_vtbl_ptrs.

From-SVN: r31314
2000-01-11 02:43:00 +00:00
Mark Mitchell
4a314e0c77 class.c (dfs_finish_vtbls): New function.
* class.c (dfs_finish_vtbls): New function.
	(finish_vtbls): Use it.
	(dump_class_hierarchy): New function.

From-SVN: r31313
2000-01-11 02:28:01 +00:00
Mark Mitchell
174eceea40 cp-tree.h (BINFO_PRIMARY_MARKED_P): Change definition.
* cp-tree.h (BINFO_PRIMARY_MARKED_P): Change definition.
	(BINFO_VBASE_PRIMARY_P): New macro.
	(BINFO_VIRTUALS): Add to documentation.
	(SET_BINFO_PRIMARY_MARKED_P): Remove.
	(CLEAR_BINFO_PRIMARY_MARKED_P): Likewise.
	(dfs_mark_primary_bases_queue_p): Likewise.
	(dfs_unmarked_real_bases_queue_p): New function.
	(dfs_marked_real_bases_queue_p): Likewise.
	* search.c (dfs_mark_primary_bases): Adjust.
	(mark_primary_bases): Likewise.
	(get_shared_vbase_if_not_primary): New function.
	(dfs_unmarked_real_bases_queue_p): Likewise.
	(dfs_marked_real_bases_queue_p): Likewise.
	(dfs_get_pure_virtuals): Simplify.
	(get_pure_virtuals): Likewise.

From-SVN: r31312
2000-01-11 01:55:37 +00:00
Jeffrey A Law
afc27297c7 990628-1.c: Tweak to work on targets with 16 bit integers.
* gcc.c-torture/execute/990628-1.c: Tweak to work on targets
	with 16 bit integers.

From-SVN: r31311
2000-01-10 18:18:53 -07:00
Kaveh Ghazi
b87c6d55b0 Update copyrights for last checkin.
From-SVN: r31309
2000-01-11 00:12:38 +00:00
Kaveh R. Ghazi
7bdb32b97e Makefile.in (optabs.o): Depend on real.h
* Makefile.in (optabs.o): Depend on real.h
	(resource.o): Depend on insn-attr.h

	* builtins.c (result_vector): Wrap prototype in macro conditions
	governing definition and use.

	* c-common.c: Include tm_p.h.

	* c-lex.c: Likewise.

	* elfos.h: Constify a char*.

	* final.c (align_fuzz): Wrap prototype in macro HAVE_ATTR_length.
	(get_attr_length, shorten_branches, profile_after_prologue): Mark
	parameter with ATTRIBUTE_UNUSED.

	* fold-const.c (exact_real_inverse): Wrap variable `i' in
	CHECK_FLOAT_VALUE.

	* haifa-sched.c (schedule_insns): Mark parameter with
	ATTRIBUTE_UNUSED.

	* optabs.c: Include real.h.

	* real.h (ereal_atof): Add prototype arguments.

	* resource.c: Include insn-attr.h.

	* sdbout.c (sdbout_queue_anonymous_type,
	sdbout_dequeue_anonymous_types): Wrap in macro
	SDB_ALLOW_FORWARD_REFERENCES.
	(sdbout_init, sdbout_start_new_source_file): Mark parameter with
	ATTRIBUTE_UNUSED.

	* stmt.c (expand_return): Wrap variable `op0' in macro HAVE_return.

	* stupid.c: Include tm_p.h.

	* tree.c (real_value_from_int_cst): Mark parameter with
	ATTRIBUTE_UNUSED.

cp:
	* lex.c: Include tm_p.h.

ch:
	* lex.c: Include tm_p.h.

From-SVN: r31308
2000-01-10 23:48:03 +00:00
Kaveh R. Ghazi
3d2cfac61b i960-protos.h: New file.
* i960-protos.h: New file.

	* i960.c: Include tm_p.h.  Add static prototypes.  Fix compile
	time warnings.

	* i960.h: Move prototypes to i960-protos.h.  Fix compile time warnings.

From-SVN: r31307
2000-01-10 23:22:37 +00:00
Geoffrey Keating
4c25fdcf52 Missed toplevel Changelog in my previous commit.
From-SVN: r31306
2000-01-10 20:54:02 +00:00
Jeff Sturm
0cf69affdd natMath.cc (pow): Cast args to double', not jdouble'.
2000-01-10  Jeff Sturm  <jsturm@sigma6.com>

	* java/lang/natMath.cc (pow): Cast args to `double', not
	`jdouble'.
	(atan2): Likewise.
	(IEEEremainder): Likewise.
	* java/lang/mprec.h: Don't wrap includes in `extern "C"'.
	* java/lang/fdlibm.h: Don't wrap includes in `extern "C"'.

From-SVN: r31305
2000-01-10 20:02:47 +00:00
Alexandre Oliva
b1e9c8a926 combine.c (expand_field_assignment): Do not discard SUBREGs while computing nonzero_bits.
* combine.c (expand_field_assignment): Do not discard SUBREGs
while computing nonzero_bits.

From-SVN: r31304
2000-01-10 19:56:15 +00:00
Geoff Keating
93e1dce9a1 configure.in: Use mt-aix43 to handle *_TARGET defs, not mh-aix43.
* configure.in: Use mt-aix43 to handle *_TARGET defs,
	not mh-aix43.
	* config/mh-aix43: Delete, move to mt-aix43.
	* config/mt-aix43: New file.

From-SVN: r31303
2000-01-10 18:33:55 +00:00
Jeff Law
7c4a3b5584 Daily bump.
From-SVN: r31302
2000-01-10 01:45:07 -07:00
Anthony Green
2d54440c96 jcf-write.c (generate_bytecode_insns): Emit invokeinterface bytecodes in the correct order.
* jcf-write.c (generate_bytecode_insns): Emit invokeinterface
	bytecodes in the correct order.

From-SVN: r31301
2000-01-10 01:26:27 +00:00
Anthony Green
b11f64301a natString.cc (init): Test for overflow condition during out of bounds check.
2000-01-09  Anthony Green  <green@cygnus.com>

	* java/lang/natString.cc (init): Test for overflow condition
	during out of bounds check.
	(getChars): Throw StringIndexOutOfBoundsException, not
	ArrayIndexOutOfBoundsException.
	(getBytes): Ditto.
	(regionMatches): Obey case option during string comparison.

	* configure.host (ligcj_interpreter): New variable.  Enable
	interpreter by default on IA-32.
	* configure.in:  Examine libgcj_interpreter.
	* configure: Rebuilt.

From-SVN: r31300
2000-01-09 22:25:54 +00:00
Philip Blundell
0e3dd56798 (CLEAR_INSN_CACHE): Say that R0 is clobbered.
From-SVN: r31299
2000-01-09 20:28:55 +00:00
Nick Clifton
b39e12403c Fix compile time warnings about signed vs unsigned constants
From-SVN: r31298
2000-01-09 20:03:01 +00:00
Philip Blundell
3a5a428223 Apply patch from Phillip Blundel to use single STR/LDR when...
Apply patch from Phillip Blundel to use single STR/LDR when only loading
storing a single register in a function prologue/epilogue.

From-SVN: r31296
2000-01-09 19:42:57 +00:00
Hans-Peter Nilsson
9a29c058e7 ns32k.md (load or push effective address): Operand 1 must have SImode.
* config/ns32k/ns32k.md (load or push effective address): Operand 1
	must have SImode.

From-SVN: r31295
2000-01-09 16:18:57 +00:00
Kaveh R. Ghazi
2cc60d1641 * Makefile.in (jcf-dump, gcjh): Move ../errors.o before $(LIBS).
From-SVN: r31294
2000-01-09 14:30:28 +00:00
Kaveh R. Ghazi
0ce8a59c2b elfos.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around assignment used as truth value.
* elfos.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
	assignment used as truth value.

	* function.c (assign_temp): Mark parameter `dont_promote' with
	ATTRIBUTE_UNUSED.  Wrap variable `unsignedp' with macro
	PROMOTE_FOR_CALL_ONLY.

	* genrecog.c (write_subroutine): Mark variable `operands' with
	ATTRIBUTE_UNUSED.

	* optabs.c (prepare_cmp_insn): Mark parameter `align' with
	ATTRIBUTE_UNUSED.

	* sdbout.c (sdbout_init): Likewise for parameter `asm_file'.
	(sdbout_begin_block, sdbout_end_block): Likewise for `file'.

	* toplev.c (note_deferral_of_defined_inline_function): Likewise
	for `decl'.

From-SVN: r31293
2000-01-09 14:23:35 +00:00
Michael Hayes
975ab1312f c4x.h: Tidy up comments.
* config/c4x.h: Tidy up comments.
	* config/c4x.c: Likewise.

From-SVN: r31292
2000-01-09 09:09:51 +00:00
Jeff Law
e746974d67 Daily bump.
From-SVN: r31291
2000-01-09 01:45:07 -07:00
Zack Weinberg
9945cc1af8 Don't fall off the end of main
From-SVN: r31290
2000-01-09 07:14:03 +00:00
John Wehle
cb0a34c469 fold-const.c (lshift_double, [...]): Handle shifting by 2 * HOST_BITS_PER_WIDE_INT correctly.
* fold-const.c (lshift_double, rshift_double): Handle
	shifting by 2 * HOST_BITS_PER_WIDE_INT correctly.

From-SVN: r31289
2000-01-09 06:03:45 +00:00
Alexandre Oliva
d511f9d5ec toplev.c (rest_of_compilation): Initialize cse_not_expected as in prepare_function_start().
* toplev.c (rest_of_compilation): Initialize cse_not_expected as
in prepare_function_start().

From-SVN: r31288
2000-01-08 20:30:18 +00:00
Nick Clifton
0e66839625 Fix bug restoring stack from interrupt handler.
From-SVN: r31287
2000-01-08 20:15:56 +00:00
Alexandre Oliva
69d4f56db1 * gcc.dg/20000108-1.c: New test.
From-SVN: r31286
2000-01-08 19:53:48 +00:00
Jeff Law
dc540e4d0f Daily bump.
From-SVN: r31285
2000-01-08 01:45:07 -07:00
Alexandre Petit-Bianco
6f9c87166a expr.c (java_lang_expand_expr): Switch to permanent obstack before calling expand_eh_region_start and...
Wed Dec  8 15:33:26 1999  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * expr.c (java_lang_expand_expr): Switch to permanent obstack
        before calling expand_eh_region_start and expand_start_all_catch.
        * except.c (expand_start_java_handler): Switch to permanent
        obstack before calling expand_eh_region_start.
        (expand_end_java_handler): Switch to permanent obstack before
        calling expand_start_all_catch.

From-SVN: r31284
2000-01-07 17:59:33 -08:00
Anthony Green
f626e9fa21 expr.c (java_lang_expand_expr): Switch to permanent obstack before building constant array decl.
Thu Jan  6 16:31:28 2000  Anthony Green  <green@cygnus.com>

        * expr.c (java_lang_expand_expr): Switch to permanent obstack
        before building constant array decl.

From-SVN: r31283
2000-01-07 15:07:52 -08:00
Michael Hayes
8421850fbf * config/c4x/c4x.md (*subqf3_set): Fix typo.
From-SVN: r31282
2000-01-07 22:51:21 +00:00
Michael Hayes
6ee96de621 * config/c4x/c4x.h (CALLER_SAVE_PROFITABLE): Define as 0.
From-SVN: r31281
2000-01-07 22:48:54 +00:00
David Edelsohn
4f3745b0df - Update copyright, oops.
From-SVN: r31279
2000-01-07 17:30:22 -05:00
Tom Tromey
be63d11f60 * mauve-libgcj: Don't disable ClassTest.
From-SVN: r31278
2000-01-07 20:42:26 +00:00
Alexandre Petit-Bianco
6b924cc558 re GNATS gcj/122 (SP mismatch error from certain code constructs)
Thu Jan  6 00:54:10 2000  Alexandre Petit-Bianco  <apbianco@cygnus.com>

        * jcf-write.c (generate_byecode_conditional): Fixed indentation in
        method invocation and typo in conditional expression.
        (generate_bytecode_insns): COND_EXPR can be part of a binop. Issue
        the appropriate NOTE_POP.
        * parse.y (patch_binop): Shift value mask to feature the right
        type.

(This is a fix for the PR #122:
 http://sourceware.cygnus.com/ml/java-prs/2000-q1/msg00000.html)

From-SVN: r31277
2000-01-07 12:28:11 -08:00
Tom Tromey
bd3a924b10 * java/lang/natClass.cc (getClasses): Wrote.
From-SVN: r31276
2000-01-07 20:23:01 +00:00