Commit Graph

9070 Commits

Author SHA1 Message Date
Doug Evans cd5fb1eea7 sparc.c (v9_regcmp_p): New function.
* sparc/sparc.c (v9_regcmp_p): New function.
	(v9_regcmp_op): Call it.
	* sparc/sparc.md (movsicc): New pattern.
	(movdicc, movsfcc, movdfcc, movtfcc): Likewise.

From-SVN: r8895
1995-02-08 20:07:24 +00:00
David J. MacKenzie 5b26b12e46 Add a blank in the #! line for 4.2BSD Dynix etc.
From-SVN: r8894
1995-02-08 15:05:06 +00:00
David J. MacKenzie 1c395186da add a space in #! for 4.2bsd dynix etc.
From-SVN: r8893
1995-02-08 15:03:05 +00:00
Jeff Law 2387b8d7af pa.md (call, call_value): Emit save of the PIC register with "emit_insn" before emitting the call insn itself.
* pa.md (call, call_value): Emit save of the PIC register
	with "emit_insn" before emitting the call insn itself.

From-SVN: r8892
1995-02-08 00:53:09 -07:00
Jim Wilson e553bfb99a (prepare_scc_operands, from_compare): Force constant 0 into
register for unsigned comparisons.

From-SVN: r8891
1995-02-07 12:57:00 -08:00
Jim Wilson 97b65a3e66 Correct errors in comments.
(CONDITIONAL_REGISTER_USAGE): Delete TARGET_NOSAVE support.
(TARGET_MAC, TARGET_TRYR0, TARGET_NOSAVE, TARGET_SMALLCALL,
TARGET_PARANOID, TARGET_RETR2, TARGET_SHORTADDR, TARGET_BSR): Delete.
(TARGET_SWITCHES): Delete above options.
(OVERRIDE_OPTIONS): Delete TARGET_BSR support.
(FUNCTION_BOUNDARY): Use 32 bit alignment when not TARGET_SMALLCODE.
(FIRST_RET_REG): Delete TARGET_RETR2 support.
(MODE_DISP_OK_[21]): Delete TARGET_TRYR0 support.
(EXTRA_CONSTRAINT_U): Delete.
(CONST_COSTS): For logical operations, give L constants cost 1.
(PRINT_OPERAND_PUNCT_VALID_P): Delete '*', '^', '!'.

From-SVN: r8890
1995-02-07 12:19:15 -08:00
Jim Wilson 5325c0fa57 Correct errors in comments.
(calc_live_regs, expand_acall): Delete TARGET_SMALLCALL support.
(need_slot): Add comment.  Delete test of INSN_ANNULLED_BRANCH_P.
(print_operand_address): Delete '*', '^', '!' support.
(synth_constant): Call zero_extend* instead of and*.  Call ashlsi3_k
instead of ashlsi3_n.
(prepare_scc_operands): Abort for NE case.
(output_move_double, output_far_jump, output_branch): Delete commented
out code.  Don't output assembler comments.
(gen_ashift): Don't call addsi3.
(fixit): Delete redundant test for QImode constants.
(hi_const): Delete TARGET_SHORTADDR support.
(find_barrier): Don't put constant pool between mova and its label.
(add_function, seen_function, bsr_operand, mac_operand,
fake_shift): Delete.
(sh_expand_prologue, expand_acall): Delete TARGET_BSR support.
(general_movsrc_operand): Don't reject non-I CONST_INT.

