osprey/kg++fe/gnu/config/m88k/m88k.h File Reference

#include "svr3.h"

Include dependency graph for m88k.h:

Go to the source code of this file.

Defines

#define m88k_cpu_attr   ((enum attr_cpu)m88k_cpu)
#define MONITOR_GCC   0
#define CAN_DEBUG_WITHOUT_FP
#define CPP_SPEC   "%{!m88000:%{!m88100:%{m88110:-D__m88110__}}} \ %{!m88000:%{!m88110:-D__m88100__}}"
#define CPP_PREDEFINES   "-Dm88000 -Dm88k -Dunix -D__CLASSIFY_TYPE__=2"
#define TARGET_VERSION   fprintf (stderr, " (%s)", VERSION_INFO1)
#define VERSION_INFO1   "m88k"
#define MASK_88100   0x00000001
#define MASK_88110   0x00000002
#define MASK_88000   (MASK_88100 | MASK_88110)
#define MASK_OCS_DEBUG_INFO   0x00000004
#define MASK_OCS_FRAME_POSITION   0x00000008
#define MASK_SVR4   0x00000010
#define MASK_SVR3   0x00000020
#define MASK_NO_UNDERSCORES   0x00000040
#define MASK_BIG_PIC   0x00000080
#define MASK_TRAP_LARGE_SHIFT   0x00000100
#define MASK_HANDLE_LARGE_SHIFT   0x00000200
#define MASK_CHECK_ZERO_DIV   0x00000400
#define MASK_USE_DIV   0x00000800
#define MASK_IDENTIFY_REVISION   0x00001000
#define MASK_WARN_PASS_STRUCT   0x00002000
#define MASK_OPTIMIZE_ARG_AREA   0x00004000
#define MASK_NO_SERIALIZE_VOLATILE   0x00008000
#define MASK_EITHER_LARGE_SHIFT
#define MASK_OMIT_LEAF_FRAME_POINTER   0x00020000
#define TARGET_88100   ((target_flags & MASK_88000) == MASK_88100)
#define TARGET_88110   ((target_flags & MASK_88000) == MASK_88110)
#define TARGET_88000   ((target_flags & MASK_88000) == MASK_88000)
#define TARGET_OCS_DEBUG_INFO   (target_flags & MASK_OCS_DEBUG_INFO)
#define TARGET_OCS_FRAME_POSITION   (target_flags & MASK_OCS_FRAME_POSITION)
#define TARGET_SVR4   (target_flags & MASK_SVR4)
#define TARGET_SVR3   (target_flags & MASK_SVR3)
#define TARGET_NO_UNDERSCORES   (target_flags & MASK_NO_UNDERSCORES)
#define TARGET_BIG_PIC   (target_flags & MASK_BIG_PIC)
#define TARGET_TRAP_LARGE_SHIFT   (target_flags & MASK_TRAP_LARGE_SHIFT)
#define TARGET_HANDLE_LARGE_SHIFT   (target_flags & MASK_HANDLE_LARGE_SHIFT)
#define TARGET_CHECK_ZERO_DIV   (target_flags & MASK_CHECK_ZERO_DIV)
#define TARGET_USE_DIV   (target_flags & MASK_USE_DIV)
#define TARGET_IDENTIFY_REVISION   (target_flags & MASK_IDENTIFY_REVISION)
#define TARGET_WARN_PASS_STRUCT   (target_flags & MASK_WARN_PASS_STRUCT)
#define TARGET_OPTIMIZE_ARG_AREA   (target_flags & MASK_OPTIMIZE_ARG_AREA)
#define TARGET_SERIALIZE_VOLATILE   (!(target_flags & MASK_NO_SERIALIZE_VOLATILE))
#define TARGET_EITHER_LARGE_SHIFT   (target_flags & MASK_EITHER_LARGE_SHIFT)
#define TARGET_OMIT_LEAF_FRAME_POINTER   (target_flags & MASK_OMIT_LEAF_FRAME_POINTER)
#define TARGET_DEFAULT   (MASK_CHECK_ZERO_DIV)
#define CPU_DEFAULT   MASK_88100
#define TARGET_SWITCHES
#define SUBTARGET_SWITCHES
#define TARGET_OPTIONS
#define OVERRIDE_OPTIONS
#define CHAR_TYPE_SIZE   8
#define SHORT_TYPE_SIZE   16
#define INT_TYPE_SIZE   32
#define LONG_TYPE_SIZE   32
#define LONG_LONG_TYPE_SIZE   64
#define FLOAT_TYPE_SIZE   32
#define DOUBLE_TYPE_SIZE   64
#define LONG_DOUBLE_TYPE_SIZE   64
#define BITS_BIG_ENDIAN   1
#define BYTES_BIG_ENDIAN   1
#define WORDS_BIG_ENDIAN   1
#define BITS_PER_UNIT   8
#define BITS_PER_WORD   32
#define UNITS_PER_WORD   4
#define POINTER_SIZE   32
#define PARM_BOUNDARY   32
#define MAX_PARM_BOUNDARY   64
#define STACK_BOUNDARY   128
#define FUNCTION_BOUNDARY
#define BIGGEST_ALIGNMENT   64
#define FASTEST_ALIGNMENT   (TARGET_88100 ? 32 : 64)
#define CONSTANT_ALIGNMENT(EXP, ALIGN)
#define DATA_ALIGNMENT(TYPE, ALIGN)
#define STRUCTURE_SIZE_BOUNDARY   8
#define STRICT_ALIGNMENT   1
#define PCC_BITFIELD_TYPE_MATTERS   1
#define FIRST_PSEUDO_REGISTER   64
#define FIRST_EXTENDED_REGISTER   32
#define FIXED_REGISTERS
#define CALL_USED_REGISTERS
#define CONDITIONAL_REGISTER_USAGE
#define XRF_REGNO_P(N)   ((N) < FIRST_PSEUDO_REGISTER && (N) >= FIRST_EXTENDED_REGISTER)
#define HARD_REGNO_NREGS(REGNO, MODE)
#define HARD_REGNO_MODE_OK(REGNO, MODE)
#define MODES_TIEABLE_P(MODE1, MODE2)
#define STACK_POINTER_REGNUM   31
#define FRAME_POINTER_REGNUM   30
#define ARG_POINTER_REGNUM   0
#define TEMP_REGNUM   10
#define STATIC_CHAIN_REGNUM   11
#define STRUCT_VALUE_REGNUM   12
#define PIC_OFFSET_TABLE_REGNUM   25
#define REG_ALLOC_ORDER
#define REG_LEAF_ALLOC_ORDER
#define ORDER_REGS_FOR_LOCAL_ALLOC
#define N_REG_CLASSES   (int) LIM_REG_CLASSES
#define REG_CLASS_NAMES
#define REG_CLASS_CONTENTS
#define REGNO_REG_CLASS(REGNO)   ((REGNO) ? ((REGNO < 32) ? GENERAL_REGS : XRF_REGS) : AP_REG)
#define BASE_REG_CLASS   AGRF_REGS
#define INDEX_REG_CLASS   GENERAL_REGS
#define REG_CLASS_FROM_LETTER(C)   (((C) == 'x') ? XRF_REGS : NO_REGS)
#define REGNO_OK_FOR_BASE_P(REGNO)
#define REGNO_OK_FOR_INDEX_P(REGNO)
#define PREFERRED_RELOAD_CLASS(X, CLASS)   (CONSTANT_P(X) && (CLASS == XRF_REGS) ? NO_REGS : (CLASS))
#define SECONDARY_INPUT_RELOAD_CLASS(CLASS, MODE, IN)
#define CLASS_MAX_NREGS(CLASS, MODE)
#define SMALL_INT(X)   (SMALL_INTVAL (INTVAL (X)))
#define SMALL_INTVAL(I)   ((unsigned) (I) < 0x10000)
#define ADD_INT(X)   (ADD_INTVAL (INTVAL (X)))
#define ADD_INTVAL(I)   ((unsigned) (I) + 0xffff < 0x1ffff)
#define POWER_OF_2(I)   ((I) && POWER_OF_2_or_0(I))
#define POWER_OF_2_or_0(I)   (((I) & ((unsigned)(I) - 1)) == 0)
#define CONST_OK_FOR_LETTER_P(VALUE, C)
#define CONST_DOUBLE_OK_FOR_LETTER_P(VALUE, C)
#define EXTRA_CONSTRAINT(OP, C)   ((C) == 'Q' ? symbolic_address_p (OP) : 0)
#define STACK_GROWS_DOWNWARD
#define STARTING_FRAME_OFFSET   8
#define ACCUMULATE_OUTGOING_ARGS   1
#define FIRST_PARM_OFFSET(FNDECL)   0
#define REG_PARM_STACK_SPACE(FNDECL)   32
#define STACK_PARMS_IN_REG_PARM_AREA
#define RETURN_POPS_ARGS(FUNDECL, FUNTYPE, SIZE)   0
#define FUNCTION_VALUE(VALTYPE, FUNC)
#define RETURN_IN_MEMORY(TYPE)
#define DEFAULT_PCC_STRUCT_RETURN   0
#define LIBCALL_VALUE(MODE)   gen_rtx_REG (MODE, 2)
#define FUNCTION_VALUE_REGNO_P(N)   ((N) == 2)
#define FUNCTION_ARG(CUM, MODE, TYPE, NAMED)   m88k_function_arg (CUM, MODE, TYPE, NAMED)
#define FUNCTION_ARG_PARTIAL_NREGS(CUM, MODE, TYPE, NAMED)   (0)
#define FUNCTION_ARG_PASS_BY_REFERENCE(CUM, MODE, TYPE, NAMED)   (0)
#define CUMULATIVE_ARGS   int
#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT)   ((CUM) = 0)
#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED)
#define FUNCTION_ARG_REGNO_P(N)   ((N) <= 9 && (N) >= 2)
#define FUNCTION_ARG_PADDING(MODE, TYPE)
#define FUNCTION_ARG_BOUNDARY(MODE, TYPE)
#define EXPAND_BUILTIN_SAVEREGS()   m88k_builtin_saveregs ()
#define BUILD_VA_LIST_TYPE(VALIST)   (VALIST) = m88k_build_va_list ()
#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg)   m88k_va_start (stdarg, valist, nextarg)
#define EXPAND_BUILTIN_VA_ARG(valist, type)   m88k_va_arg (valist, type)
#define FUNCTION_PROFILER(FILE, LABELNO)   output_function_profiler (FILE, LABELNO, "mcount", 1)
#define FUNCTION_PROFILER_LENGTH   (5+3+1+5)
#define EXIT_IGNORE_STACK   (1)
#define FRAME_POINTER_REQUIRED
#define ELIMINABLE_REGS
#define CAN_ELIMINATE(FROM, TO)   (!((FROM) == FRAME_POINTER_REGNUM && FRAME_POINTER_REQUIRED))
#define INITIAL_ELIMINATION_OFFSET(FROM, TO, OFFSET)
#define TRAMPOLINE_TEMPLATE(FILE)
#define TRAMPOLINE_SIZE   (32+12)
#define TRAMPOLINE_ALIGNMENT   128
#define INITIALIZE_TRAMPOLINE(TRAMP, FNADDR, CXT)
#define TARGET_MEM_FUNCTIONS
#define EXTRA_CC_MODES   CC(CCEVENmode, "CCEVEN")
#define SELECT_CC_MODE(OP, X, Y)   CCmode
#define CONSTANT_ADDRESS_P(X)
#define MAX_REGS_PER_ADDRESS   2
#define SCALED_ADDRESS_P(ADDR)
#define SHORT_ADDRESS_P(X, TEMP)
#define LEGITIMATE_INDEX_P(X, MODE)
#define RTX_OK_FOR_BASE_P(X)
#define RTX_OK_FOR_INDEX_P(X)
#define GO_IF_LEGITIMATE_ADDRESS(MODE, X, ADDR)
#define REG_OK_FOR_INDEX_P(X)   (!XRF_REGNO_P(REGNO (X)))
#define REG_OK_FOR_BASE_P(X)   (REG_OK_FOR_INDEX_P (X))
#define LEGITIMIZE_ADDRESS(X, OLDX, MODE, WIN)
#define GO_IF_MODE_DEPENDENT_ADDRESS(ADDR, LABEL)
#define LEGITIMATE_CONSTANT_P(X)   (1)
#define LEGITIMATE_PIC_OPERAND_P(X)   (! pic_address_needs_scratch (X))
#define NOTICE_UPDATE_CC(EXP, INSN)   (0)
#define PREDICATE_CODES
#define SPECIAL_MODE_PREDICATES
#define CASE_VECTOR_INSNS   (TARGET_88100 || flag_pic)
#define CASE_VECTOR_MODE   SImode
#define CASE_VECTOR_PC_RELATIVE   1
#define CASE_VALUES_THRESHOLD   (TARGET_88100 ? 4 : 7)
#define DEFAULT_SIGNED_CHAR   1
#define SIZE_TYPE   "unsigned int"
#define SCCS_DIRECTIVE
#define HANDLE_SYSV_PRAGMA
#define SUPPORTS_WEAK   TARGET_SVR4
#define SUPPORTS_ONE_ONLY   TARGET_SVR4
#define MOVE_MAX   8
#define BYTE_LOADS_ZERO_EXTEND
#define SLOW_BYTE_ACCESS   1
#define TRULY_NOOP_TRUNCATION(OUTPREC, INPREC)   1
#define NO_FUNCTION_CSE
#define PROMOTE_PROTOTYPES   1
#define TRADITIONAL_RETURN_FLOAT
#define STORE_FLAG_VALUE   (-1)
#define Pmode   SImode
#define FUNCTION_MODE   SImode
#define ADJUST_INSN_LENGTH(RTX, LENGTH)
#define CC_STATUS_INIT   m88k_volatile_code = '\0'
#define CONST_COSTS(RTX, CODE, OUTER_CODE)
#define ADDRESS_COST(ADDR)
#define RTX_COSTS(X, CODE, OUTER_CODE)
#define MEMORY_MOVE_COST(MODE, CLASS, IN)   4
#define BRANCH_COST   (TARGET_88100 ? 1 : 2)
#define DBX_CONTIN_LENGTH   0
#define ASM_COMMENT_START   ";"
#define TEXT_SECTION_ASM_OP   "\ttext"
#define DATA_SECTION_ASM_OP   "\tdata"
#define CONST_SECTION_ASM_OP
#define TDESC_SECTION_ASM_OP
#define CTORS_SECTION_ASM_OP   "\tsection\t .ctors,\"d\""
#define DTORS_SECTION_ASM_OP   "\tsection\t .dtors,\"d\""
#define INIT_SECTION_ASM_OP   "\tsection\t .init,\"x\""
#define FINI_SECTION_ASM_OP   "\tsection\t .fini,\"x\""
#define IDENT_ASM_OP   "\tident\t"
#define FILE_ASM_OP   "\tfile\t"
#define SECTION_ASM_OP   "\tsection\t"
#define SET_ASM_OP   "\tdef\t"
#define GLOBAL_ASM_OP   "\tglobal\t"
#define ALIGN_ASM_OP   "\talign\t"
#define SKIP_ASM_OP   "\tzero\t"
#define COMMON_ASM_OP   "\tcomm\t"
#define BSS_ASM_OP   "\tbss\t"
#define FLOAT_ASM_OP   "\tfloat\t"
#define DOUBLE_ASM_OP   "\tdouble\t"
#define ASCII_DATA_ASM_OP   "\tstring\t"
#define SBSS_ASM_OP   "\tsbss\t"
#define SCOMM_ASM_OP   "\tscomm\t"
#define SDATA_SECTION_ASM_OP   "\tsdata"
#define TYPE_ASM_OP   "\ttype\t"
#define SIZE_ASM_OP   "\tsize\t"
#define TYPE_OPERAND_FMT   "#%s"
#define ASM_WEAKEN_LABEL(FILE, NAME)
#define INTERNAL_ASM_OP   "\tlocal\t"
#define VERSION_ASM_OP   "\tversion\t"
#define PUSHSECTION_ASM_OP   "\tsection\t"
#define POPSECTION_ASM_OP   "\tprevious"
#define REQUIRES_88110_ASM_OP   "\trequires_88110"
#define ASM_COFFSEM(FILE)
#define ASM_FIRST_LINE(FILE)
#define ASM_FILE_START(FILE)
#define ASM_OUTPUT_SOURCE_FILENAME(FILE, NAME)   fprintf (FILE, "%s\"%s\"\n", FILE_ASM_OP, NAME)
#define ASM_OUTPUT_IDENT(FILE, NAME)   output_ascii (FILE, IDENT_ASM_OP, 4000, NAME, strlen (NAME));
#define ASM_APP_ON   ""
#define ASM_APP_OFF   ""
#define ASM_OUTPUT_OPCODE(STREAM, PTR)
#define REGISTER_NAMES
#define ADDITIONAL_REGISTER_NAMES   {{"psr", 0}, {"cc", 0}}
#define DECLARE_ASM_NAME   TARGET_SVR4
#define ASM_DECLARE_FUNCTION_NAME(FILE, NAME, DECL)
#define ASM_DECLARE_OBJECT_NAME(FILE, NAME, DECL)
#define ASM_FINISH_DECLARE_OBJECT(FILE, DECL, TOP_LEVEL, AT_END)
#define ASM_DECLARE_FUNCTION_SIZE(FILE, FNAME, DECL)
#define ASM_OUTPUT_LABEL(FILE, NAME)   do { assemble_name (FILE, NAME); fputs (":\n", FILE); } while (0)
#define ASM_GLOBALIZE_LABEL(FILE, NAME)
#define USER_LABEL_PREFIX   "_"
#define ASM_OUTPUT_LABELREF(FILE, NAME)
#define ASM_OUTPUT_INTERNAL_LABEL(FILE, PREFIX, NUM)   fprintf (FILE, TARGET_SVR4 ? ".%s%d:\n" : "@%s%d:\n", PREFIX, NUM)
#define ASM_GENERATE_INTERNAL_LABEL(LABEL, PREFIX, NUM)   sprintf (LABEL, TARGET_SVR4 ? "*.%s%ld" : "*@%s%ld", PREFIX, (long)(NUM))
#define ASM_OUTPUT_ASCII(FILE, P, SIZE)   output_ascii (FILE, ASCII_DATA_ASM_OP, 48, P, SIZE)
#define ASM_OUTPUT_CASE_LABEL(FILE, PREFIX, NUM, TABLE)
#define ASM_OUTPUT_CASE_END(FILE, NUM, TABLE)
#define ASM_OUTPUT_ADDR_VEC_ELT(FILE, VALUE)
#define ASM_OUTPUT_ADDR_DIFF_ELT(FILE, BODY, VALUE, REL)   ASM_OUTPUT_ADDR_VEC_ELT (FILE, VALUE)
#define ASM_OUTPUT_ALIGN(FILE, LOG)
#define LABEL_ALIGN_AFTER_BARRIER(LABEL)   (TARGET_88100 && !flag_inhibit_size_directive ? 3 : 2)
#define ASM_OUTPUT_SKIP(FILE, SIZE)   fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))
#define ASM_OUTPUT_COMMON(FILE, NAME, SIZE, ROUNDED)
#define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED)
#define ASM_FORMAT_PRIVATE_NAME(OUTPUT, NAME, LABELNO)
#define ASM_OUTPUT_REG_PUSH(FILE, REGNO)
#define REG_PUSH_LENGTH   2
#define ASM_OUTPUT_REG_POP(FILE, REGNO)
#define REG_POP_LENGTH   2
#define OCS_START_PREFIX   "Ltb"
#define OCS_END_PREFIX   "Lte"
#define PUT_OCS_FUNCTION_START(FILE)   { ASM_OUTPUT_INTERNAL_LABEL (FILE, OCS_START_PREFIX, m88k_function_number); }
#define PUT_OCS_FUNCTION_END(FILE)   { ASM_OUTPUT_INTERNAL_LABEL (FILE, OCS_END_PREFIX, m88k_function_number); }
#define DEBUGGER_AUTO_OFFSET(X)
#define DEBUGGER_ARG_OFFSET(OFFSET, X)
#define USE_CONST_SECTION   DECLARE_ASM_NAME
#define EXTRA_SECTIONS   in_const, in_tdesc, in_sdata
#define CONST_SECTION_FUNCTION
#define INIT_SECTION_FUNCTION
#define FINI_SECTION_FUNCTION
#define EXTRA_SECTION_FUNCTIONS
#define SELECT_SECTION(DECL, RELOC, ALIGN)
#define JUMP_TABLES_IN_TEXT_SECTION   1
#define ENCODE_SECTION_INFO(DECL)
#define PRINT_OPERAND_PUNCT_VALID_P(c)   ((c) == '#' || (c) == '.' || (c) == '!' || (c) == '*' || (c) == ';')
#define PRINT_OPERAND(FILE, X, CODE)   print_operand (FILE, X, CODE)
#define PRINT_OPERAND_ADDRESS(FILE, ADDR)   print_operand_address (FILE, ADDR)
#define DONT_REDUCE_ADDR

