Commit Graph

13611 Commits

Author SHA1 Message Date
Richard Kenner
50196afaca (cse_insn): Don't record a SRC that's a MEM and the same as a
REG_EQUIV note if DEST is set more than once.

From-SVN: r14074
1997-05-17 15:13:18 -04:00
Jeff Law
a89974a23e pa.c (output_move_double): Handle loading a general register from a scaled indexed memory address.
* pa.c (output_move_double): Handle loading a general register
        from a scaled indexed memory address.
        * pa.md (movdf, movdi): Allow scaled loads into general registers.

From-SVN: r14073
1997-05-16 14:58:24 -06:00
Mike Stump
30ccf55d85 rs6000.c (rs6000_stack_info): Only do eabi setup for "main"...
* rs6000/rs6000.c (rs6000_stack_info): Only do eabi setup for "main",
	when main is the global main, not some nested routine that
	happens to be called main.

From-SVN: r14072
1997-05-16 20:42:42 +00:00
Mike Stump
c133e33c68 except.c (expand_start_all_catch): If the machine needs to perform any actions at the start of an expcetion...
* except.c (expand_start_all_catch): If the machine needs to
	perform any actions at the start of an expcetion handler that
	hasn't already been done, use gen_exception_receiver to emit it.
	(expand_leftover_cleanups): Likewise.
	* alpha/alpha.md (exception_receiver): Use it.
	* pa/pa.h (exception_receiver): Use it.

From-SVN: r14071
1997-05-16 01:00:58 +00:00
Mike Stump
f51430ed7a except.c (expand_start_all_catch): If the machine needs to perform any actions at the start of an expcetion...
* except.c (expand_start_all_catch): If the machine needs to
	perform any actions at the start of an expcetion handler that
	hasn't already been done, use gen_exception_receiver to emit it.
	(expand_leftover_cleanups): Likewise.
	* alpha/alpha.md (exception_receiver): Use it.
	* pa/pa.h (exception_receiver): Use it.
Fix -fpic on hppa when excetpions are throw across shared libraries.

From-SVN: r14070
1997-05-16 00:58:40 +00:00
Jeff Law
59cfb80c42 dbxout.c (dbxout_function_end): Don't subtract one from the end of function scoping stab.
* dbxout.c (dbxout_function_end): Don't subtract one from
        the end of function scoping stab.

From-SVN: r14069
1997-05-15 08:39:56 -06:00
Jeff Law
5ff8093182 * mn10300.md (adddi3, subdi3): Remove expanders and patterns.
From-SVN: r14068
1997-05-14 23:32:16 -06:00
Mike Stump
e5a1e0e864 function.c (expand_function_end): Make sure we finish off any leftover exception handlers.
* function.c (expand_function_end): Make sure we finish off any
	leftover exception handlers.

From-SVN: r14067
1997-05-15 02:25:25 +00:00
Mike Stump
6b023d0700 expr.c (expand_builtin_setjmp): Remove setting of current_function_has_nonlocal_goto, as this isn't a goto.
* expr.c (expand_builtin_setjmp): Remove setting of
	current_function_has_nonlocal_goto, as this isn't a goto.

From-SVN: r14066
1997-05-13 21:08:28 +00:00
Richard Earnshaw
9e7d0bccf4 (CPP_SPEC): Fix typo invoking cpp_endian.
(*_SPEC): Remove all references to mle/mbe.

From-SVN: r14065
1997-05-13 18:45:05 +00:00
Richard Earnshaw
b92b0cc977 Build fp-bit.c when compiling with -msoft-float.
From-SVN: r14064
1997-05-13 18:45:05 +00:00
Richard Earnshaw
5bc85b0a3d (MULTILIB_DEFAULTS): Remove all references to mle/mbe.
From-SVN: r14063
1997-05-13 18:45:05 +00:00
Richard Earnshaw
64bdde07f6 (MULTILIB_OPTIONS): Change options mbe/mle to mbig-endian and mlittle-endian.
(MULTILIB_OPTIONS): Change options mbe/mle to mbig-endian
and mlittle-endian.
(MULTILIB_MATCHES): Nothing matches that matters.

From-SVN: r14062
1997-05-13 18:45:05 +00:00
Richard Earnshaw
18af731304 Add prototypes for all static functions.
(output_multi_immediate, int_log2): Make static.

