Commit Graph

18548 Commits

Author SHA1 Message Date
Richard Earnshaw
9c8cc54f26 arm.c (bad_signed_byte_operand): Check both arms of a sum in a memory address.
* arm.c (bad_signed_byte_operand): Check both arms of a sum in
a memory address.
* arm.md (splits for *extendqihi_insn and *extendqisi_insn): Handle
memory addresses that are not in standard canonical form.

From-SVN: r22478
1998-09-19 07:57:44 +00:00
Richard Earnshaw
332072dbd1 arm.c (add_constant): New parameter address_only, change caller.
* arm.c (add_constant): New parameter address_only, change caller.
Set it non-zero if taking the address of an item in the pool.
(arm_reorg): Handle cases where we need the address of an item in
the pool.

From-SVN: r22477
1998-09-19 07:46:45 +00:00
Jeff Law
e9904c1772 Daily bump.
From-SVN: r22476
1998-09-18 18:45:01 -06:00
Michael Hayes
cb0ca2844b README.C4X: New file with information about the c4x ports.
* README.C4X: New file with information about the c4x ports.
        * ginclude/va-c4x.h: New file for c4x varargs support.
        * config/c4x: New directory with c4x port files.

From-SVN: r22475
1998-09-18 18:03:07 -06:00
Jeff Law
289c9aa3c7 Minor tweak.
From-SVN: r22474
1998-09-18 17:13:48 -06:00
Jeff Law
0a6401c411 reload.c (find_reloads): Do not replace a pseudo with (MEM (reg_equiv_addr)) in the initializing insn...
P
        * reload.c (find_reloads): Do not replace a pseudo with
        (MEM (reg_equiv_addr)) in the initializing insn for the
        pseudo.

From-SVN: r22473
1998-09-18 15:54:39 -06:00
Jeff Law
f10df53cc3 reload.c (find_reloads): Do not replace a pseudo with (MEM (reg_equiv_addr)) in the initializing insn...
�
        * reload.c (find_reloads): Do not replace a pseudo with
        (MEM (reg_equiv_addr)) in the initializing insn for the
        pseudo.

From-SVN: r22472
1998-09-18 15:54:37 -06:00
David Edelsohn
5accd82209 toplev.c (rest_of_compilation): Set bct_p on second call to loop_optimize.
* toplev.c (rest_of_compilation): Set bct_p on second call to
        loop_optimize.
        * loop.c (loop_optimize, scan_loop, strength_reduce): New argument
        bct_p.
        (strength_reduce): Only call analyze_loop_iterations and
        insert_bct if bct_p set.
        (check_dbra_loop): Fix typo.
        (insert_bct): Use word_mode instead of SImode.
        (instrument_loop_bct): Likewise.  Do not delete iteration count
        condition code generation insn.  Initialize iteration count before
        loop start.
        * rtl.h (loop_optimize): Update prototype.
        * ginclude/va-ppc.h (va_arg): longlong types in overflow area are
        not doubleword aligned.
        * rs6000.c (optimization_options): New function.
        (secondary_reload_class): Only call true_regnum for PSEUDO_REGs.
        * rs6000.h (OPTIMIZATION_OPTIONS): Define.
        (REG_ALLOC_ORDER): Allocate highest numbered condition regsiters
        first; cr1 can be used for FP record condition insns.

From-SVN: r22471
1998-09-18 16:55:00 -04:00
Alexandre Oliva
735955227e nested2.C: different virtual base classes that happen to have the same base name...
* g++.old-deja/g++.other/nested2.C: different virtual base classes
 	that happen to have the same base name, but in different scopes,
 	are incorrectly rejected

From-SVN: r22470
1998-09-18 18:33:17 +00:00
Dave Love
6f43347108 g77.texi: Various additions and some small fixes.
1998-09-18  Dave Love  <d.love@dl.ac.uk>
	* g77.texi: Various additions and some small fixes.

From-SVN: r22469
1998-09-18 15:45:43 +00:00
Dave Love
0b31330e26 Various additions and some small fixes.
From-SVN: r22468
1998-09-18 15:44:51 +00:00
Nick Clifton
d2a73f8ee2 Fix for PR1654 - implement "movstrsi" pattern to copy simple blocks of memory.
From-SVN: r22467
1998-09-18 10:27:46 +00:00
Jeff Law
feaefdd522 Daily bump.
From-SVN: r22466
1998-09-17 18:45:02 -06:00
Jeffrey A Law
da4f7dc143 * Makefile.in (jcf-dump, jvgenmain): Link in memmove.o too.
From-SVN: r22465
1998-09-17 12:46:24 -06:00
Tom Tromey
4a4a468259 * Makefile.in ($(PARSE_H)): Removed target.
From-SVN: r22463
1998-09-17 15:31:30 +00:00
Andrew MacLeod
7ac2148be5 [multiple changes]
Thu Sep 17 16:42:16 EDT 1998  Andrew MacLeod  <amacleod@cygnus.com>
        * except.c (start_catch_handler): Issue 'fatal' instead of 'error' and
        re-align some code.
        * libgcc2.c (__eh_rtime_match): fprintf a runtime error. Use <stdio.h>.