Enumerations

enum  m88k_instruction {
  m88k_zero, m88k_or, m88k_subu, m88k_or_lo16,
  m88k_or_lo8, m88k_set, m88k_oru_hi16, m88k_oru_or,
  m88k_zero, m88k_or, m88k_subu, m88k_or_lo16,
  m88k_or_lo8, m88k_set, m88k_oru_hi16, m88k_oru_or
}
enum  processor_type {
  PROCESSOR_EV4, PROCESSOR_EV5, PROCESSOR_EV6, PROCESSOR_I386,
  PROCESSOR_I486, PROCESSOR_PENTIUM, PROCESSOR_PENTIUMPRO, PROCESSOR_K6,
  PROCESSOR_ATHLON, PROCESSOR_PENTIUM4, PROCESSOR_max, PROCESSOR_M88100,
  PROCESSOR_M88110, PROCESSOR_M88000, PROCESSOR_700, PROCESSOR_7100,
  PROCESSOR_7100LC, PROCESSOR_7200, PROCESSOR_8000, PROCESSOR_RIOS1,
  PROCESSOR_RIOS2, PROCESSOR_RS64A, PROCESSOR_MPCCORE, PROCESSOR_PPC403,
  PROCESSOR_PPC405, PROCESSOR_PPC601, PROCESSOR_PPC603, PROCESSOR_PPC604,
  PROCESSOR_PPC604e, PROCESSOR_PPC620, PROCESSOR_PPC630, PROCESSOR_PPC750,
  PROCESSOR_PPC7400, PROCESSOR_PPC7450, PROCESSOR_SH1, PROCESSOR_SH2,
  PROCESSOR_SH3, PROCESSOR_SH3E, PROCESSOR_SH4, PROCESSOR_SH5,
  PROCESSOR_DEFAULT, PROCESSOR_R3000, PROCESSOR_R3900, PROCESSOR_R6000,
  PROCESSOR_R4000, PROCESSOR_R4100, PROCESSOR_R4111, PROCESSOR_R4120,
  PROCESSOR_R4300, PROCESSOR_R4600, PROCESSOR_R4650, PROCESSOR_R5000,
  PROCESSOR_R5400, PROCESSOR_R5500, PROCESSOR_R8000, PROCESSOR_R4KC,
  PROCESSOR_R5KC, PROCESSOR_R20KC, PROCESSOR_SR71000, PROCESSOR_SB1,
  PROCESSOR_V7, PROCESSOR_CYPRESS, PROCESSOR_V8, PROCESSOR_SUPERSPARC,
  PROCESSOR_SPARCLITE, PROCESSOR_F930, PROCESSOR_F934, PROCESSOR_HYPERSPARC,
  PROCESSOR_SPARCLITE86X, PROCESSOR_SPARCLET, PROCESSOR_TSC701, PROCESSOR_V9,
  PROCESSOR_ULTRASPARC, PROCESSOR_DEFAULT, PROCESSOR_R3000, PROCESSOR_R3900,
  PROCESSOR_R6000, PROCESSOR_R4000, PROCESSOR_R4100, PROCESSOR_R4111,
  PROCESSOR_R4120, PROCESSOR_R4300, PROCESSOR_R4600, PROCESSOR_R4650,
  PROCESSOR_R5000, PROCESSOR_R5400, PROCESSOR_R5500, PROCESSOR_R8000,
  PROCESSOR_R4KC, PROCESSOR_R5KC, PROCESSOR_R20KC, PROCESSOR_SR71000,
  PROCESSOR_SB1, PROCESSOR_DEFAULT, PROCESSOR_R3000, PROCESSOR_R3900,
  PROCESSOR_R6000, PROCESSOR_R4000, PROCESSOR_R4100, PROCESSOR_R4111,
  PROCESSOR_R4120, PROCESSOR_R4300, PROCESSOR_R4600, PROCESSOR_R4650,
  PROCESSOR_R5000, PROCESSOR_R5400, PROCESSOR_R5500, PROCESSOR_R8000,
  PROCESSOR_R4KC, PROCESSOR_R5KC, PROCESSOR_R20KC, PROCESSOR_SR71000,
  PROCESSOR_SB1, PROCESSOR_EV4, PROCESSOR_EV5, PROCESSOR_EV6,
  PROCESSOR_I386, PROCESSOR_I486, PROCESSOR_PENTIUM, PROCESSOR_PENTIUMPRO,
  PROCESSOR_K6, PROCESSOR_ATHLON, PROCESSOR_PENTIUM4, PROCESSOR_max,
  PROCESSOR_M88100, PROCESSOR_M88110, PROCESSOR_M88000, PROCESSOR_700,
  PROCESSOR_7100, PROCESSOR_7100LC, PROCESSOR_7200, PROCESSOR_8000,
  PROCESSOR_RIOS1, PROCESSOR_RIOS2, PROCESSOR_RS64A, PROCESSOR_MPCCORE,
  PROCESSOR_PPC403, PROCESSOR_PPC405, PROCESSOR_PPC601, PROCESSOR_PPC603,
  PROCESSOR_PPC604, PROCESSOR_PPC604e, PROCESSOR_PPC620, PROCESSOR_PPC630,
  PROCESSOR_PPC750, PROCESSOR_PPC7400, PROCESSOR_PPC7450, PROCESSOR_SH1,
  PROCESSOR_SH2, PROCESSOR_SH3, PROCESSOR_SH3E, PROCESSOR_SH4,
  PROCESSOR_SH5, PROCESSOR_DEFAULT, PROCESSOR_R3000, PROCESSOR_R3900,
  PROCESSOR_R6000, PROCESSOR_R4000, PROCESSOR_R4100, PROCESSOR_R4111,
  PROCESSOR_R4120, PROCESSOR_R4300, PROCESSOR_R4600, PROCESSOR_R4650,
  PROCESSOR_R5000, PROCESSOR_R5400, PROCESSOR_R5500, PROCESSOR_R8000,
  PROCESSOR_R4KC, PROCESSOR_R5KC, PROCESSOR_R20KC, PROCESSOR_SR71000,
  PROCESSOR_SB1, PROCESSOR_V7, PROCESSOR_CYPRESS, PROCESSOR_V8,
  PROCESSOR_SUPERSPARC, PROCESSOR_SPARCLITE, PROCESSOR_F930, PROCESSOR_F934,
  PROCESSOR_HYPERSPARC, PROCESSOR_SPARCLITE86X, PROCESSOR_SPARCLET, PROCESSOR_TSC701,
  PROCESSOR_V9, PROCESSOR_ULTRASPARC, PROCESSOR_DEFAULT, PROCESSOR_R3000,
  PROCESSOR_R3900, PROCESSOR_R6000, PROCESSOR_R4000, PROCESSOR_R4100,
  PROCESSOR_R4111, PROCESSOR_R4120, PROCESSOR_R4300, PROCESSOR_R4600,
  PROCESSOR_R4650, PROCESSOR_R5000, PROCESSOR_R5400, PROCESSOR_R5500,
  PROCESSOR_R8000, PROCESSOR_R4KC, PROCESSOR_R5KC, PROCESSOR_R20KC,
  PROCESSOR_SR71000, PROCESSOR_SB1, PROCESSOR_DEFAULT, PROCESSOR_R3000,
  PROCESSOR_R3900, PROCESSOR_R6000, PROCESSOR_R4000, PROCESSOR_R4100,
  PROCESSOR_R4111, PROCESSOR_R4120, PROCESSOR_R4300, PROCESSOR_R4600,
  PROCESSOR_R4650, PROCESSOR_R5000, PROCESSOR_R5400, PROCESSOR_R5500,
  PROCESSOR_R8000, PROCESSOR_R4KC, PROCESSOR_R5KC, PROCESSOR_R20KC,
  PROCESSOR_SR71000, PROCESSOR_SB1, PROCESSOR_EV4, PROCESSOR_EV5,
  PROCESSOR_EV6, PROCESSOR_MAX, ARM_CORE, PROCESSOR_I386,
  PROCESSOR_I486, PROCESSOR_PENTIUM, PROCESSOR_PENTIUMPRO, PROCESSOR_K6,
  PROCESSOR_ATHLON, PROCESSOR_PENTIUM4, PROCESSOR_K8, PROCESSOR_NOCONA,
  PROCESSOR_max, PROCESSOR_ITANIUM, PROCESSOR_ITANIUM2, PROCESSOR_max,
  PROCESSOR_DEFAULT, PROCESSOR_IQ2000, PROCESSOR_IQ10, PROCESSOR_DEFAULT,
  PROCESSOR_4KC, PROCESSOR_5KC, PROCESSOR_20KC, PROCESSOR_M4K,
  PROCESSOR_R3000, PROCESSOR_R3900, PROCESSOR_R6000, PROCESSOR_R4000,
  PROCESSOR_R4100, PROCESSOR_R4111, PROCESSOR_R4120, PROCESSOR_R4130,
  PROCESSOR_R4300, PROCESSOR_R4600, PROCESSOR_R4650, PROCESSOR_R5000,
  PROCESSOR_R5400, PROCESSOR_R5500, PROCESSOR_R7000, PROCESSOR_R8000,
  PROCESSOR_R9000, PROCESSOR_SB1, PROCESSOR_SR71000, PROCESSOR_700,
  PROCESSOR_7100, PROCESSOR_7100LC, PROCESSOR_7200, PROCESSOR_7300,
  PROCESSOR_8000, PROCESSOR_RIOS1, PROCESSOR_RIOS2, PROCESSOR_RS64A,
  PROCESSOR_MPCCORE, PROCESSOR_PPC403, PROCESSOR_PPC405, PROCESSOR_PPC440,
  PROCESSOR_PPC601, PROCESSOR_PPC603, PROCESSOR_PPC604, PROCESSOR_PPC604e,
  PROCESSOR_PPC620, PROCESSOR_PPC630, PROCESSOR_PPC750, PROCESSOR_PPC7400,
  PROCESSOR_PPC7450, PROCESSOR_PPC8540, PROCESSOR_POWER4, PROCESSOR_POWER5,
  PROCESSOR_9672_G5, PROCESSOR_9672_G6, PROCESSOR_2064_Z900, PROCESSOR_2084_Z990,
  PROCESSOR_max, PROCESSOR_SH1, PROCESSOR_SH2, PROCESSOR_SH2E,
  PROCESSOR_SH2A, PROCESSOR_SH3, PROCESSOR_SH3E, PROCESSOR_SH4,
  PROCESSOR_SH4A, PROCESSOR_SH5, PROCESSOR_V7, PROCESSOR_CYPRESS,
  PROCESSOR_V8, PROCESSOR_SUPERSPARC, PROCESSOR_SPARCLITE, PROCESSOR_F930,
  PROCESSOR_F934, PROCESSOR_HYPERSPARC, PROCESSOR_SPARCLITE86X, PROCESSOR_SPARCLET,
  PROCESSOR_TSC701, PROCESSOR_V9, PROCESSOR_ULTRASPARC, PROCESSOR_ULTRASPARC3,
  PROCESSOR_EV4, PROCESSOR_EV5, PROCESSOR_EV6, PROCESSOR_MAX,
  ARM_CORE, PROCESSOR_I386, PROCESSOR_I486, PROCESSOR_PENTIUM,
  PROCESSOR_PENTIUMPRO, PROCESSOR_K6, PROCESSOR_ATHLON, PROCESSOR_PENTIUM4,
  PROCESSOR_K8, PROCESSOR_NOCONA, PROCESSOR_GENERIC32, PROCESSOR_GENERIC64,
  PROCESSOR_AMDFAM10, PROCESSOR_max, PROCESSOR_ITANIUM, PROCESSOR_ITANIUM2,
  PROCESSOR_max, PROCESSOR_DEFAULT, PROCESSOR_IQ2000, PROCESSOR_IQ10,
  PROCESSOR_R3000, PROCESSOR_4KC, PROCESSOR_4KP, PROCESSOR_5KC,
  PROCESSOR_5KF, PROCESSOR_20KC, PROCESSOR_24K, PROCESSOR_24KX,
  PROCESSOR_M4K, PROCESSOR_R3900, PROCESSOR_R6000, PROCESSOR_R4000,
  PROCESSOR_R4100, PROCESSOR_R4111, PROCESSOR_R4120, PROCESSOR_R4130,
  PROCESSOR_R4300, PROCESSOR_R4600, PROCESSOR_R4650, PROCESSOR_R5000,
  PROCESSOR_R5400, PROCESSOR_R5500, PROCESSOR_R7000, PROCESSOR_R8000,
  PROCESSOR_R9000, PROCESSOR_SB1, PROCESSOR_SB1A, PROCESSOR_SR71000,
  PROCESSOR_MAX, PROCESSOR_MN10300, PROCESSOR_AM33, PROCESSOR_AM33_2,
  PROCESSOR_MS1_64_001, PROCESSOR_MS1_16_002, PROCESSOR_MS1_16_003, PROCESSOR_MS2,
  PROCESSOR_700, PROCESSOR_7100, PROCESSOR_7100LC, PROCESSOR_7200,
  PROCESSOR_7300, PROCESSOR_8000, PROCESSOR_RIOS1, PROCESSOR_RIOS2,
  PROCESSOR_RS64A, PROCESSOR_MPCCORE, PROCESSOR_PPC403, PROCESSOR_PPC405,
  PROCESSOR_PPC440, PROCESSOR_PPC601, PROCESSOR_PPC603, PROCESSOR_PPC604,
  PROCESSOR_PPC604e, PROCESSOR_PPC620, PROCESSOR_PPC630, PROCESSOR_PPC750,
  PROCESSOR_PPC7400, PROCESSOR_PPC7450, PROCESSOR_PPC8540, PROCESSOR_POWER4,
  PROCESSOR_POWER5, PROCESSOR_9672_G5, PROCESSOR_9672_G6, PROCESSOR_2064_Z900,
  PROCESSOR_2084_Z990, PROCESSOR_2094_Z9_109, PROCESSOR_max, PROCESSOR_SH1,
  PROCESSOR_SH2, PROCESSOR_SH2E, PROCESSOR_SH2A, PROCESSOR_SH3,
  PROCESSOR_SH3E, PROCESSOR_SH4, PROCESSOR_SH4A, PROCESSOR_SH5,
  PROCESSOR_V7, PROCESSOR_CYPRESS, PROCESSOR_V8, PROCESSOR_SUPERSPARC,
  PROCESSOR_SPARCLITE, PROCESSOR_F930, PROCESSOR_F934, PROCESSOR_HYPERSPARC,
  PROCESSOR_SPARCLITE86X, PROCESSOR_SPARCLET, PROCESSOR_TSC701, PROCESSOR_V9,
  PROCESSOR_ULTRASPARC, PROCESSOR_ULTRASPARC3, PROCESSOR_NIAGARA
}
enum  reg_class {
  NO_REGS, R2, R0_1, INDEX_REGS,
  BASE_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  LR0_REGS, GENERAL_REGS, BP_REGS, FC_REGS,
  CR_REGS, Q_REGS, SPECIAL_REGS, ACCUM0_REGS,
  ACCUM_REGS, FLOAT_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, R24_REG, R25_REG, R27_REG,
  GENERAL_REGS, FLOAT_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, LPCOUNT_REG, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, FPU_REGS, LO_REGS,
  STACK_REG, BASE_REGS, HI_REGS, CC_REG,
  GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  R0_REG, POINTER_X_REGS, POINTER_Y_REGS, POINTER_Z_REGS,
  STACK_REG, BASE_POINTER_REGS, POINTER_REGS, ADDW_REGS,
  SIMPLE_LD_REGS, LD_REGS, NO_LD_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R0R1_REGS,
  R2R3_REGS, EXT_LOW_REGS, EXT_REGS, ADDR_REGS,
  INDEX_REGS, BK_REG, SP_REG, RC_REG,
  COUNTER_REGS, INT_REGS, GENERAL_REGS, DP_REG,
  ST_REG, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  GENERAL_REGS, FLOAT_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, S_REGS, INDEX_REGS, SP_REGS,
  A_REGS, SI_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  REPEAT_REGS, CR_REGS, ACCUM_REGS, OTHER_FLAG_REGS,
  F0_REGS, F1_REGS, BR_FLAG_REGS, FLAG_REGS,
  EVEN_REGS, GPR_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, A0H_REG, A0L_REG, A0_REG,
  A1H_REG, ACCUM_HIGH_REGS, A1L_REG, ACCUM_LOW_REGS,
  A1_REG, ACCUM_REGS, X_REG, X_OR_ACCUM_LOW_REGS,
  X_OR_ACCUM_REGS, YH_REG, YH_OR_ACCUM_HIGH_REGS, X_OR_YH_REGS,
  YL_REG, YL_OR_ACCUM_LOW_REGS, X_OR_YL_REGS, X_OR_Y_REGS,
  Y_REG, ACCUM_OR_Y_REGS, PH_REG, X_OR_PH_REGS,
  PL_REG, PL_OR_ACCUM_LOW_REGS, X_OR_PL_REGS, YL_OR_PL_OR_ACCUM_LOW_REGS,
  P_REG, ACCUM_OR_P_REGS, YL_OR_P_REGS, ACCUM_LOW_OR_YL_OR_P_REGS,
  Y_OR_P_REGS, ACCUM_Y_OR_P_REGS, NO_FRAME_Y_ADDR_REGS, Y_ADDR_REGS,
  ACCUM_LOW_OR_Y_ADDR_REGS, ACCUM_OR_Y_ADDR_REGS, X_OR_Y_ADDR_REGS, Y_OR_Y_ADDR_REGS,
  P_OR_Y_ADDR_REGS, NON_HIGH_YBASE_ELIGIBLE_REGS, YBASE_ELIGIBLE_REGS, J_REG,
  J_OR_DAU_16_BIT_REGS, BMU_REGS, NOHIGH_NON_ADDR_REGS, NON_ADDR_REGS,
  SLOW_MEM_LOAD_REGS, NOHIGH_NON_YBASE_REGS, NO_ACCUM_NON_YBASE_REGS, NON_YBASE_REGS,
  YBASE_VIRT_REGS, ACCUM_LOW_OR_YBASE_REGS, ACCUM_OR_YBASE_REGS, X_OR_YBASE_REGS,
  Y_OR_YBASE_REGS, ACCUM_LOW_YL_PL_OR_YBASE_REGS, P_OR_YBASE_REGS, ACCUM_Y_P_OR_YBASE_REGS,
  Y_ADDR_OR_YBASE_REGS, YBASE_OR_NOHIGH_YBASE_ELIGIBLE_REGS, YBASE_OR_YBASE_ELIGIBLE_REGS, NO_HIGH_ALL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, MULTIPLY_32_REG,
  MULTIPLY_64_REG, LOW_REGS, HIGH_REGS, REAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, GENERAL_REGS,
  MAC_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  ADDR_REGS, DATA_REGS, FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, AREG, DREG,
  CREG, BREG, SIREG, DIREG,
  AD_REGS, Q_REGS, NON_Q_REGS, INDEX_REGS,
  LEGACY_REGS, GENERAL_REGS, FP_TOP_REG, FP_SECOND_REG,
  FLOAT_REGS, SSE_REGS, MMX_REGS, FP_TOP_SSE_REGS,
  FP_SECOND_SSE_REGS, FLOAT_SSE_REGS, FLOAT_INT_REGS, INT_SSE_REGS,
  FLOAT_INT_SSE_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  GENERAL_REGS, FP_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GLOBAL_REGS, LOCAL_REGS, LOCAL_OR_GLOBAL_REGS,
  FP_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  PR_REGS, BR_REGS, AR_M_REGS, AR_I_REGS,
  ADDL_REGS, GR_REGS, FR_REGS, GR_AND_BR_REGS,
  GR_AND_FR_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  CARRY_REG, ACCUM_REGS, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, D_REGS, X_REGS,
  Y_REGS, SP_REGS, DA_REGS, DB_REGS,
  Z_REGS, D8_REGS, Q_REGS, D_OR_X_REGS,
  D_OR_Y_REGS, D_OR_SP_REGS, X_OR_Y_REGS, A_REGS,
  X_OR_SP_REGS, Y_OR_SP_REGS, X_OR_Y_OR_D_REGS, A_OR_D_REGS,
  A_OR_SP_REGS, H_REGS, S_REGS, D_OR_S_REGS,
  X_OR_S_REGS, Y_OR_S_REGS, SP_OR_S_REGS, D_OR_X_OR_S_REGS,
  D_OR_Y_OR_S_REGS, D_OR_SP_OR_S_REGS, A_OR_S_REGS, D_OR_A_OR_S_REGS,
  TMP_REGS, D_OR_A_OR_TMP_REGS, G_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, DATA_REGS, ADDR_REGS,
  FP_REGS, GENERAL_REGS, DATA_OR_FP_REGS, ADDR_OR_FP_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, AP_REG,
  XRF_REGS, GENERAL_REGS, AGRF_REGS, XGRF_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, ONLYR1_REGS,
  LRW_REGS, GENERAL_REGS, C_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, GENERAL_REGS, REMAINDER_REG,
  HIMULT_REG, SYSTEM_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, DATA_REGS, ADDRESS_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, DATA_REGS,
  ADDRESS_REGS, SP_REGS, DATA_OR_ADDRESS_REGS, SP_OR_ADDRESS_REGS,
  EXTENDED_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS, SP_OR_EXTENDED_REGS,
  SP_OR_ADDRESS_OR_EXTENDED_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, FLOAT_REG0, LONG_FLOAT_REG0,
  FLOAT_REGS, FP_REGS, GEN_AND_FP_REGS, FRAME_POINTER_REG,
  STACK_POINTER_REG, GEN_AND_MEM_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, R1_REGS, GENERAL_REGS, FPUPPER_REGS,
  FP_REGS, GENERAL_OR_FP_REGS, SHIFT_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R1_REGS, GENERAL_REGS,
  FPUPPER_REGS, FP_REGS, GENERAL_OR_FP_REGS, SHIFT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, MUL_REGS,
  GENERAL_REGS, LOAD_FPU_REGS, NO_LOAD_FPU_REGS, FPU_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, OUT_REGS,
  STD_REGS, ARG_REGS, SRC_REGS, DST_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R0_REGS,
  R15_REGS, BASE_REGS, GENERAL_REGS, FP_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, BASE_REGS,
  GENERAL_REGS, FLOAT_REGS, ALTIVEC_REGS, VRSAVE_REGS,
  NON_SPECIAL_REGS, MQ_REGS, LINK_REGS, CTR_REGS,
  LINK_OR_CTR_REGS, SPECIAL_REGS, SPEC_OR_GEN_REGS, CR0_REGS,
  CR_REGS, NON_FLOAT_REGS, XER_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, ADDR_REGS, GENERAL_REGS,
  FP_REGS, ADDR_FP_REGS, GENERAL_FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0_REGS, PR_REGS,
  T_REGS, MAC_REGS, FPUL_REGS, SIBCALL_REGS,
  GENERAL_REGS, FP0_REGS, FP_REGS, DF_REGS,
  FPSCR_REGS, GENERAL_FP_REGS, TARGET_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, M16_NA_REGS, M16_REGS,
  T_REG, M16_T_REGS, GR_REGS, FP_REGS,
  HI_REG, LO_REG, HILO_REG, MD_REGS,
  COP0_REGS, COP2_REGS, COP3_REGS, HI_AND_GR_REGS,
  LO_AND_GR_REGS, HILO_AND_GR_REGS, HI_AND_FP_REGS, COP0_AND_GR_REGS,
  COP2_AND_GR_REGS, COP3_AND_GR_REGS, ALL_COP_REGS, ALL_COP_AND_GR_REGS,
  ST_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  FPCC_REGS, I64_REGS, GENERAL_REGS, FP_REGS,
  EXTRA_FP_REGS, GENERAL_OR_FP_REGS, GENERAL_OR_EXTRA_FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0_REGS, R1_REGS,
  TWO_REGS, R2_REGS, EIGHT_REGS, R8_REGS,
  ICALL_REGS, GENERAL_REGS, CARRY_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, BR_REGS, FP_REGS, ACC_REG,
  SP_REG, RL_REGS, GR_REGS, AR_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, M16_NA_REGS,
  M16_REGS, T_REG, M16_T_REGS, GR_REGS,
  FP_REGS, HI_REG, LO_REG, HILO_REG,
  MD_REGS, COP0_REGS, COP2_REGS, COP3_REGS,
  HI_AND_GR_REGS, LO_AND_GR_REGS, HILO_AND_GR_REGS, HI_AND_FP_REGS,
  COP0_AND_GR_REGS, COP2_AND_GR_REGS, COP3_AND_GR_REGS, ALL_COP_REGS,
  ALL_COP_AND_GR_REGS, ST_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, M16_NA_REGS, M16_REGS, T_REG,
  M16_T_REGS, GR_REGS, FP_REGS, HI_REG,
  LO_REG, HILO_REG, MD_REGS, COP0_REGS,
  COP2_REGS, COP3_REGS, HI_AND_GR_REGS, LO_AND_GR_REGS,
  HILO_AND_GR_REGS, HI_AND_FP_REGS, COP0_AND_GR_REGS, COP2_AND_GR_REGS,
  COP3_AND_GR_REGS, ALL_COP_REGS, ALL_COP_AND_GR_REGS, ST_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R2,
  R0_1, INDEX_REGS, BASE_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, LR0_REGS, GENERAL_REGS,
  BP_REGS, FC_REGS, CR_REGS, Q_REGS,
  SPECIAL_REGS, ACCUM0_REGS, ACCUM_REGS, FLOAT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R24_REG,
  R25_REG, R27_REG, GENERAL_REGS, FLOAT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, LPCOUNT_REG,
  GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  FPU_REGS, LO_REGS, STACK_REG, BASE_REGS,
  HI_REGS, CC_REG, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0_REG, POINTER_X_REGS,
  POINTER_Y_REGS, POINTER_Z_REGS, STACK_REG, BASE_POINTER_REGS,
  POINTER_REGS, ADDW_REGS, SIMPLE_LD_REGS, LD_REGS,
  NO_LD_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, R0R1_REGS, R2R3_REGS, EXT_LOW_REGS,
  EXT_REGS, ADDR_REGS, INDEX_REGS, BK_REG,
  SP_REG, RC_REG, COUNTER_REGS, INT_REGS,
  GENERAL_REGS, DP_REG, ST_REG, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, GENERAL_REGS, FLOAT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, S_REGS,
  INDEX_REGS, SP_REGS, A_REGS, SI_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, REPEAT_REGS, CR_REGS,
  ACCUM_REGS, OTHER_FLAG_REGS, F0_REGS, F1_REGS,
  BR_FLAG_REGS, FLAG_REGS, EVEN_REGS, GPR_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, A0H_REG,
  A0L_REG, A0_REG, A1H_REG, ACCUM_HIGH_REGS,
  A1L_REG, ACCUM_LOW_REGS, A1_REG, ACCUM_REGS,
  X_REG, X_OR_ACCUM_LOW_REGS, X_OR_ACCUM_REGS, YH_REG,
  YH_OR_ACCUM_HIGH_REGS, X_OR_YH_REGS, YL_REG, YL_OR_ACCUM_LOW_REGS,
  X_OR_YL_REGS, X_OR_Y_REGS, Y_REG, ACCUM_OR_Y_REGS,
  PH_REG, X_OR_PH_REGS, PL_REG, PL_OR_ACCUM_LOW_REGS,
  X_OR_PL_REGS, YL_OR_PL_OR_ACCUM_LOW_REGS, P_REG, ACCUM_OR_P_REGS,
  YL_OR_P_REGS, ACCUM_LOW_OR_YL_OR_P_REGS, Y_OR_P_REGS, ACCUM_Y_OR_P_REGS,
  NO_FRAME_Y_ADDR_REGS, Y_ADDR_REGS, ACCUM_LOW_OR_Y_ADDR_REGS, ACCUM_OR_Y_ADDR_REGS,
  X_OR_Y_ADDR_REGS, Y_OR_Y_ADDR_REGS, P_OR_Y_ADDR_REGS, NON_HIGH_YBASE_ELIGIBLE_REGS,
  YBASE_ELIGIBLE_REGS, J_REG, J_OR_DAU_16_BIT_REGS, BMU_REGS,
  NOHIGH_NON_ADDR_REGS, NON_ADDR_REGS, SLOW_MEM_LOAD_REGS, NOHIGH_NON_YBASE_REGS,
  NO_ACCUM_NON_YBASE_REGS, NON_YBASE_REGS, YBASE_VIRT_REGS, ACCUM_LOW_OR_YBASE_REGS,
  ACCUM_OR_YBASE_REGS, X_OR_YBASE_REGS, Y_OR_YBASE_REGS, ACCUM_LOW_YL_PL_OR_YBASE_REGS,
  P_OR_YBASE_REGS, ACCUM_Y_P_OR_YBASE_REGS, Y_ADDR_OR_YBASE_REGS, YBASE_OR_NOHIGH_YBASE_ELIGIBLE_REGS,
  YBASE_OR_YBASE_ELIGIBLE_REGS, NO_HIGH_ALL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, MULTIPLY_32_REG, MULTIPLY_64_REG, LOW_REGS,
  HIGH_REGS, REAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, MAC_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, ADDR_REGS, DATA_REGS,
  FP_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  AREG, DREG, CREG, BREG,
  SIREG, DIREG, AD_REGS, Q_REGS,
  NON_Q_REGS, INDEX_REGS, LEGACY_REGS, GENERAL_REGS,
  FP_TOP_REG, FP_SECOND_REG, FLOAT_REGS, SSE_REGS,
  MMX_REGS, FP_TOP_SSE_REGS, FP_SECOND_SSE_REGS, FLOAT_SSE_REGS,
  FLOAT_INT_REGS, INT_SSE_REGS, FLOAT_INT_SSE_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, GENERAL_REGS, FP_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, GLOBAL_REGS,
  LOCAL_REGS, LOCAL_OR_GLOBAL_REGS, FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, PR_REGS, BR_REGS,
  AR_M_REGS, AR_I_REGS, ADDL_REGS, GR_REGS,
  FR_REGS, GR_AND_BR_REGS, GR_AND_FR_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, CARRY_REG, ACCUM_REGS,
  GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  D_REGS, X_REGS, Y_REGS, SP_REGS,
  DA_REGS, DB_REGS, Z_REGS, D8_REGS,
  Q_REGS, D_OR_X_REGS, D_OR_Y_REGS, D_OR_SP_REGS,
  X_OR_Y_REGS, A_REGS, X_OR_SP_REGS, Y_OR_SP_REGS,
  X_OR_Y_OR_D_REGS, A_OR_D_REGS, A_OR_SP_REGS, H_REGS,
  S_REGS, D_OR_S_REGS, X_OR_S_REGS, Y_OR_S_REGS,
  SP_OR_S_REGS, D_OR_X_OR_S_REGS, D_OR_Y_OR_S_REGS, D_OR_SP_OR_S_REGS,
  A_OR_S_REGS, D_OR_A_OR_S_REGS, TMP_REGS, D_OR_A_OR_TMP_REGS,
  G_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  DATA_REGS, ADDR_REGS, FP_REGS, GENERAL_REGS,
  DATA_OR_FP_REGS, ADDR_OR_FP_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS,
  AGRF_REGS, XGRF_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, ONLYR1_REGS, LRW_REGS, GENERAL_REGS,
  C_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  GENERAL_REGS, REMAINDER_REG, HIMULT_REG, SYSTEM_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, DATA_REGS,
  ADDRESS_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, DATA_REGS, ADDRESS_REGS, SP_REGS,
  DATA_OR_ADDRESS_REGS, SP_OR_ADDRESS_REGS, EXTENDED_REGS, DATA_OR_EXTENDED_REGS,
  ADDRESS_OR_EXTENDED_REGS, SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, GENERAL_REGS,
  FLOAT_REG0, LONG_FLOAT_REG0, FLOAT_REGS, FP_REGS,
  GEN_AND_FP_REGS, FRAME_POINTER_REG, STACK_POINTER_REG, GEN_AND_MEM_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R1_REGS,
  GENERAL_REGS, FPUPPER_REGS, FP_REGS, GENERAL_OR_FP_REGS,
  SHIFT_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  R1_REGS, GENERAL_REGS, FPUPPER_REGS, FP_REGS,
  GENERAL_OR_FP_REGS, SHIFT_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, MUL_REGS, GENERAL_REGS, LOAD_FPU_REGS,
  NO_LOAD_FPU_REGS, FPU_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, OUT_REGS, STD_REGS, ARG_REGS,
  SRC_REGS, DST_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, R0_REGS, R15_REGS, BASE_REGS,
  GENERAL_REGS, FP_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, BASE_REGS, GENERAL_REGS, FLOAT_REGS,
  ALTIVEC_REGS, VRSAVE_REGS, NON_SPECIAL_REGS, MQ_REGS,
  LINK_REGS, CTR_REGS, LINK_OR_CTR_REGS, SPECIAL_REGS,
  SPEC_OR_GEN_REGS, CR0_REGS, CR_REGS, NON_FLOAT_REGS,
  XER_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  ADDR_REGS, GENERAL_REGS, FP_REGS, ADDR_FP_REGS,
  GENERAL_FP_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  R0_REGS, PR_REGS, T_REGS, MAC_REGS,
  FPUL_REGS, SIBCALL_REGS, GENERAL_REGS, FP0_REGS,
  FP_REGS, DF_REGS, FPSCR_REGS, GENERAL_FP_REGS,
  TARGET_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  M16_NA_REGS, M16_REGS, T_REG, M16_T_REGS,
  GR_REGS, FP_REGS, HI_REG, LO_REG,
  HILO_REG, MD_REGS, COP0_REGS, COP2_REGS,
  COP3_REGS, HI_AND_GR_REGS, LO_AND_GR_REGS, HILO_AND_GR_REGS,
  HI_AND_FP_REGS, COP0_AND_GR_REGS, COP2_AND_GR_REGS, COP3_AND_GR_REGS,
  ALL_COP_REGS, ALL_COP_AND_GR_REGS, ST_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, FPCC_REGS, I64_REGS,
  GENERAL_REGS, FP_REGS, EXTRA_FP_REGS, GENERAL_OR_FP_REGS,
  GENERAL_OR_EXTRA_FP_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  R0_REGS, R1_REGS, TWO_REGS, R2_REGS,
  EIGHT_REGS, R8_REGS, ICALL_REGS, GENERAL_REGS,
  CARRY_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, BR_REGS,
  FP_REGS, ACC_REG, SP_REG, RL_REGS,
  GR_REGS, AR_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, M16_NA_REGS, M16_REGS, T_REG,
  M16_T_REGS, GR_REGS, FP_REGS, HI_REG,
  LO_REG, HILO_REG, MD_REGS, COP0_REGS,
  COP2_REGS, COP3_REGS, HI_AND_GR_REGS, LO_AND_GR_REGS,
  HILO_AND_GR_REGS, HI_AND_FP_REGS, COP0_AND_GR_REGS, COP2_AND_GR_REGS,
  COP3_AND_GR_REGS, ALL_COP_REGS, ALL_COP_AND_GR_REGS, ST_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, M16_NA_REGS,
  M16_REGS, T_REG, M16_T_REGS, GR_REGS,
  FP_REGS, HI_REG, LO_REG, HILO_REG,
  MD_REGS, COP0_REGS, COP2_REGS, COP3_REGS,
  HI_AND_GR_REGS, LO_AND_GR_REGS, HILO_AND_GR_REGS, HI_AND_FP_REGS,
  COP0_AND_GR_REGS, COP2_AND_GR_REGS, COP3_AND_GR_REGS, ALL_COP_REGS,
  ALL_COP_AND_GR_REGS, ST_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, R0_REG, R24_REG, R25_REG,
  R27_REG, GENERAL_REGS, FLOAT_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, LPCOUNT_REG, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, FPA_REGS,
  CIRRUS_REGS, VFP_REGS, IWMMXT_GR_REGS, IWMMXT_REGS,
  LO_REGS, STACK_REG, BASE_REGS, HI_REGS,
  CC_REG, VFPCC_REG, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0_REG, POINTER_X_REGS,
  POINTER_Y_REGS, POINTER_Z_REGS, STACK_REG, BASE_POINTER_REGS,
  POINTER_REGS, ADDW_REGS, SIMPLE_LD_REGS, LD_REGS,
  NO_LD_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, IREGS, BREGS, LREGS,
  MREGS, CIRCREGS, DAGREGS, EVEN_AREGS,
  ODD_AREGS, AREGS, CCREGS, EVEN_DREGS,
  ODD_DREGS, DREGS, PREGS_CLOBBERED, PREGS,
  DPREGS, MOST_REGS, PROLOGUE_REGS, NON_A_CC_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R0R1_REGS,
  R2R3_REGS, EXT_LOW_REGS, EXT_REGS, ADDR_REGS,
  INDEX_REGS, BK_REG, SP_REG, RC_REG,
  COUNTER_REGS, INT_REGS, GENERAL_REGS, DP_REG,
  ST_REG, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, MULTIPLY_32_REG,
  MULTIPLY_64_REG, LOW_REGS, HIGH_REGS, REAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, ICC_REGS,
  FCC_REGS, CC_REGS, ICR_REGS, FCR_REGS,
  CR_REGS, LCR_REG, LR_REG, GR8_REGS,
  GR9_REGS, GR89_REGS, FDPIC_REGS, FDPIC_FPTR_REGS,
  FDPIC_CALL_REGS, SPR_REGS, QUAD_ACC_REGS, EVEN_ACC_REGS,
  ACC_REGS, ACCG_REGS, QUAD_FPR_REGS, FEVEN_REGS,
  FPR_REGS, QUAD_REGS, EVEN_REGS, GPR_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, COUNTER_REGS,
  SOURCE_REGS, DESTINATION_REGS, GENERAL_REGS, MAC_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, AREG,
  DREG, CREG, BREG, SIREG,
  DIREG, AD_REGS, Q_REGS, NON_Q_REGS,
  INDEX_REGS, LEGACY_REGS, GENERAL_REGS, FP_TOP_REG,
  FP_SECOND_REG, FLOAT_REGS, SSE_REGS, MMX_REGS,
  FP_TOP_SSE_REGS, FP_SECOND_SSE_REGS, FLOAT_SSE_REGS, FLOAT_INT_REGS,
  INT_SSE_REGS, FLOAT_INT_SSE_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, PR_REGS, BR_REGS,
  AR_M_REGS, AR_I_REGS, ADDL_REGS, GR_REGS,
  FR_REGS, GR_AND_BR_REGS, GR_AND_FR_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, DPH_REGS, DPL_REGS,
  DP_REGS, SP_REGS, IPH_REGS, IPL_REGS,
  IP_REGS, DP_SP_REGS, PTR_REGS, NONPTR_REGS,
  NONSP_REGS, GENERAL_REGS, ALL_REGS = GENERAL_REGS, LIM_REG_CLASSES,
  NO_REGS, GR_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, CARRY_REG, ACCUM_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, D_REGS,
  X_REGS, Y_REGS, SP_REGS, DA_REGS,
  DB_REGS, Z_REGS, D8_REGS, Q_REGS,
  D_OR_X_REGS, D_OR_Y_REGS, D_OR_SP_REGS, X_OR_Y_REGS,
  A_REGS, X_OR_SP_REGS, Y_OR_SP_REGS, X_OR_Y_OR_D_REGS,
  A_OR_D_REGS, A_OR_SP_REGS, H_REGS, S_REGS,
  D_OR_S_REGS, X_OR_S_REGS, Y_OR_S_REGS, Z_OR_S_REGS,
  SP_OR_S_REGS, D_OR_X_OR_S_REGS, D_OR_Y_OR_S_REGS, D_OR_SP_OR_S_REGS,
  A_OR_S_REGS, D_OR_A_OR_S_REGS, TMP_REGS, D_OR_A_OR_TMP_REGS,
  G_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  DATA_REGS, ADDR_REGS, FP_REGS, GENERAL_REGS,
  DATA_OR_FP_REGS, ADDR_OR_FP_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, ONLYR1_REGS, LRW_REGS, GENERAL_REGS,
  C_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  M16_NA_REGS, M16_REGS, T_REG, M16_T_REGS,
  PIC_FN_ADDR_REG, LEA_REGS, GR_REGS, FP_REGS,
  HI_REG, LO_REG, MD_REGS, COP0_REGS,
  COP2_REGS, COP3_REGS, HI_AND_GR_REGS, LO_AND_GR_REGS,
  HI_AND_FP_REGS, COP0_AND_GR_REGS, COP2_AND_GR_REGS, COP3_AND_GR_REGS,
  ALL_COP_REGS, ALL_COP_AND_GR_REGS, ST_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, GENERAL_REGS, REMAINDER_REG,
  HIMULT_REG, SYSTEM_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, DATA_REGS, ADDRESS_REGS, SP_REGS,
  DATA_OR_ADDRESS_REGS, SP_OR_ADDRESS_REGS, EXTENDED_REGS, DATA_OR_EXTENDED_REGS,
  ADDRESS_OR_EXTENDED_REGS, SP_OR_EXTENDED_REGS, SP_OR_ADDRESS_OR_EXTENDED_REGS, FP_REGS,
  FP_ACC_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, FLOAT_REG0, LONG_FLOAT_REG0,
  FLOAT_REGS, LONG_REGS, FP_REGS, GEN_AND_FP_REGS,
  FRAME_POINTER_REG, STACK_POINTER_REG, GEN_AND_MEM_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R1_REGS, GENERAL_REGS,
  FPUPPER_REGS, FP_REGS, GENERAL_OR_FP_REGS, SHIFT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R1_REGS,
  GENERAL_REGS, FPUPPER_REGS, FP_REGS, GENERAL_OR_FP_REGS,
  SHIFT_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  MUL_REGS, GENERAL_REGS, LOAD_FPU_REGS, NO_LOAD_FPU_REGS,
  FPU_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  BASE_REGS, GENERAL_REGS, FLOAT_REGS, ALTIVEC_REGS,
  VRSAVE_REGS, VSCR_REGS, SPE_ACC_REGS, SPEFSCR_REGS,
  NON_SPECIAL_REGS, MQ_REGS, LINK_REGS, CTR_REGS,
  LINK_OR_CTR_REGS, SPECIAL_REGS, SPEC_OR_GEN_REGS, CR0_REGS,
  CR_REGS, NON_FLOAT_REGS, XER_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, CC_REGS, ADDR_REGS,
  GENERAL_REGS, ACCESS_REGS, ADDR_CC_REGS, GENERAL_CC_REGS,
  FP_REGS, ADDR_FP_REGS, GENERAL_FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0_REGS, PR_REGS,
  T_REGS, MAC_REGS, FPUL_REGS, SIBCALL_REGS,
  GENERAL_REGS, FP0_REGS, FP_REGS, DF_HI_REGS,
  DF_REGS, FPSCR_REGS, GENERAL_FP_REGS, TARGET_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, FPCC_REGS,
  I64_REGS, GENERAL_REGS, FP_REGS, EXTRA_FP_REGS,
  GENERAL_OR_FP_REGS, GENERAL_OR_EXTRA_FP_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, R0_REGS, R1_REGS, TWO_REGS,
  R2_REGS, EIGHT_REGS, R8_REGS, ICALL_REGS,
  GENERAL_REGS, CARRY_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  BR_REGS, FP_REGS, ACC_REG, SP_REG,
  RL_REGS, GR_REGS, AR_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0_REG, R24_REG,
  R25_REG, R27_REG, GENERAL_REGS, FLOAT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, LPCOUNT_REG,
  GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  FPA_REGS, CIRRUS_REGS, VFP_REGS, IWMMXT_GR_REGS,
  IWMMXT_REGS, LO_REGS, STACK_REG, BASE_REGS,
  HI_REGS, CC_REG, VFPCC_REG, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R0_REG,
  POINTER_X_REGS, POINTER_Y_REGS, POINTER_Z_REGS, STACK_REG,
  BASE_POINTER_REGS, POINTER_REGS, ADDW_REGS, SIMPLE_LD_REGS,
  LD_REGS, NO_LD_REGS, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, IREGS, BREGS,
  LREGS, MREGS, CIRCREGS, DAGREGS,
  EVEN_AREGS, ODD_AREGS, AREGS, CCREGS,
  EVEN_DREGS, ODD_DREGS, DREGS, FDPIC_REGS,
  FDPIC_FPTR_REGS, PREGS_CLOBBERED, PREGS, IPREGS,
  DPREGS, MOST_REGS, LT_REGS, LC_REGS,
  LB_REGS, PROLOGUE_REGS, NON_A_CC_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R0R1_REGS, R2R3_REGS,
  EXT_LOW_REGS, EXT_REGS, ADDR_REGS, INDEX_REGS,
  BK_REG, SP_REG, RC_REG, COUNTER_REGS,
  INT_REGS, GENERAL_REGS, DP_REG, ST_REG,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, MOF_REGS,
  CC0_REGS, SPECIAL_REGS, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, LO_REGS, HI_REGS,
  HILO_REGS, NOSP_REGS, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, MULTIPLY_32_REG, MULTIPLY_64_REG,
  LOW_REGS, HIGH_REGS, REAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, ICC_REGS, FCC_REGS,
  CC_REGS, ICR_REGS, FCR_REGS, CR_REGS,
  LCR_REG, LR_REG, GR8_REGS, GR9_REGS,
  GR89_REGS, FDPIC_REGS, FDPIC_FPTR_REGS, FDPIC_CALL_REGS,
  SPR_REGS, QUAD_ACC_REGS, EVEN_ACC_REGS, ACC_REGS,
  ACCG_REGS, QUAD_FPR_REGS, FEVEN_REGS, FPR_REGS,
  QUAD_REGS, EVEN_REGS, GPR_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, COUNTER_REGS, SOURCE_REGS,
  DESTINATION_REGS, GENERAL_REGS, MAC_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, AREG, DREG,
  CREG, BREG, SIREG, DIREG,
  AD_REGS, Q_REGS, NON_Q_REGS, INDEX_REGS,
  LEGACY_REGS, GENERAL_REGS, FP_TOP_REG, FP_SECOND_REG,
  FLOAT_REGS, SSE_REGS, MMX_REGS, FP_TOP_SSE_REGS,
  FP_SECOND_SSE_REGS, FLOAT_SSE_REGS, FLOAT_INT_REGS, INT_SSE_REGS,
  FLOAT_INT_SSE_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  PR_REGS, BR_REGS, AR_M_REGS, AR_I_REGS,
  ADDL_REGS, GR_REGS, FP_REGS, FR_REGS,
  GR_AND_BR_REGS, GR_AND_FR_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, GR_REGS, ALL_REGS, LIM_REG_CLASSES,
  NO_REGS, SP_REGS, FB_REGS, SB_REGS,
  CR_REGS, R0_REGS, R1_REGS, R2_REGS,
  R3_REGS, R02_REGS, HL_REGS, QI_REGS,
  R23_REGS, R03_REGS, DI_REGS, A0_REGS,
  A1_REGS, A_REGS, AD_REGS, PS_REGS,
  SI_REGS, HI_REGS, RA_REGS, GENERAL_REGS,
  FLG_REGS, HC_REGS, MEM_REGS, R02_A_MEM_REGS,
  A_HL_MEM_REGS, R1_R3_A_MEM_REGS, R03_MEM_REGS, A_HI_MEM_REGS,
  A_AD_CR_MEM_SI_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  CARRY_REG, ACCUM_REGS, GENERAL_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, D_REGS, X_REGS,
  Y_REGS, SP_REGS, DA_REGS, DB_REGS,
  Z_REGS, D8_REGS, Q_REGS, D_OR_X_REGS,
  D_OR_Y_REGS, D_OR_SP_REGS, X_OR_Y_REGS, A_REGS,
  X_OR_SP_REGS, Y_OR_SP_REGS, X_OR_Y_OR_D_REGS, A_OR_D_REGS,
  A_OR_SP_REGS, H_REGS, S_REGS, D_OR_S_REGS,
  X_OR_S_REGS, Y_OR_S_REGS, Z_OR_S_REGS, SP_OR_S_REGS,
  D_OR_X_OR_S_REGS, D_OR_Y_OR_S_REGS, D_OR_SP_OR_S_REGS, A_OR_S_REGS,
  D_OR_A_OR_S_REGS, TMP_REGS, D_OR_A_OR_TMP_REGS, G_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, DATA_REGS,
  ADDR_REGS, FP_REGS, GENERAL_REGS, DATA_OR_FP_REGS,
  ADDR_OR_FP_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  ONLYR1_REGS, LRW_REGS, GENERAL_REGS, C_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, M16_NA_REGS,
  M16_REGS, T_REG, M16_T_REGS, PIC_FN_ADDR_REG,
  V1_REG, LEA_REGS, GR_REGS, FP_REGS,
  HI_REG, LO_REG, MD_REGS, COP0_REGS,
  COP2_REGS, COP3_REGS, HI_AND_GR_REGS, LO_AND_GR_REGS,
  HI_AND_FP_REGS, COP0_AND_GR_REGS, COP2_AND_GR_REGS, COP3_AND_GR_REGS,
  ALL_COP_REGS, ALL_COP_AND_GR_REGS, ST_REGS, DSP_ACC_REGS,
  ACC_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  GENERAL_REGS, REMAINDER_REG, HIMULT_REG, SYSTEM_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, DATA_REGS,
  ADDRESS_REGS, SP_REGS, DATA_OR_ADDRESS_REGS, SP_OR_ADDRESS_REGS,
  EXTENDED_REGS, DATA_OR_EXTENDED_REGS, ADDRESS_OR_EXTENDED_REGS, SP_OR_EXTENDED_REGS,
  SP_OR_ADDRESS_OR_EXTENDED_REGS, FP_REGS, FP_ACC_REGS, GENERAL_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, R1_REGS, GENERAL_REGS,
  FPUPPER_REGS, FP_REGS, GENERAL_OR_FP_REGS, SHIFT_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, R1_REGS,
  GENERAL_REGS, FPUPPER_REGS, FP_REGS, GENERAL_OR_FP_REGS,
  SHIFT_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  MUL_REGS, GENERAL_REGS, LOAD_FPU_REGS, NO_LOAD_FPU_REGS,
  FPU_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  BASE_REGS, GENERAL_REGS, FLOAT_REGS, ALTIVEC_REGS,
  VRSAVE_REGS, VSCR_REGS, SPE_ACC_REGS, SPEFSCR_REGS,
  NON_SPECIAL_REGS, MQ_REGS, LINK_REGS, CTR_REGS,
  LINK_OR_CTR_REGS, SPECIAL_REGS, SPEC_OR_GEN_REGS, CR0_REGS,
  CR_REGS, NON_FLOAT_REGS, XER_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, CC_REGS, ADDR_REGS,
  GENERAL_REGS, ACCESS_REGS, ADDR_CC_REGS, GENERAL_CC_REGS,
  FP_REGS, ADDR_FP_REGS, GENERAL_FP_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, G16_REGS, G32_REGS,
  T32_REGS, HI_REG, LO_REG, CE_REGS,
  CN_REG, LC_REG, SC_REG, SP_REGS,
  CR_REGS, CP1_REGS, CP2_REGS, CP3_REGS,
  CPA_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  R0_REGS, PR_REGS, T_REGS, MAC_REGS,
  FPUL_REGS, SIBCALL_REGS, GENERAL_REGS, FP0_REGS,
  FP_REGS, DF_HI_REGS, DF_REGS, FPSCR_REGS,
  GENERAL_FP_REGS, GENERAL_DF_REGS, TARGET_REGS, ALL_REGS,
  LIM_REG_CLASSES, NO_REGS, FPCC_REGS, I64_REGS,
  GENERAL_REGS, FP_REGS, EXTRA_FP_REGS, GENERAL_OR_FP_REGS,
  GENERAL_OR_EXTRA_FP_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  R0_REGS, R1_REGS, TWO_REGS, R2_REGS,
  EIGHT_REGS, R8_REGS, ICALL_REGS, GENERAL_REGS,
  CARRY_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES, NO_REGS,
  ALL_REGS, LIM_REG_CLASSES, NO_REGS, BR_REGS,
  FP_REGS, ACC_REG, SP_REG, RL_REGS,
  GR_REGS, AR_REGS, ALL_REGS, LIM_REG_CLASSES
}