From-SVN: r14061
1997-05-13 18:45:05 +00:00
Mike Stump
05f5b2cdf9 except.c (expand_start_all_catch): If the machine needs a nonlocal_goto_receiver...
* except.c (expand_start_all_catch): If the machine needs a
	nonlocal_goto_receiver, add one at the start of the exception
	handler.
	(expand_leftover_cleanups): Likewise.
Potential fix for eh on alpha, rs6000, and hppa.

From-SVN: r14060
1997-05-13 03:50:39 +00:00
Jeff Law
15f3d16acb mips.c (move_operand): Accept any general operand after reload has started.
* mips.c (move_operand): Accept any general operand after reload
        has started.

From-SVN: r14059
1997-05-12 17:37:24 -06:00
Jeff Law
6f54921d69 mn10300.md (udivmodhi4, divmodhi4): Remove expander, give corresponding pattern [u]divmodhir4 name.
* mn10300.md (udivmodhi4, divmodhi4): Remove expander, give
        corresponding pattern [u]divmodhir4 name.  Clear MDR register
        in the udivmodhi4 pattern itself.
        (clear_mdr): Delete pattern.

From-SVN: r14058
1997-05-09 14:35:09 -06:00
David Edelsohn
f0dc3f4925 extend restrictions on combining lshiftrt with insv to all shifts
From-SVN: r14057
1997-05-09 18:47:12 +00:00
Richard Earnshaw
b27cd47c65 (LIBGCC1_TEST): Don't build it.
(MULTILIB_{OPTIONS,DIRNAMES,EXCEPTIONS}): Build a suitable set of
cross libraries.
(LIBGCC): Set to stmp-multilib.
(INSTALL_LIBGCC): Set to install-multilib.

From-SVN: r14056
1997-05-08 22:17:34 +00:00
Richard Earnshaw
7de93521da (ASM_OUTPUT_LONG_DOUBLE): Delete call to arm_increase_location.
(ASM_OUTPUT_LONG_DOUBLE): Delete call to
arm_increase_location.
(ASM_OUTPUT_{DOUBLE,FLOAT,INT,SHORT,CHAR,BYTE,ASCII,SKIP}): Likewise.
(ASM_OUTPUT_ALIGN): Delete all code refering to arm_text_location.

From-SVN: r14055
1997-05-08 22:17:34 +00:00
Richard Earnshaw
da91c3abc6 (CPP_SPEC): Rewrite using new sub-components.
(SUBTARGET_CPU_DEFAULT): Set to TARGET_CPU_arm2.

From-SVN: r14054
1997-05-08 22:17:34 +00:00
Richard Earnshaw
97d65fbc22 (CPP_SPEC): Delete.
(CPP_APCS_PC_DEFAULT_SPEC): Define.

From-SVN: r14053
1997-05-08 22:17:34 +00:00
Richard Earnshaw
fef37aaf99 (attr cpu): Add new cpu types for arm8 and strongarm.
(attr ldsched): New attribute, set if processor has a load_delay slot.
(function_unit core): Rework to handle load delay slots.
(function_unit loader): New function unit.
(movsi): Handle pic.
(pic_load_addr): New expand.
(*pic_load_addr_based_insn, pic_add_dot_plus_eight): New patterns.
(peepholes to cause flow to return to a label after a function call):
Delete, these have been disabled for a while now.

From-SVN: r14052
1997-05-08 22:17:34 +00:00
Richard Earnshaw
7a80182693 (TARGET_CPU_arm*, TARGET_CPU_strongarm*, TARGET_CPU_generic):
define.
(CPP_ARCH_DEFAULT_SPEC): Set up based on setting of TARGET_CPU_DEFAULT.
(CPP_SPEC): Split up into sub-rule calls.
(CPP_CPU_SPEC): Add default definition.
(CPP_APCS_PC_SPEC, CPP_APCS_PC_DEFAULT_SPEC): Add definitions.
(CPP_FLOAT_SPEC, CPP_FLOAT_DEFAULT_SPEC): Add definitions.
(CPP_ENDIAN_SPEC, CPP_ENDIAN_DEFAULT_SPEC): Add definitions.
(CC1_SPEC): Map legacy -m[236] onto -mcpu=.. and -mapcs-{26,32} as
appropriate. Similarly for -mbe and -mle to -m{big,little}-endian.
(EXTRA_SPECS): Define.
(enum processor_type): New types for arm8 and strongarm.
(CONDITIONAL_REGISTER_USAGE): Handle flag_pic.
(LEGITIMIZE_ADDRESS): Likewise.
(ADJUST_COST): Define.
(PIC_OFFSET_TABLE_REGNUM): Define.
(FINALIZE_PIC): Define.
(LEGITIMATE_PIC_OPERAND_P): Define.
(OUTPUT_INT_ADDR_CONST): Define.
(ASM_OUTPUT_MI_THUNK): Delete calls to arm_increase_location.
(MASK_RETURN_ADDR): Use TARGET_APCS_32 not TARGET_6.

