Richard Stallman [Tue, 9 Mar 1993 00:11:33 +0000 (00:11 +0000)]
(record_asm_reg_life): Cast class to int for indexing.
From-SVN: r3682
Richard Stallman [Tue, 9 Mar 1993 00:10:48 +0000 (00:10 +0000)]
(PUSH_DERIVED_LEVEL): Cast enumm constants to int.
From-SVN: r3681
Richard Kenner [Mon, 8 Mar 1993 21:57:16 +0000 (16:57 -0500)]
(cse_gen_binary, simplify_plus_minus): New functions.
(find_best_addr): Use cse_gen_binary.
(simplify_binary_operation, fold_rtx): Likewise.
Remove most special-cases for PLUS and MINUS and call
simplify_plus_minus instead.
Clean up some tests for FP.
From-SVN: r3680
Richard Stallman [Mon, 8 Mar 1993 21:31:07 +0000 (21:31 +0000)]
(make_decl_rtl): Handle flag_volatile_global.
From-SVN: r3679
Richard Stallman [Mon, 8 Mar 1993 21:29:49 +0000 (21:29 +0000)]
(flag_volatile_global): New variable.
(f_options): Add option for it.
From-SVN: r3678
Richard Stallman [Mon, 8 Mar 1993 21:17:33 +0000 (21:17 +0000)]
(really_start_method): Always use OBJC_GEN_METHOD_LABEL.
Pass method_slot as additional arg.
(OBJC_GEN_METHOD_LABEL): Add default definition.
From-SVN: r3677
Richard Stallman [Mon, 8 Mar 1993 21:13:00 +0000 (21:13 +0000)]
(OBJC_GEN_METHOD_LABEL): Accept additional arg.
From-SVN: r3676
Richard Kenner [Mon, 8 Mar 1993 12:24:14 +0000 (07:24 -0500)]
Add prototypes for static functions.
(struct cse_basic_block_data): Move to front of file since it constains
struct used in a prototype.
(refers_to_p, find_best_addr): Now static.
From-SVN: r3675
Richard Kenner [Mon, 8 Mar 1993 12:23:19 +0000 (07:23 -0500)]
Add prototypes for static functions.
(init_libfuncs): Put args in proper order.
From-SVN: r3674
Richard Kenner [Mon, 8 Mar 1993 12:22:39 +0000 (07:22 -0500)]
Clean up prototypes for functions in expr.c and optabs.c and add some
missing ones.
From-SVN: r3673
Richard Kenner [Sun, 7 Mar 1993 12:59:21 +0000 (07:59 -0500)]
Add prototypes for static functions.
(fill_simple_delay_slots): Add missing declaration of arg.
From-SVN: r3672
Richard Kenner [Sat, 6 Mar 1993 22:52:30 +0000 (17:52 -0500)]
(write_test_expr): Use INSN_CODE == -2, not 0, for constant
attributes.
From-SVN: r3671
Richard Stallman [Sat, 6 Mar 1993 20:09:57 +0000 (20:09 +0000)]
(choose_reload_regs): Handle SUBREG in reload_earlyclobber
when matching output reloads for setting reload_when_needed.
From-SVN: r3670
Richard Kenner [Sat, 6 Mar 1993 13:42:58 +0000 (08:42 -0500)]
Add prototypes in forward declarations.
Add some missing parameters to a few calls.
From-SVN: r3669
Richard Kenner [Sat, 6 Mar 1993 12:42:54 +0000 (07:42 -0500)]
(expand_call): Fix typo in unaligned code.
From-SVN: r3668
Roland McGrath [Sat, 6 Mar 1993 08:19:15 +0000 (08:19 +0000)]
Initial revision
From-SVN: r3667
Roland McGrath [Sat, 6 Mar 1993 08:14:18 +0000 (08:14 +0000)]
entered into RCS
From-SVN: r3666
Roland McGrath [Sat, 6 Mar 1993 08:13:58 +0000 (08:13 +0000)]
Initial revision
From-SVN: r3665
Roland McGrath [Sat, 6 Mar 1993 08:07:57 +0000 (08:07 +0000)]
entered into RCS
From-SVN: r3664
Richard Stallman [Sat, 6 Mar 1993 00:48:19 +0000 (00:48 +0000)]
(expand_assignment): Special handling for storing in RESULT_DECL.
From-SVN: r3663
Richard Kenner [Fri, 5 Mar 1993 23:41:22 +0000 (18:41 -0500)]
Add new define_split for doing sign-extended adds of some large
constants using sNaddl.
From-SVN: r3662
Richard Kenner [Fri, 5 Mar 1993 22:52:35 +0000 (17:52 -0500)]
(simplify_binary_operation): Move integer CONST_DOUBLE folding out of REAL_IS_NOT_DOUBLE conditional.
(simplify_binary_operation): Move integer CONST_DOUBLE folding out of
REAL_IS_NOT_DOUBLE conditional.
(simplify_relational_operation): Put float CONST_DOUBLE folding under a
REAL_IS_NOT_DOUBLE conditional.
Add folding for integer CONST_DOUBLE comparisons.
From-SVN: r3661
Richard Kenner [Fri, 5 Mar 1993 22:37:11 +0000 (17:37 -0500)]
(fixup_var_refs_insns): If SMALL_REGISTER_CLASSES...
(fixup_var_refs_insns): If SMALL_REGISTER_CLASSES, ensure we don't put
any insns between the setting of the function return register and it's use.
From-SVN: r3660
Jeff Law [Fri, 5 Mar 1993 20:13:59 +0000 (13:13 -0700)]
pa.h (FIXED_REGISTERS): %r2 is no longer fixed.
* pa.h (FIXED_REGISTERS): %r2 is no longer fixed.
(REG_ALLOC_ORDER): Treat %r2 as a caller-saved allocatable
register. %r30 is fixed and therefore a "special" register.
%fr22-%fr31 are caller-saved, so allocate them before the
callee-saved 1.1 fp registers. Allocate fp registers before
general registers. Fix typo for register 79.
* pa.h (FIRST_PSEUDO_REGISTER): Update to take into account
registers which are no longer known to the compiler.
(FIXED_REGISTERS): Likewise.
(CALL_USED_REGISTERS): Likewise.
(HARD_REGNO_NREGS): Likewise.
(HARD_REGNO_MODE_OK): Likewise.
(REGNO_REG_CLASS): Likewise.
(FUNCTION_VALUE): Likewise.
(LIBCALL_VALUE): Likewise.
(FUNCTION_VALUE_REGNO_P): Likewise.
(FUNCTION_ARG_REGNO_P): Likewise.
(FUNCTION_ARG): Likewise.
(REGNO_OK_FOR_FP_P): Likewise.
(REGISTER_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise. Add %r1 to GENERAL_OR_FP_REGS
and GENERAL_OR_SNAKE_FP_REGS.
(REG_ALLOC_ORDER): Likewise. Document and make allocation order
"regular" across 1.0 and 1.1 cpus.
From-SVN: r3659
Jeff Law [Fri, 5 Mar 1993 20:13:08 +0000 (13:13 -0700)]
pa.c (output_function_epilogue): Perform an early %r2 restore even if actual_fsize is zero.
* pa.c (output_function_epilogue): Perform an early %r2 restore
even if actual_fsize is zero. This can happen if %r2 is used
as a temporary in a leaf function.
* pa.c (compute_frame_size): Update to take into account
register which are no longer known to the compiler.
(output_function_prologue): Likewise.
(output_function_epilogue): Likewise.
(output_arg_descriptor): Likewise.
From-SVN: r3658
Jim Wilson [Fri, 5 Mar 1993 17:51:48 +0000 (09:51 -0800)]
(output_function_prologue, output_function_epilogue):
Add comments for frame_base_name usage in leaf_functions.
From-SVN: r3657
Jim Wilson [Fri, 5 Mar 1993 17:49:44 +0000 (09:49 -0800)]
Fix typo in comment.
From-SVN: r3656
Jim Wilson [Fri, 5 Mar 1993 17:47:54 +0000 (09:47 -0800)]
(main): Put argv[0] in collect_obstack instead of programname.
From-SVN: r3655
Jim Wilson [Fri, 5 Mar 1993 17:45:15 +0000 (09:45 -0800)]
(note_mem_written): QImode varying structure memory accesses can alias scalars.
From-SVN: r3654
Richard Stallman [Fri, 5 Mar 1993 06:27:22 +0000 (06:27 +0000)]
(init_emit_once): Initialize const_tiny_rtx for partial ints too.
From-SVN: r3653
Richard Stallman [Fri, 5 Mar 1993 05:43:51 +0000 (05:43 +0000)]
(store_parm_decls,combine_parm_decls): Call layout_decl for a parm declared...
(store_parm_decls,combine_parm_decls): Call layout_decl
for a parm declared float when it is changed to double under a
traditional compilation.
From-SVN: r3652
Steve Chamberlain [Thu, 4 Mar 1993 22:18:45 +0000 (22:18 +0000)]
(convert_to_pointer): Fix typo comparing size of integer and pointers.
From-SVN: r3651
Steve Chamberlain [Thu, 4 Mar 1993 22:09:39 +0000 (22:09 +0000)]
(immed_double_const): Cope with MODE_PARTIAL_INT.
(output_constant_pool): Likewise.
From-SVN: r3650
Richard Stallman [Thu, 4 Mar 1993 21:20:14 +0000 (21:20 +0000)]
(handle_class_ref): Call assemble_external.
From-SVN: r3649
Richard Stallman [Thu, 4 Mar 1993 21:18:47 +0000 (21:18 +0000)]
(convert_to_complex): Declared.
From-SVN: r3648
Richard Stallman [Thu, 4 Mar 1993 20:37:02 +0000 (20:37 +0000)]
(emit_no_conflict_block): Don't move target to itself if that takes multiple insns.
(emit_no_conflict_block): Don't move target to itself
if that takes multiple insns.
(expand_binop): For complex mult and div, avoid fetching operand
components more than once from memory.
From-SVN: r3647
Richard Stallman [Thu, 4 Mar 1993 20:36:23 +0000 (20:36 +0000)]
(common_type): Handle complex types.
(lvalue_p): Handle REALPART_EXPR, IMAGPART_EXPR.
(build_binary_op, build_unary_op): Handle complex types.
From-SVN: r3646
Richard Stallman [Thu, 4 Mar 1993 20:34:56 +0000 (20:34 +0000)]
(truthvalue_conversion): Fix handling of COMPLEX_EXPR.
Handle all complex values specially.
From-SVN: r3645
Richard Stallman [Thu, 4 Mar 1993 20:34:20 +0000 (20:34 +0000)]
(fold): Fix error in handling REALPART_EXPR and IMAGPART_EXPR.
From-SVN: r3644
Richard Stallman [Thu, 4 Mar 1993 19:43:38 +0000 (19:43 +0000)]
Add complex integer modes.
From-SVN: r3643
Richard Stallman [Thu, 4 Mar 1993 19:42:57 +0000 (19:42 +0000)]
(init_decl_processing): Create complex types.
(grokdeclarator): Handle complex keyword.
Distinguish int-by-default from int keyword.
From-SVN: r3642
Richard Stallman [Thu, 4 Mar 1993 19:42:36 +0000 (19:42 +0000)]
Declare vars to hold complex types.
From-SVN: r3641
Richard Stallman [Thu, 4 Mar 1993 19:42:13 +0000 (19:42 +0000)]
(convert): Handle conversion to complex type.
From-SVN: r3640
Richard Stallman [Thu, 4 Mar 1993 19:41:50 +0000 (19:41 +0000)]
(convert_to_real): Convert complex to real.
(convert_to_integer): Likewise.
(convert_to_complex): New function.
From-SVN: r3639
Richard Stallman [Thu, 4 Mar 1993 19:36:42 +0000 (19:36 +0000)]
(truthvalue_conversion): Handle COMPLEX_EXPR.
From-SVN: r3638
Richard Stallman [Thu, 4 Mar 1993 19:35:40 +0000 (19:35 +0000)]
(fold): Handle complex constants as "winning".
Handle REALPART_EXPR and IMAGPART_EXPR.
From-SVN: r3637
Torbjorn Granlund [Thu, 4 Mar 1993 18:50:56 +0000 (18:50 +0000)]
(output_ior): Don't handle reg operands.
From-SVN: r3636
Torbjorn Granlund [Thu, 4 Mar 1993 18:50:18 +0000 (18:50 +0000)]
(recognizer for general uaddcm): New pattern.
(iorsi3): New DEFINE_EXPAND.
(iorsi3 recognizer for [reg reg]): Now unnamed.
Put output template here, don't call output_ior.
From-SVN: r3635
Richard Stallman [Thu, 4 Mar 1993 18:47:42 +0000 (18:47 +0000)]
(dbxout_type): Handle complex integer types.
From-SVN: r3634
Richard Stallman [Thu, 4 Mar 1993 18:34:10 +0000 (18:34 +0000)]
(init_lex): Initialize rid pointers for complex.
(yylex): Handle i or j in numeric constant.
From-SVN: r3633
Steve Chamberlain [Thu, 4 Mar 1993 18:10:15 +0000 (18:10 +0000)]
(h8300hds): Change hds to hms.
From-SVN: r3632
Steve Chamberlain [Thu, 4 Mar 1993 18:05:40 +0000 (18:05 +0000)]
New file.
From-SVN: r3631
Steve Chamberlain [Thu, 4 Mar 1993 18:02:42 +0000 (18:02 +0000)]
New File.
From-SVN: r3630
Richard Stallman [Thu, 4 Mar 1993 17:59:30 +0000 (17:59 +0000)]
(RID_COMPLEX): New constant.
From-SVN: r3629
Richard Stallman [Thu, 4 Mar 1993 17:59:12 +0000 (17:59 +0000)]
Add `__complex', `__complex__'.
Add `__iterator'. Delete `iterator'.
From-SVN: r3628
Michael Meissner [Thu, 4 Mar 1993 15:39:20 +0000 (15:39 +0000)]
Add missing \ before return inside string.
From-SVN: r3627
Michael Meissner [Thu, 4 Mar 1993 15:32:55 +0000 (15:32 +0000)]
Add missing comma.
From-SVN: r3626
Richard Stallman [Wed, 3 Mar 1993 21:25:11 +0000 (21:25 +0000)]
(build_complex): Set the TREE_TYPE based on real part.
From-SVN: r3625
Per Bothner [Wed, 3 Mar 1993 20:35:27 +0000 (12:35 -0800)]
Define and use new function build_range_type.
From-SVN: r3624
Torbjorn Granlund [Wed, 3 Mar 1993 14:48:17 +0000 (14:48 +0000)]
(lhs_lshift_operand): New function.
(lhs_lshift_cint_operand): New function.
(print_operand): Handle L and P for bit field instructions.
From-SVN: r3623
Torbjorn Granlund [Wed, 3 Mar 1993 14:47:15 +0000 (14:47 +0000)]
(ashlsi3): Use lhs_lshift_operand for operand 1.
Call gen_zvdep_imm when operand 1 is a CONST_INT.
(zvdep_imm): New pattern.
(ashift recognizer for [reg const_int]): Use %P and %L
output modifiers.
(ashiftrt recognizer for [reg const_int]): Likewise.
(lshrsi3): Likewise.
(rotrsi3): Reduce integer argument to 5 bits.
Remove some empty lines.
From-SVN: r3622
Torbjorn Granlund [Wed, 3 Mar 1993 14:38:13 +0000 (14:38 +0000)]
(pa_adjust_cost): Replace, the function of Mar 2 was an old version.
(output_fp_move_double): Use %r syntax for registers.
From-SVN: r3621
Richard Kenner [Wed, 3 Mar 1993 12:34:03 +0000 (07:34 -0500)]
(assemble_variable): Update comment.
From-SVN: r3620
Per Bothner [Wed, 3 Mar 1993 06:46:43 +0000 (22:46 -0800)]
Define and use new function dbxout_range_type.
From-SVN: r3619
Per Bothner [Wed, 3 Mar 1993 06:46:43 +0000 (22:46 -0800)]
Clarify comment on INTEGER_TYPE.
From-SVN: r3618
Richard Stallman [Wed, 3 Mar 1993 04:43:37 +0000 (04:43 +0000)]
(main): Use strlen, not sizeof, for our_file_name.
From-SVN: r3617
Richard Kenner [Wed, 3 Mar 1993 00:01:48 +0000 (19:01 -0500)]
(collect_iterators): Handle simple expressions quickly.
Don't try to interpret operands that are RTL as if they were trees.
From-SVN: r3616
Richard Kenner [Tue, 2 Mar 1993 23:59:33 +0000 (18:59 -0500)]
(regclass): Don't set REGNO_POINTER_FLAG here.
(reg_scan_mark_refs): Set it here.
Accept INSN, not UID as arg.
(reg_scan): Call reg_scan_mark_refs with INSN, not UID.
From-SVN: r3615
Richard Kenner [Tue, 2 Mar 1993 23:57:59 +0000 (18:57 -0500)]
Fix typo.
From-SVN: r3614
Jim Wilson [Tue, 2 Mar 1993 21:23:48 +0000 (13:23 -0800)]
(write_const_num_delay_slots): Output 'rtx insn' not
'rtx *insn' for const_num_delay_slot argument.
From-SVN: r3613
Jim Wilson [Tue, 2 Mar 1993 21:19:37 +0000 (13:19 -0800)]
(main): Truncate programname to what is after last slash.
From-SVN: r3612
Jim Wilson [Tue, 2 Mar 1993 21:17:19 +0000 (13:17 -0800)]
(do_include): Warn if find unreadable header file.
(errno.h): Move outside VMS specific section.
From-SVN: r3611
Jim Wilson [Tue, 2 Mar 1993 21:13:35 +0000 (13:13 -0800)]
(print_operand): Use output_operand_lossage, not abort.
From-SVN: r3610
Jim Wilson [Tue, 2 Mar 1993 21:10:49 +0000 (13:10 -0800)]
(expand_builtin, BUILT_IN_FRAME_ADDRESS case): Use new
macros SETUP_FRAME_ADDRESSES and RETURN_ADDR_IN_PREVIOUS_FRAME.
From-SVN: r3609
Jim Wilson [Tue, 2 Mar 1993 21:09:17 +0000 (13:09 -0800)]
(SETUP_FRAME_ADDRESS, DYNAMIC_CHAIN_ADDRESS,
RETURN_ADDR_IN_PREVIOUS_FRAME, RETURN_ADDR_RTX): Define.
From-SVN: r3608
Jim Wilson [Tue, 2 Mar 1993 21:08:43 +0000 (13:08 -0800)]
(flush_register_windows, goto_handler_and_restore):
Give names to these patterns so they are easier to use.
From-SVN: r3607
Jim Wilson [Tue, 2 Mar 1993 21:05:09 +0000 (13:05 -0800)]
(relax_delay_slots): Delete jump around insn identical
to the insn in its delay slot.
From-SVN: r3606
Jim Wilson [Tue, 2 Mar 1993 21:03:13 +0000 (13:03 -0800)]
(i960_output_call_insn): Delete scratch_reg arg. Use r3 instead.
From-SVN: r3605
Jim Wilson [Tue, 2 Mar 1993 21:02:47 +0000 (13:02 -0800)]
(call_internal*): Use hard register 19 (r3) in clobber
instead of match_scratch.
From-SVN: r3604
Jim Wilson [Tue, 2 Mar 1993 21:00:24 +0000 (13:00 -0800)]
(mov*): Only accept store zero to memory insn if
rtx_equal_function_value_matters is zero.
From-SVN: r3603
Jim Wilson [Tue, 2 Mar 1993 20:59:56 +0000 (12:59 -0800)]
(rtx_equal_function_value_matters): Declare.
From-SVN: r3602
Jim Wilson [Tue, 2 Mar 1993 20:55:53 +0000 (12:55 -0800)]
(gen_sequence): Add push_obstacks_nochange and
pop_obstacks calls around rtl_in_saveable_obstack call.
From-SVN: r3601
Jim Wilson [Tue, 2 Mar 1993 20:55:18 +0000 (12:55 -0800)]
(immed_double_const, immed_real_const_1): Likewise.
From-SVN: r3600
Jim Wilson [Tue, 2 Mar 1993 20:54:45 +0000 (12:54 -0800)]
(rtl_in_saveable_obstack): Always switch to saveable_obstack.
Return type now void instead of int.
From-SVN: r3599
Richard Stallman [Tue, 2 Mar 1993 19:57:36 +0000 (19:57 +0000)]
(link_command_spec): Do nothing if -fsyntax-only.
From-SVN: r3598
Torbjorn Granlund [Tue, 2 Mar 1993 19:21:27 +0000 (19:21 +0000)]
(pa_adjust_cost): New procudure.
From-SVN: r3597
Torbjorn Granlund [Tue, 2 Mar 1993 19:21:13 +0000 (19:21 +0000)]
(ADJUST_COST): Add new definition.
From-SVN: r3596
Richard Stallman [Tue, 2 Mar 1993 18:10:41 +0000 (18:10 +0000)]
(output_function_prologue): Use m68k svr4 PIC format to load the address of...
(output_function_prologue): Use m68k svr4 PIC format to
load the address of _GLOBAL_OFFSET_TABLE_ into PIC_OFFSET_TABLE_REG
in function prologue when doing PIC.
(print_operand_address): Always add "@GOT" suffix for the
global object operand when doing PIC.
From-SVN: r3595
Richard Stallman [Tue, 2 Mar 1993 18:09:59 +0000 (18:09 +0000)]
(truncdfsf2+2): Use f%$move instead of fsmove.
(fix_truncdfsi2, fix_truncdfhi2, fix_truncdfqi2):
Use %# instead of #.
(call, call_value): Set SYMBOL_REF_FLAG for the called
function symbol_ref rtx. In PIC mode, output `bsr FUNC@PLTPC'
when the operand is symbol_ref.
From-SVN: r3594
Richard Stallman [Tue, 2 Mar 1993 18:07:56 +0000 (18:07 +0000)]
(ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Use SIZE instead of ROUNDED.
(ASM_OUTPUT_CASE_LABEL): Always use `swbeg' syntax to
output switch table (m68k.md depends on this to happen).
(LEGITIMATE_PIC_OPERAND_P): Treat a symbol_ref rtx with
SYMBOL_REF_FLAG set a valid PIC operand.
(OVERRIDE_OPTIONS): Turn off function cse when doing pic.
From-SVN: r3593
Richard Stallman [Tue, 2 Mar 1993 07:18:06 +0000 (07:18 +0000)]
(gen_move_insn): Big `if' applies only for MODE_CC class.
From-SVN: r3592
Richard Stallman [Tue, 2 Mar 1993 07:15:10 +0000 (07:15 +0000)]
(get_directive_line): Declared.
From-SVN: r3591
Richard Stallman [Tue, 2 Mar 1993 07:14:41 +0000 (07:14 +0000)]
(HANDLE_PRAGMA): Pass suitable arg.
From-SVN: r3590
Richard Stallman [Tue, 2 Mar 1993 07:01:45 +0000 (07:01 +0000)]
(fake_f_rep): Clear all of u, initially.
Make the ints in u unsigned.
(f_define): Use ordinary constants for long double
if it's same width as double.
Make __convert_long_double_i unsigned.
From-SVN: r3589
Richard Stallman [Tue, 2 Mar 1993 04:30:43 +0000 (04:30 +0000)]
(init_lex): Set up ridpointers for `iterator'.
But maybe turn it off again.
From-SVN: r3588
Richard Stallman [Tue, 2 Mar 1993 04:29:28 +0000 (04:29 +0000)]
(init_decl_processing): Call init_iterators.
(grokdeclarator): Typo in previous change.
From-SVN: r3587
Richard Stallman [Tue, 2 Mar 1993 04:21:48 +0000 (04:21 +0000)]
entered into RCS
From-SVN: r3586
Richard Stallman [Tue, 2 Mar 1993 03:07:56 +0000 (03:07 +0000)]
(build_unary_op): Warn if increment `struct unknown *'.
From-SVN: r3585
Richard Stallman [Tue, 2 Mar 1993 02:34:14 +0000 (02:34 +0000)]
(ITERATOR_P, ITERATOR_BOUND_P): New macros.
From-SVN: r3584
Richard Stallman [Tue, 2 Mar 1993 02:33:39 +0000 (02:33 +0000)]
(RID_ITERATOR): New alternative.
From-SVN: r3583