6849 Commits

Author SHA1 Message Date
Richard Kenner
ee249c090f (reload): Fix error in last change; compute MODE before it's used.
From-SVN: r6862
1994-03-23 20:10:41 -05:00
Jim Wilson
ec7a1dd2f8 (dbxout_parms): For parameter living in psuedo-reg that
was optimized away, use declared type instead of passed type.

From-SVN: r6861
1994-03-23 15:56:41 -08:00
Richard Kenner
71ef37f694 (get_condition): Exit if we don't recognize SET_SRC of a SET that
modifies OP0.

From-SVN: r6860
1994-03-23 18:54:09 -05:00
Mike Stump
51c184be09 30th Cygnus<->FSF merge.
From-SVN: r6859
1994-03-23 23:33:53 +00:00
Jim Wilson
d7a58f30d1 (mips_asm_file_start): Add comment on TARGET_GP_OPT code.
From-SVN: r6858
1994-03-23 14:28:28 -08:00
Richard Kenner
4635f74880 (simplify_rtx, case FLOAT_TRUNCATE): Simplify
case of (float_truncate (abs (float_extend X))).

From-SVN: r6857
1994-03-23 17:28:26 -05:00
Jim Wilson
a20dcf46c0 (va_start): Add call to builtin_next_arg.
From-SVN: r6856
1994-03-23 14:20:35 -08:00
Jim Wilson
117aea7ad8 (va_start): Pass LASTARG as a parameter to
builtin_next_arg.

From-SVN: r6855
1994-03-23 14:19:23 -08:00
Jim Wilson
c4dfe0fc06 (expand_builtin, BUILT_IN_NEXT_ARG case): Verify that
parameter is last named argument.

From-SVN: r6854
1994-03-23 14:16:55 -08:00
Jim Wilson
8d0aed4706 (init_decl_processing): Change builtin_next_arg type so
that it accepts any parameter instead of none.

From-SVN: r6853
1994-03-23 14:15:56 -08:00
Richard Kenner
ed1817c6d7 Change rfg's address.
From-SVN: r6852
1994-03-23 16:57:20 -05:00
Jim Wilson
ef392512ef (override_options): Delete unnecessary accidental comment.
From-SVN: r6851
1994-03-22 16:04:49 -08:00
Jim Wilson
5a5b76a224 (movsi): Add special handling for constants which are illegal addresses when pic.
(movsi): Add special handling for constants which are
illegal addresses when pic.
(tablejump_internal1, tablejump_internal2): Emit .cpadd when
TARGET_ABICALLS.  Adjust length to include .cpadd.

From-SVN: r6850
1994-03-22 16:03:38 -08:00
Jim Wilson
5de1e2cef4 (GO_IF_LEGITIMATE_ADDRESS): Also pretend that we have REG plus CONST_INT addresses by deleting an else.
(GO_IF_LEGITIMATE_ADDRESS): Also pretend that we have REG
plus CONST_INT addresses by deleting an else.
(CONSTANT_ADDRESS_P): When pic, don't accept addresses which are
symbol_ref plus a large integer.
(LEGITIMATE_PIC_OPERAND_P): Likewise.
(LEGITIMIZE_ADDRESS): When pic, convert addresses which are
symbol_reg plus a large integer, to reg plus a large integer.
(ASM_OUTPUT_ADDR_DIFF_ELT): Use .gpword instead of subtracting
labels.

From-SVN: r6849
1994-03-22 16:03:04 -08:00
Jim Wilson
508a48d1f4 (pic_address_needs_scratch): New function.
(override_options): Set flag_pic when TARGET_ABICALLS.

From-SVN: r6848
1994-03-22 16:02:25 -08:00
Jim Wilson
bc0989e960 (MIPS_DEFAULT_GVALUE): Define to zero.
From-SVN: r6847
1994-03-22 16:01:58 -08:00
Jim Wilson
0acefe5425 (TRAMPOLINE_TEMPLATE): Add `move $25,$3' for when TARGET_ABICALLS.
(TRAMPOLINE_TEMPLATE): Add `move $25,$3' for when
TARGET_ABICALLS.  Delete padding for 64 bit case.  Adjust offsets.
(TRAMPOLINE_SIZE): Increase from 9 to 10 words for 32 bit case.
(INITIALIZE_TRAMPOLINE): Increase offsets by 4 bytes for 32 bit case.

