#include "config.h"#include "system.h"#include "coretypes.h"#include "tm.h"#include "rtl.h"#include "regs.h"#include "hard-reg-set.h"#include "real.h"#include "insn-config.h"#include "conditions.h"#include "insn-attr.h"#include "flags.h"#include "recog.h"#include "tree.h"#include "output.h"#include "expr.h"#include "obstack.h"#include "except.h"#include "function.h"#include "toplev.h"#include "tm_p.h"#include "target.h"#include "target-def.h"

Go to the source code of this file.
| #define Mmode enum machine_mode |
| #define MUST_SAVE_FRAME_POINTER (regs_ever_live [FRAME_POINTER_REGNUM] || frame_pointer_needed) |
| #define MUST_SAVE_REGISTER | ( | regno | ) |
Value:
( (regno) != RETURN_POINTER_REGNUM \ && (regno) != FRAME_POINTER_REGNUM \ && regs_ever_live [regno] \ && ! call_used_regs [regno] )
| #define MUST_SAVE_RETURN_POINTER (regs_ever_live [RETURN_POINTER_REGNUM] || current_function_profile) |
| #define TARGET_PASS_BY_REFERENCE hook_pass_by_reference_must_pass_in_stack |
| #define TARGET_SETUP_INCOMING_VARARGS fr30_setup_incoming_varargs |
| static int fr30_arg_partial_bytes | ( | CUMULATIVE_ARGS * | cum, | |
| enum machine_mode | mode, | |||
| tree | type, | |||
| bool | named | |||
| ) | [static] |
Definition at line 708 of file fr30.c.
References fr30_num_arg_regs(), FR30_NUM_ARG_REGS, and UNITS_PER_WORD.
| int fr30_check_multiple_regs | ( | rtx * | operands, | |
| int | num_operands, | |||
| int | descending | |||
| ) |
| unsigned int fr30_compute_frame_size | ( | int | from_reg, | |
| int | to_reg | |||
| ) |
Definition at line 174 of file fr30.c.
References ARG_POINTER_REGNUM, arc_frame_info::args_size, current_frame_info, current_function_outgoing_args_size, current_function_pretend_args_size, FIRST_PSEUDO_REGISTER, get_frame_size(), arc_frame_info::gmask, MUST_SAVE_FRAME_POINTER, MUST_SAVE_REGISTER, MUST_SAVE_RETURN_POINTER, arc_frame_info::pretend_size, arc_frame_info::reg_size, reload_completed, STACK_POINTER_REGNUM, arc_frame_info::total_size, UNITS_PER_WORD, and arc_frame_info::var_size.
| int fr30_const_double_is_zero | ( | rtx | operand | ) |
Definition at line 776 of file fr30.c.
References d, dconst0, GET_CODE, NULL, REAL_VALUE_FROM_CONST_DOUBLE, REAL_VALUE_TYPE, and REAL_VALUES_EQUAL.
Definition at line 363 of file fr30.c.
References abort, current_frame_info, emit_insn(), emit_jump_insn(), frame_pointer_needed, frame_pointer_rtx, gcc_assert, gen_addsi3(), GEN_INT, gen_movsi(), gen_rtx_REG(), arc_frame_info::gmask, Pmode, arc_frame_info::pretend_size, PROLOGUE_TMP_REGNUM, RETURN_POINTER_REGNUM, STACK_POINTER_REGNUM, stack_pointer_rtx, tmp, and zero_frame_info.
Definition at line 237 of file fr30.c.
References abort, current_frame_info, current_function_profile, emit_insn(), FIRST_ARG_REGNUM, fr30_compute_frame_size(), FR30_NUM_ARG_REGS, frame_pointer_needed, frame_pointer_rtx, gcc_assert, gen_blockage(), GEN_INT, gen_movsi(), gen_rtx_REG(), gen_subsi3(), GET_CODE, arc_frame_info::gmask, HARD_FRAME_POINTER_REGNUM, insn, pattern, PATTERN, Pmode, arc_frame_info::pretend_size, PROLOGUE_TMP_REGNUM, REGNO, RETURN_POINTER_REGNUM, RTX_FRAME_RELATED_P, SET, SET_DEST, STACK_POINTER_REGNUM, stack_pointer_rtx, tmp, arc_frame_info::total_size, UNITS_PER_WORD, x, XVECEXP, and XVECLEN.
Definition at line 799 of file fr30.c.
References addr(), adjust_address, dest, emit_insn(), end_sequence(), FRAME_POINTER_REGNUM, gcc_assert, gcc_unreachable, GEN_INT, gen_movsi_internal(), gen_rtx_MEM(), gen_rtx_REG(), gen_rtx_SET, GET_CODE, get_insns(), GET_MODE, MEM, MEM_COPY_ATTRIBUTES, mode, operand_subword(), plus_constant, refers_to_regno_p(), REG, REGNO, split_double(), src, STACK_POINTER_REGNUM, start_sequence(), TRUE, UNITS_PER_WORD, val, words, and XEXP.
| static bool fr30_must_pass_in_stack | ( | enum machine_mode | mode, | |
| tree | type | |||
| ) | [static] |
| int fr30_num_arg_regs | ( | enum machine_mode | mode, | |
| tree | type | |||
| ) |
Definition at line 685 of file fr30.c.
References gcc_target::calls, GET_MODE_SIZE, int_size_in_bytes(), gcc_target::calls::must_pass_in_stack, size, and UNITS_PER_WORD.
Definition at line 472 of file fr30.c.
References ARRAY_SIZE, CONST_DOUBLE_REAL_VALUE, d, dbr_sequence_length(), debug_rtx(), EQ, fprintf(), fputs(), FRAME_POINTER_REGNUM, gcc_assert, GE, GET_CODE, GET_MODE, GT, HOST_WIDE_INT, HOST_WIDE_INT_PRINT_DEC, INTVAL, LE, LT, MEM, NE, output_addr_const(), output_address(), output_operand_lossage(), PLUS, real_to_decimal(), REAL_VALUE_FROM_CONST_DOUBLE, REAL_VALUE_TO_TARGET_SINGLE, REAL_VALUE_TYPE, REG, reg_names, REGNO, STACK_POINTER_REGNUM, str, val, x0, and XEXP.
Definition at line 453 of file fr30.c.
References debug_rtx(), fprintf(), GET_CODE, output_addr_const(), and output_operand_lossage().
| void fr30_setup_incoming_varargs | ( | CUMULATIVE_ARGS * | arg_regs_used_so_far, | |
| enum machine_mode | mode, | |||
| tree type | ATTRIBUTE_UNUSED, | |||
| int * | pretend_size, | |||
| int second_time | ATTRIBUTE_UNUSED | |||
| ) |
Definition at line 421 of file fr30.c.
References gcc_target::calls, fr30_num_arg_regs(), FR30_NUM_ARG_REGS, gcc_assert, size, gcc_target::calls::strict_argument_naming, and UNITS_PER_WORD.
| static void fr30_setup_incoming_varargs | ( | CUMULATIVE_ARGS * | , | |
| enum | machine_mode, | |||
| tree | , | |||
| int * | , | |||
| int | ||||
| ) | [static] |
struct fr30_frame_info current_frame_info [static] |
| struct rtx_def* fr30_compare_op0 |
| struct rtx_def* fr30_compare_op1 |
| struct gcc_target targetm = TARGET_INITIALIZER |
struct fr30_frame_info zero_frame_info [static] |
1.5.6