Variables

const char * m88k_pound_sign
const char * m88k_short_data
const char * m88k_version
char m88k_volatile_code
unsigned m88k_gp_threshold
int m88k_prologue_done
int m88k_function_number
int m88k_fp_offset
int m88k_stack_size
int m88k_case_index
struct rtx_def * m88k_compare_reg
struct rtx_def * m88k_compare_op0
struct rtx_def * m88k_compare_op1
enum processor_type m88k_cpu
int target_flags
int frame_pointer_needed
int flag_delayed_branch
int flag_pic


Define Documentation

#define ACCUMULATE_OUTGOING_ARGS   1

Definition at line 875 of file m88k.h.

#define ADD_INT ( X   )     (ADD_INTVAL (INTVAL (X)))

Definition at line 817 of file m88k.h.

Referenced by add_operand(), legitimize_address(), and pic_address_needs_scratch().

#define ADD_INTVAL (  )     ((unsigned) (I) + 0xffff < 0x1ffff)

Definition at line 818 of file m88k.h.

Referenced by emit_add(), and output_call().

#define ADDITIONAL_REGISTER_NAMES   {{"psr", 0}, {"cc", 0}}

Definition at line 1826 of file m88k.h.

#define ADDRESS_COST ( ADDR   ) 

Value:

(GET_CODE (ADDR) == REG ? 1 :       \
   GET_CODE (ADDR) == LO_SUM ? 1 :      \
   GET_CODE (ADDR) == HIGH ? 2 :      \
   GET_CODE (ADDR) == MULT ? 1 :      \
   GET_CODE (ADDR) != PLUS ? 4 :      \
   (REG_P (XEXP (ADDR, 0)) && REG_P (XEXP (ADDR, 1))) ? 2 : 1)