From-SVN: r6846
1994-03-22 15:57:28 -08:00
Michael Meissner
65624c8ef3 Provide HANDLE_PRAGMA_WEAK and ASM_OUTPUT_DEF.
From-SVN: r6845
1994-03-22 20:50:40 +00:00
Per Bothner
8fb0620c66 Make sstring buf extern (rather than "common").
From-SVN: r6844
1994-03-21 16:04:34 -08:00
Richard Kenner
e3a771613f (preserve_temp_slots): If argument is REG, see if it is address of a
temp slot we know about.

From-SVN: r6843
1994-03-21 17:15:32 -05:00
Richard Kenner
987c71d9bc (expand_expr, case ADDR_EXPR): Update temp slot address if we put it
in a register; mark result as pointer.

From-SVN: r6842
1994-03-21 17:14:41 -05:00
Jim Wilson
88bdba96d9 (source_label_number): New variable.
(dbxout_source_file): Use it.  Output an Ltext label.

From-SVN: r6841
1994-03-21 14:08:57 -08:00
Jim Wilson
a1a77352f6 (duplicate_decls): When pedantic, warn when any static
declaraction follows a non-static.

From-SVN: r6840
1994-03-21 14:07:03 -08:00
Jim Wilson
387fd02d7e (seq, sne, sgt, slt, sge, sle): Add support for
!TARGET_HARD_QUAD.

From-SVN: r6839
1994-03-21 14:05:05 -08:00
Richard Kenner
ce0e109b79 (reload): More accurately compute nongroup needs.
(reloads_conflict): New function.

From-SVN: r6838
1994-03-21 16:58:47 -05:00
Doug Evans
3bd4f3b8c9 (__builtin_saveregs): Fix return type.
From-SVN: r6837
1994-03-21 21:20:56 +00:00
Richard Kenner
6ab832bc31 (FIXED_REGNO_P): Treate global regs as fixed.
(CHEAP_REGNO): Renamed from CHEAP_REG.
(CHEAP_REG): New macro; user var in hard reg is cheap.
(COST): Pass RTL to CHEAP_REG, not regno.
(rtx_cost, case REG): Likewise.

From-SVN: r6836
1994-03-21 07:36:48 -05:00
Richard Kenner
a61e5d28e9 (PRINT_OPERAND): Print float infinity and NaN's as +/-99e999.
From-SVN: r6835
1994-03-20 19:38:40 -05:00
Richard Kenner
1e6c6f1118 (ALIGN_SYMTABLE_OFFSET): Define to align symbol table sections to a quadword boundary...
(ALIGN_SYMTABLE_OFFSET): Define to align symbol table sections to a
quadword boundary, to avoid alignment problems with native nm on
OSF1/1.3 and higher.

From-SVN: r6834
1994-03-20 17:42:01 -05:00
Richard Kenner
c9b03ca379 (update_headers): Align symbol table sections, using ALIGN_SYMTABLE_OFFSET.
(update_headers): Align symbol table sections, using
ALIGN_SYMTABLE_OFFSET. Provide a default definition which does no
alignment.

From-SVN: r6833
1994-03-20 17:41:13 -05:00
Richard Kenner
11147ebea5 (try_split): Rename third parameter as LAST.
(try_split): Rename third parameter as LAST.  Recursively call
try_split for each new insn created.

