Commit Graph

32591 Commits

Author SHA1 Message Date
Richard Kenner
3276910d99 sparc.c (sparc_override_options): Do support different pointer and architecture size.
* config/sparc/sparc.c (sparc_override_options): Do support different
	pointer and architecture size.
	* config/sparc/sparc.h (MIN_UNITS_PER_WORD): Always 4.
	(POINTERS_EXTEND_UNSIGNED): Define.
	(Pmode): Test TARGET_ARCH64, not TARGET_PTR64.
	(FUNCTION_MODE): Define to be Pmode.
	* config/sparc/sparc.md (64-bit call patterns): FUNCTION_MODE now DI.

From-SVN: r38608
2001-01-01 21:45:03 -05:00
Richard Kenner
d1608933b9 function.c (expand_function_end): Properly handle DECL_RESULT and copy when ptr_mode != Pmode.
* function.c (expand_function_end): Properly handle DECL_RESULT
	and copy when ptr_mode != Pmode.
	* expmed.c (make_tree): Convert X from Pmode to ptr_mode, if needed.

From-SVN: r38607
2001-01-01 21:31:22 -05:00
Kaveh Ghazi
09f89307d3 update copyrights
From-SVN: r38606
2001-01-02 02:04:52 +00:00
Kaveh R. Ghazi
c2e42aabfc c-common.c (c_common_nodes_and_builtins): Set prototype parameters for __builtin_fputs, __builtin_fputc and __builtin_fwrite.
* c-common.c (c_common_nodes_and_builtins): Set prototype
	parameters for __builtin_fputs, __builtin_fputc and
	__builtin_fwrite.  Don't declare plain fputc as a builtin.

testsuite:
	* gcc.c-torture/execute/stdio-opt-1.c: Also test
	__builtin_fputc and __builtin_fwrite.

From-SVN: r38605
2001-01-02 01:56:55 +00:00
Alexandre Oliva
e56b459443 tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* reload.c (REGISTER_MOVE_COST): Likewise.  Adjust all callers.
* reload1.c (REGISTER_MOVE_COST): Likewise.
* regclass.c (REGISTER_MOVE_COST): Likewise.
(move_cost, may_move_in_cost, may_move_out_cost): Add mode
dimension.  Adjust all users.
(init_reg_sets_1): Iterate on all modes.
* config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
* config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
* config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
* config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
* config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
* config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
* config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
* config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
* config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
* config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
* config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
* config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
* config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
* config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
* config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
* config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
* config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
* config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
* config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
* config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
* config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
* config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
* config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
* config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
* config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.

From-SVN: r38604
2001-01-02 00:59:52 +00:00
John David Anglin
5b1ef59457 loop.c (add_label_notes): Increment the label usage count when a note is added to an insn which refers to...
* loop.c (add_label_notes): Increment the label usage count when
        a note is added to an insn which refers to a CODE_LABEL.
        * gcse.c (add_label_notes): Likewise.

From-SVN: r38603
2001-01-01 17:58:27 -07:00
Bruce Korb
5be1aac912 more README info
From-SVN: r38601
2001-01-02 00:35:51 +00:00
Bruce Korb
c76fbbe247 update the README for fixinc
From-SVN: r38600
2001-01-02 00:27:20 +00:00
David Billinghurst
fb34ebc505 tests_flags.in: Fix typo in usage.
* tests_flags.in: Fix typo in usage.

        * tests_flags.in: Set target specific LIBS for cygwin.