From-SVN: r14051
1997-05-08 22:17:34 +00:00
Richard Earnshaw
41d891aae0 (CPP_SPEC): Delete.
(PROCESSOR_DEFAULT): Delete.
(CPP_APCS_PC_DEFAULT_SPEC): Define.

From-SVN: r14050
1997-05-08 22:17:34 +00:00
Richard Earnshaw
32de079ac5 (arm_increase_location, get_prologue_size): Delete.
(arm_naked_function_p): Add declaration.
(arm_pic_register): Define.
(all_procs): Delete entries for arm{60,620,70,7d,7di,700i,710c}; add
entries for arm{7m,7500fe,8}, strongarm and strongarm110.
(arm_override_options): Rework so that configure can properly set
the default processor type. Add a warning that PIC code is not yet
supported.
(legitimate_pic_operand_p, legitimize_pic_address): New functions.
(is_pic, arm_finalize_pic): New functions.
(arm_adjust_cost): New function.
(const_pool_offset, arm_backwards_branch, short_branch): Delete.
(arm_insn_not_targeted): Delete.
(add_constant): If generating AOF syntax, then handle pic specially.
(output_ascii_pseudo_op): Delete calls to arm_increase_location.
(function_really_clobbers_lr): Calls followed by a barrier don't
clobber the link register.
(output_func_prologue): Handle AOF syntax pic code.
(output_func_epilogue): Handle cases where lr_save_eliminated is set.
Delete call to arm_increase_location.
(arm_asm_output_label): Simplify, since we no-longer need to cache the
label's address.
(aof_pic_entry): New function to keep track of pic symbols.
(aof_dump_pic_table): New function.

From-SVN: r14049
1997-05-08 22:17:34 +00:00
Stan Cox
858a9ffcb7 (output_float_compare): For pentiumpro use fcomip
From-SVN: r14048
1997-05-08 18:51:51 +00:00
Richard Kenner
96f06cb6dd (fold, truth_andor): Disable optimization for side effects on RHS.
From-SVN: r14047
1997-05-08 13:20:18 -04:00
David Edelsohn
95e8f2f306 improve test for last change
From-SVN: r14046
1997-05-08 02:20:15 +00:00
Mike Stump
6e6a07d299 except.c (start_dynamic_handler): Fix so that we can use __builtin_setjmp...
* except.c (start_dynamic_handler): Fix so that we can use
 	__builtin_setjmp, and default to using __builtin_setjmp instead of
 	setjmp.
	* expr.c (expand_builtin_setjmp): New routine, split out from
	existing inline code from expand_builtin.
	(expand_builtin): Split out code into expand_builtin_setjmp.
	* expr.h (expand_builtin_setjmp): Add declaration.
	* libgcc2.c (__sjthrow): Default to using __builtin_setjmp instead
 	of setjmp.
	(__sjpopnthrow): Likewise.
	* optabs.c (init_optabs): Likewise.

From-SVN: r14045
1997-05-07 22:50:11 +00:00
David Edelsohn
24f2dbd6f7 fix zero_extract lshiftrt insv combiner pattern bug
From-SVN: r14044
1997-05-07 21:59:30 +00:00
Thomas Bushnell, n/BSG
edd45bd68c Recognize either / or - as a machine/suptype separator from uname -m to cope...
Recognize either / or - as a machine/suptype separator from uname -m
to cope with older systems that have the older uname.

