Commit Graph

160 Commits

Author SHA1 Message Date
Richard Kenner
c1950f1cd1 (LINK_SPEC): Don't pass -btextro if -r.
From-SVN: r6058
1993-11-10 18:44:41 -05:00
Richard Kenner
d9d934ef7e (sqrtdf2): Fix typo in extra condition.
(plus/eq pattern): Fix typo: "addze" was "adddze".

From-SVN: r6055
1993-11-10 17:52:16 -05:00
Richard Kenner
3fc2151db4 Add blank line in comment.
From-SVN: r6052
1993-11-10 15:27:54 -05:00
Richard Stallman
6355b14013 (ASM_FILE_START): Emit filename directive.
From-SVN: r6041
1993-11-09 00:03:33 +00:00
Richard Stallman
a5b1eb34fb (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT): Use
REAL_ARITHMETIC macros including hex for special values.

From-SVN: r6012
1993-11-05 20:27:25 +00:00
Richard Kenner
4eae5fe18f (movdf): Don't have reload choose alternative of loading a constant
into a GPR.

From-SVN: r6001
1993-11-04 19:02:52 -05:00
Richard Kenner
baf97f8652 Add set_attr for "length" when we are going to split an insn at output time.
From-SVN: r5968
1993-11-01 18:52:43 -05:00
Richard Kenner
af87a13efc (bdn/bdz): Fix typo in checking for when we need to split.
From-SVN: r5967
1993-11-01 18:35:01 -05:00
Richard Kenner
68b40e7e3d (mulsi3): Make alternatives be "mq" and "no_mq" instead of "power" and "powerpc".
(mulsi3): Make alternatives be "mq" and "no_mq" instead of "power" and
"powerpc".  Only allow one pattern (either with or without the clobber
of MQ) to match.

From-SVN: r5966
1993-11-01 15:44:25 -05:00
Richard Kenner
b26c8351bc (addsf3, subsf3, mulsf3, divsf3): Put POWERPC first, then POWER.
From-SVN: r5932
1993-10-29 12:55:00 -04:00
Richard Kenner
b73d04f2fd (define_function_unit): Add missing blank lines.
From-SVN: r5920
1993-10-27 17:24:53 -04:00
Richard Kenner
3389831578 (rs6000_override_options): Support -mcpu=rsc1.
From-SVN: r5904
1993-10-26 19:05:26 -04:00
Richard Kenner
78b8d850dc (movsi): Can copy a TOC address into a register.
From-SVN: r5902
1993-10-26 18:58:16 -04:00
Richard Kenner
ec559d0c11 (HARD_REGNO_MODE_OK): Multi-word objects cannot go into MQ, LR, or CTR.
From-SVN: r5867
1993-10-21 21:55:58 -04:00
Richard Kenner
a0292f624b (call): Don't use CROR or NOP; just use "%.".
From-SVN: r5852
1993-10-20 22:00:18 -04:00
Richard Kenner
a85d226b23 (print_operand, case '.'): Use RS6000_CALL_GLUE instead of RS6000_CROR_BIT_NUMBER.
(print_operand, case '.'): Use RS6000_CALL_GLUE instead of
RS6000_CROR_BIT_NUMBER.
(print_operand, case 'E', case 0): Use "return", not "break".

From-SVN: r5851
1993-10-20 21:59:50 -04:00
Richard Kenner
0da40b09e1 (RS6000_CROR_BIT_NUMBER): Deleted.
(RS6000_CALL_GLUE): New macro.

From-SVN: r5850
1993-10-20 21:59:13 -04:00
Richard Kenner
98c131c382 (define_function_unit): Add support for RIOS2 asymmetric integer
units.