From-SVN: r6832
1994-03-20 06:50:18 -05:00
Richard Kenner
e048778fca (mark_used_regs_combine): Correct typo.
From-SVN: r6831
1994-03-20 06:38:17 -05:00
Richard Kenner
d6e283961c (CHECK_FLOAT_VALUE): Add missing continuation character.
From-SVN: r6830
1994-03-20 06:28:18 -05:00
Richard Kenner
0afbe93d23 (build_real): Add `overflow' var; pass to CHECK_FLOAT_VALUE.
From-SVN: r6829
1994-03-20 06:27:53 -05:00
Richard Kenner
d8a6c3ebeb (attrib): Use identifier' instead of IDENTIFIER' since names that
are (e.g.) typedef names are still OK.

From-SVN: r6828
1994-03-19 18:02:29 -05:00
Jim Wilson
eedd251f16 (expand_expr, case ABS_EXPR): Fix typo in last change.
From-SVN: r6827
1994-03-19 14:43:50 -08:00
Richard Kenner
6e25d15912 (newpat_used_regs): New variable.
(mark_used_regs_combine): New function.
(try_combine): Use them.
(reg_dead_at_p): Registers marked in newpat_used_regs must always be
considered to be live.

From-SVN: r6826
1994-03-19 17:13:23 -05:00
Richard Kenner
1c78fc5220 (GO_IF_INDEXABLE_BASE): Make compatible with m68k.h.
From-SVN: r6825
1994-03-19 08:44:44 -05:00
Richard Kenner
35a3523cbf (output_epilogue, insn_names): Write correct names for patterns before
first named pattern.

From-SVN: r6824
1994-03-19 08:35:45 -05:00
Richard Kenner
875fbf803b (SELECT_SECTION): Fix typo (arg names) in last change.
From-SVN: r6823
1994-03-19 07:13:32 -05:00
Richard Kenner
1ff1a2d220 (grokdeclarator): Use signed version of `sizetype' for type of array
index.

From-SVN: r6822
1994-03-19 06:29:25 -05:00
Richard Kenner
79c844cdca (const_binop): Avoid initialized aggregate local variables, for
antique compilers.

From-SVN: r6821
1994-03-19 06:25:26 -05:00
Jim Wilson
ed8969fa7d (SELECT_SECTION): Variables go in readonly data
only if the initializer is constant.

From-SVN: r6820
1994-03-18 15:43:00 -08:00
Jim Wilson
07aeab22c0 (assemble_variable): Likewise.
From-SVN: r6819
1994-03-18 15:31:17 -08:00
Richard Kenner
bdfd4e3106 (HARD_REGNO_MODE_OK): Allow DImode in FP registers.
(CONDITIONAL_REGISTER_USAGE): Delete ppcas mention from comment.
(RTX_COSTS): Costs based upon processor_type enum.

From-SVN: r6818
1994-03-18 17:53:28 -05:00
Richard Kenner
c764f757d5 (common_mode_defined): New variable.
(output_prolog): Define external common-mode calls.

From-SVN: r6817
1994-03-18 17:53:04 -05:00
Richard Kenner
8ffd9c51e4 (divmodsi4, udivsi3, divsi3, udivmodsi4): Add AIX common-mode cases.
(mulh_call, mull_call, divss_call, divus_call, quoss_call, quous_call):
AIX common-mode call patterns.
(ashlsi3): More TARGET_POWERPC to ! TARGET_POWER changes.
(addsf3, subsf3, mulsf3, divsf3, etc.): Change TARGET_POWER
to ! TARGET_POWERPC.
(fix_truncdfsi2): Use POWER/2 and PowerPC FP convert instruction.
(fpcvtsi): New pattern.
(mulsidi3): Add AIX common-mode case, add imul attribute to POWER
pattern, add PowerPC pattern, flag input operands as commutative.
(smulsi3_highpart): Add AIX common-mode case.
(movsi matcher): Add mtjmpr attribute to ! TARGET_POWER case.
(movsf): Clean up load from memory or integer register test.
(movdi matcher): Add FP register support.
(smulsi3_highpart): New patterns.
(umulsi3_highpart_power): New pattern.

From-SVN: r6816
1994-03-18 17:52:27 -05:00
Jim Wilson
1052937bba (SELECT_RTX_SECTION): Add.
(ASM_SPEC): Pass -K to assembler when PIC.

From-SVN: r6815
1994-03-18 12:47:03 -08:00
Jim Wilson
445ae75f12 (SELECT_RTX_SECTION): Delete.
From-SVN: r6814
1994-03-18 12:46:20 -08:00
Jim Wilson
2d879387e2 (include_prefix): New variable.
(process_command): Add path/include to include_prefix when see a
-Bpath option.
(do_spec_1, case 'I'): Pass include_prefix directories to cpp with
the -isystem option.

From-SVN: r6813
1994-03-18 12:37:22 -08:00