From-SVN: r14026
1997-05-07 19:19:04 +00:00
Jason Merrill
4f988ea21d x
From-SVN: r14025
1997-05-06 23:29:28 +00:00
Mike Stump
db3cf6fb33 reformat a little to match GNU coding standards.
From-SVN: r14024
1997-05-06 23:05:54 +00:00
Mike Stump
e3da301da3 reformat a little to match GNU coding standards.
From-SVN: r14023
1997-05-06 22:59:57 +00:00
Mike Stump
c718078fad entered into RCS
From-SVN: r14022
1997-05-06 22:43:11 +00:00
Jason Merrill
beb53fb84a 91th Cygnus<->FSF quick merge
From-SVN: r14021
1997-05-06 20:14:14 +00:00
Jeff Law
065bbfe6bf h8300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
* h8300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
        (shift_one, shift_two): Set CC_NO_CARRY as needed.  Remove
        references to CC_OVERFLOW_0.
        (emit_a_shift): Similarly.
        * h8300.h (CC_OVERFLOW_0): Remove.
        * h8300.md: Use set_zn and set_znv for cc0 tracking.
        (bCC): Restore the comparison is CC_OVERFLOW_UNUSABLE is set and
        the comparison needs the overflow bits.

From-SVN: r14020
1997-05-05 20:42:06 -06:00
Jeff Law
d116300be8 mn10300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
* mn10300.c (notice_update_cc): Use CC_SET_ZN and CC_SET_ZNV.
        * mn10300.h (CC_NO_CARRY): Define.
        * mn10300.md: Use "set_zn" and "set_znv" to more accurately
        describe cc0 status.

From-SVN: r14019
1997-05-05 19:15:09 -06:00
Per Bothner
31b663c33a CLIX patch from Thomas Dickey via urs@akk.uni-karlsruhe.de (Urs Janssen).
From-SVN: r14016
1997-05-05 15:04:41 -07:00
Karl Berry
50cd2e68a0 (\onepageout): \ifcropmarks, center the page body.
Lost this when merged \croppageout with \onepageout.
Found by Arnold.

(\doprintindex): Do not bother to go into double column mode unless
there actually is a non-empty index.

(\begindoublecolumns): Include any existing \partialpage in the new one,
lest we lose a whole page of output.
Found by M J Morley <mjm@scs.leeds.ac.uk>.

(\chapternofonts): Remove spurious spaces, both in the definitions that
get output to the aux file(s) and in this macro.

Fix comments and rationalize whitespace in various other places.

From-SVN: r14015
1997-05-05 21:06:33 +00:00
Jason Merrill
3f76745e01 x
From-SVN: r14014
1997-05-03 01:50:08 +00:00
Doug Evans
630f5ae614 m32r.c (addr24_operand): Handle literals.
* m32r/m32r.c (addr24_operand): Handle literals.
	(m32r_output_function_prologue): Use IMMEDIATE_PREFIX.
	(m32r_output_function_epilogue): Likewise.  Use shorter add insn if
	able.

From-SVN: r14013
1997-05-02 19:30:02 +00:00
Doug Evans
0ebaa85d16 m32r.h (LIT_NAME_P): New macro.
* m32r/m32r.h (LIT_NAME_P): New macro.
	(SMALL_NAME_P): Use it.
	(ASM_OUTPUT_ALIGNED_COMMON): Don't output to scommon if -msdata=none.

From-SVN: r14012
1997-05-02 19:29:41 +00:00
David Edelsohn
189e03e322 rename ALIGN to RS6000_ALIGN to protect namespace
From-SVN: r14011
1997-05-02 18:39:25 +00:00
David Edelsohn
ed33106f8b rename ALIGN to RS6000_ALIGN to prtect namespace
From-SVN: r14010
1997-05-02 18:38:53 +00:00
Ian Lance Taylor
99c2b71fd5 Check the mode when checking values equivalent to sreg
From-SVN: r14009
1997-05-02 18:16:50 +00:00
Ian Lance Taylor
dbd7556ea4 Properly set mode for invalid_regno_rtx in reload_cse_invalidate_regno
From-SVN: r14008
1997-05-02 16:55:25 +00:00
Mike Stump
eb4484594f 91th Cygnus<->FSF quick merge
From-SVN: r14007
1997-05-02 01:42:58 +00:00
Jeff Law
ebcf525f58 * pa.md (call_internal_symref): Fix typo.
From-SVN: r14006
1997-05-01 15:03:33 -06:00