From-SVN: r5813
1993-10-19 18:09:04 -04:00
Richard Kenner
71d2371f87 Fix typo: had "xubfic" instead of "subfic".
From-SVN: r5787
1993-10-13 21:51:33 -04:00
Richard Kenner
ca7f5001c8 Update define_function_units.
Put both old and new mnemonics in all templates.
Add target tests to pattern conditional field throughout.
(one_cmplsi2): Make POWER and PowerPC variants.
(mulsi3): Convert to define_expand which calls appropriate POWER or PowerPC
pattern.
(divsi3, udivsi3): Add patterns for PowerPC case.  Update divsi3 define_expand
for PowerPC case.
(ashlsi3, lshrsi3, ashrsi3, extendqisi2, extendqihi2): Convert to
define_expand which calls appropriate POWER or PowerPC pattern.
(floating-point): Add PowerPC single-precision FP, and SF/DF sqrt insns for
603, 604, 620.
(call insns): Use "nop" for magic TOC restore.
(move data, nop): Use PowerPC extended mnemonics.

From-SVN: r5748
1993-10-12 08:05:10 -04:00
Richard Kenner
85638c0d68 (rs6000_override_options): Use new TARGET flags and add some more cpu choices.
(output_prolog, output_epilog): Support new mnemonics and avoid using
lm/stm when not POWER.

From-SVN: r5747
1993-10-12 08:03:47 -04:00
Richard Kenner
6febd5819d (MASK and TARGET): Add new flags for POWER2 and PowerPC with square root.
(ASSEMBLER_DIALECT): New macro.
(CONDITIONAL_REGISTER_USAGE): Set MQ register fixed if not POWER.
(SHIFT_COUNT_TRUNCATED): Conditional on POWER.
(ASM_OUTPUT_REG_{PUSH,POP}): Mnemonics dependencies.

From-SVN: r5746
1993-10-12 08:03:05 -04:00
Richard Kenner
5e2e293640 Initial revision
From-SVN: r5745
1993-10-12 08:02:10 -04:00
Richard Kenner
d969caf829 Define SHIFT_COUNT_TRUNCATED to have a value of 1.
From-SVN: r5732
1993-10-11 07:43:24 -04:00
Doug Evans
65c4237934 (CPP_PREDEFINES): Add system/cpu/machine assertions where missing.
From-SVN: r5557
1993-10-02 08:55:06 +00:00
Richard Kenner
f5a2889838 (reg_or_short_operand): Remove redundant test.
From-SVN: r5535
1993-09-29 18:46:53 -04:00
Richard Kenner
9a63901fb7 Use WORD_REGISTER_OPERATION and LOAD_EXTEND_OP and delete
BYTE_LOADS_{SIGN,ZERO}_EXTEND.