From-SVN: r38599
2001-01-01 16:14:43 -07:00
Andreas Jaeger
021d7b267e * loop.c (scan_loop): Use xmalloc to allocate movables.
From-SVN: r38598
2001-01-01 15:20:49 -07:00
Alexandre Oliva
cf01124384 tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* tm.texi (REGISTER_MOVE_COST): Add a mode argument.
* reload.c (REGISTER_MOVE_COST): Likewise.  Adjust all callers.
* reload1.c (REGISTER_MOVE_COST): Likewise.
* regclass.c (REGISTER_MOVE_COST): Likewise.
(move_cost, may_move_in_cost, may_move_out_cost): Add mode
dimension.  Adjust all users.
(init_reg_sets_1): Iterate on all modes.
* config/1750a/1750a.h (REGISTER_MOVE_COST): Adjust.
* config/a29k/a29k.h (REGISTER_MOVE_COST): Adjust.
* config/alpha/alpha.h (REGISTER_MOVE_COST): Adjust.
* config/arc/arc.h (REGISTER_MOVE_COST): Adjust.
* config/arm/arm.h (REGISTER_MOVE_COST): Adjust.
* config/avr/avr.h (REGISTER_MOVE_COST): Adjust.
* config/c4x/c4x.h (REGISTER_MOVE_COST): Adjust.
* config/d30v/d30v.h (REGISTER_MOVE_COST): Adjust.
* config/dsp16xx/dsp16xx.h (REGISTER_MOVE_COST): Adjust.
* config/h8300/h8300.h (REGISTER_MOVE_COST): Adjust.
* config/i386/i386.h (REGISTER_MOVE_COST): Adjust.
* config/ia64/ia64.h (REGISTER_MOVE_COST): Adjust.
* config/m32r/m32r.h (REGISTER_MOVE_COST): Adjust.
* config/m68hc11/m68hc11.h (REGISTER_MOVE_COST): Adjust.
* config/m68k/m68k.h (REGISTER_MOVE_COST): Adjust.
* config/mcore/mcore.h (REGISTER_MOVE_COST): Adjust.
* config/mips/mips.h (REGISTER_MOVE_COST): Adjust.
* config/mn10200/mn10200.h (REGISTER_MOVE_COST): Adjust.
* config/mn10300/mn10300.h (REGISTER_MOVE_COST): Adjust.
* config/ns32k/ns32k.h (REGISTER_MOVE_COST): Adjust.
* config/pa/pa.h (REGISTER_MOVE_COST): Adjust.
* config/pdp11/pdp11.h (REGISTER_MOVE_COST): Adjust.
* config/pj/pj.h (REGISTER_MOVE_COST): Adjust.
* config/romp/romp.h (REGISTER_MOVE_COST): Adjust.
* config/rs6000/rs6000.h (REGISTER_MOVE_COST): Adjust.
* config/sh/sh.h (REGISTER_MOVE_COST): Adjust.
* config/sparc/sparc.h (REGISTER_MOVE_COST): Adjust.

From-SVN: r38597
2001-01-01 20:35:36 +00:00
Bernd Schmidt
e38fe8e0cb Extra arg for rtx_varies_p
From-SVN: r38590
2001-01-01 17:20:09 +00:00
Richard Kenner
7d797311fb explow.c (convert_memory_address, [...]): Copy STRING_POOL_ADDRESS_P.
* explow.c (convert_memory_address, case SYMBOL_REF): Copy
	STRING_POOL_ADDRESS_P.

From-SVN: r38589
2001-01-01 09:04:25 -05:00
Richard Kenner
4746e0fe78 * config/sparc/sparc.c (input_operand): Properly test for short op.
From-SVN: r38588
2001-01-01 08:52:04 -05:00
Richard Kenner
fbd68e5da8 config.gcc (sparc-*-elf): Include sparc/sol2.h.
* config.gcc (sparc-*-elf): Include sparc/sol2.h.
	(sparc-*-rtems*): Include sparc/sol2.h and sparc/elf.h.
	(sparclite-*-elf*, sparc86x-*-elf*): Likewise.
	* config/sparc/elf.h: No longer include sol2.h.
	* config/sparc/lifeelf.h: No longer include sparc/elf.h.
	* config/sparc/rtemself.h, config/sparc/sp86x-elf.h: Likewise.

From-SVN: r38587
2001-01-01 08:19:20 -05:00
Richard Kenner
7a2bf7af12 * config/sparc/sparc.md: Test TARGET_ARCH64 instead of TARGET_PTR64.
From-SVN: r38586
2001-01-01 07:39:22 -05:00
Jeff Law
1ad036cf72 Daily bump.
From-SVN: r38585
2001-01-01 01:45:07 -07:00
Michael Hayes
86fee241f7 loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
* loop.c (check_insn_for_bivs): Use ivs->n_regs to check array bounds.
	(find_mem_givs, record_biv, maybe_eliminate_biv): Likewise.
	(record_initial): Likewise.
	* unroll.c (copy_loop_body, loop_iterations): Likewise.
	(remap_split_bivs): Likewise.

From-SVN: r38584
2001-01-01 01:04:01 +00:00
Michael Hayes
b2735d9a75 loop.c (loop_ivs_free): New function.
* loop.c (loop_ivs_free): New function.
	(strength_reduce): Break out from...

