Commit Graph

8094 Commits

Author SHA1 Message Date
Richard Kenner
ccccb52764 Include stdarg.h before stdio.h.
From-SVN: r7757
1994-07-13 06:47:59 -04:00
Jim Wilson
93f623faa9 (pushdecl): Don't call lookup_name_current_level_global when traditional.
(pushdecl): Don't call lookup_name_current_level_global
when traditional.  When doing checks against
IDENTIFIER_LIMBO_VALUE, also do check against
INDENTIFIER_GLOBAL_VALUE when traditional.

From-SVN: r7756
1994-07-12 18:37:25 -07:00
Jim Wilson
1ba298e525 (getpwd): Declare.
From-SVN: r7755
1994-07-12 18:31:36 -07:00
Richard Earnshaw
1f8197a899 ({save,restore}_stack_nonlocal): Delete.
From-SVN: r7754
1994-07-13 01:07:30 +00:00
Richard Earnshaw
688743e794 (FRAME_POINTER_REQUIRED): Always true if the function has a nonlocal
label.

From-SVN: r7753
1994-07-13 01:06:31 +00:00
Jeff Law
a08e749380 pa.h (GO_IF_LEGITIMATE_ADDRESS): Only allow immediate addressing using 5 bits to avoid losing with FP loads and...
* pa.h (GO_IF_LEGITIMATE_ADDRESS): Only allow immediate addressing
        using 5 bits to avoid losing with FP loads and stores on page zero.

From-SVN: r7752
1994-07-12 14:23:58 -06:00
Richard Kenner
ca19295018 (ashlsi3, lshrsi3, ashrsi3): Only output low-order five bits for
!TARGET_POWER case.

From-SVN: r7751
1994-07-12 16:19:56 -04:00
Richard Kenner
59f25cf9ab (find_reloads): Don't try to call force_const_mem on a HIGH.
From-SVN: r7750
1994-07-12 15:09:44 -04:00
Jim Wilson
90bf80812e (record_dead_and_set_regs_1): Can only handle SUBREG
if the register is smaller or equal to BITS_PER_WORD.

From-SVN: r7749
1994-07-12 10:19:46 -07:00
Jim Wilson
7947717fc2 (FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): Define.
From-SVN: r7748
1994-07-12 10:15:53 -07:00
Jim Wilson
96a7ba6fef Delete obsolete comment.
From-SVN: r7747
1994-07-12 10:12:10 -07:00
Richard Kenner
0f56a40313 (allocate_dynamic_stack_space): Fix typo.
From-SVN: r7746
1994-07-12 13:10:25 -04:00
Jim Wilson
67e23d2f5c (end_final): Store full path name in .d file not just the filename.
From-SVN: r7745
1994-07-12 10:09:32 -07:00
Richard Kenner
78221d63e7 (fold, case MULT_EXPR): If arg is an unsigned CEIL_DIV_EXPR, convert
to TRUNC_DIV_EXPR of a PLUS_EXPR in some cases.

From-SVN: r7744
1994-07-12 12:39:17 -04:00
Richard Kenner
db19fab5ec (ashldi3): Update pattern for (sign_extend (ashift ..)) to match the
current canonicalization.

From-SVN: r7743
1994-07-12 12:19:40 -04:00
Michael Meissner
ee59bdfc51 If OSF/rose, make -pic-extern always do shared libs, even if -pic-none was used.
From-SVN: r7742
1994-07-12 14:54:45 +00:00
Richard Earnshaw
cce4322b7f (matcher for SFmode inequality comparison): Use cmfe, not cfm.
(matchers for {store-flag, not-store-flag, neg-store-flag}): Output
if-false instruction first before if-true instruction.
(matcher for (AND store-flag x)): Only match if reversible_cc_register.
(matcher for (IF-THEN-ELSE reg (NOT reg))): Likewise.

From-SVN: r7741
1994-07-12 13:33:12 +00:00
Richard Earnshaw
31e6408aee (PREDICATE_CODES): Add reversible_cc_register.
From-SVN: r7740
1994-07-12 13:31:10 +00:00
Richard Earnshaw
5bbe2d409c (reversible_cc_register): New function.
(final_prescan_insn): Don't try to conditionalize jumps with JUMP_CLOB
attribute.