Definition at line 1582 of file m88k.h.

#define ADJUST_INSN_LENGTH ( RTX,
LENGTH   ) 

Value:

if (GET_CODE (RTX) == BARRIER           \
      || (TARGET_SERIALIZE_VOLATILE         \
    && GET_CODE (RTX) == INSN         \
    && GET_CODE (PATTERN (RTX)) == SET        \
    && ((GET_CODE (SET_SRC (PATTERN (RTX))) == MEM    \
         && MEM_VOLATILE_P (SET_SRC (PATTERN (RTX)))))))    \
    LENGTH += 1;              \
  else if (GET_CODE (RTX) == NOTE         \
     && NOTE_LINE_NUMBER (RTX) == NOTE_INSN_PROLOGUE_END)   \
    {                 \
      if (current_function_profile)         \
  LENGTH += (FUNCTION_PROFILER_LENGTH + REG_PUSH_LENGTH   \
       + REG_POP_LENGTH);         \
    }                 \

Definition at line 1525 of file m88k.h.

#define ALIGN_ASM_OP   "\talign\t"

Definition at line 1662 of file m88k.h.

#define ARG_POINTER_REGNUM   0

Definition at line 645 of file m88k.h.

#define ASCII_DATA_ASM_OP   "\tstring\t"

Definition at line 1668 of file m88k.h.

#define ASM_APP_OFF   ""

Definition at line 1786 of file m88k.h.

#define ASM_APP_ON   ""

Definition at line 1782 of file m88k.h.

#define ASM_COFFSEM ( FILE   ) 

Definition at line 1733 of file m88k.h.

Referenced by output_file_start().

#define ASM_COMMENT_START   ";"

Definition at line 1620 of file m88k.h.

#define ASM_DECLARE_FUNCTION_NAME ( FILE,
NAME,
DECL   ) 

Value:

do {                  \
    if (DECLARE_ASM_NAME)           \
      {                 \
  fprintf (FILE, "%s", TYPE_ASM_OP);        \
  assemble_name (FILE, NAME);         \
  putc (',', FILE);           \
  fprintf (FILE, TYPE_OPERAND_FMT, "function");     \
  putc ('\n', FILE);            \
      }                 \
    ASM_OUTPUT_LABEL(FILE, NAME);         \
  } while (0)

Definition at line 1834 of file m88k.h.

#define ASM_DECLARE_FUNCTION_SIZE ( FILE,
FNAME,
DECL   ) 

Value:

do {                  \
    if (DECLARE_ASM_NAME)           \
      {                 \
  if (!flag_inhibit_size_directive)       \
    {               \
      char label[256];            \
      static int labelno = 0;         \
      labelno++;              \
      ASM_GENERATE_INTERNAL_LABEL (label, "Lfe", labelno);  \
      ASM_OUTPUT_INTERNAL_LABEL (FILE, "Lfe", labelno);   \
      fprintf (FILE, "%s", SIZE_ASM_OP);        \
      assemble_name (FILE, (FNAME));        \
      fprintf (FILE, ",%s-", &label[1]);        \
      assemble_name (FILE, (FNAME));        \
      putc ('\n', FILE);            \
    }               \
      }                 \
  } while (0)

