Commit Graph

7574 Commits

Author SHA1 Message Date
Richard Kenner
8ddae3488d (significand_size): New function.
From-SVN: r7387
1994-05-30 10:34:11 -04:00
Richard Kenner
a48fb61b5b (expand_float): Avoid double-rounding when float is is narrower than
int.

From-SVN: r7386
1994-05-30 10:33:41 -04:00
Richard Kenner
344a822046 (jump_optimize): When deleting unneeded stack adjusts or mem-mem
copies, use delete_computation.

From-SVN: r7385
1994-05-29 16:24:15 -04:00
Richard Kenner
180b8e4bf1 (force_to_mode): NEXT_SELECT is true for NEG.
Only exit quickly if X is narrower than MODE and MASK has all bits in X's
mode set.
(force_to_mode, case SUBREG): Don't check for WORD_REGISTER_OPERATIONS.
(force_to_mode, case NEG): Special-case test for low-order bit.

From-SVN: r7384
1994-05-29 16:03:08 -04:00
Richard Kenner
31001f7228 (volatile_insn_p): Call ourselves in recursive scan.
From-SVN: r7383
1994-05-29 15:58:14 -04:00
Richard Kenner
9d4e73d622 (init...
(init, compstmt, stmt, all_iter_stmt_with_decl): If the lookahead
token is a constant and we need to pop the momentary obstack, don't
free it.

From-SVN: r7382
1994-05-28 22:44:55 -04:00
Richard Kenner
d3b35d7584 (expand_end_case): Have INDEX_TYPE track conversions done to
INDEX_EXPR.

From-SVN: r7381
1994-05-28 19:03:12 -04:00
Torbjorn Granlund
7d558bfe5f (call): Force address into register in non-symbol case.
(call_value): Likewise.

From-SVN: r7380
1994-05-28 10:25:01 +00:00
Doug Evans
7f21d440de toplev.c (compile_file): Call init_regs after `word_mode' is valid.
* toplev.c (compile_file): Call init_regs after `word_mode' is valid.
	* regclass.c (init_reg_modes): If choose_hard_reg_mode can't find a
	valid mode, fall back to word_mode.

From-SVN: r7379
1994-05-27 23:29:18 +00:00
Doug Evans
0304dfbb67 expr.c (use_reg): Fix recording of USE information.
* expr.c (use_reg): Fix recording of USE information.
	(use_regs): Likewise.
	Delete argument `reg'.  All callers changed.
	* expr.h (use_regs): Update prototype.
	* calls.c (expand_call): Update call to use_regs.  Call use_reg
	if parm is wholly in registers.

From-SVN: r7378
1994-05-27 23:27:50 +00:00
Richard Kenner
869c489d35 (RTX_COSTS): Update PPC603 and PPC604 values.
From-SVN: r7377
1994-05-27 18:18:17 -04:00
Richard Kenner
4371f8afce (zero_extendqidi2, zero_extendhidi2): Use rldicl instruction.
From-SVN: r7376
1994-05-27 18:17:52 -04:00
Richard Kenner
2b5c5d028f (DIR_SEPARATOR): New macro.
From-SVN: r7375
1994-05-27 17:56:04 -04:00
Richard Kenner
4326de0b25 (PCC_STATIC_STRUCT_RETURN): No longer defined.
From-SVN: r7374
1994-05-27 17:44:59 -04:00
Richard Kenner
e4c83b5283 Update to handle `ginclude' subdirectory when compiling libgcc2.
From-SVN: r7373
1994-05-27 17:36:47 -04:00
Richard Kenner
8c4ff866d8 (print_operand_address): print_operand_address creates PLUS-rtls for
internal use, so it has to handle them.

From-SVN: r7372
1994-05-27 17:30:31 -04:00
Richard Kenner
6ded32282b (find_reloads): Revert to old code and change secondary reloads to
RELOAD_FOR_OPERAND_ADDRESS too.

From-SVN: r7371
1994-05-27 16:47:01 -04:00
Richard Kenner
8080be5fdd (try_combine): Don't make complemented NOT for constant out of range.
From-SVN: r7370
1994-05-27 16:42:08 -04:00
Richard Kenner
d46f42a50a (iordi3): Rename ior_operand to or_operand.
(xordi3): Use or_operand and add second alternative.
(eqv): Only accept registers.

From-SVN: r7369
1994-05-27 16:38:54 -04:00
Richard Kenner
8395de26d0 (PREDICATE_CODES): Rename ior_operand to or_operand.
From-SVN: r7368
1994-05-27 16:38:07 -04:00
Richard Kenner
c7def335e7 (or_operand): Renamed from ior_operand.
From-SVN: r7367
1994-05-27 16:37:42 -04:00
Richard Kenner
ba6da62704 (assign_parms): Set REG_USERVAR_P when parm is passed by invisible
reference but can live in register.

From-SVN: r7366
1994-05-27 16:13:41 -04:00
Richard Kenner
d720b9d197 (expand_expr...
(expand_expr, case CONSTRUCTOR): If constant and large enough for
memcpy to be used, build constructor into static memory.

From-SVN: r7365
1994-05-27 14:56:31 -04:00
Richard Kenner
d0c84fdaa3 Add define_split for sign-extended PLUS of a MULT of an SImode
comparison.

From-SVN: r7364
1994-05-27 14:15:25 -04:00
Richard Kenner
7e4dc511b0 (simplify_comparison): Narrow comparison for AND's that are ZERO_EXTENDs.
Can widen for all comparisons if inputs are both sign extended.

From-SVN: r7363
1994-05-27 13:36:40 -04:00
Richard Kenner
5f40cc2da4 (reload_as_needed): Update spill_reg_order once we sort spill_regs.
From-SVN: r7362
1994-05-27 13:32:13 -04:00
Richard Kenner
fc0e5bd00e (local_alloc): Fix typo in last change.
From-SVN: r7361
1994-05-27 11:53:02 -04:00
Richard Kenner
5c72c15e2e Add define_split for sign-extended PLUS of an SImode comparison;
change comparison to DImode.

From-SVN: r7360
1994-05-27 07:26:20 -04:00
Richard Kenner
1b0cb6fc46 (expand_end_case): Use old type of INDEX_EXPR when making a constant.
From-SVN: r7359
1994-05-27 06:33:04 -04:00
Richard Kenner
3061cc5422 (requires_inout): Renamed from requires_inout_p and returns number of alternatives that require a match.
(requires_inout): Renamed from requires_inout_p and returns number of
alternatives that require a match.
(block_alloc): Use new function and handle case where all alternatives have
some operand that must match operand 0.

From-SVN: r7358
1994-05-27 06:27:03 -04:00
Richard Kenner
a6ba1470c2 (qty_sugg_compare_1): Fix typo in last change.
From-SVN: r7357
1994-05-27 06:16:16 -04:00
Richard Kenner
51b86d8b0d (qty_phys_num{,_copy}_sugg): New variables.
(qty_phys_has{,_copy}_sugg): Deleted.
(qty_sugg_compare{,_1}): New functions.
(local_alloc): Allocate and init new vars instead of deleted ones.
(block_alloc): Update and use new vars.
Order quantities using new functions when allocating quantities with
suggested registers.
(combine_regs, find_free_reg): Use new vars to count number of suggestions.

From-SVN: r7356
1994-05-27 06:03:04 -04:00
Richard Kenner
c03c471173 (jump_optimize): When looking for an `if' statement that takes two insns to compute a result using a temporary...
(jump_optimize): When looking for an `if' statement that takes two
insns to compute a result using a temporary, allow the temporary to be
a SUBREG.

From-SVN: r7355
1994-05-26 18:58:47 -04:00
Richard Kenner
35bb77fd39 (CANONICALIZE_COMPARISON): New macro.
From-SVN: r7354
1994-05-26 18:49:06 -04:00
Richard Kenner
b7a775b20b (simplify_comparison): Call CANONICALIZE_COMPARISON, if defined.
From-SVN: r7353
1994-05-26 18:48:18 -04:00
Ian Lance Taylor
e53076d690 Protect bool in curses.h
From-SVN: r7352
1994-05-26 22:37:59 +00:00
Richard Kenner
d5a4ebdc8f (simplify_if_then_else): Don't make (mult (cond)) in simple case;
leave as IF_THEN_ELSE instead.

From-SVN: r7351
1994-05-26 18:03:39 -04:00
Ian Lance Taylor
8322308e93 Protect __P in math.h and floatingpoint.h.
From-SVN: r7350
1994-05-26 16:23:31 +00:00
Richard Kenner
7831ef177b (expand_divmod): Correctly set CAN_CLOBBER_OP0 when we've converted OP0
to COMPUTE_MODE.

From-SVN: r7349
1994-05-26 11:55:34 -04:00
Ian Lance Taylor
7beec59e8a Don't pass $(srcdir) to fixincludes scripts; don't explicitly copy files
which are now copied by ${required} code.

From-SVN: r7348
1994-05-26 15:50:35 +00:00
Ian Lance Taylor
eb3af43c24 Don't pass $(srcdir) to fixincludes scripts
From-SVN: r7347
1994-05-26 15:50:13 +00:00
Jim Wilson
d902c7ead3 (expand_exit_loop_if_false): Emit conditional jump around
unconditional loop exit instead of conditional loop exit.

From-SVN: r7346
1994-05-20 09:59:51 -07:00
Jim Wilson
f6709c70a8 (output_prolog): Use multiple fputs calls instead of
one call with multiple strings.

From-SVN: r7345
1994-05-20 09:53:46 -07:00
Jim Wilson
34ab957bb3 (STARTFILE_SPEC, LIB_SPEC): Define.
From-SVN: r7344
1994-05-20 09:50:02 -07:00
Jim Wilson
5c43aed895 (MAKE_LINE_SAFE): Delete.
(ASM_OUTPUT_LBB, ASM_OUTPUT_LBE): Don't use MAKE_LINE_SAFE.

From-SVN: r7343
1994-05-20 09:48:11 -07:00
Richard Stallman
6399ee020f (basic_machine): Accept cxux*.
From-SVN: r7342
1994-05-20 05:29:36 +00:00
Mike Stump
ef5057f84d calls.c (expand_call): Only destroy temps here, if -fshort-temps is given.
* calls.c (expand_call): Only destroy temps here, if -fshort-temps
        is given.

From-SVN: r7341
1994-05-19 23:14:04 +00:00
Richard Stallman
cb4a4241cf Fix unrecognized os error message.
From-SVN: r7340
1994-05-19 23:08:12 +00:00
Richard Kenner
8aea655f0a (emit_reload_insns): When seeing if an equivalent register can have it's output reload deleted...
(emit_reload_insns): When seeing if an equivalent register can have
it's output reload deleted, check for REG_DEAD notes for reload_in
instead of calling dead_or_set_p.

From-SVN: r7339
1994-05-19 17:46:31 -04:00
Richard Kenner
9847c2f677 (operand_subword): Fix arg of REAL_VALUE_TO_TARGET_SINGLE and ..._DOUBLE.
(operand_subword): Fix arg of REAL_VALUE_TO_TARGET_SINGLE and
.._DOUBLE.  Permit float subword extraction when host's word width iswider than target's.

From-SVN: r7338
1994-05-19 16:38:15 -04:00