From-SVN: r7739
1994-07-12 13:31:10 +00:00
Richard Kenner
5244db056b (round_push, allocate_dynamic_stack_space): Avoid using CEIL_DIV_EXPR;
add adjustment and use TRUNC_DIV_EXPR instead.

From-SVN: r7738
1994-07-12 09:07:53 -04:00
Richard Earnshaw
667732d849 (dbxout_source_file): Increment source_label_number outside
of macro expansion.

From-SVN: r7737
1994-07-12 12:11:35 +00:00
Richard Kenner
fb81d7cec6 (movsi matcher): Add nop for moving special register to itself for !TARGET_POWER.
(movsi matcher): Add nop for moving special register to itself
for !TARGET_POWER.
(movhi and movqi matcher): Likewise and add mtjmpr attribute.
Separate MQ from CTR and LR target registers for TARGET_POWER.

From-SVN: r7736
1994-07-11 22:07:46 -04:00
Richard Kenner
a2613d100b (basic_machine): Add 1750a.
From-SVN: r7735
1994-07-11 19:28:46 -04:00
Richard Kenner
32c03bfb02 (assemble_real): Handle TQFmode output.
From-SVN: r7734
1994-07-11 19:28:23 -04:00
Richard Kenner
03747aa399 (convert_move): Add some conversions for TQFmode.
From-SVN: r7733
1994-07-11 19:27:23 -04:00
Richard Kenner
e42a6f5d69 (TQFmode): New mode.
From-SVN: r7732
1994-07-11 19:26:40 -04:00
Richard Kenner
630e77b656 Initial revision
From-SVN: r7731
1994-07-11 19:23:51 -04:00
Doug Evans
b4d2cd972d h8300.md (cpu): New attribute.
* h8300/h8300.md (cpu): New attribute.
	(attribute length): Add h8/300h support.
	(attribute cc): New value `cbit'.
	(all anonymous insns): Give them names.
	(move insns): Add h8/300h support.
	(tstqi, tsthi): Use btst insn if able.
	(arithmetic insns): Add h8/300h support.
	(boolean insns): Likewise.
	(negate insns): Likewise.
	(branch insns): Likewise.
	(call_value): Use call_insn_operand for operand 1.
	(shift insns): Completely rewritten.  Add h8/300h support.
	(zero/sign extension insns): Add h8/300h support.
	(extv): Deleted.
	(insv, extzv): Only use for h8/300.
	(bitfield insns): Completely rewritten.
	(fancyb*): New insns for speeding up bit accesses.

From-SVN: r7730
1994-07-11 22:53:08 +00:00
Doug Evans
48837e291c h8300.c (cpu_type, [...]): New variables.
* h8300/h8300.c (cpu_type, names_extended, names_upper_extended,
	h8_reg_names, h8_push_ops, h8_pop_ops, h8_mov_ops, h8_push_op,
	h8_pop_op, h8_mov_op, current_function_anonymous_args, extra_pop,
	hand_list): New variables.
	(h8300_init_once, asm_file_start, asm_file_end, ok_for_bclr, o_operand,
	p_operand, call_insn_operand, jump_address_operand, bit_operand,
	eq_operator, const_costs, notice_update_cc, bit_operator,
	nshift_operator, expand_a_shift, get_shift_alg, emit_a_shift,
	fix_bit_operand): New functions.
	(shift_alg, shift_type, shift_mode): New enums.
	(shift_insn): New struct.
	(shift_n_bits, can_shift): Deleted.
	(shift_one, rotate_one): New variables.
	(WORD_REG_USED): New macro (was function word_reg_used).
	(dosize, function_prologue, function_epilogue, print_operand_address):
	Add h8/300h support.
	(small_power_of_two): Renamed from potl8.
	(potg8): Deleted.
	(general_operand_src): Fix POST_INC case.
	(general_operand_dst): Fix PRE_DEC case.
	(function_arg): 3 regs of args are passed if -mquickcall.
	4 regs of args are passed to handwritten assembler routines.
	(print_operand): New cases 'A', 'P', 'S', 'U', 'W', 'b', 'c', 'd', 'g'.
	Delete case 'O'.  Sort cases.  Add h8/300h support.
	(do_movsi): Renamed from domovsi.
	Handle reload_in_progress and reload_completed.
	(initial_offset): Renamed from io.  Add h8/300h support.

From-SVN: r7729
1994-07-11 22:51:17 +00:00
Doug Evans
7bc8cb2b6b h8300.h (CPP_PREDEFINES, [...]): Add h8/300h support.
* h8300/h8300.h (CPP_PREDEFINES, CPP_SPEC, LIB_SPEC, TARGET_SWITCHES,
	BITS_PER_WORD, MAX_BITS_PER_WORD, UNITS_PER_WORD, MAX_UNITS_PER_WORD,
	POINTER_SIZE, PARM_BOUNDARY, BIGGEST_ALIGNMENT,
	BIGGEST_FIELD_ALIGNMENT, STACK_BOUNDARY, HARD_REGNO_NREGS,
	HARD_REGNO_MODE_OK, REG_CLASS_NAMES, REG_CLASS_CONTENTS,
	REGNO_REG_CLASS, PUSH_ROUNDING, FUNCTION_ARG_ADVANCE,
	TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE, INITIALIZE_TRAMPOLINE,
	CONSTANT_ADDRESS, MOVE_MAX, Pmode, SIZE_TYPE, PTRDIFF_TYPE):
	Add h8/300h support.
	(LINK_SPEC, TARGET_RTL_DUMP, TARGET_H8300, TARGET_H8300H,
	REAL_ARITHMETIC, SETUP_INCOMING_VARARGS, HAVE_POST_INCREMENT,
	HAVE_PRE_DECREMENT, MAX_MOVE_MAX, NO_BUILTIN_SIZE_TYPE,
	NO_BUILTIN_PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE,
	MAX_WCHAR_TYPE_SIZE, ASM_WORD_OP, INIT_SECTION_ASM_OP,
	CTORS_SECTION_ASM_OP, DTORS_SECTION_ASM_OP, EXTRA_SECTIONS,
	EXTRA_SECTION_FUNCTIONS, ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR,
	DO_GLOBAL_CTORS_BODY, DO_GLOBAL_DTORS_BODY, INIT_TARGET_OPTABS):
	Define.
	(CAN_DEBUG_WITHOUT_FP, PCC_STATIC_STRUCT_RETURN, STRUCT_VALUE_REGNUM,
	STRUCT_VALUE_INCOMING, STRUCTURE_SIZE_BOUNDARY): Undefine.
	(enum reg_class): Add h8/300h support.
	(emit_a_shift): Declare.
	(TARGET_DEFAULT): Set default to -mquickcall.
	(DOUBLE_TYPE_SIZE): Fix at 32.  DFmode support doesn't exist.
	(CALL_USED_REGISTERS, REG_ALLOC_ORDER): Swap registers 2,3 with 4,5.
	Registers 0,1 contain function result, allocate after 2,3.
	(STATIC_CHAIN_REGNUM): Use reg 4.
	(CONST_OK_FOR_LETTER_P): 'O' is ok_for_bclr, 'P' is small_power_of_two.
	(FUNCTION_PROFILER, FUNCTION_BLOCK_PROFILER, BLOCK_PROFILER): First
	attempt at an implementation.
	(CONST_COSTS): Move code into function const_costs.
	(BRANCH_COST): Set to 0.
	(NOTICE_UPDATE_CC): Move code into function notice_update_cc.
	(ASM_FILE_START): Move code into function asm_file_start.
	(ASM_FILE_END): Move code into function asm_file_end.
	(ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT): Use REAL_VALUE_TO_DECIMAL.

From-SVN: r7728
1994-07-11 22:50:27 +00:00
Doug Evans
d215dc1d4b t-h8300 (CROSS_LIBGCC1): Use libgcc1-asm.a.
* h8300/t-h8300 (CROSS_LIBGCC1): Use libgcc1-asm.a.
	(LIB1ASMSRC, LIB1ASMFUNCS, LIB2FUNCS_EXTRA, MULTILIB_OPTIONS,
	MULTILIB_DIRNAMES, LIBGCC, INSTALL_LIBGCC): Define.
	(fp-bit.c): Build it.

From-SVN: r7727
1994-07-11 22:49:34 +00:00
Doug Evans
26731a9e43 Initial revision
From-SVN: r7726
1994-07-11 22:45:37 +00:00
Doug Evans
159c2aedc6 (init_optabs): Allow target specific libcalls with INIT_TARGET_OPTABS.
From-SVN: r7725
1994-07-11 22:37:14 +00:00
Doug Evans
44d65d8450 (libgcc1-asm.a): New target for building libgcc1.a in cross compilers.
From-SVN: r7724
1994-07-11 22:36:14 +00:00
Doug Evans
012a47cb77 Initial revision
From-SVN: r7723
1994-07-11 22:32:24 +00:00
Richard Kenner
218d0f8a84 (stmt): Don't give more than one error message if a nested `if' has an
empty body.