Definition at line 1895 of file m88k.h.

#define ASM_DECLARE_OBJECT_NAME ( FILE,
NAME,
DECL   ) 

Value:

do {                      \
    if (DECLARE_ASM_NAME)               \
      {                     \
  fprintf (FILE, "%s", TYPE_ASM_OP);            \
  assemble_name (FILE, NAME);             \
  putc (',', FILE);               \
  fprintf (FILE, TYPE_OPERAND_FMT, "object");         \
  putc ('\n', FILE);                \
        size_directive_output = 0;              \
  if (!flag_inhibit_size_directive && DECL_SIZE (DECL))       \
    {                   \
            size_directive_output = 1;              \
      fprintf (FILE, "%s", SIZE_ASM_OP);            \
      assemble_name (FILE, NAME);             \
      fprintf (FILE, ",%d\n",  int_size_in_bytes (TREE_TYPE (DECL))); \
    }                   \
      }                     \
    ASM_OUTPUT_LABEL(FILE, NAME);             \
  } while (0)

Definition at line 1849 of file m88k.h.

#define ASM_FILE_START ( FILE   ) 

Value:

Definition at line 1751 of file m88k.h.

#define ASM_FINISH_DECLARE_OBJECT ( FILE,
DECL,
TOP_LEVEL,
AT_END   ) 

Value:

do {                   \
     const char *name = XSTR (XEXP (DECL_RTL (DECL), 0), 0);     \
     if (!flag_inhibit_size_directive && DECL_SIZE (DECL)    \
   && DECLARE_ASM_NAME             \
         && ! AT_END && TOP_LEVEL          \
   && DECL_INITIAL (DECL) == error_mark_node       \
   && !size_directive_output)          \
       {                 \
   size_directive_output = 1;          \
   fprintf (FILE, "%s", SIZE_ASM_OP);        \
   assemble_name (FILE, name);           \
   fprintf (FILE, ",%d\n",  int_size_in_bytes (TREE_TYPE (DECL))); \
       }                 \
   } while (0)

Definition at line 1877 of file m88k.h.

#define ASM_FIRST_LINE ( FILE   ) 

Value:

do {                  \
    if (TARGET_SVR4)              \
      {                 \
  if (TARGET_88110)           \
    fprintf (FILE, "%s\"%s\"\n", VERSION_ASM_OP, "04.00");  \
  else                \
    fprintf (FILE, "%s\"%s\"\n", VERSION_ASM_OP, "03.00");  \
      }                 \
  } while (0)

Definition at line 1738 of file m88k.h.

#define ASM_FORMAT_PRIVATE_NAME ( OUTPUT,
NAME,
LABELNO   ) 

Value:

( (OUTPUT) = (char *) alloca (strlen ((NAME)) + 10),  \
  sprintf ((OUTPUT), "%s.%d", (NAME), (LABELNO)))

Definition at line 2062 of file m88k.h.

#define ASM_GENERATE_INTERNAL_LABEL ( LABEL,
PREFIX,
NUM   )     sprintf (LABEL, TARGET_SVR4 ? "*.%s%ld" : "*@%s%ld", PREFIX, (long)(NUM))

Definition at line 1966 of file m88k.h.

#define ASM_GLOBALIZE_LABEL ( FILE,
NAME   ) 

Value:

do {              \
    fprintf (FILE, "%s", GLOBAL_ASM_OP);    \
    assemble_name (FILE, NAME);       \
    putc ('\n', FILE);          \
  } while (0)

Definition at line 1922 of file m88k.h.

#define ASM_OUTPUT_ADDR_DIFF_ELT ( FILE,
BODY,
VALUE,
REL   )     ASM_OUTPUT_ADDR_VEC_ELT (FILE, VALUE)

Definition at line 2014 of file m88k.h.

#define ASM_OUTPUT_ADDR_VEC_ELT ( FILE,
VALUE   ) 

Value:

do {                  \
    char buffer[256];             \
    ASM_GENERATE_INTERNAL_LABEL (buffer, "L", VALUE);     \
    fprintf (FILE, CASE_VECTOR_INSNS ? "\tbr\t %s\n" : "\tword\t %s\n", \
       &buffer[1]);           \
  } while (0)

Definition at line 2005 of file m88k.h.

#define ASM_OUTPUT_ALIGN ( FILE,
LOG   ) 

Value:

if ((LOG) != 0)     \
    fprintf (FILE, "%s%d\n", ALIGN_ASM_OP, 1<<(LOG))

Definition at line 2020 of file m88k.h.

#define ASM_OUTPUT_ASCII ( FILE,
P,
SIZE   )     output_ascii (FILE, ASCII_DATA_ASM_OP, 48, P, SIZE)

Definition at line 1971 of file m88k.h.

#define ASM_OUTPUT_CASE_END ( FILE,
NUM,
TABLE   ) 

Value:

do {                  \
    if (CASE_VECTOR_INSNS)            \
      {                 \
  char label[256];            \
  ASM_GENERATE_INTERNAL_LABEL (label, "L", NUM);      \
  fprintf (FILE, "%se:\n", &label[1]);        \
  if (! flag_delayed_branch)          \
    fprintf (FILE, "\tlda\t %s,%s[%s]\n", reg_names[1],   \
       reg_names[1], reg_names[m88k_case_index]);   \
  fprintf (FILE, "\tjmp\t %s\n", reg_names[1]);     \
      }                 \
  } while (0)

Definition at line 1990 of file m88k.h.

#define ASM_OUTPUT_CASE_LABEL ( FILE,
PREFIX,
NUM,
TABLE   ) 

Value:

do {                  \
    if (! CASE_VECTOR_INSNS)            \
      {                 \
        readonly_data_section ();         \
        ASM_OUTPUT_ALIGN (FILE, 2);         \
      }                 \
    ASM_OUTPUT_INTERNAL_LABEL (FILE, PREFIX, NUM);      \
  } while (0)

Definition at line 1977 of file m88k.h.

#define ASM_OUTPUT_COMMON ( FILE,
NAME,
SIZE,
ROUNDED   ) 

Value:

( fprintf ((FILE), "%s",        \
     ((SIZE) ? (SIZE) : 1) <= m88k_gp_threshold ? SCOMM_ASM_OP : COMMON_ASM_OP), \
  assemble_name ((FILE), (NAME)),     \
  fprintf ((FILE), ",%u\n", (SIZE) ? (SIZE) : 1))

Definition at line 2043 of file m88k.h.

#define ASM_OUTPUT_IDENT ( FILE,
NAME   )     output_ascii (FILE, IDENT_ASM_OP, 4000, NAME, strlen (NAME));

Definition at line 1776 of file m88k.h.

#define ASM_OUTPUT_INTERNAL_LABEL ( FILE,
PREFIX,
NUM   )     fprintf (FILE, TARGET_SVR4 ? ".%s%d:\n" : "@%s%d:\n", PREFIX, NUM)

Definition at line 1954 of file m88k.h.

#define ASM_OUTPUT_LABEL ( FILE,
NAME   )     do { assemble_name (FILE, NAME); fputs (":\n", FILE); } while (0)

Definition at line 1917 of file m88k.h.

#define ASM_OUTPUT_LABELREF ( FILE,
NAME   ) 

Value:

{             \
    if (!TARGET_NO_UNDERSCORES && !TARGET_SVR4)   \
      fputc ('_', FILE);        \
    fputs (NAME, FILE);         \
  }

Definition at line 1937 of file m88k.h.

#define ASM_OUTPUT_LOCAL ( FILE,
NAME,
SIZE,
ROUNDED   ) 

Value:

( fprintf ((FILE), "%s",        \
     ((SIZE) ? (SIZE) : 1) <= m88k_gp_threshold ? SBSS_ASM_OP : BSS_ASM_OP), \
  assemble_name ((FILE), (NAME)),     \
  fprintf ((FILE), ",%u,%d\n", (SIZE) ? (SIZE) : 1, (SIZE) <= 4 ? 4 : 8))

Definition at line 2053 of file m88k.h.

#define ASM_OUTPUT_OPCODE ( STREAM,
PTR   ) 

Value:

{                 \
    int ch;               \
    const char *orig_ptr;           \
                  \
    for (orig_ptr = (PTR);            \
   (ch = *(PTR)) && ch != ' ' && ch != '\t' && ch != '\n' && ch != '%'; \
   (PTR)++)             \
      putc (ch, STREAM);            \
                  \
    if (ch == ' ' && orig_ptr != (PTR) && (PTR) - orig_ptr < 8)   \
      putc ('\t', STREAM);            \
  }

Definition at line 1792 of file m88k.h.

#define ASM_OUTPUT_REG_POP ( FILE,
REGNO   ) 

Value:

fprintf (FILE, "\tld\t %s,%s,0\n\taddu\t %s,%s,%d\n", \
     reg_names[REGNO],        \
     reg_names[STACK_POINTER_REGNUM],   \
     reg_names[STACK_POINTER_REGNUM],   \
     reg_names[STACK_POINTER_REGNUM],   \
     (STACK_BOUNDARY / BITS_PER_UNIT))

Definition at line 2080 of file m88k.h.

#define ASM_OUTPUT_REG_PUSH ( FILE,
REGNO   ) 

Value:

fprintf (FILE, "\tsubu\t %s,%s,%d\n\tst\t %s,%s,0\n", \
     reg_names[STACK_POINTER_REGNUM],   \
     reg_names[STACK_POINTER_REGNUM],   \
     (STACK_BOUNDARY / BITS_PER_UNIT),    \
     reg_names[REGNO],        \
     reg_names[STACK_POINTER_REGNUM])

Definition at line 2068 of file m88k.h.

#define ASM_OUTPUT_SKIP ( FILE,
SIZE   )     fprintf (FILE, "%s%u\n", SKIP_ASM_OP, (SIZE))

Definition at line 2032 of file m88k.h.

#define ASM_OUTPUT_SOURCE_FILENAME ( FILE,
NAME   )     fprintf (FILE, "%s\"%s\"\n", FILE_ASM_OP, NAME)

Definition at line 1760 of file m88k.h.

#define ASM_WEAKEN_LABEL ( FILE,
NAME   ) 

Value:

do { fputs ("\tweak\t", FILE); assemble_name (FILE, NAME); \
       fputc ('\n', FILE); } while (0)

Definition at line 1686 of file m88k.h.

#define BASE_REG_CLASS   AGRF_REGS

Definition at line 753 of file m88k.h.

#define BIGGEST_ALIGNMENT   64

Definition at line 372 of file m88k.h.

#define BITS_BIG_ENDIAN   1

Definition at line 327 of file m88k.h.

#define BITS_PER_UNIT   8

Definition at line 340 of file m88k.h.

#define BITS_PER_WORD   32

Definition at line 346 of file m88k.h.

#define BRANCH_COST   (TARGET_88100 ? 1 : 2)

Definition at line 1608 of file m88k.h.

#define BSS_ASM_OP   "\tbss\t"

Definition at line 1665 of file m88k.h.

#define BUILD_VA_LIST_TYPE ( VALIST   )     (VALIST) = m88k_build_va_list ()

Definition at line 1038 of file m88k.h.

#define BYTE_LOADS_ZERO_EXTEND

Definition at line 1482 of file m88k.h.

#define BYTES_BIG_ENDIAN   1

Definition at line 331 of file m88k.h.

#define CALL_USED_REGISTERS

Value:

{1, 1, 1, 1,  1, 1, 1, 1,   1, 1, 1, 1,  1, 1, 0, 0, \
  0, 0, 0, 0,  0, 0, 0, 0,   0, 0, 1, 1,  1, 1, 1, 1, \
  1, 1, 1, 1,  1, 1, 1, 1,   1, 1, 1, 1,  1, 1, 1, 1, \
  1, 1, 1, 1,  1, 1, 0, 0,   0, 0, 0, 0,  0, 0, 1, 1}

Definition at line 565 of file m88k.h.

#define CAN_DEBUG_WITHOUT_FP

Definition at line 133 of file m88k.h.

#define CAN_ELIMINATE ( FROM,
TO   )     (!((FROM) == FRAME_POINTER_REGNUM && FRAME_POINTER_REQUIRED))

Definition at line 1091 of file m88k.h.

#define CASE_VALUES_THRESHOLD   (TARGET_88100 ? 4 : 7)

Definition at line 1458 of file m88k.h.

#define CASE_VECTOR_INSNS   (TARGET_88100 || flag_pic)

Definition at line 1434 of file m88k.h.

#define CASE_VECTOR_MODE   SImode

Definition at line 1438 of file m88k.h.

#define CASE_VECTOR_PC_RELATIVE   1

Definition at line 1444 of file m88k.h.

#define CC_STATUS_INIT   m88k_volatile_code = '\0'

#define CHAR_TYPE_SIZE   8

Definition at line 315 of file m88k.h.

#define CLASS_MAX_NREGS ( CLASS,
MODE   ) 

Value:

((((CLASS) == XRF_REGS) ? 1 \
    : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)))

Definition at line 795 of file m88k.h.

#define COMMON_ASM_OP   "\tcomm\t"

Definition at line 1664 of file m88k.h.

#define CONDITIONAL_REGISTER_USAGE

Value:

{             \
    if (! TARGET_88110)         \
      {             \
  register int i;         \
    for (i = FIRST_EXTENDED_REGISTER; i < FIRST_PSEUDO_REGISTER; i++) \
      {           \
        fixed_regs[i] = 1;      \
        call_used_regs[i] = 1;      \
      }           \
      }             \
    if (flag_pic)         \
      {             \
  /* Current hack to deal with -fpic -O2 problems.  */ \
  fixed_regs[PIC_OFFSET_TABLE_REGNUM] = 1;  \
  call_used_regs[PIC_OFFSET_TABLE_REGNUM] = 1;  \
  global_regs[PIC_OFFSET_TABLE_REGNUM] = 1; \
      }             \
  }

Definition at line 572 of file m88k.h.

#define CONST_COSTS ( RTX,
CODE,
OUTER_CODE   ) 

Value:

case CONST_INT:         \
    if (SMALL_INT (RTX))        \
      return 0;           \
    else if (SMALL_INTVAL (- INTVAL (RTX)))   \
      return 2;           \
    else if (classify_integer (SImode, INTVAL (RTX)) != m88k_oru_or) \
      return 4;           \
    return 7;           \
  case HIGH:            \
    return 2;           \
  case CONST:           \
  case LABEL_REF:         \
  case SYMBOL_REF:          \
    if (flag_pic)         \
      return (flag_pic == 2) ? 11 : 8;      \
    return 5;           \
  case CONST_DOUBLE:          \
    return 0;

Definition at line 1558 of file m88k.h.

#define CONST_DOUBLE_OK_FOR_LETTER_P ( VALUE,
 ) 

Value:

((C) == 'G' ? (CONST_DOUBLE_HIGH (VALUE) == 0       \
     && CONST_DOUBLE_LOW (VALUE) == 0)      \
   : 0)

Definition at line 836 of file m88k.h.

#define CONST_OK_FOR_LETTER_P ( VALUE,
 ) 

Value:

((C) == 'I' ? SMALL_INTVAL (VALUE)      \
   : (C) == 'J' ? SMALL_INTVAL (-(VALUE))   \
   : (C) == 'K' ? (unsigned)(VALUE) < 32    \
   : (C) == 'L' ? ((VALUE) & 0xffff) == 0   \
   : (C) == 'M' ? integer_ok_for_set (VALUE)    \
   : (C) == 'N' ? (VALUE) < 0       \
   : (C) == 'O' ? (VALUE) == 0        \
   : (C) == 'P' ? (VALUE) >= 0        \
   : 0)

Definition at line 822 of file m88k.h.

#define CONST_SECTION_ASM_OP

Value:

(TARGET_SVR4      \
            ? "\tsection\t .rodata,\"a\"" \
            : "\tsection\t .rodata,\"x\"")

Definition at line 1643 of file m88k.h.

#define CONST_SECTION_FUNCTION

Value:

void                  \
const_section ()              \
{                 \
  text_section();             \
}

Definition at line 2320 of file m88k.h.

#define CONSTANT_ADDRESS_P ( X   ) 

Value:

(GET_CODE (X) == LABEL_REF || GET_CODE (X) == SYMBOL_REF    \
   || GET_CODE (X) == CONST_INT || GET_CODE (X) == HIGH                 \
   || (GET_CODE (X) == CONST                                            \
       && ! (flag_pic && pic_address_needs_scratch (X))))

Definition at line 1193 of file m88k.h.

#define CONSTANT_ALIGNMENT ( EXP,
ALIGN   ) 

Value:

((TREE_CODE (EXP) == STRING_CST \
    && (ALIGN) < FASTEST_ALIGNMENT) \
   ? FASTEST_ALIGNMENT : (ALIGN))

Definition at line 378 of file m88k.h.

#define CPP_PREDEFINES   "-Dm88000 -Dm88k -Dunix -D__CLASSIFY_TYPE__=2"

Definition at line 151 of file m88k.h.

#define CPP_SPEC   "%{!m88000:%{!m88100:%{m88110:-D__m88110__}}} \ %{!m88000:%{!m88110:-D__m88100__}}"

Definition at line 138 of file m88k.h.

#define CPU_DEFAULT   MASK_88100

Definition at line 214 of file m88k.h.

#define CTORS_SECTION_ASM_OP   "\tsection\t .ctors,\"d\""

Definition at line 1651 of file m88k.h.

#define CUMULATIVE_ARGS   int

Definition at line 985 of file m88k.h.

#define DATA_ALIGNMENT ( TYPE,
ALIGN   ) 

Value:

(TREE_CODE (TYPE) == ARRAY_TYPE   \
   && TYPE_MODE (TREE_TYPE (TYPE)) == QImode  \
   && (ALIGN) < FASTEST_ALIGNMENT ? FASTEST_ALIGNMENT : (ALIGN))

Definition at line 384 of file m88k.h.

#define DATA_SECTION_ASM_OP   "\tdata"

Definition at line 1640 of file m88k.h.

#define DBX_CONTIN_LENGTH   0

Definition at line 1611 of file m88k.h.

#define DEBUGGER_ARG_OFFSET ( OFFSET,
X   ) 

Value:

Definition at line 2107 of file m88k.h.

#define DEBUGGER_AUTO_OFFSET ( X   ) 

Value:

Definition at line 2103 of file m88k.h.

#define DECLARE_ASM_NAME   TARGET_SVR4

Definition at line 1830 of file m88k.h.

#define DEFAULT_PCC_STRUCT_RETURN   0

Definition at line 951 of file m88k.h.

#define DEFAULT_SIGNED_CHAR   1

Definition at line 1461 of file m88k.h.

#define DONT_REDUCE_ADDR

Definition at line 2443 of file m88k.h.

#define DOUBLE_ASM_OP   "\tdouble\t"

Definition at line 1667 of file m88k.h.

#define DOUBLE_TYPE_SIZE   64

Definition at line 321 of file m88k.h.

#define DTORS_SECTION_ASM_OP   "\tsection\t .dtors,\"d\""

Definition at line 1652 of file m88k.h.

#define ELIMINABLE_REGS

#define ENCODE_SECTION_INFO ( DECL   ) 

Value:

do {                  \
    if (m88k_gp_threshold > 0)            \
    {                 \
      if (TREE_CODE (DECL) == VAR_DECL)         \
  {               \
    if (!TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL))  \
      {               \
        int size = int_size_in_bytes (TREE_TYPE (DECL));    \
                  \
        if (size > 0 && size <= m88k_gp_threshold)    \
    SYMBOL_REF_FLAG (XEXP (DECL_RTL (DECL), 0)) = 1;  \
      }               \
  }               \
      else if (TREE_CODE (DECL) == STRING_CST       \
         && flag_writable_strings         \
         && TREE_STRING_LENGTH (DECL) <= m88k_gp_threshold) \
  SYMBOL_REF_FLAG (XEXP (TREE_CST_RTL (DECL), 0)) = 1;    \
    }                 \
  } while (0)

Definition at line 2408 of file m88k.h.

#define EXIT_IGNORE_STACK   (1)

Definition at line 1062 of file m88k.h.

 
#define EXPAND_BUILTIN_SAVEREGS (  )     m88k_builtin_saveregs ()

Definition at line 1035 of file m88k.h.

#define EXPAND_BUILTIN_VA_ARG ( valist,
type   )     m88k_va_arg (valist, type)

Definition at line 1046 of file m88k.h.

#define EXPAND_BUILTIN_VA_START ( stdarg,
valist,
nextarg   )     m88k_va_start (stdarg, valist, nextarg)

Definition at line 1042 of file m88k.h.

#define EXTRA_CC_MODES   CC(CCEVENmode, "CCEVEN")

Definition at line 1179 of file m88k.h.

#define EXTRA_CONSTRAINT ( OP,
 )     ((C) == 'Q' ? symbolic_address_p (OP) : 0)

Definition at line 847 of file m88k.h.

#define EXTRA_SECTION_FUNCTIONS

Value:

CONST_SECTION_FUNCTION            \
                  \
void                  \
tdesc_section ()              \
{                 \
  if (in_section != in_tdesc)           \
    {                 \
      fprintf (asm_out_file, "%s\n", TDESC_SECTION_ASM_OP);   \
      in_section = in_tdesc;            \
    }                 \
}                 \
                  \
void                  \
sdata_section ()              \
{                 \
  if (in_section != in_sdata)           \
    {                 \
      fprintf (asm_out_file, "%s\n", SDATA_SECTION_ASM_OP);   \
      in_section = in_sdata;            \
    }                 \
}                 \
                  \
  INIT_SECTION_FUNCTION             \
  FINI_SECTION_FUNCTION

Definition at line 2333 of file m88k.h.

#define EXTRA_SECTIONS   in_const, in_tdesc, in_sdata

Definition at line 2319 of file m88k.h.

#define FASTEST_ALIGNMENT   (TARGET_88100 ? 32 : 64)

Definition at line 375 of file m88k.h.

#define FILE_ASM_OP   "\tfile\t"

Definition at line 1658 of file m88k.h.

#define FINI_SECTION_ASM_OP   "\tsection\t .fini,\"x\""

Definition at line 1654 of file m88k.h.

#define FINI_SECTION_FUNCTION

Definition at line 2327 of file m88k.h.

#define FIRST_EXTENDED_REGISTER   32

Definition at line 426 of file m88k.h.

Referenced by m88k_layout_frame(), and preserve_registers().

#define FIRST_PARM_OFFSET ( FNDECL   )     0

Definition at line 884 of file m88k.h.

#define FIRST_PSEUDO_REGISTER   64

Definition at line 425 of file m88k.h.

#define FIXED_REGISTERS

Value:

{1, 0, 0, 0,  0, 0, 0, 0,   0, 0, 0, 0,  0, 0, 0, 0, \
  0, 0, 0, 0,  0, 0, 0, 0,   0, 0, 1, 1,  1, 1, 1, 1, \
  1, 0, 0, 0,  0, 0, 0, 0,   0, 0, 0, 0,  0, 0, 0, 0, \
  0, 0, 0, 0,  0, 0, 0, 0,   0, 0, 0, 0,  0, 0, 1, 1}

Definition at line 552 of file m88k.h.

#define FLOAT_ASM_OP   "\tfloat\t"

Definition at line 1666 of file m88k.h.

#define FLOAT_TYPE_SIZE   32

Definition at line 320 of file m88k.h.

#define FRAME_POINTER_REGNUM   30

Definition at line 642 of file m88k.h.

#define FRAME_POINTER_REQUIRED

Value:

Definition at line 1068 of file m88k.h.

#define FUNCTION_ARG ( CUM,
MODE,
TYPE,
NAMED   )     m88k_function_arg (CUM, MODE, TYPE, NAMED)

Definition at line 963 of file m88k.h.

#define FUNCTION_ARG_ADVANCE ( CUM,
MODE,
TYPE,
NAMED   ) 

Value:

do {                  \
    enum machine_mode __mode = (TYPE) ? TYPE_MODE (TYPE) : (MODE);  \
    if ((CUM & 1)             \
  && (__mode == DImode || __mode == DFmode      \
      || ((TYPE) && TYPE_ALIGN (TYPE) > BITS_PER_WORD)))    \
      CUM++;                \
    CUM += (((__mode != BLKmode)          \
       ? GET_MODE_SIZE (MODE) : int_size_in_bytes (TYPE))   \
      + 3) / 4;             \
  } while (0)

Definition at line 997 of file m88k.h.

#define FUNCTION_ARG_BOUNDARY ( MODE,
TYPE   ) 

Value:

Definition at line 1029 of file m88k.h.

#define FUNCTION_ARG_PADDING ( MODE,
TYPE   ) 

Value:

((MODE) == BLKmode \
   || ((TYPE) && (TREE_CODE (TYPE) == RECORD_TYPE \
      || TREE_CODE (TYPE) == UNION_TYPE)) \
   ? upward : GET_MODE_BITSIZE (MODE) < PARM_BOUNDARY ? downward : none)

Definition at line 1020 of file m88k.h.

#define FUNCTION_ARG_PARTIAL_NREGS ( CUM,
MODE,
TYPE,
NAMED   )     (0)

Definition at line 973 of file m88k.h.

#define FUNCTION_ARG_PASS_BY_REFERENCE ( CUM,
MODE,
TYPE,
NAMED   )     (0)

Definition at line 980 of file m88k.h.

#define FUNCTION_ARG_REGNO_P (  )     ((N) <= 9 && (N) >= 2)

Definition at line 1011 of file m88k.h.

#define FUNCTION_BOUNDARY

Value:

Definition at line 368 of file m88k.h.

#define FUNCTION_MODE   SImode

Definition at line 1519 of file m88k.h.

#define FUNCTION_PROFILER ( FILE,
LABELNO   )     output_function_profiler (FILE, LABELNO, "mcount", 1)

Definition at line 1052 of file m88k.h.

#define FUNCTION_PROFILER_LENGTH   (5+3+1+5)

Definition at line 1056 of file m88k.h.

#define FUNCTION_VALUE ( VALTYPE,
FUNC   ) 

Value:

gen_rtx_REG (TYPE_MODE (VALTYPE) == BLKmode ? SImode : TYPE_MODE (VALTYPE), \
         2)

Definition at line 933 of file m88k.h.

#define FUNCTION_VALUE_REGNO_P (  )     ((N) == 2)

Definition at line 959 of file m88k.h.

#define GLOBAL_ASM_OP   "\tglobal\t"

Definition at line 1661 of file m88k.h.

#define GO_IF_LEGITIMATE_ADDRESS ( MODE,
X,
ADDR   ) 

Definition at line 1248 of file m88k.h.

#define GO_IF_MODE_DEPENDENT_ADDRESS ( ADDR,
LABEL   ) 

Definition at line 1370 of file m88k.h.

#define HANDLE_SYSV_PRAGMA

Definition at line 1470 of file m88k.h.

#define HARD_REGNO_MODE_OK ( REGNO,
MODE   ) 

Value:

(XRF_REGNO_P(REGNO)             \
    ? (TARGET_88110 && GET_MODE_CLASS (MODE) == MODE_FLOAT)             \
    : (((MODE) != DImode && (MODE) != DFmode && (MODE) != DCmode) \
       || ((REGNO) & 1) == 0))

Definition at line 616 of file m88k.h.

#define HARD_REGNO_NREGS ( REGNO,
MODE   ) 

Value:

Definition at line 603 of file m88k.h.

#define IDENT_ASM_OP   "\tident\t"

Definition at line 1657 of file m88k.h.

#define INDEX_REG_CLASS   GENERAL_REGS

Definition at line 754 of file m88k.h.

#define INIT_CUMULATIVE_ARGS ( CUM,
FNTYPE,
LIBNAME,
INDIRECT   )     ((CUM) = 0)

Definition at line 989 of file m88k.h.

#define INIT_SECTION_ASM_OP   "\tsection\t .init,\"x\""

Definition at line 1653 of file m88k.h.

#define INIT_SECTION_FUNCTION

Definition at line 2326 of file m88k.h.

#define INITIAL_ELIMINATION_OFFSET ( FROM,
TO,
OFFSET   ) 

Value:

{ m88k_layout_frame ();              \
  if ((FROM) == FRAME_POINTER_REGNUM && (TO) == STACK_POINTER_REGNUM)  \
      (OFFSET) = m88k_fp_offset;           \
  else if ((FROM) == ARG_POINTER_REGNUM && (TO) == FRAME_POINTER_REGNUM) \
    (OFFSET) = m88k_stack_size - m88k_fp_offset;       \
  else if ((FROM) == ARG_POINTER_REGNUM && (TO) == STACK_POINTER_REGNUM) \
    (OFFSET) = m88k_stack_size;            \
  else                   \
    abort ();                \
}

Definition at line 1096 of file m88k.h.

#define INITIALIZE_TRAMPOLINE ( TRAMP,
FNADDR,
CXT   ) 

Value:

{                 \
  emit_move_insn (gen_rtx_MEM (SImode, plus_constant (TRAMP, 40)), FNADDR); \
  emit_move_insn (gen_rtx_MEM (SImode, plus_constant (TRAMP, 36)), CXT); \
}

Definition at line 1164 of file m88k.h.

#define INT_TYPE_SIZE   32

Definition at line 317 of file m88k.h.

#define INTERNAL_ASM_OP   "\tlocal\t"

Definition at line 1691 of file m88k.h.

#define JUMP_TABLES_IN_TEXT_SECTION   1

Definition at line 2397 of file m88k.h.

#define LABEL_ALIGN_AFTER_BARRIER ( LABEL   )     (TARGET_88100 && !flag_inhibit_size_directive ? 3 : 2)

Definition at line 2027 of file m88k.h.

#define LEGITIMATE_CONSTANT_P ( X   )     (1)

Definition at line 1374 of file m88k.h.

#define LEGITIMATE_INDEX_P ( X,
MODE   ) 

Value:

((GET_CODE (X) == CONST_INT       \
     && SMALL_INT (X))          \
    || (REG_P (X)         \
  && REG_OK_FOR_INDEX_P (X))      \
    || (GET_CODE (X) == MULT        \
  && REG_P (XEXP (X, 0))        \
  && REG_OK_FOR_INDEX_P (XEXP (X, 0))   \
  && GET_CODE (XEXP (X, 1)) == CONST_INT    \
  && INTVAL (XEXP (X, 1)) == GET_MODE_SIZE (MODE)))

Definition at line 1225 of file m88k.h.

#define LEGITIMATE_PIC_OPERAND_P ( X   )     (! pic_address_needs_scratch (X))

Definition at line 1379 of file m88k.h.

#define LEGITIMIZE_ADDRESS ( X,
OLDX,
MODE,
WIN   ) 

Value:

{               \
  if (GET_CODE (X) == PLUS && CONSTANT_ADDRESS_P (XEXP (X, 1))) \
    (X) = gen_rtx_PLUS (SImode, XEXP (X, 0),      \
      copy_to_mode_reg (SImode, XEXP (X, 1))); \
  if (GET_CODE (X) == PLUS && CONSTANT_ADDRESS_P (XEXP (X, 0))) \
    (X) = gen_rtx_PLUS (SImode, XEXP (X, 1),      \
      copy_to_mode_reg (SImode, XEXP (X, 0))); \
  if (GET_CODE (X) == PLUS && GET_CODE (XEXP (X, 0)) == MULT) \
    (X) = gen_rtx_PLUS (SImode, XEXP (X, 1),      \
      force_operand (XEXP (X, 0), 0));  \
  if (GET_CODE (X) == PLUS && GET_CODE (XEXP (X, 1)) == MULT) \
    (X) = gen_rtx_PLUS (SImode, XEXP (X, 0),      \
      force_operand (XEXP (X, 1), 0));  \
  if (GET_CODE (X) == PLUS && GET_CODE (XEXP (X, 0)) == PLUS) \
    (X) = gen_rtx_PLUS (Pmode, force_operand (XEXP (X, 0), NULL_RTX),\
      XEXP (X, 1));       \
  if (GET_CODE (X) == PLUS && GET_CODE (XEXP (X, 1)) == PLUS) \
    (X) = gen_rtx_PLUS (Pmode, XEXP (X, 0),     \
      force_operand (XEXP (X, 1), NULL_RTX)); \
  if (GET_CODE (X) == SYMBOL_REF || GET_CODE (X) == CONST \
     || GET_CODE (X) == LABEL_REF)      \
    (X) = legitimize_address (flag_pic, X, 0, 0);   \
  if (memory_address_p (MODE, X))       \
    goto WIN; }

Definition at line 1340 of file m88k.h.

#define LIBCALL_VALUE ( MODE   )     gen_rtx_REG (MODE, 2)

Definition at line 955 of file m88k.h.

#define LONG_DOUBLE_TYPE_SIZE   64

Definition at line 322 of file m88k.h.

#define LONG_LONG_TYPE_SIZE   64

Definition at line 319 of file m88k.h.

#define LONG_TYPE_SIZE   32

Definition at line 318 of file m88k.h.

#define m88k_cpu_attr   ((enum attr_cpu)m88k_cpu)

Definition at line 93 of file m88k.h.

#define MASK_88000   (MASK_88100 | MASK_88110)

Definition at line 169 of file m88k.h.

#define MASK_88100   0x00000001

Definition at line 167 of file m88k.h.

#define MASK_88110   0x00000002

Definition at line 168 of file m88k.h.

#define MASK_BIG_PIC   0x00000080

Definition at line 176 of file m88k.h.

#define MASK_CHECK_ZERO_DIV   0x00000400

Definition at line 179 of file m88k.h.

#define MASK_EITHER_LARGE_SHIFT

Value:

Definition at line 185 of file m88k.h.

#define MASK_HANDLE_LARGE_SHIFT   0x00000200

Definition at line 178 of file m88k.h.

#define MASK_IDENTIFY_REVISION   0x00001000

Definition at line 181 of file m88k.h.

#define MASK_NO_SERIALIZE_VOLATILE   0x00008000

Definition at line 184 of file m88k.h.

#define MASK_NO_UNDERSCORES   0x00000040

Definition at line 175 of file m88k.h.

#define MASK_OCS_DEBUG_INFO   0x00000004

Definition at line 171 of file m88k.h.

#define MASK_OCS_FRAME_POSITION   0x00000008

Definition at line 172 of file m88k.h.

#define MASK_OMIT_LEAF_FRAME_POINTER   0x00020000

Definition at line 187 of file m88k.h.

#define MASK_OPTIMIZE_ARG_AREA   0x00004000

Definition at line 183 of file m88k.h.

#define MASK_SVR3   0x00000020

Definition at line 174 of file m88k.h.

#define MASK_SVR4   0x00000010

Definition at line 173 of file m88k.h.

#define MASK_TRAP_LARGE_SHIFT   0x00000100

Definition at line 177 of file m88k.h.

#define MASK_USE_DIV   0x00000800

Definition at line 180 of file m88k.h.

#define MASK_WARN_PASS_STRUCT   0x00002000

Definition at line 182 of file m88k.h.

#define MAX_PARM_BOUNDARY   64

Definition at line 359 of file m88k.h.

#define MAX_REGS_PER_ADDRESS   2

Definition at line 1201 of file m88k.h.

#define MEMORY_MOVE_COST ( MODE,
CLASS,
IN   )     4

Definition at line 1605 of file m88k.h.

#define MODES_TIEABLE_P ( MODE1,
MODE2   ) 

Value:

(((MODE1) == DFmode || (MODE1) == DCmode || (MODE1) == DImode \
    || (TARGET_88110 && GET_MODE_CLASS (MODE1) == MODE_FLOAT)) \
   == ((MODE2) == DFmode || (MODE2) == DCmode || (MODE2) == DImode \
       || (TARGET_88110 && GET_MODE_CLASS (MODE2) == MODE_FLOAT)))

Definition at line 626 of file m88k.h.

#define MONITOR_GCC   0

Definition at line 128 of file m88k.h.

#define MOVE_MAX   8

Definition at line 1478 of file m88k.h.

#define N_REG_CLASSES   (int) LIM_REG_CLASSES

Definition at line 728 of file m88k.h.

#define NO_FUNCTION_CSE

Definition at line 1495 of file m88k.h.

#define NOTICE_UPDATE_CC ( EXP,
INSN   )     (0)

Definition at line 1398 of file m88k.h.

#define OCS_END_PREFIX   "Lte"

Definition at line 2094 of file m88k.h.

Referenced by output_tdesc().

#define OCS_START_PREFIX   "Ltb"

Definition at line 2093 of file m88k.h.

Referenced by output_tdesc().

#define ORDER_REGS_FOR_LOCAL_ALLOC

Value:

{               \
  static const int leaf[] = REG_LEAF_ALLOC_ORDER;   \
  static const int nonleaf[] = REG_ALLOC_ORDER;     \
                \
  memcpy (reg_alloc_order, regs_ever_live[1] ? nonleaf : leaf,  \
    FIRST_PSEUDO_REGISTER * sizeof (int));    \
}

Definition at line 691 of file m88k.h.

#define OVERRIDE_OPTIONS

Definition at line 257 of file m88k.h.

#define PARM_BOUNDARY   32

Definition at line 356 of file m88k.h.

#define PCC_BITFIELD_TYPE_MATTERS   1

Definition at line 401 of file m88k.h.

#define PIC_OFFSET_TABLE_REGNUM   25

Definition at line 659 of file m88k.h.

#define Pmode   SImode

Definition at line 1514 of file m88k.h.

#define POINTER_SIZE   32

Definition at line 353 of file m88k.h.

#define POPSECTION_ASM_OP   "\tprevious"

Definition at line 1694 of file m88k.h.

#define POWER_OF_2 (  )     ((I) && POWER_OF_2_or_0(I))

Definition at line 819 of file m88k.h.

Referenced by reg_or_bbx_mask_operand().

#define POWER_OF_2_or_0 (  )     (((I) & ((unsigned)(I) - 1)) == 0)

Definition at line 820 of file m88k.h.

Referenced by integer_ok_for_set(), mak_mask_p(), and print_operand().

#define PREDICATE_CODES

Value:

{"move_operand", {SUBREG, REG, CONST_INT, LO_SUM, MEM}},    \
  {"call_address_operand", {SUBREG, REG, SYMBOL_REF, LABEL_REF, CONST}}, \
  {"arith_operand", {SUBREG, REG, CONST_INT}},        \
  {"arith5_operand", {SUBREG, REG, CONST_INT}},       \
  {"arith32_operand", {SUBREG, REG, CONST_INT}},      \
  {"arith64_operand", {SUBREG, REG, CONST_INT}},      \
  {"int5_operand", {CONST_INT}},          \
  {"int32_operand", {CONST_INT}},         \
  {"add_operand", {SUBREG, REG, CONST_INT}},        \
  {"reg_or_bbx_mask_operand", {SUBREG, REG, CONST_INT}},    \
  {"real_or_0_operand", {SUBREG, REG, CONST_DOUBLE}},     \
  {"reg_or_0_operand", {SUBREG, REG, CONST_INT}},                       \
  {"relop", {EQ, NE, LT, LE, GE, GT, LTU, LEU, GEU, GTU}},    \
  {"even_relop", {EQ, LT, GT, LTU, GTU}},   \
  {"odd_relop", { NE, LE, GE, LEU, GEU}},   \
  {"partial_ccmode_register_operand", { SUBREG, REG}},      \
  {"relop_no_unsigned", {EQ, NE, LT, LE, GE, GT}},      \
  {"equality_op", {EQ, NE}},            \
  {"pc_or_label_ref", {PC, LABEL_REF}},

Definition at line 1403 of file m88k.h.

#define PREFERRED_RELOAD_CLASS ( X,
CLASS   )     (CONSTANT_P(X) && (CLASS == XRF_REGS) ? NO_REGS : (CLASS))

Definition at line 780 of file m88k.h.

#define PRINT_OPERAND ( FILE,
X,
CODE   )     print_operand (FILE, X, CODE)

Definition at line 2435 of file m88k.h.

#define PRINT_OPERAND_ADDRESS ( FILE,
ADDR   )     print_operand_address (FILE, ADDR)

Definition at line 2438 of file m88k.h.

#define PRINT_OPERAND_PUNCT_VALID_P ( c   )     ((c) == '#' || (c) == '.' || (c) == '!' || (c) == '*' || (c) == ';')

Definition at line 2432 of file m88k.h.

#define PROMOTE_PROTOTYPES   1

Definition at line 1501 of file m88k.h.

#define PUSHSECTION_ASM_OP   "\tsection\t"

Definition at line 1693 of file m88k.h.

#define PUT_OCS_FUNCTION_END ( FILE   )     { ASM_OUTPUT_INTERNAL_LABEL (FILE, OCS_END_PREFIX, m88k_function_number); }

#define PUT_OCS_FUNCTION_START ( FILE   )     { ASM_OUTPUT_INTERNAL_LABEL (FILE, OCS_START_PREFIX, m88k_function_number); }

Definition at line 2096 of file m88k.h.

Referenced by m88k_output_function_end_prologue().

#define REG_ALLOC_ORDER

Value:

{         \
  13, 12, 11, 10, 29, 28, 27, 26, \
  62, 63,  9,  8,  7,  6,  5,  4, \
   3,  2,  1, 53, 52, 51, 50, 49, \
  48, 47, 46, 45, 44, 43, 42, 41, \
  40, 39, 38, 37, 36, 35, 34, 33, \
  25, 24, 23, 22, 21, 20, 19, 18, \
  17, 16, 15, 14, 61, 60, 59, 58, \
  57, 56, 55, 54, 30, 31,  0, 32}

Definition at line 666 of file m88k.h.

#define REG_CLASS_CONTENTS

Value:

{{0x00000000, 0x00000000},  \
          {0x00000001, 0x00000000}, \
          {0x00000000, 0xffffffff}, \
          {0xfffffffe, 0x00000000}, \
          {0xffffffff, 0x00000000}, \
          {0xfffffffe, 0xffffffff}, \
          {0xffffffff, 0xffffffff}}

Definition at line 737 of file m88k.h.

#define REG_CLASS_FROM_LETTER (  )     (((C) == 'x') ? XRF_REGS : NO_REGS)

Definition at line 759 of file m88k.h.

#define REG_CLASS_NAMES

Value:

{"NO_REGS", "AP_REG", "XRF_REGS", "GENERAL_REGS", \
       "AGRF_REGS", "XGRF_REGS", "ALL_REGS" }

Definition at line 731 of file m88k.h.

#define REG_LEAF_ALLOC_ORDER

Value:

{         \
   9,  8,  7,  6, 13, 12, 11, 10, \
  29, 28, 27, 26, 62, 63,  5,  4, \
   3,  2,  0, 53, 52, 51, 50, 49, \
  48, 47, 46, 45, 44, 43, 42, 41, \
  40, 39, 38, 37, 36, 35, 34, 33, \
  25, 24, 23, 22, 21, 20, 19, 18, \
  17, 16, 15, 14, 61, 60, 59, 58, \
  57, 56, 55, 54, 30, 31,  1, 32}

Definition at line 678 of file m88k.h.

#define REG_OK_FOR_BASE_P ( X   )     (REG_OK_FOR_INDEX_P (X))

Definition at line 1314 of file m88k.h.

#define REG_OK_FOR_INDEX_P ( X   )     (!XRF_REGNO_P(REGNO (X)))

Definition at line 1310 of file m88k.h.

#define REG_PARM_STACK_SPACE ( FNDECL   )     32

Definition at line 896 of file m88k.h.

#define REG_POP_LENGTH   2

Definition at line 2089 of file m88k.h.

#define REG_PUSH_LENGTH   2

Definition at line 2077 of file m88k.h.

#define REGISTER_NAMES

Value:

{"#r0"+1, "#r1"+1, "#r2"+1, "#r3"+1, "#r4"+1, "#r5"+1, "#r6"+1, "#r7"+1, \
   "#r8"+1, "#r9"+1, "#r10"+1,"#r11"+1,"#r12"+1,"#r13"+1,"#r14"+1,"#r15"+1,\
   "#r16"+1,"#r17"+1,"#r18"+1,"#r19"+1,"#r20"+1,"#r21"+1,"#r22"+1,"#r23"+1,\
   "#r24"+1,"#r25"+1,"#r26"+1,"#r27"+1,"#r28"+1,"#r29"+1,"#r30"+1,"#r31"+1,\
   "#x0"+1, "#x1"+1, "#x2"+1, "#x3"+1, "#x4"+1, "#x5"+1, "#x6"+1, "#x7"+1, \
   "#x8"+1, "#x9"+1, "#x10"+1,"#x11"+1,"#x12"+1,"#x13"+1,"#x14"+1,"#x15"+1,\
   "#x16"+1,"#x17"+1,"#x18"+1,"#x19"+1,"#x20"+1,"#x21"+1,"#x22"+1,"#x23"+1,\
   "#x24"+1,"#x25"+1,"#x26"+1,"#x27"+1,"#x28"+1,"#x29"+1,"#x30"+1,"#x31"+1}

Definition at line 1810 of file m88k.h.

#define REGNO_OK_FOR_BASE_P ( REGNO   ) 

Value:

Definition at line 768 of file m88k.h.

#define REGNO_OK_FOR_INDEX_P ( REGNO   ) 

Value:

Definition at line 771 of file m88k.h.

#define REGNO_REG_CLASS ( REGNO   )     ((REGNO) ? ((REGNO < 32) ? GENERAL_REGS : XRF_REGS) : AP_REG)

Definition at line 749 of file m88k.h.

#define REQUIRES_88110_ASM_OP   "\trequires_88110"

Definition at line 1697 of file m88k.h.

Referenced by output_file_start().

#define RETURN_IN_MEMORY ( TYPE   ) 

Value:

(TYPE_MODE (TYPE) == BLKmode \
   || ((TREE_CODE (TYPE) == RECORD_TYPE || TREE_CODE(TYPE) == UNION_TYPE) \
       && !(TYPE_MODE (TYPE) == SImode \
      || (TYPE_MODE (TYPE) == BLKmode \
    && TYPE_ALIGN (TYPE) == BITS_PER_WORD \
    && int_size_in_bytes (TYPE) == UNITS_PER_WORD))))

Definition at line 941 of file m88k.h.

#define RETURN_POPS_ARGS ( FUNDECL,
FUNTYPE,
SIZE   )     0

Definition at line 927 of file m88k.h.

#define RTX_COSTS ( X,
CODE,
OUTER_CODE   ) 

Value:

case MEM:           \
    return COSTS_N_INSNS (2);       \
  case MULT:            \
    return COSTS_N_INSNS (3);       \
  case DIV:           \
  case UDIV:            \
  case MOD:           \
  case UMOD:            \
    return COSTS_N_INSNS (38);

Definition at line 1592 of file m88k.h.

#define RTX_OK_FOR_BASE_P ( X   ) 

Value:

((GET_CODE (X) == REG && REG_OK_FOR_BASE_P (X))     \
  || (GET_CODE (X) == SUBREG            \
      && GET_CODE (SUBREG_REG (X)) == REG       \
      && REG_OK_FOR_BASE_P (SUBREG_REG (X))))

Definition at line 1236 of file m88k.h.

#define RTX_OK_FOR_INDEX_P ( X   ) 

Value:

((GET_CODE (X) == REG && REG_OK_FOR_INDEX_P (X))      \
  || (GET_CODE (X) == SUBREG            \
      && GET_CODE (SUBREG_REG (X)) == REG       \
      && REG_OK_FOR_INDEX_P (SUBREG_REG (X))))

Definition at line 1242 of file m88k.h.

#define SBSS_ASM_OP   "\tsbss\t"

Definition at line 1671 of file m88k.h.

#define SCALED_ADDRESS_P ( ADDR   ) 

Value:

(GET_CODE (ADDR) == PLUS      \
   && (GET_CODE (XEXP (ADDR, 0)) == MULT  \
       || GET_CODE (XEXP (ADDR, 1)) == MULT))

Definition at line 1204 of file m88k.h.

#define SCCS_DIRECTIVE

Definition at line 1467 of file m88k.h.

#define SCOMM_ASM_OP   "\tscomm\t"

Definition at line 1672 of file m88k.h.

#define SDATA_SECTION_ASM_OP   "\tsdata"

Definition at line 1673 of file m88k.h.

#define SECONDARY_INPUT_RELOAD_CLASS ( CLASS,
MODE,
IN   ) 

Value:

((flag_pic              \
    && GET_CODE (IN) == CONST         \
    && GET_CODE (XEXP (IN, 0)) == PLUS        \
    && GET_CODE (XEXP (XEXP (IN, 0), 0)) == CONST_INT   \
    && ! SMALL_INT (XEXP (XEXP (IN, 0), 1))) ? GENERAL_REGS : NO_REGS)

Definition at line 786 of file m88k.h.

#define SECTION_ASM_OP   "\tsection\t"

Definition at line 1659 of file m88k.h.

#define SELECT_CC_MODE ( OP,
X,
 )     CCmode

Definition at line 1181 of file m88k.h.

#define SELECT_SECTION ( DECL,
RELOC,
ALIGN   ) 

Value:

{                 \
  if (TREE_CODE (DECL) == STRING_CST)         \
    {                 \
      if (! flag_writable_strings)          \
  const_section ();           \
      else if ( TREE_STRING_LENGTH (DECL) <= m88k_gp_threshold)   \
  sdata_section ();           \
      else                \
  data_section ();            \
    }                 \
  else if (TREE_CODE (DECL) == VAR_DECL)        \
    {                 \
      if (SYMBOL_REF_FLAG (XEXP (DECL_RTL (DECL), 0)))      \
  sdata_section ();           \
      else if ((flag_pic && RELOC)          \
         || !TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL) \
         || !DECL_INITIAL (DECL)          \
         || (DECL_INITIAL (DECL) != error_mark_node   \
       && !TREE_CONSTANT (DECL_INITIAL (DECL))))    \
  data_section ();            \
      else                \
  const_section ();           \
    }                 \
  else                  \
    const_section ();             \
}

Definition at line 2366 of file m88k.h.

#define SET_ASM_OP   "\tdef\t"

Definition at line 1660 of file m88k.h.

#define SHORT_ADDRESS_P ( X,
TEMP   ) 

Value:

((TEMP) = (GET_CODE (X) == CONST ? get_related_value (X) : X), \
   ((TEMP) && GET_CODE (TEMP) == SYMBOL_REF && SYMBOL_REF_FLAG (TEMP)))

Definition at line 1210 of file m88k.h.

Referenced by legitimize_address(), and print_operand_address().

#define SHORT_TYPE_SIZE   16

Definition at line 316 of file m88k.h.

#define SIZE_ASM_OP   "\tsize\t"

Definition at line 1677 of file m88k.h.

#define SIZE_TYPE   "unsigned int"

Definition at line 1464 of file m88k.h.

#define SKIP_ASM_OP   "\tzero\t"

Definition at line 1663 of file m88k.h.

#define SLOW_BYTE_ACCESS   1

Definition at line 1485 of file m88k.h.

#define SMALL_INT ( X   )     (SMALL_INTVAL (INTVAL (X)))

Definition at line 815 of file m88k.h.

#define SMALL_INTVAL (  )     ((unsigned) (I) < 0x10000)

Definition at line 816 of file m88k.h.

#define SPECIAL_MODE_PREDICATES

Value:

"partial_ccmode_register_operand",  \
  "pc_or_label_ref",

Definition at line 1427 of file m88k.h.

#define STACK_BOUNDARY   128

Definition at line 362 of file m88k.h.

#define STACK_GROWS_DOWNWARD

Definition at line 854 of file m88k.h.

#define STACK_PARMS_IN_REG_PARM_AREA

Definition at line 904 of file m88k.h.

#define STACK_POINTER_REGNUM   31

Definition at line 639 of file m88k.h.

#define STARTING_FRAME_OFFSET   8

Definition at line 864 of file m88k.h.

#define STATIC_CHAIN_REGNUM   11

Definition at line 651 of file m88k.h.

#define STORE_FLAG_VALUE   (-1)

Definition at line 1509 of file m88k.h.

#define STRICT_ALIGNMENT   1

Definition at line 398 of file m88k.h.

#define STRUCT_VALUE_REGNUM   12

Definition at line 655 of file m88k.h.

#define STRUCTURE_SIZE_BOUNDARY   8

Definition at line 394 of file m88k.h.

#define SUBTARGET_SWITCHES

Definition at line 248 of file m88k.h.

#define SUPPORTS_ONE_ONLY   TARGET_SVR4

Definition at line 1474 of file m88k.h.

#define SUPPORTS_WEAK   TARGET_SVR4

Definition at line 1473 of file m88k.h.

#define TARGET_88000   ((target_flags & MASK_88000) == MASK_88000)

Definition at line 192 of file m88k.h.

#define TARGET_88100   ((target_flags & MASK_88000) == MASK_88100)

Definition at line 190 of file m88k.h.

Referenced by expand_block_move(), and m88k_adjust_cost().

#define TARGET_88110   ((target_flags & MASK_88000) == MASK_88110)

Definition at line 191 of file m88k.h.

Referenced by expand_block_move(), and output_file_start().

#define TARGET_BIG_PIC   (target_flags & MASK_BIG_PIC)

Definition at line 199 of file m88k.h.

#define TARGET_CHECK_ZERO_DIV   (target_flags & MASK_CHECK_ZERO_DIV)

Definition at line 202 of file m88k.h.

Referenced by mips_idiv_insns(), and mips_output_division().

#define TARGET_DEFAULT   (MASK_CHECK_ZERO_DIV)

Definition at line 213 of file m88k.h.

#define TARGET_EITHER_LARGE_SHIFT   (target_flags & MASK_EITHER_LARGE_SHIFT)

Definition at line 209 of file m88k.h.

#define TARGET_HANDLE_LARGE_SHIFT   (target_flags & MASK_HANDLE_LARGE_SHIFT)

Definition at line 201 of file m88k.h.

#define TARGET_IDENTIFY_REVISION   (target_flags & MASK_IDENTIFY_REVISION)

Definition at line 204 of file m88k.h.

#define TARGET_MEM_FUNCTIONS

Definition at line 1175 of file m88k.h.

#define TARGET_NO_UNDERSCORES   (target_flags & MASK_NO_UNDERSCORES)

Definition at line 198 of file m88k.h.

#define TARGET_OCS_DEBUG_INFO   (target_flags & MASK_OCS_DEBUG_INFO)

#define TARGET_OCS_FRAME_POSITION   (target_flags & MASK_OCS_FRAME_POSITION)

Definition at line 195 of file m88k.h.

Referenced by m88k_layout_frame().

#define TARGET_OMIT_LEAF_FRAME_POINTER   (target_flags & MASK_OMIT_LEAF_FRAME_POINTER)

Definition at line 210 of file m88k.h.

#define TARGET_OPTIMIZE_ARG_AREA   (target_flags & MASK_OPTIMIZE_ARG_AREA)

Definition at line 206 of file m88k.h.

Referenced by m88k_expand_prologue().

#define TARGET_OPTIONS

Value:

{ { "short-data-", &m88k_short_data }, \
       { "version-", &m88k_version } }

Definition at line 252 of file m88k.h.

#define TARGET_SERIALIZE_VOLATILE   (!(target_flags & MASK_NO_SERIALIZE_VOLATILE))

Definition at line 207 of file m88k.h.

Referenced by print_operand().

#define TARGET_SVR3   (target_flags & MASK_SVR3)

Definition at line 197 of file m88k.h.

#define TARGET_SVR4   (target_flags & MASK_SVR4)

Definition at line 196 of file m88k.h.

Referenced by output_file_start().

#define TARGET_SWITCHES

Value:

{ \
    { "88110",         MASK_88110 }, \
    { "88100",         MASK_88100 }, \
    { "88000",               MASK_88000 }, \
    { "ocs-debug-info",      MASK_OCS_DEBUG_INFO }, \
    { "no-ocs-debug-info",    -MASK_OCS_DEBUG_INFO }, \
    { "ocs-frame-position",    MASK_OCS_FRAME_POSITION }, \
    { "no-ocs-frame-position",    -MASK_OCS_FRAME_POSITION }, \
    { "svr4",              MASK_SVR4 }, \
    { "svr3",             -MASK_SVR4 }, \
    { "no-underscores",      MASK_NO_UNDERSCORES }, \
    { "big-pic",       MASK_BIG_PIC }, \
    { "trap-large-shift",    MASK_TRAP_LARGE_SHIFT }, \
    { "handle-large-shift",    MASK_HANDLE_LARGE_SHIFT }, \
    { "check-zero-division",     MASK_CHECK_ZERO_DIV }, \
    { "no-check-zero-division",   -MASK_CHECK_ZERO_DIV }, \
    { "use-div-instruction",     MASK_USE_DIV }, \
    { "identify-revision",     MASK_IDENTIFY_REVISION }, \
    { "warn-passed-structs",     MASK_WARN_PASS_STRUCT }, \
    { "optimize-arg-area",     MASK_OPTIMIZE_ARG_AREA }, \
    { "no-optimize-arg-area",   -MASK_OPTIMIZE_ARG_AREA }, \
    { "no-serialize-volatile",     MASK_NO_SERIALIZE_VOLATILE }, \
    { "serialize-volatile",   -MASK_NO_SERIALIZE_VOLATILE }, \
    { "omit-leaf-frame-pointer",   MASK_OMIT_LEAF_FRAME_POINTER }, \
    { "no-omit-leaf-frame-pointer",     -MASK_OMIT_LEAF_FRAME_POINTER }, \
    SUBTARGET_SWITCHES \
    /* Default switches */ \
    { "",        TARGET_DEFAULT }, \
  }

Definition at line 216 of file m88k.h.

#define TARGET_TRAP_LARGE_SHIFT   (target_flags & MASK_TRAP_LARGE_SHIFT)

Definition at line 200 of file m88k.h.

#define TARGET_USE_DIV   (target_flags & MASK_USE_DIV)

Definition at line 203 of file m88k.h.

#define TARGET_VERSION   fprintf (stderr, " (%s)", VERSION_INFO1)

