Minor formatting tidyups.
From-SVN: r31936
This commit is contained in:
parent
90e7678cd5
commit
914a3b8c0e
4 changed files with 60 additions and 11 deletions
|
@ -1,3 +1,46 @@
|
|||
2000-02-07 Dmitri Makarov <dim@wrs.com> & Bernd Schmidt <bernds@redhat.com>
|
||||
|
||||
* config/arm/arm.c (arm_init_cumulative_args); New function:
|
||||
Initlaise the CUMULATIE_ARGS strcuture for a function
|
||||
defintion.
|
||||
(arm_function_arg): New function: Determine where to place a
|
||||
function's argument. Also handles deciding the function's
|
||||
call cookie.
|
||||
(current_file_function_operand): New function: Return true if
|
||||
the symbol is a function which has already been compiled.
|
||||
(arm_is_long_call_p): New function: Return true if the
|
||||
indicated function should be called via a long call.
|
||||
(arm_valid_type_attribute_p): New function: Return true if the
|
||||
attribute is a valid, arm specific, attribute.
|
||||
(arm_comp_type_attribute): New function: Return true if the
|
||||
two types have compatable, arm specific, attributes.
|
||||
|
||||
* config/arm/arm.h (CUMULATIVE_ARGS): Redefine to be a
|
||||
structure.
|
||||
(FUNCTION_ARG): Redefine to call arm_function_arg.
|
||||
(FUNCTION_ARG_PARTIAL_NREGS): Redefine to use correct
|
||||
structure field.
|
||||
(INIT_CUMULATIVE_ARGS): Redefine to call
|
||||
arm_init_cumulative_args.
|
||||
(FUNCTION_ARG_ADVANCE): Redefine to use correct structure
|
||||
field.
|
||||
(SETUP_INCOMING_VARARGS): Redefine to use correct structure
|
||||
field.
|
||||
(ARM_MARK_NEARBY_FUNCTION): New macro: Mark already compiled
|
||||
functions.
|
||||
(ENCODE_SECTION): Add call to ARM_MARK_NEARBY_FUNCTION.
|
||||
(VALID_MACHINE_TYPE_ATTRIBUTE): Define.
|
||||
(COMP_TYPE_ATTRIBUTES): Define.
|
||||
|
||||
* config/arm/arm.md (call): Call arm_is_long_call_p to decide
|
||||
if a long call is needed.
|
||||
(call_value): Call arm_is_long_call_p to decide if a long call
|
||||
is needed.
|
||||
(call_symbol): Call arm_is_long_call_p to decide if a long call
|
||||
is needed.
|
||||
|
||||
* config/arm/arm-protos.h: Add prototype for arm_is_long_call_p.
|
||||
|
||||
2000-02-11 Denis Chertykov <denisc@overta.ru>
|
||||
|
||||
* README.AVR: New file with information about the avr ports.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Output routines for GCC for ARM.
|
||||
Copyright (C) 1991, 93-99, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1991, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
|
||||
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
|
||||
and Martin Simmons (@harleqn.co.uk).
|
||||
More major hacks by Richard Earnshaw (rearnsha@arm.com).
|
||||
|
@ -1134,7 +1134,7 @@ arm_gen_constant (code, mode, val, target, source, subtargets, generate)
|
|||
/* See if two shifts will do 2 or more insn's worth of work. */
|
||||
if (clear_sign_bit_copies >= 16 && clear_sign_bit_copies < 24)
|
||||
{
|
||||
HOST_WIDE_INT shift_mask = ((0xffffffffUL
|
||||
HOST_WIDE_INT shift_mask = ((0xffffffffUL
|
||||
<< (32 - clear_sign_bit_copies))
|
||||
& 0xffffffffUL);
|
||||
|
||||
|
@ -1536,14 +1536,16 @@ arm_function_arg (pcum, mode, type, named)
|
|||
}
|
||||
|
||||
|
||||
/* Return 1 if the operand is a SYMBOL_REF for a function known to be in
|
||||
this file. */
|
||||
/* Return 1 if the operand is a SYMBOL_REF for a function
|
||||
known to be defined in the current compilation unit. */
|
||||
static int
|
||||
current_file_function_operand (sym_ref)
|
||||
rtx sym_ref;
|
||||
{
|
||||
return (SYMBOL_REF_FLAG (sym_ref)
|
||||
|| sym_ref == XEXP (DECL_RTL (current_function_decl), 0));
|
||||
/* XXX FIXME - we need some way to determine if SYMREF has already been
|
||||
compiled. We wanted to used SYMBOL_REF_FLAG but this is already in use
|
||||
by the constant pool generation code. */
|
||||
return sym_ref == XEXP (DECL_RTL (current_function_decl), 0);
|
||||
}
|
||||
|
||||
/* Return non-zero if a 32 bit "long call" should be generated for this
|
||||
|
@ -6141,7 +6143,7 @@ output_func_epilogue (frame_size)
|
|||
if (use_return_insn (FALSE) && return_used_this_function
|
||||
&& (frame_size + current_function_outgoing_args_size) != 0
|
||||
&& ! (frame_pointer_needed && TARGET_APCS))
|
||||
abort ();
|
||||
abort ();
|
||||
|
||||
/* Reset the ARM-specific per-function variables. */
|
||||
current_function_anonymous_args = 0;
|
||||
|
@ -6827,7 +6829,7 @@ arm_final_prescan_insn (insn)
|
|||
|
||||
case CALL_INSN:
|
||||
/* If using 32-bit addresses the cc is not preserved over
|
||||
calls */
|
||||
calls. */
|
||||
if (TARGET_APCS_32)
|
||||
{
|
||||
/* Succeed if the following insn is the target label,
|
||||
|
@ -6858,7 +6860,7 @@ arm_final_prescan_insn (insn)
|
|||
/* If this is an unconditional branch to the same label, succeed.
|
||||
If it is to another label, do nothing. If it is conditional,
|
||||
fail. */
|
||||
/* XXX Probably, the tests for SET and the PC are unnecessary. */
|
||||
/* XXX Probably, the tests for SET and the PC are unnecessary. */
|
||||
|
||||
scanbody = PATTERN (this_insn);
|
||||
if (GET_CODE (scanbody) == SET
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/* Definitions of target machine for GNU compiler, for ARM.
|
||||
Copyright (C) 1991, 93, 94, 05, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1991, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc.
|
||||
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
|
||||
and Martin Simmons (@harleqn.co.uk).
|
||||
More major hacks by Richard Earnshaw (rearnsha@arm.com)
|
||||
|
@ -242,7 +242,10 @@ Unrecognized value in TARGET_CPU_DEFAULT.
|
|||
{ "subtarget_cpp_spec", SUBTARGET_CPP_SPEC }, \
|
||||
SUBTARGET_EXTRA_SPECS
|
||||
|
||||
#ifndef SUBTARGET_EXTRA_SPECS
|
||||
#define SUBTARGET_EXTRA_SPECS
|
||||
#endif
|
||||
|
||||
#ifndef SUBTARGET_CPP_SPEC
|
||||
#define SUBTARGET_CPP_SPEC ""
|
||||
#endif
|
||||
|
@ -486,7 +489,7 @@ extern int arm_is_6_or_7;
|
|||
|
||||
/* The frame pointer register used in gcc has nothing to do with debugging;
|
||||
that is controlled by the APCS-FRAME option. */
|
||||
/* Not fully implemented yet */
|
||||
/* Not fully implemented yet. */
|
||||
/* #define CAN_DEBUG_WITHOUT_FP 1 */
|
||||
|
||||
#define TARGET_MEM_FUNCTIONS 1
|
||||
|
|
|
@ -2935,6 +2935,7 @@
|
|||
: preserve_subexpressions_p ()));
|
||||
DONE;
|
||||
}
|
||||
|
||||
if (flag_pic
|
||||
&& (CONSTANT_P (operands[1])
|
||||
|| symbol_mentioned_p (operands[1])
|
||||
|
|
Loading…
Add table
Reference in a new issue