From-SVN: r7722
1994-07-11 18:17:57 -04:00
Richard Stallman
4843c18526 Rewrite for coff
From-SVN: r7721
1994-07-11 21:07:46 +00:00
Richard Stallman
58376b85b1 Initial revision
From-SVN: r7720
1994-07-11 21:05:28 +00:00
Richard Kenner
4eb38a3357 (CPP_SPEC): Fix typo.
From-SVN: r7719
1994-07-11 17:00:40 -04:00
Richard Stallman
a598de0b44 *** empty log message ***
From-SVN: r7718
1994-07-11 20:58:36 +00:00
Richard Stallman
df5f2948f5 Initial revision
From-SVN: r7717
1994-07-11 20:55:23 +00:00
Richard Stallman
eb4c374938 Initial revision
From-SVN: r7716
1994-07-11 20:49:29 +00:00
Richard Stallman
5f0a312d74 *** empty log message ***
From-SVN: r7715
1994-07-11 20:48:16 +00:00
Richard Kenner
b959a1de92 (movqi): Call loadhi, not loadqi.
From-SVN: r7714
1994-07-11 16:46:21 -04:00
Jeff Law
6a5c0a8e26 pa.h (DEBUGGER_ARG_OFFSET): Define.
* pa.h (DEBUGGER_ARG_OFFSET): Define.  If no frame pointer
        is available, then adjust the offset by the size of the
        current frame.