From-SVN: r38583
2001-01-01 00:53:38 +00:00
Michael Hayes
14be28e5f4 loop.h (struct iv): New.
* loop.h (struct iv): New.
	(REG_IV_TYPE, REG_IV_CLASS, REG_INFO): Modify to use 'struct iv'.
	(struct loop_ivs): Replace 'reg_iv_type', 'reg_iv_info',
	'reg_biv_class' fields with 'regs' and 'n_regs'.
	(struct ivs): Rename 'loop_iv_list' field to 'list'.
	* loop.c (loop_bivs_find, strength_reduce): Use ivs->regs array.
	* unroll.c (loop_iterations): Check array bounds with ivs->n_regs.

From-SVN: r38582
2001-01-01 00:49:30 +00:00
Alexandre Oliva
1d2215feb9 resource.c (mark_referenced_resources): Abort() before attempting to mark a pseudo register.
* resource.c (mark_referenced_resources): Abort() before
attempting to mark a pseudo register.
(mark_set_resources): Likewise.

From-SVN: r38581
2001-01-01 00:43:16 +00:00
Michael Hayes
8b634749ab loop.h (REG_IV_CLASS): New accessor macro.
* loop.h (REG_IV_CLASS): New accessor macro.
	* loop.c (REG_IV_CLASS): Use it instead of reg_iv_class array.
	* unroll.c (REG_IV_CLASS): Likewise.

From-SVN: r38580
2001-01-01 00:37:09 +00:00
Richard Kenner
b4ae520152 dwarf2out.c (loc_descriptor_from_tree, [...]): New.
* dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR): New.
	(loc_descriptor_from_tree, case SAVE_EXPR): New.