From-SVN: r5477
1993-09-25 08:29:59 -04:00
Richard Kenner
5738a80a2e (rs6000_override_options): Fix typo.
From-SVN: r5370
1993-09-19 16:30:06 -04:00
Richard Kenner
4652f1d455 (function_unit fpu2): Fix typo: had `rios12'.
From-SVN: r5369
1993-09-19 16:26:39 -04:00
Richard Kenner
e477bbc768 (PREDICATE_CODES): Fix more typos.
From-SVN: r5368
1993-09-19 16:19:55 -04:00
Richard Kenner
2661cdd98d (attribute "cpu"): Change from "rios" to "rios1"; all uses changed.
From-SVN: r5362
1993-09-19 11:44:28 -04:00
Richard Kenner
49947f1830 (rs6000_override_options): Change processor type to "rios1"; allow "rios" as synonym.
(rs6000_override_options): Change processor type to "rios1"; allow "rios"
as synonym.
Add synonyms for "mpc6xx".

From-SVN: r5361
1993-09-19 11:43:53 -04:00
Richard Kenner
f86fe1fbd3 (enum processor_type): Change from RIOS to RIOS1.
(PROCESSOR_DEFAULT): Likewise.

From-SVN: r5360
1993-09-19 11:43:02 -04:00
Richard Kenner
f863464496 (PREDICATE_CODES): Fix typos and add missing entries.
From-SVN: r5356
1993-09-19 09:08:00 -04:00
Richard Kenner
cfb557c409 (define_attr): Expand list of instruction attributes.
(define_function_unit): Compute delay information based upon processor type
and expand functional unit types.
(mulsi3, divsi3, divmodsi4, divsf3, divdf3, muldf3, movsf): Use expanded
attributes.
(load with update): Likewise.

From-SVN: r5284
1993-09-08 10:50:35 -04:00
Richard Kenner
5248c9618c (rs6000_cpu, rs6000_cpu_string): New variables.
(rs6000_override_options): New function.

From-SVN: r5283
1993-09-08 10:49:49 -04:00
Richard Kenner
fb623df501 (MASK_*, TARGET_*): Add target masks and tests.
(TARGET_SWITCHES): Add target switches for various architectures and mnemonics
options.
(TARGET_OPTIONS): Add cpu type as special target option.
(OVERRIDE_OPTIONS): Call rs6000_override_options to decipher.

From-SVN: r5282
1993-09-08 10:49:18 -04:00
Richard Kenner
76229ac8db (print_operand): Convert fprintf of single letters to putc and convert fprintf of constant strings to fputs.
(print_operand): Convert fprintf of single letters to putc and convert
fprintf of constant strings to fputs.
Output '%u' operand as hexadecimal.

From-SVN: r5260
1993-09-05 06:44:00 -04:00
Richard Kenner
9d436547f7 Clean up case and remove leading zeros from hex constants.
From-SVN: r5248
1993-09-01 21:57:02 -04:00
Jim Wilson
dcac138d8e (truncdfsf2): Round to single instead of doing nothing.
From-SVN: r5247
1993-09-01 16:57:46 -07:00
Richard Kenner
e7113111af (movdf): Simplify by taking advantage of having SECONDARY_MEMORY_NEEDED.
Fix bugs relating to order in which moves are done.

From-SVN: r5243
1993-09-01 18:42:37 -04:00
Richard Kenner
7ea555a4fc (SECONDARY_MEMORY_NEEDED): New macro.
From-SVN: r5242
1993-09-01 18:41:53 -04:00
Richard Kenner
eb4e800377 (input_operand): Allow "easy" FP constants.
From-SVN: r5241
1993-09-01 18:41:28 -04:00
Richard Kenner
9d7877e3c8 (zero_extendqisi2...
(zero_extendqisi2, zero_extendqihi2): Change anonymous patterns to use 16-bit
and 32-bit hexadecimal values and masks instead of bit ranges if constant.
(rotlsi3, lshrsi3, move condition codes, scc insns): Likewise.

From-SVN: r5231
1993-08-31 06:35:25 -04:00
Richard Kenner
37c37a579c (output_toc): Use TARGET_NO_FP_IN_TOC.
From-SVN: r5227
1993-08-29 18:34:12 -04:00
Richard Kenner
72847b95da (TARGET_NO_FP_IN_TOC): New; deleted TARGET_FP_IN_TOC.
(TARGET_SWITCHES): Rearrange to have three TOC choices.
(ASM_OUTPUT_SPECIAL_POOL_ENTRY): Use TARGET_NO_FP_IN_TOC.

From-SVN: r5226
1993-08-29 18:33:46 -04:00
Richard Kenner
561260fe80 (LINK_SPEC): Add -bexport:/usr/lib/libg.exp when -g.
From-SVN: r5220
1993-08-27 15:43:01 -04:00
Jim Wilson
642a35f1b4 (TARGET_MINIMAL_TOC): New macro.
(TARGET_SWITCHES): Add -mminimal-toc and -mno-minimal-toc.
(ELIMINABLE_REGS): Add elimination for r30.
(CAN_ELIMINATE): Add case for r30.
(INITIAL_ELIMINATION_OFFSET): Add case for r30.
(toc_section): When TARET_MINIMAL_TOC, initialize toc_table.

From-SVN: r5219
1993-08-27 10:16:17 -07:00
Jim Wilson
1875cc8859 (print_operand_address): When TARGET_MINIMAL_TOC, use r30 instead of r2 for TOC references.
(print_operand_address): When TARGET_MINIMAL_TOC, use
r30 instead of r2 for TOC references.
(output_prologue): If TARGET_MINIMAL_TOC, and the constant pool
is needed, then setup r30.
(output_toc): When TARGET_MINIMAL_TOC, use .long instead of .tc.

From-SVN: r5218
1993-08-27 10:15:28 -07:00
Richard Kenner
53322b0c5f (output_{pro,epi}log): Don't need no-ops after calls to functions to
save and restore FP regs.

From-SVN: r5211
1993-08-24 18:36:11 -04:00