From-SVN: r7713
1994-07-11 14:45:30 -06:00
Richard Stallman
6776d73955 *** empty log message ***
From-SVN: r7712
1994-07-11 20:40:03 +00:00
Richard Kenner
1d8f7ff646 When setting up tm.h, convert "vax/vax.h" into "config-vax.h" rather than "[.config.vax]vax.h" for #include so it will work from [.cp] subdirectory...
When setting up tm.h, convert "vax/vax.h" into "config-vax.h" rather
than "[.config.vax]vax.h" for #include so it will work from [.cp]
subdirectory; copy vax.h to config-vax.h as part of configuration
setup.  Also, manually include cc1plus in the list of buildable
compilers (a temporary measure; it should process cp/Makefile.in like
it does for primary makefile).

From-SVN: r7711
1994-07-11 15:40:35 -04:00
Richard Kenner
1ca0c604b9 Compile most of cc1plus in the `cp' subdirector.
From-SVN: r7710
1994-07-11 15:37:48 -04:00
Richard Kenner
b5890b3157 Revise to be more consistent with make-cc1.com for symbol setup &
usage and for echoing command execution.

From-SVN: r7709
1994-07-11 15:16:22 -04:00
Richard Kenner
63468c37b4 Use =' rather than :=' when setting up CC, so that `gcc' can be defined as a foreign command if necessary...
Use `=' rather than `:=' when setting up CC, so that `gcc' can be
defined as a foreign command if necessary; eliminate `set
symbol/scope=noGlobal' for same reason; use `=' with all other
symbols, for consistency; add explicit .obj extension to some lists of
object files passed to the linker; general cleanup of the command text
echoed during execution.

From-SVN: r7708
1994-07-11 15:15:46 -04:00