From-SVN: r38579
2000-12-31 19:27:11 -05:00
Michael Hayes
e304a8e61a loop.c (loop_giv_reduce_benefit): Break out from strength_reduce.
* loop.c (loop_giv_reduce_benefit): Break out from strength_reduce.
	(loop_givs_dead_check, loop_givs_reduce, loop_givs_rescan): Likewise.
	(prescan_loop): Set pre_header_has_call in loop_info.
	* loop.h (struct_iv_class): Add `final_value' and `all_reduced'.
	(struct loop_info): Add `pre_header_has_call'.

From-SVN: r38578
2001-01-01 00:24:46 +00:00
Michael Hayes
6ec73c7cc8 loop.c (loop_bivs_find): Break out from strength_reduce.
* loop.c (loop_bivs_find): Break out from strength_reduce.
	(loop_bivs_init_find, loop_bivs_check, loop_givs_find): Likewise.
	(loop_givs_check, loop_biv_eliminable_p): Likewise.

From-SVN: r38577
2001-01-01 00:21:14 +00:00
Michael Hayes
b8056b46cd loop.c (LOOP_REG_LIFETIME, [...]): Define.
* loop.c (LOOP_REG_LIFETIME, LOOP_REG_GLOBAL_P): Define.
	(scan_loop, record_giv): Use LOOP_REG_LIFETIME and LOOP_REG_GLOBAL_P.

From-SVN: r38576
2001-01-01 00:17:45 +00:00
Michael Hayes
8529a489d6 loop.h (REGNO_FIRST_LUID, [...]): Define.
* loop.h (REGNO_FIRST_LUID, REGNO_LAST_LUID): Define.
	* loop.c (REGNO_FIRST_LUID, REGNO_LAST_LUID): Use in place of
	direct access to uid_luid array.
	* unroll.c (REGNO_FIRST_LUID, REGNO_LAST_LUID): Likewise.

From-SVN: r38575
2001-01-01 00:14:30 +00:00
Alexandre Oliva
2b872543ba * include/c_std/bits/std_cstdlib.h (mblen): Protect against macro.
From-SVN: r38574
2001-01-01 00:06:50 +00:00
Michael Hayes
6ec9201068 loop.h (struct loop_movables): New.
* loop.h (struct loop_movables): New.
	(LOOP_MOVABLES): New.
	(struct loop_info): Add movables field.
	* loop.c (struct movables): Delete.  Replace all uses
	with struct loop_movables.
	(the_movables): Delete.  Replace all uses with movables
	field in loop_info.
	(loop_movables_add, loop_movables_free): New functions.
	(scan_loop): Use xmalloc instead of alloca for movables.
	Call loop_movables_free.

From-SVN: r38573
2001-01-01 00:03:17 +00:00
Michael Hayes
685efa5454 * loop.c (debug_loops): New.
From-SVN: r38572
2000-12-31 23:58:39 +00:00
Philip Blundell
e0cf507b23 Add missing operands to asm statement.
From-SVN: r38571
2000-12-31 17:27:12 +00:00
Jeff Law
d15eac34aa Daily bump.
From-SVN: r38570
2000-12-31 01:45:07 -07:00
Richard Henderson
711d4bb3ce dbxout.c (dbxout_block): Invert logic on eliding LBRAC/RBRAC.
* dbxout.c (dbxout_block): Invert logic on eliding LBRAC/RBRAC.
        Initialize variables properly for DBX_LBRAC_FIRST.

From-SVN: r38569
2000-12-30 23:22:28 -08:00
Richard Kenner
27fb3e162e * expr.c (expand_expr, case COMPONENT_REF): Fix typo in last change.
From-SVN: r38568
2000-12-30 20:53:54 -05:00
Kaveh Ghazi
e396cb7b29 Oops, fix style nit.
From-SVN: r38567
2000-12-30 18:16:16 +00:00
Kaveh R. Ghazi
019fa094da * builtins.c (validate_arglist): New function, use it.
From-SVN: r38566
2000-12-30 18:15:04 +00:00
Robert Lipe
17b8888b84 Remove COFF support from i?86-pc-sco3.2v5.
2000-12-29  Robert Lipe <robertl@sco.com>

        Remove COFF support from i?86-pc-sco3.2v5.
        * i386/sco5.h (PREFERRED_DEBUGGING_TYPE): Change to Dwarf II.
        (TARGET_ELF): Now always true.
        (SUBTARGET_SWTICHES: )Remove -mcoff.

        * i386/t-sco5 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
        MULTILIB_EXCEPTION): Nuke coff.
        (CRTSTUFF_T_CFLAGS_S):  Deleted.
        (TARGET_LIBGCC2_CFLAGS): Added.

From-SVN: r38565
2000-12-30 17:14:52 +00:00
Jeffrey Oldham
965a9c31d9 20001009-2.c (foo): Test only works for signed char, not default char.
2000-12-30  Jeffrey Oldham  <oldham@codesourcery.com>

	* gcc.c-torture/execute/20001009-2.c (foo): Test only works for
	signed char, not default char.

From-SVN: r38564
2000-12-30 16:59:52 +00:00
Jeffrey Oldham
9b961b950c crash18.C: Fails on mips*-sgi-irix*.
2000-12-30  Jeffrey Oldham  <oldham@codesourcery.com>

	* g++.old-deja/g++.other/crash18.C: Fails on mips*-sgi-irix*.

From-SVN: r38563
2000-12-30 16:47:17 +00:00
Philip Blundell
f18969c010 Fix typos.
From-SVN: r38562
2000-12-30 16:34:00 +00:00
Jeffrey Oldham
2df88e9f58 defaults.h (BUILD_VA_LIST_TYPE): New definition.
2000-12-30  Jeffrey Oldham  <oldham@codesourcery.com>

	* defaults.h (BUILD_VA_LIST_TYPE): New definition.
	* tree.c (build_common_tree_nodes_2): Ensure the va_list_type_node
	is a copy, not an alias.

From-SVN: r38561
2000-12-30 15:31:49 +00:00
Richard Kenner
b367c41628 * calls.c (calls_function_1, case CONSTRUCTOR): New case.
From-SVN: r38560
2000-12-30 09:52:15 -05:00
Richard Kenner
1da68f560d alias.c (alias_sets_conflict_p): New function.
* alias.c (alias_sets_conflict_p): New function.
	(mems_in_disjoint_alias_sets_p): Use it.
	(readonly_fields_p): Moved from expr.c; check for record type.
	(objects_must_conflict_p): New function.
	* calls.c (expand_call): Use assign_temp as much as possible, use
	readonly variant if assigned once, and don't set memory attributes.
	(emit_library_call_value_1, store_one_arg): Likewise.
	* integrate.c (expand_inline_function): Likewise.
	* stmt.c (expand_asm_operands, expand_return): Likewise.
	* expr.c (copy_blkmode_from_reg, store_constructor): Likewise.
	(store_field, save_noncopied_parts, expand_expr): Likewise.
	(expand_expr_unaligned): Likewise.
	(readonly_fields_p): Moved to alias.c.
	(safe_from_p): Rework handling of SAVE_EXPR.
	MEMs ony conflict if alias sets conflict; likewise for INDIRECT_REF.
	* function.c (struct temp_slot): Delete field ALIAS_SET; add TYPE.
	(assign_stack_for_temp): Use objects_must_confict_p.
	Set all memory attributes from type, if specified.
	(mark_temp_slot): Mark TYPE field.
	* tree.h (alias_sets_conflict_p, readonly_fields_p): New decls.
	(objects_must_conflict_p): Likewise.

	* stmt.c (expand_decl): Don't use assign_stack_temp in error case.
	(add_case_node): No need to copy nodes anymore.

From-SVN: r38559
2000-12-30 08:10:51 -05:00
Bryce McKinlay
2e9ab75de4 Forgot these in last commit.
From-SVN: r38558
2000-12-30 12:22:15 +00:00
Bryce McKinlay
e301621d19 For boehm-gc:
* configure.in: Rename THREADLIB to THREADLIBS.
	* Makefile.am (LINK): Add $(THREADLIBS) to libtool command line. This
	ensures that we link the correct version of the linuxthreads semaphore
	functions.
	* Makefile.in: Rebuilt.
	* configure: Rebuilt.

	* linux_thread.c (GC_thr_init, GC_suspend_handler): Add SIGABRT to the
	list of signals which are not blocked during suspend in the NO_SIGNALS
	case.

For libjava:
	* Makefile.am (libgcj_la_LIBADD): Add $(THREADLIBS). This ensures that
	the correct versions of various linuxthreads functions get linked.
	* Makefile.in: Rebuilt.
	* java/lang/natThread.cc (finalize_native): New static function. Call
	_Jv_ThreadDestroyData.
	(initialize_native): Register finalizer for "data".
	* include/posix-threads.h (_Jv_ThreadInitData): New simpler prototype.
	(_Jv_ThreadDestroyData): New prototype.
	* include/win32-threads.h: Ditto.
	* include/no-threads.h: Ditto.
	* posix-threads.cc (_Jv_ThreadInitData): Implement new prototype.
	(_Jv_ThreadDestroyData): New function. Free native thread "data" and
	move mutex and condition variable destroy code from:
	(really_start): ...here.
	(_Jv_ThreadStart): Set PTHREAD_CREATE_DETACHED.
	* win32-threads.cc (_Jv_ThreadInitData): Implement new prototype.
	(_Jv_ThreadDestroyData): Implemented.
	* nogc.cc (_Jv_AllocObject): Use "void *" not "ptr_t".
	(_Jv_AllocArray): Ditto.

From-SVN: r38557
2000-12-30 12:18:39 +00:00
Marek Michalkiewicz
4c2f5b4fd3 * MAINTAINERS: Add myself as avr port co-maintainer.
From-SVN: r38556
2000-12-30 11:56:57 +00:00
Jeff Law
c582434717 Daily bump.
From-SVN: r38555
2000-12-30 01:45:08 -07:00
Alexandre Oliva
b94544e45f sh.c (split_branches): Don't dereference re-computed `beyond' before checking it's non-NULL.
* config/sh/sh.c (split_branches): Don't dereference re-computed
`beyond' before checking it's non-NULL.

From-SVN: r38554
2000-12-30 07:53:35 +00:00
David Billinghurst
d05e34f296 * lib/g++.exp: Use sh to exec ${odir_v3}/tests_flags
From-SVN: r38553
2000-12-29 15:25:57 -07:00
Robert Lipe
b57d6be879 Remove COFF support from i?86-pc-sco3.2v5.
* i386/sco5.h (PREFERRED_DEBUGGING_TYPE): Change to Dwarf II.
        (TARGET_ELF): Now always true.
        (SUBTARGET_SWTICHES: )Remove -mcoff.

        * i386/t-sco5 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES,
        MULTILIB_EXCEPTION): Nuke coff.
        (CRTSTUFF_T_CFLAGS_S):  Deleted.
        (TARGET_LIBGCC2_CFLAGS): Added.

From-SVN: r38552
2000-12-29 22:15:03 +00:00