Definition at line 153 of file m88k.h.

#define TARGET_WARN_PASS_STRUCT   (target_flags & MASK_WARN_PASS_STRUCT)

Definition at line 205 of file m88k.h.

#define TDESC_SECTION_ASM_OP

Value:

(TARGET_SVR4      \
            ? "\tsection\t .tdesc,\"a\""  \
            : "\tsection\t .tdesc,\"x\"")

Definition at line 1646 of file m88k.h.

#define TEMP_REGNUM   10

Definition at line 648 of file m88k.h.

Referenced by emit_add(), emit_ldst(), and m88k_expand_prologue().

#define TEXT_SECTION_ASM_OP   "\ttext"

Definition at line 1639 of file m88k.h.

#define TRADITIONAL_RETURN_FLOAT

Definition at line 1505 of file m88k.h.

#define TRAMPOLINE_ALIGNMENT   128

Definition at line 1158 of file m88k.h.

#define TRAMPOLINE_SIZE   (32+12)

Definition at line 1152 of file m88k.h.

#define TRAMPOLINE_TEMPLATE ( FILE   ) 

Value:

{                 \
  char buf[256];              \
  static int labelno = 0;           \
  labelno++;                \
  ASM_GENERATE_INTERNAL_LABEL (buf, "LTRMP", labelno);      \
  /* Save the return address (r1) in the static chain reg (r11).  */  \
  fprintf (FILE, "\tor\t %s,%s,0\n", reg_names[11], reg_names[1]);  \
  /* Locate this block; transfer to the next instruction.  */   \
  fprintf (FILE, "\tbsr\t %s\n", &buf[1]);          \
  ASM_OUTPUT_INTERNAL_LABEL (FILE, "LTRMP", labelno);     \
  /* Save r10; use it as the relative pointer; restore r1.  */    \
  fprintf (FILE, "\tst\t %s,%s,24\n", reg_names[10], reg_names[1]); \
  fprintf (FILE, "\tor\t %s,%s,0\n", reg_names[10], reg_names[1]);  \
  fprintf (FILE, "\tor\t %s,%s,0\n", reg_names[1], reg_names[11]);  \
  /* Load the function's address and go there.  */      \
  fprintf (FILE, "\tld\t %s,%s,32\n", reg_names[11], reg_names[10]);  \
  fprintf (FILE, "\tjmp.n\t %s\n", reg_names[11]);      \
  /* Restore r10 and load the static chain register.  */    \
  fprintf (FILE, "\tld.d\t %s,%s,24\n", reg_names[10], reg_names[10]);  \
  /* Storage: r10 save area, static chain, function address.  */  \
  assemble_aligned_integer (UNITS_PER_WORD, const0_rtx);    \
  assemble_aligned_integer (UNITS_PER_WORD, const0_rtx);    \
  assemble_aligned_integer (UNITS_PER_WORD, const0_rtx);    \
}

Definition at line 1120 of file m88k.h.

#define TRULY_NOOP_TRUNCATION ( OUTPREC,
INPREC   )     1

Definition at line 1489 of file m88k.h.

#define TYPE_ASM_OP   "\ttype\t"

Definition at line 1676 of file m88k.h.

#define TYPE_OPERAND_FMT   "#%s"

Definition at line 1680 of file m88k.h.

#define UNITS_PER_WORD   4

Definition at line 349 of file m88k.h.

#define USE_CONST_SECTION   DECLARE_ASM_NAME

Definition at line 2303 of file m88k.h.

#define USER_LABEL_PREFIX   "_"

Definition at line 1932 of file m88k.h.

#define VERSION_ASM_OP   "\tversion\t"

Definition at line 1692 of file m88k.h.

#define VERSION_INFO1   "m88k"

Definition at line 156 of file m88k.h.

#define WORDS_BIG_ENDIAN   1

Definition at line 337 of file m88k.h.

#define XRF_REGNO_P (  )     ((N) < FIRST_PSEUDO_REGISTER && (N) >= FIRST_EXTENDED_REGISTER)

Definition at line 593 of file m88k.h.


Enumeration Type Documentation

Enumerator:
m88k_zero 
m88k_or 
m88k_subu 
m88k_or_lo16 
m88k_or_lo8 
m88k_set 
m88k_oru_hi16 
m88k_oru_or 
m88k_zero 
m88k_or 
m88k_subu 
m88k_or_lo16 
m88k_or_lo8 
m88k_set 
m88k_oru_hi16 
m88k_oru_or 

Definition at line 72 of file m88k.h.

Enumerator:
PROCESSOR_EV4 
PROCESSOR_EV5 
PROCESSOR_EV6 
PROCESSOR_I386 
PROCESSOR_I486 
PROCESSOR_PENTIUM 
PROCESSOR_PENTIUMPRO 
PROCESSOR_K6 
PROCESSOR_ATHLON 
PROCESSOR_PENTIUM4 
PROCESSOR_max 
PROCESSOR_M88100 
PROCESSOR_M88110 
PROCESSOR_M88000 
PROCESSOR_700 
PROCESSOR_7100 
PROCESSOR_7100LC 
PROCESSOR_7200 
PROCESSOR_8000 
PROCESSOR_RIOS1 
PROCESSOR_RIOS2 
PROCESSOR_RS64A 
PROCESSOR_MPCCORE 
PROCESSOR_PPC403 
PROCESSOR_PPC405 
PROCESSOR_PPC601 
PROCESSOR_PPC603 
PROCESSOR_PPC604 
PROCESSOR_PPC604e 
PROCESSOR_PPC620 
PROCESSOR_PPC630 
PROCESSOR_PPC750 
PROCESSOR_PPC7400 
PROCESSOR_PPC7450 
PROCESSOR_SH1 
PROCESSOR_SH2 
PROCESSOR_SH3 
PROCESSOR_SH3E 
PROCESSOR_SH4 
PROCESSOR_SH5 
PROCESSOR_DEFAULT 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R8000 
PROCESSOR_R4KC 
PROCESSOR_R5KC 
PROCESSOR_R20KC 
PROCESSOR_SR71000 
PROCESSOR_SB1 
PROCESSOR_V7 
PROCESSOR_CYPRESS 
PROCESSOR_V8 
PROCESSOR_SUPERSPARC 
PROCESSOR_SPARCLITE 
PROCESSOR_F930 
PROCESSOR_F934 
PROCESSOR_HYPERSPARC 
PROCESSOR_SPARCLITE86X 
PROCESSOR_SPARCLET 
PROCESSOR_TSC701 
PROCESSOR_V9 
PROCESSOR_ULTRASPARC 
PROCESSOR_DEFAULT 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R8000 
PROCESSOR_R4KC 
PROCESSOR_R5KC 
PROCESSOR_R20KC 
PROCESSOR_SR71000 
PROCESSOR_SB1 
PROCESSOR_DEFAULT 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R8000 
PROCESSOR_R4KC 
PROCESSOR_R5KC 
PROCESSOR_R20KC 
PROCESSOR_SR71000 
PROCESSOR_SB1 
PROCESSOR_EV4 
PROCESSOR_EV5 
PROCESSOR_EV6 
PROCESSOR_I386 
PROCESSOR_I486 
PROCESSOR_PENTIUM 
PROCESSOR_PENTIUMPRO 
PROCESSOR_K6 
PROCESSOR_ATHLON 
PROCESSOR_PENTIUM4 
PROCESSOR_max 
PROCESSOR_M88100 
PROCESSOR_M88110 
PROCESSOR_M88000 
PROCESSOR_700 
PROCESSOR_7100 
PROCESSOR_7100LC 
PROCESSOR_7200 
PROCESSOR_8000 
PROCESSOR_RIOS1 
PROCESSOR_RIOS2 
PROCESSOR_RS64A 
PROCESSOR_MPCCORE 
PROCESSOR_PPC403 
PROCESSOR_PPC405 
PROCESSOR_PPC601 
PROCESSOR_PPC603 
PROCESSOR_PPC604 
PROCESSOR_PPC604e 
PROCESSOR_PPC620 
PROCESSOR_PPC630 
PROCESSOR_PPC750 
PROCESSOR_PPC7400 
PROCESSOR_PPC7450 
PROCESSOR_SH1 
PROCESSOR_SH2 
PROCESSOR_SH3 
PROCESSOR_SH3E 
PROCESSOR_SH4 
PROCESSOR_SH5 
PROCESSOR_DEFAULT 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R8000 
PROCESSOR_R4KC 
PROCESSOR_R5KC 
PROCESSOR_R20KC 
PROCESSOR_SR71000 
PROCESSOR_SB1 
PROCESSOR_V7 
PROCESSOR_CYPRESS 
PROCESSOR_V8 
PROCESSOR_SUPERSPARC 
PROCESSOR_SPARCLITE 
PROCESSOR_F930 
PROCESSOR_F934 
PROCESSOR_HYPERSPARC 
PROCESSOR_SPARCLITE86X 
PROCESSOR_SPARCLET 
PROCESSOR_TSC701 
PROCESSOR_V9 
PROCESSOR_ULTRASPARC 
PROCESSOR_DEFAULT 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R8000 
PROCESSOR_R4KC 
PROCESSOR_R5KC 
PROCESSOR_R20KC 
PROCESSOR_SR71000 
PROCESSOR_SB1 
PROCESSOR_DEFAULT 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R8000 
PROCESSOR_R4KC 
PROCESSOR_R5KC 
PROCESSOR_R20KC 
PROCESSOR_SR71000 
PROCESSOR_SB1 
PROCESSOR_EV4 
PROCESSOR_EV5 
PROCESSOR_EV6 
PROCESSOR_MAX 
ARM_CORE 
PROCESSOR_I386 
PROCESSOR_I486 
PROCESSOR_PENTIUM 
PROCESSOR_PENTIUMPRO 
PROCESSOR_K6 
PROCESSOR_ATHLON 
PROCESSOR_PENTIUM4 
PROCESSOR_K8 
PROCESSOR_NOCONA 
PROCESSOR_max 
PROCESSOR_ITANIUM 
PROCESSOR_ITANIUM2 
PROCESSOR_max 
PROCESSOR_DEFAULT 
PROCESSOR_IQ2000 
PROCESSOR_IQ10 
PROCESSOR_DEFAULT 
PROCESSOR_4KC 
PROCESSOR_5KC 
PROCESSOR_20KC 
PROCESSOR_M4K 
PROCESSOR_R3000 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4130 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R7000 
PROCESSOR_R8000 
PROCESSOR_R9000 
PROCESSOR_SB1 
PROCESSOR_SR71000 
PROCESSOR_700 
PROCESSOR_7100 
PROCESSOR_7100LC 
PROCESSOR_7200 
PROCESSOR_7300 
PROCESSOR_8000 
PROCESSOR_RIOS1 
PROCESSOR_RIOS2 
PROCESSOR_RS64A 
PROCESSOR_MPCCORE 
PROCESSOR_PPC403 
PROCESSOR_PPC405 
PROCESSOR_PPC440 
PROCESSOR_PPC601 
PROCESSOR_PPC603 
PROCESSOR_PPC604 
PROCESSOR_PPC604e 
PROCESSOR_PPC620 
PROCESSOR_PPC630 
PROCESSOR_PPC750 
PROCESSOR_PPC7400 
PROCESSOR_PPC7450 
PROCESSOR_PPC8540 
PROCESSOR_POWER4 
PROCESSOR_POWER5 
PROCESSOR_9672_G5 
PROCESSOR_9672_G6 
PROCESSOR_2064_Z900 
PROCESSOR_2084_Z990 
PROCESSOR_max 
PROCESSOR_SH1 
PROCESSOR_SH2 
PROCESSOR_SH2E 
PROCESSOR_SH2A 
PROCESSOR_SH3 
PROCESSOR_SH3E 
PROCESSOR_SH4 
PROCESSOR_SH4A 
PROCESSOR_SH5 
PROCESSOR_V7 
PROCESSOR_CYPRESS 
PROCESSOR_V8 
PROCESSOR_SUPERSPARC 
PROCESSOR_SPARCLITE 
PROCESSOR_F930 
PROCESSOR_F934 
PROCESSOR_HYPERSPARC 
PROCESSOR_SPARCLITE86X 
PROCESSOR_SPARCLET 
PROCESSOR_TSC701 
PROCESSOR_V9 
PROCESSOR_ULTRASPARC 
PROCESSOR_ULTRASPARC3 
PROCESSOR_EV4 
PROCESSOR_EV5 
PROCESSOR_EV6 
PROCESSOR_MAX 
ARM_CORE 
PROCESSOR_I386 
PROCESSOR_I486 
PROCESSOR_PENTIUM 
PROCESSOR_PENTIUMPRO 
PROCESSOR_K6 
PROCESSOR_ATHLON 
PROCESSOR_PENTIUM4 
PROCESSOR_K8 
PROCESSOR_NOCONA 
PROCESSOR_GENERIC32 
PROCESSOR_GENERIC64 
PROCESSOR_AMDFAM10 
PROCESSOR_max 
PROCESSOR_ITANIUM 
PROCESSOR_ITANIUM2 
PROCESSOR_max 
PROCESSOR_DEFAULT 
PROCESSOR_IQ2000 
PROCESSOR_IQ10 
PROCESSOR_R3000 
PROCESSOR_4KC 
PROCESSOR_4KP 
PROCESSOR_5KC 
PROCESSOR_5KF 
PROCESSOR_20KC 
PROCESSOR_24K 
PROCESSOR_24KX 
PROCESSOR_M4K 
PROCESSOR_R3900 
PROCESSOR_R6000 
PROCESSOR_R4000 
PROCESSOR_R4100 
PROCESSOR_R4111 
PROCESSOR_R4120 
PROCESSOR_R4130 
PROCESSOR_R4300 
PROCESSOR_R4600 
PROCESSOR_R4650 
PROCESSOR_R5000 
PROCESSOR_R5400 
PROCESSOR_R5500 
PROCESSOR_R7000 
PROCESSOR_R8000 
PROCESSOR_R9000 
PROCESSOR_SB1 
PROCESSOR_SB1A 
PROCESSOR_SR71000 
PROCESSOR_MAX 
PROCESSOR_MN10300 
PROCESSOR_AM33 
PROCESSOR_AM33_2 
PROCESSOR_MS1_64_001 
PROCESSOR_MS1_16_002 
PROCESSOR_MS1_16_003 
PROCESSOR_MS2 
PROCESSOR_700 
PROCESSOR_7100 
PROCESSOR_7100LC 
PROCESSOR_7200 
PROCESSOR_7300 
PROCESSOR_8000 
PROCESSOR_RIOS1 
PROCESSOR_RIOS2 
PROCESSOR_RS64A 
PROCESSOR_MPCCORE 
PROCESSOR_PPC403 
PROCESSOR_PPC405 
PROCESSOR_PPC440 
PROCESSOR_PPC601 
PROCESSOR_PPC603 
PROCESSOR_PPC604 
PROCESSOR_PPC604e 
PROCESSOR_PPC620 
PROCESSOR_PPC630 
PROCESSOR_PPC750 
PROCESSOR_PPC7400 
PROCESSOR_PPC7450 
PROCESSOR_PPC8540 
PROCESSOR_POWER4 
PROCESSOR_POWER5 
PROCESSOR_9672_G5 
PROCESSOR_9672_G6 
PROCESSOR_2064_Z900 
PROCESSOR_2084_Z990 
PROCESSOR_2094_Z9_109 
PROCESSOR_max 
PROCESSOR_SH1 
PROCESSOR_SH2 
PROCESSOR_SH2E 
PROCESSOR_SH2A 
PROCESSOR_SH3 
PROCESSOR_SH3E 
PROCESSOR_SH4 
PROCESSOR_SH4A 
PROCESSOR_SH5 
PROCESSOR_V7 
PROCESSOR_CYPRESS 
PROCESSOR_V8 
PROCESSOR_SUPERSPARC 
PROCESSOR_SPARCLITE 
PROCESSOR_F930 
PROCESSOR_F934 
PROCESSOR_HYPERSPARC 
PROCESSOR_SPARCLITE86X 
PROCESSOR_SPARCLET 
PROCESSOR_TSC701 
PROCESSOR_V9 
PROCESSOR_ULTRASPARC 
PROCESSOR_ULTRASPARC3 
PROCESSOR_NIAGARA 

Definition at line 86 of file m88k.h.

enum reg_class

Enumerator:
NO_REGS 
R2 
R0_1 
INDEX_REGS 
BASE_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
LR0_REGS 
GENERAL_REGS 
BP_REGS 
FC_REGS 
CR_REGS 
Q_REGS 
SPECIAL_REGS 
ACCUM0_REGS 
ACCUM_REGS 
FLOAT_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
R24_REG 
R25_REG 
R27_REG 
GENERAL_REGS 
FLOAT_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
LPCOUNT_REG 
GENERAL_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
FPU_REGS 
LO_REGS 
STACK_REG 
BASE_REGS 
HI_REGS 
CC_REG 
GENERAL_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
R0_REG 
POINTER_X_REGS 
POINTER_Y_REGS 
POINTER_Z_REGS 
STACK_REG 
BASE_POINTER_REGS 
POINTER_REGS 
ADDW_REGS 
SIMPLE_LD_REGS 
LD_REGS 
NO_LD_REGS 
GENERAL_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
R0R1_REGS 
R2R3_REGS 
EXT_LOW_REGS 
EXT_REGS 
ADDR_REGS 
INDEX_REGS 
BK_REG 
SP_REG 
RC_REG 
COUNTER_REGS 
INT_REGS 
GENERAL_REGS 
DP_REG 
ST_REG 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
GENERAL_REGS 
FLOAT_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
S_REGS 
INDEX_REGS 
SP_REGS 
A_REGS 
SI_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
REPEAT_REGS 
CR_REGS 
ACCUM_REGS 
OTHER_FLAG_REGS 
F0_REGS 
F1_REGS 
BR_FLAG_REGS 
FLAG_REGS 
EVEN_REGS 
GPR_REGS 
ALL_REGS 
LIM_REG_CLASSES 
NO_REGS 
A0H_REG 
A0L_REG 
A0_REG 
A1H_REG 
ACCUM_HIGH_REGS 
A1L_REG 
ACCUM_LOW_REGS 
A1_REG 
ACCUM_REGS 
X_REG 
X_OR_ACCUM_LOW_REGS 
X_OR_ACCUM_REGS 
YH_REG 
YH_OR_ACCUM_HIGH_REGS 
X_OR_YH_REGS 
YL_REG 
YL_OR_ACCUM_LOW_REGS 
X_OR_YL_REGS 
X_OR_Y_REGS 
Y_REG 
ACCUM_OR_Y_REGS 
PH_REG 
X_OR_PH_REGS 
PL_REG 
PL_OR_ACCUM_LOW_REGS 
X_OR_PL_REGS 
YL_OR_PL_OR_ACCUM_LOW_REGS 
P_REG 
ACCUM_OR_P_REGS 
YL_OR_P_REGS 
ACCUM_LOW_OR_YL_OR_P_REGS 
Y_OR_P_REGS 
ACCUM_Y_OR_P_REGS 
NO_FRAME_Y_ADDR_REGS 
Y_ADDR_REGS 
ACCUM_LOW_OR_Y_ADDR_REGS 
ACCUM_OR_Y_ADDR_REGS 
X_OR_Y_ADDR_REGS 
Y_OR_Y_ADDR_REGS 
P_OR_Y_ADDR_REGS 
NON_HIGH_YBASE_ELIGIBLE_REGS 
YBASE_ELIGIBLE_REGS 
J_REG