1998-09-17  Andrew MacLeod  <amacleod@cygnus.com>
        * exception.cc (__cplus_type_matcher): realign some code.

From-SVN: r22462
1998-09-17 13:55:51 +00:00
Ben Elliston
005dda25ff Move documentation files from egcs/gcc/objc.
From-SVN: r22461
1998-09-17 18:04:30 +10:00
J"orn Rennecke
9d2106a4a4 * regmove.c (copy_src_to_dest): Check that modes match.
From-SVN: r22460
1998-09-17 05:27:27 +01:00
Ben Elliston
fbe39e483d config-lang.in: Do not output the name of the selected thread file when building the front-end.
Sun Sep 13 08:13:39 1998  Ben Elliston  <bje@cygnus.com>
	* objc/config-lang.in: Do not output the name of the selected
	thread file when building the front-end.  The Makefile for the
	runtime library will do this.
	* objc/Make-lang.in: Do not build the runtime library or install
	the Objective C header files.  The Makefile for the runtime
	library will do this.
	* objc/Makefile.in (all.indirect): Only build the front-end.
	(compiler): Rename to `frontend'.
	(obj-runtime): Remove target.
	(copy-headers): Likewise.
	(clean): No need to remove `libobjc.a' any longer.

From-SVN: r22459
1998-09-17 11:19:28 +10:00
Jeffrey A Law
e6a480d38c Makefile.in (JAVA_OBJS): Add memmove.o
* Makefile.in (JAVA_OBJS): Add memmove.o
        (memmove.o): New target & rules.

From-SVN: r22458
1998-09-16 18:58:52 -06:00
Jeff Law
684e454474 Daily bump.
From-SVN: r22457
1998-09-16 18:45:02 -06:00
H.J. Lu
492d8fbe47 Makefile.in ($(ARLINK), $(SHLINK)): Don't rely on 'ln -f'.
* Makefile.in ($(ARLINK), $(SHLINK)): Don't rely on 'ln -f'.
        * Makefile.in (install): Don't rely on 'ln -f'.

From-SVN: r22456
1998-09-16 18:30:53 -06:00
Robert Lipe
086afc19bb * config/i386/sco5.h (SUPPORTS_WEAK): True only if targeting ELF.
From-SVN: r22455
1998-09-16 20:13:19 +00:00
Richard Henderson
b66a3ac1ad i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class narrower than FLOAT_REGS.
* i386.h (PREFERRED_RELOAD_CLASS): Respect an existing class
        narrower than FLOAT_REGS.

From-SVN: r22454
1998-09-16 08:26:22 -07:00
Alexandre Oliva
0d7138a12f cpplib.c: removed OLD_GPLUSPLUS_INCLUDE_DIR
* cpplib.c: removed OLD_GPLUSPLUS_INCLUDE_DIR
	* cccp.c: ditto
	* Makefile.in (old_gxx_include_dir): removed

From-SVN: r22453
1998-09-16 13:51:44 +00:00
Kaveh R. Ghazi
f06e7a27b9 * egcs_update: Additionally touch gcc/java/parse.[ch].
From-SVN: r22452
1998-09-16 13:16:27 +00:00
Nick Clifton
f43a85cacf update definition/use of HANDLE_PRAGMA to match new specification.
From-SVN: r22451
1998-09-16 12:31:24 +00:00
Mark Mitchell
c0f5ceb78b Make-lang.in (tinfo.o): Use CXXFLAGS when compiling.
* Make-lang.in (tinfo.o): Use CXXFLAGS when compiling.
	(tinfo2.o): Likewise.
	(exception.o): Likewise.
	(new.o): Likewise.
	(opnew.o): Likewise.
	(opnewnt.o): Likewise.
	(opvnew.o): Likewise.
	(opvnewnt.o): Likewise.
	(opdel.o): Likewise.
	(opdelnt.o): Likewise.
	(opvdel.o): Likewise.
	(opvdelnt.o): Likewise.