From-SVN: r8889
1995-02-07 12:18:43 -08:00
Jim Wilson 51bd623f2b Correct errors in comments. Delete all assembler comments.
Delete commented out patterns.  Delete all peepholes but two.
Delete all define_splits but one.  Delete all `combiner' patterns.
(mpy): Correct multiply latencies.
(needs_delay_slot, hit_stack, interrupt_function, in_delay_slot,
define_delay): Correct and/or simplify all reorg related definitions.
(addsi3_real): Delete.
(addsi3): Use arith_operand for argument 1.
(mulhisi3): Use arith_reg_operand not mac_operand.
(and_ffff, and_ff): Delete.
(andsi3): Handle constant 255 specially.
(rot*): Correct and/or simplify all rotate patterns.
(ashlsi3_k): Delete clobber of T bit.  Output add for 1 bit shift.
(ashlsi3_n, lshrsi3_n): Delete use of fake_shift.
(negc): Correct pattern by adding set of T bit.
(extend*): Delete 'u' and 'U' constraint cases.
(pop): Separate 'l' and 'x' constraint cases.
(movsi-1): Better code for move to T bit case.
(bsr, bsr_value, mac): Delete.

From-SVN: r8888
1995-02-07 12:18:09 -08:00
Doug Evans c8b3b7d665 (*): Give names to all anonymous patterns.
From-SVN: r8887
1995-02-07 19:23:24 +00:00
Stephen L Moshier e29eead5ce (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE): Remove tests for host == target
format and endianness.

From-SVN: r8886
1995-02-07 04:46:41 +00:00
Jim Wilson ca188f1679 (jump_optimize): When searching for a LOOP_END note to move,
stop if we find a LOOP_BEG note first.

From-SVN: r8885
1995-02-06 16:29:31 -08:00
Jim Wilson 4f2d367490 (alter_reg): New variable stack_slot.
(alter_reg): New variable stack_slot.  Apply anti
BYTES_BIG_ENDIAN correction to stack slot address stored in
spill_stack_slot.

From-SVN: r8884
1995-02-06 16:22:22 -08:00
Jim Wilson 70ef1c9e6d (STARTFILE_SPEC): Delete explicit /usr/ccs/lib/ pathnames.
From-SVN: r8883
1995-02-06 16:18:21 -08:00
Jim Wilson b27a0c3929 (movsf-1, movdf-1, movtf-1): Use 'F' not 'E'.
From-SVN: r8882
1995-02-06 15:31:41 -08:00
Jim Wilson 3385bb9103 (sh_function_arg): Don't reject unaligned structures.
(sh_function_arg_partial_nregs): Likewise.

From-SVN: r8881
1995-02-06 15:26:58 -08:00
Torbjorn Granlund 272627c184 (__udivsi3, __divsi3, __umodsi3, __modsi3):
Rewrite to actually work for more than a few small operands,
and to be reasonably small.
(__mulsi3): Eliminate usage of link register (i.e. a6).
(shift patterns): Delete.
(__umulsi3): Delete.

From-SVN: r8880
1995-02-06 21:57:18 +00:00
Torbjorn Granlund d35a9101b9 (LIB1ASMFUNCS): Remove _umulsi3.
From-SVN: r8879
1995-02-06 21:56:55 +00:00
Torbjorn Granlund 1371378157 (RTX_COSTS): Rewrite.
From-SVN: r8878
1995-02-06 21:51:57 +00:00
Jim Wilson a343d37151 (va_start): Add __builtin_next_arg call.
From-SVN: r8877
1995-02-06 12:22:23 -08:00
Doug Evans 29d306d0cb (DBX_DEBUGGING_INFO): Define.
(PREFERRED_DEBUGGING_TYPE): Define.

From-SVN: r8876
1995-02-06 18:01:28 +00:00
Jeff Law cc5c9c4857 pa.md: Replace "misc" attribute with "multi" in recentlyadded soft-float code.
* pa.md: Replace "misc" attribute with "multi" in recentlyadded
	soft-float code.

From-SVN: r8875
1995-02-06 10:00:20 -07:00
Jeff Law 7ffe5e47da * pa-osf.h (TARGET_DEFAULT): Protect definition.
From-SVN: r8874
1995-02-06 09:57:29 -07:00
Ian Lance Taylor cfe8fed0ff Only include <stdio.h> and <stdlib.h> in <assert.h> for C++
From-SVN: r8873
1995-02-06 16:51:48 +00:00
Torbjorn Granlund 8919037ceb (globally): Use GEN_INT.
(emit_move_sequence): Use expand_inc instead of plus_constant
(generates less rtl).

From-SVN: r8872
1995-02-06 02:55:49 +00:00
Torbjorn Granlund 5dee33ac59 Use GEN_INT.
From-SVN: r8871
1995-02-06 02:55:24 +00:00
Torbjorn Granlund 6500b83fd2 (PREDICATE_CODES): Fix many errors. Enable.
From-SVN: r8870
1995-02-06 02:44:42 +00:00
Torbjorn Granlund 3296aff4d6 (RTX_COSTS): Add special cases for a plain 68000.
From-SVN: r8869
1995-02-06 02:42:29 +00:00
Torbjorn Granlund 71af73bb7f (mul_cost, div_cost): New variables.
(mul_widen_cost, mul_highpart_cost): New variables.
(init_expmed): Init new variables.
(expand_mult_highpart): New argument, MAX_COST.
Use new argument in several places.  Simplify code that tries
widening multiply variants.
(expand_divmod): New variables MAX_COST, EXTRA_COST.
Initialize MAX_COST dependent on REM_FLAG.
Calculate and pass cost in all calls of expand_mult_highpart.

From-SVN: r8868
1995-02-06 02:37:27 +00:00
Doug Evans 6697c6bf7f (dbxout_source_file): Clean up null tree pointer test. Update copyright.
From-SVN: r8867
1995-02-05 05:26:45 +00:00
Jim Wilson 2ec6afdde7 New file.
From-SVN: r8866
1995-02-04 10:16:09 -08:00
Jim Wilson ef012153e8 (TARGET_DEFAULT): Add #ifndef/#endif around define.
From-SVN: r8865
1995-02-04 10:07:27 -08:00
Jim Wilson e19ff60f84 (type attribute): Add fmadd.
(cpu attribute): Add r8000.
(umaddi+1, ..., umadddi+8): Add pattern for multiply accumulate.
(movdi): Legitimize addresses, just like movsi does.
(loadgp): New pattern for 64 bit ABI.
(shift patterns): Use INTVAL instead of XINT for constants.
(jump, tablejump_interal[12]): Add 64 bit ABI support.
(movsicc-8, ..., movsicc): Add patterns for conditional moves.

From-SVN: r8864
1995-02-04 10:06:11 -08:00
Jim Wilson 3356348747 (mips_isa_string): Add mips4 to comment.
(large_int): Delete code for handling 64 bit constants.
(mips_const_double_ok): For irix6, reject all floating point constants.
(mips_move_2words): Use dli not li for 64 bit constants.
Use dla not la for 64 bit addresses.
(output_block_move): Likewise.
(function_arg): Add support for 64bit ABI.
(override_options): Add support for mips4 and R8000.
(print_operand): Handle new modifiers 'B', 'b', 'T', 't'.
Make 'X' case work for 64 bit host.
(mips_output_filename): Use ASM_OUTPUT_FILENAME.
(mips_asm_file_start): Go to text section for 64bit ABI.
(compure_frame_size, save_restore_insns, function_prologue,
mips_expand_prologue, function_epilogue): Add support for 64 bit ABI.
(type_dependent_reg, mips_function_value): New functions.

From-SVN: r8863
1995-02-04 10:04:15 -08:00
Jim Wilson 516a2dfd6f (__PTR_TO_INT, __INT_TO_PTR): Delete.
(enum processor_type): Add R8000.
(mips_isa_string, CC1_SPEC): Add mips4 to comment.
(CONDITIONAL_REGISTER_USAGE): Use SUBTARGET_CONDITIONAL_REGISTER_USAGE.
(SUBTARGET_CONDITIONAL_REGISTER_USAGE): New macro.
(ASM_SPEC, LINK_SPEC, CPP_SPEC): Add mips4 support.
(MIPS_TEMP[12]_REGNUM): Change to avoid clobbering 64bit abi
parameter registers.
(SMALL_INT, SMALL_INT_UNSIGNED, CONST_OK_FOR_LETTER_P): Fix for 64
bit host.
(ABI_64BIT): New macro.
(REG_PARM_STACK_SPACE): Use UNITS_PER_WORD not 4.
(GO_IF_LEGITIMATE_ADDRESS, CONSTANT_ADDRESS_P, LEGITIMATE_CONSTANT,
LEGITIMIZE_ADDRESS): Don't allow CONST addresses for Irix6.
(ASM_OUTPUT_FILENAME): New macro.
(ASM_OUTPUT_ADDR_DIFF_ELT): Add 64 bit ABI support.

From-SVN: r8862
1995-02-04 10:02:46 -08:00
Jim Wilson 36f9f6c1e4 (IRIX): Sed - to _.
From-SVN: r8861
1995-02-04 09:59:47 -08:00
Jim Wilson c311f311c4 (*): Change __mips==3 to __mips>=3.
(sgidefs.h): Include if _MIPS_SIM is defined.
(va_start): Add support for 64 bit ABI.

From-SVN: r8860
1995-02-04 09:53:44 -08:00
Doug Evans 5604861b6f (dbxout_source_file): Don't switch to text section if in function with section attribute.
(dbxout_source_file): Don't switch to text section if
in function with section attribute.  Print Ltext label to correct
file (important on mips).

From-SVN: r8859
1995-02-04 15:31:23 +00:00
Michael Meissner 911f679c13 Do not reload reg2 under V.4 or eabi.
From-SVN: r8858
1995-02-03 22:41:38 +00:00
Michael Meissner 29bd4eb3e0 Fix indirect function pointers on eABI.
From-SVN: r8857
1995-02-03 19:45:16 +00:00
Jason Merrill 59be85d7bd Fix MI conversions
From-SVN: r8856
1995-02-03 03:45:07 +00:00
Michael Meissner 31117bfb57 Eliminate building libgcc1.a
From-SVN: r8855
1995-02-02 21:29:18 +00:00
Ian Lance Taylor afa1dec9c4 Fix bool test to permit spaces before the semicolon
From-SVN: r8854
1995-02-02 20:49:40 +00:00
Michael Meissner a81bd72fb2 Fix typo in smin/smax of floating point.
From-SVN: r8853
1995-02-02 17:17:47 +00:00
Michael Meissner 59cf442124 Add preliminary PowerPC eABI support.
From-SVN: r8852
1995-02-01 22:06:34 +00:00
Michael Meissner e3f1f2426d Add preliminary V.4 and eABI support.
From-SVN: r8851
1995-02-01 21:58:22 +00:00
Michael Meissner 4d30c36387 Add preliminary V.4 and eABI support.
From-SVN: r8850
1995-02-01 21:44:49 +00:00
Mike Stump 1038f4f99a 55th Cygnus<->FSF merge
From-SVN: r8849
1995-02-01 19:28:29 +00:00
Torbjorn Granlund 74356a720d (TARGET_SOFT_FLOAT): New macro.
(TARGET_SWITCHES, CPP_SPEC, CONDITIONAL_REGISTER_USAGE, FUNCTION_VALUE,
LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P, FUNCTION_ARG_REGNO_P,
FUNCTION_ARG, ASM_DECLARE_FUNCTION_NAME, GO_IF_LEGITIMATE_ADDRESS,
RTX_COSTS): Use TARGET_SOFT_FLOAT.
(REAL_ARITHMETIC): Define.
(ASM_OUTPUT_DOUBLE): Rewrite.
(ASM_OUTPUT_FLOAT): Rewrite.

From-SVN: r8848
1995-02-01 00:22:38 +00:00
Torbjorn Granlund 21302ab094 (singlemove_string): Make case with SFmode CONST_DOUBLE abort.
(print_operand): #ifdef out CONST_DOUBLE cases.

From-SVN: r8847
1995-02-01 00:21:49 +00:00
Torbjorn Granlund 925cf581e5 (*sf*, *df*, etc): Make all floating point patterns depend on ! TARGET_SOFT_FLOAT.
(movsi, movdi, movsf, movdf): Add patterns for TARGET_SOFT_FLOAT.
(SF and DF move): Use constraint 'E' instead of 'F'.

From-SVN: r8846
1995-02-01 00:20:45 +00:00