From-SVN: r22450
1998-09-16 10:40:40 +00:00
Kaveh R. Ghazi
88dab4f649 gen-protos.c (parse_fn_proto): Cast argument of ISALNUM to `unsigned char'.
* gen-protos.c (parse_fn_proto): Cast argument of ISALNUM to
        `unsigned char'.
        (main): Mark parameter `argc' with ATTRIBUTE_UNUSED.
        When generating output, initialize missing struct member to zero.

From-SVN: r22449
1998-09-16 09:46:37 +00:00
J"orn Rennecke
1a8fca8acc regmove.c (copy_src_to_dest): Don't copy if that requires (a) new register(s).
* regmove.c (copy_src_to_dest): Don't copy if that requires
	(a) new register(s).

From-SVN: r22448
1998-09-16 07:49:57 +01:00
Jeff Law
905a3d6615 Daily bump.
From-SVN: r22447
1998-09-15 18:45:03 -06:00
Bernd Schmidt
f15ebf657d global.c (reg_allocno): Now static.
* global.c (reg_allocno): Now static.
        * reload1.c (reg_allocno): Delete declaration.
        (order_regs_for_reload): Take no arguments.  Don't treat regs
        allocated by global differently than those allocated by local-alloc.

From-SVN: r22446
1998-09-15 18:31:22 -06:00
Kamil Iskra
b0e982be47 m68k.c (output_function_prologue): Reverse NO_ADDSUB_Q condition, fix format strings.
* m68k/m68k.c (output_function_prologue): Reverse NO_ADDSUB_Q
        condition, fix format strings.
        (output_function_epilogue): Likewise.

From-SVN: r22445
1998-09-15 18:13:43 -06:00
Kamil Iskra
3dbf3a22df * m68k/m68k.c: Don't include <stdlib.h> directly.
From-SVN: r22444
1998-09-15 18:10:19 -06:00
Jeffrey A Law
6f573ff96a * rs6000.c (output_epilogue): Handle Chill.
From-SVN: r22443
1998-09-15 18:01:28 -06:00
Jeff Law
e7d99f1e82 Fix out of date comments after previous change.
From-SVN: r22442
1998-09-15 17:43:50 -06:00
Geoff Keating
b86ba9c89d gcse.c: New definition NEVER_SET for reg_first_set...
* gcse.c: New definition NEVER_SET for reg_first_set, reg_last_set,
        mem_first_set, mem_last_set; because 0 can be a CUID.
        (oprs_unchanged_p): Use new definition.
        (record_last_reg_set_info): Likewise.
        (record_last_mem_set_info): Likewise.
        (compute_hash_table): Likewise.

From-SVN: r22441
1998-09-15 17:32:22 -06:00
Jeffrey A Law
fa88e837bf mn10200.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
* mn10200.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.
        * mn10300.h (ASM_OUTPUT_DWARF2_ADDR_CONST): Define.

From-SVN: r22440
1998-09-15 17:04:54 -06:00
Jeffrey A Law
0d8e55d8cd combine.c (make_extraction): If no mode is specified for an operand of insv...
* combine.c (make_extraction): If no mode is specified for
        an operand of insv, extv, or extzv, default it to word_mode.
        (simplify_comparison): Similarly.
        * expmed.c (store_bit_field): Similarly.
        (extract_bit_field): Similarly.
        * function.c (fixup_var_regs_1): Similarly.
        * recog.c (validate_replace_rtx_1): Similarly.
        * mips.md (extv, extzv, insv expanders): Default modes for most
        operands.  Handle TARGET_64BIT.
        (movdi_uld, movdi_usd): New patterns.

From-SVN: r22439
1998-09-15 16:47:10 -06:00
Jeffrey A Law
54d6591877 pa.c (emit_move_sequence): Do not replace a pseudo with its equivalent memory location unless...
�
        * pa.c (emit_move_sequence): Do not replace a pseudo with its
        equivalent memory location unless we have been provided a scratch
        register.  Similarly do not call find_replacement unless a
        scratch register has been provided.

From-SVN: r22438
1998-09-15 16:01:08 -06:00
Bernd Schmidt
c09a3c2e15 i386.h (PREFERRED_RELOAD_CLASS): For standard 387 constants, return FLOAT_REGS.
* i386.h (PREFERRED_RELOAD_CLASS): For standard 387 constants,
        return FLOAT_REGS.

From-SVN: r22437
1998-09-15 12:23:31 -07:00
Richard Henderson
710384268d tree.h (BUILT_IN_CALLER_RETURN_ADDRESS): Unused.
* tree.h (BUILT_IN_CALLER_RETURN_ADDRESS): Unused.  Kill.
	(BUILT_IN_FP, BUILT_IN_SP, BUILT_IN_SET_RETURN_ADDR_REG): Kill.
	(BUILT_IN_EH_STUB_OLD, BUILT_IN_EH_STUB, BUILT_IN_SET_EH_REGS): Kill.
	(BUILT_IN_EH_RETURN, BUILT_IN_DWARF_CFA): New.
	* c-decl.c (init_decl_processing): Update accordingly.
	* expr.c (expand_builtin): Likewise.
	* cp/decl.c (init_decl_processing): Likewise.
	* rtl.h (global_rtl): Add cfa entry.
	(virtual_cfa_rtx, VIRTUAL_CFA_REGNUM): New.
	(LAST_VIRTUAL_REGISTER): Update.
	* emit-rtl.c (global_rtl): Add cfa entry.
	(init_emit): Initialize it.
	* function.c (cfa_offset): New.
	(instantiate_virtual_regs): Initialize it.
	(instantiate_virtual_regs_1): Instantiate virtual_cfa_rtx.
	(expand_function_end): Call expand_eh_return.
	* tm.texi (ARG_POINTER_CFA_OFFSET): New.
	* except.c (current_function_eh_stub_label): Kill.
	(current_function_eh_old_stub_label): Likwise; update all references.
	(expand_builtin_set_return_addr_reg): Kill.
	(expand_builtin_eh_stub_old, expand_builtin_eh_stub): Kill.
	(expand_builtin_set_eh_regs): Kill.
	(eh_regs): Produce a third reg for the actual handler address.
	(eh_return_context, eh_return_stack_adjust): New.
	(eh_return_handler, eh_return_stub_label): New.
	(init_eh_for_function): Initialize them.
	(expand_builtin_eh_return, expand_eh_return): New.
	* except.h: Update prototypes.
	* flow.c (find_basic_blocks_1): Update references to the stub label.
	* function.h (struct function): Kill stub label elements.
	* libgcc2.c (in_reg_window): For REG_SAVED_REG, check that the
	register number is one that would be in the previous window.
	Provide a dummy definition for non-windowed targets.
	(get_reg_addr): New function.
	(get_reg, put_reg, copy_reg): Use it.
	(__throw): Rely on in_reg_window, not INCOMING_REGNO.  Kill stub
	generating code and use __builtin_eh_return.  Use __builtin_dwarf_cfa.
	* alpha.c (alpha_eh_epilogue_sp_ofs): New.
	(alpha_init_expanders): Initialize it.
	(alpha_expand_epilogue): Use it.
	* alpha.h: Declare it.
	* alpha.md (eh_epilogue): New.
	* m68h.h (ARG_POINTER_CFA_OFFSET): New.
	* sparc.h (ARG_POINTER_CFA_OFFSET): New.

From-SVN: r22436
1998-09-15 12:19:12 -07:00
Richard Henderson
dfb16e8307 array1.C: Size array via arithmetic based on the native word size instead of an integer...
* g++.old-deja/g++.brendan/array1.C: Size array via arithmetic based
        on the native word size instead of an integer literal.

From-SVN: r22435
1998-09-15 12:17:46 -07:00
Alexandre Oliva
c9f81ec25b static2.C: invocation of static data member of type pointer-to-function denoted as...
* g++.old-deja/g++.other/static2.C: invocation of static data
 	member of type pointer-to-function denoted as non-static member

From-SVN: r22434
1998-09-15 17:05:28 +00:00
Alexandre Oliva
e1b81ca4fd * call.c (build_field_call): handle static data members too
From-SVN: r22433
1998-09-15 17:04:53 +00:00
Michael Meissner
bb210aafb4 Fix thinko
From-SVN: r22432
1998-09-15 16:32:49 +00:00
Ken Raeburn
5376a30c4d Add stack alignment descriptions to comments describing stack layouts.
Also describe which layouts are used for EABI.

From-SVN: r22431
1998-09-15 15:49:37 +00:00
Alexandre Oliva
cc5c4e2fd7 typedef5.C: add some more tests involving checks involving function types and aliases
* g++.old-deja/g++.other/typedef5.C: add some more tests involving
	checks involving function types and aliases

From-SVN: r22430
1998-09-15 14:36:22 +00:00
Alexandre Oliva
b6bee398d7 typeck.c (comptypes): when comparing pointer types...
* typeck.c (comptypes): when comparing pointer types, check
	whether referred types match even in strictest modes

From-SVN: r22429
1998-09-15 14:28:07 +00:00
Jason Merrill
3d821ea145 tweak
From-SVN: r22428
1998-09-15 09:43:59 -04:00