GDB (API)
Classes | Defines | Enumerations | Functions | Variables
/home/stan/gdb/src/gdb/m68hc11-tdep.c File Reference
#include "defs.h"
#include "frame.h"
#include "frame-unwind.h"
#include "frame-base.h"
#include "dwarf2-frame.h"
#include "trad-frame.h"
#include "symtab.h"
#include "gdbtypes.h"
#include "gdbcmd.h"
#include "gdbcore.h"
#include "gdb_string.h"
#include "value.h"
#include "inferior.h"
#include "dis-asm.h"
#include "symfile.h"
#include "objfiles.h"
#include "arch-utils.h"
#include "regcache.h"
#include "reggroups.h"
#include "target.h"
#include "opcode/m68hc11.h"
#include "elf/m68hc11.h"
#include "elf-bfd.h"

Go to the source code of this file.

Classes

struct  gdbarch_tdep

Defines

#define MSYMBOL_SET_RTC(msym)   MSYMBOL_TARGET_FLAG_1 (msym) = 1
#define MSYMBOL_SET_RTI(msym)   MSYMBOL_TARGET_FLAG_2 (msym) = 1
#define MSYMBOL_IS_RTC(msym)   MSYMBOL_TARGET_FLAG_1 (msym)
#define MSYMBOL_IS_RTI(msym)   MSYMBOL_TARGET_FLAG_2 (msym)
#define HARD_X_REGNUM   0
#define HARD_D_REGNUM   1
#define HARD_Y_REGNUM   2
#define HARD_SP_REGNUM   3
#define HARD_PC_REGNUM   4
#define HARD_A_REGNUM   5
#define HARD_B_REGNUM   6
#define HARD_CCR_REGNUM   7
#define HARD_PAGE_REGNUM   8
#define M68HC11_LAST_HARD_REG   (HARD_PAGE_REGNUM)
#define SOFT_Z_REGNUM   8
#define SOFT_FP_REGNUM   9
#define SOFT_TMP_REGNUM   10
#define SOFT_ZS_REGNUM   11
#define SOFT_XY_REGNUM   12
#define SOFT_UNUSED_REGNUM   13
#define SOFT_D1_REGNUM   14
#define SOFT_D32_REGNUM   (SOFT_D1_REGNUM+31)
#define M68HC11_MAX_SOFT_REGS   32
#define M68HC11_NUM_REGS   (8)
#define M68HC11_NUM_PSEUDO_REGS   (M68HC11_MAX_SOFT_REGS+5)
#define M68HC11_ALL_REGS   (M68HC11_NUM_REGS+M68HC11_NUM_PSEUDO_REGS)
#define M68HC11_REG_SIZE   (2)
#define M68HC12_NUM_REGS   (9)
#define M68HC12_NUM_PSEUDO_REGS   ((M68HC11_MAX_SOFT_REGS+5)+1-1)
#define M68HC12_HARD_PC_REGNUM   (SOFT_D32_REGNUM+1)
#define STACK_CORRECTION(gdbarch)   (gdbarch_tdep (gdbarch)->stack_correction)
#define USE_PAGE_REGISTER(gdbarch)   (gdbarch_tdep (gdbarch)->use_page_register)
#define M68HC11_FP_ADDR   soft_regs[SOFT_FP_REGNUM].addr
#define MAX_CODES   12
#define M6811_OP_PAGE2   (0x18)
#define M6811_OP_LDX   (0xde)
#define M6811_OP_LDX_EXT   (0xfe)
#define M6811_OP_PSHX   (0x3c)
#define M6811_OP_STS   (0x9f)
#define M6811_OP_STS_EXT   (0xbf)
#define M6811_OP_TSX   (0x30)
#define M6811_OP_XGDX   (0x8f)
#define M6811_OP_ADDD   (0xc3)
#define M6811_OP_TXS   (0x35)
#define M6811_OP_DES   (0x34)
#define M6812_OP_PAGE2   (0x18)
#define M6812_OP_MOVW   (0x01)
#define M6812_PB_PSHW   (0xae)
#define M6812_OP_STS   (0x5f)
#define M6812_OP_STS_EXT   (0x7f)
#define M6812_OP_LEAS   (0x1b)
#define M6812_OP_PSHX   (0x34)
#define M6812_OP_PSHY   (0x35)
#define OP_DIRECT   (0x100) /* 8-byte direct addressing. */
#define OP_IMM_LOW   (0x200) /* Low part of 16-bit constant/address. */
#define OP_IMM_HIGH   (0x300) /* High part of 16-bit constant/address. */
#define OP_PBYTE   (0x400) /* 68HC12 indexed operand. */

Enumerations

enum  insn_return_kind { RETURN_RTS, RETURN_RTC, RETURN_RTI }
enum  m6811_seq_type {
  P_LAST = 0, P_SAVE_REG, P_SET_FRAME, P_LOCAL_1,
  P_LOCAL_2, P_LOCAL_N
}

Functions

void _initialize_m68hc11_tdep (void)

Variables

initialize_file_ftype _initialize_m68hc11_tdep

Define Documentation

#define HARD_A_REGNUM   5

Definition at line 87 of file m68hc11-tdep.c.

#define HARD_B_REGNUM   6

Definition at line 88 of file m68hc11-tdep.c.

#define HARD_CCR_REGNUM   7

Definition at line 89 of file m68hc11-tdep.c.

#define HARD_D_REGNUM   1

Definition at line 82 of file m68hc11-tdep.c.

#define HARD_PAGE_REGNUM   8

Definition at line 96 of file m68hc11-tdep.c.

#define HARD_PC_REGNUM   4

Definition at line 85 of file m68hc11-tdep.c.

#define HARD_SP_REGNUM   3

Definition at line 84 of file m68hc11-tdep.c.

#define HARD_X_REGNUM   0

Definition at line 81 of file m68hc11-tdep.c.

#define HARD_Y_REGNUM   2

Definition at line 83 of file m68hc11-tdep.c.

#define M6811_OP_ADDD   (0xc3)

Definition at line 419 of file m68hc11-tdep.c.

#define M6811_OP_DES   (0x34)

Definition at line 421 of file m68hc11-tdep.c.

#define M6811_OP_LDX   (0xde)

Definition at line 412 of file m68hc11-tdep.c.

#define M6811_OP_LDX_EXT   (0xfe)

Definition at line 413 of file m68hc11-tdep.c.

#define M6811_OP_PAGE2   (0x18)

Definition at line 411 of file m68hc11-tdep.c.

#define M6811_OP_PSHX   (0x3c)

Definition at line 414 of file m68hc11-tdep.c.

#define M6811_OP_STS   (0x9f)

Definition at line 415 of file m68hc11-tdep.c.

#define M6811_OP_STS_EXT   (0xbf)

Definition at line 416 of file m68hc11-tdep.c.

#define M6811_OP_TSX   (0x30)

Definition at line 417 of file m68hc11-tdep.c.

#define M6811_OP_TXS   (0x35)

Definition at line 420 of file m68hc11-tdep.c.

#define M6811_OP_XGDX   (0x8f)

Definition at line 418 of file m68hc11-tdep.c.

#define M6812_OP_LEAS   (0x1b)

Definition at line 429 of file m68hc11-tdep.c.

#define M6812_OP_MOVW   (0x01)

Definition at line 425 of file m68hc11-tdep.c.

#define M6812_OP_PAGE2   (0x18)

Definition at line 424 of file m68hc11-tdep.c.

#define M6812_OP_PSHX   (0x34)

Definition at line 430 of file m68hc11-tdep.c.

#define M6812_OP_PSHY   (0x35)

Definition at line 431 of file m68hc11-tdep.c.

#define M6812_OP_STS   (0x5f)

Definition at line 427 of file m68hc11-tdep.c.

#define M6812_OP_STS_EXT   (0x7f)

Definition at line 428 of file m68hc11-tdep.c.

#define M6812_PB_PSHW   (0xae)

Definition at line 426 of file m68hc11-tdep.c.

Definition at line 118 of file m68hc11-tdep.c.

#define M68HC11_FP_ADDR   soft_regs[SOFT_FP_REGNUM].addr

Definition at line 190 of file m68hc11-tdep.c.

Definition at line 97 of file m68hc11-tdep.c.

#define M68HC11_MAX_SOFT_REGS   32

Definition at line 114 of file m68hc11-tdep.c.

Definition at line 117 of file m68hc11-tdep.c.

#define M68HC11_NUM_REGS   (8)

Definition at line 116 of file m68hc11-tdep.c.

#define M68HC11_REG_SIZE   (2)

Definition at line 120 of file m68hc11-tdep.c.

Definition at line 124 of file m68hc11-tdep.c.

Definition at line 123 of file m68hc11-tdep.c.

#define M68HC12_NUM_REGS   (9)

Definition at line 122 of file m68hc11-tdep.c.

#define MAX_CODES   12

Definition at line 407 of file m68hc11-tdep.c.

#define MSYMBOL_IS_RTC (   msym)    MSYMBOL_TARGET_FLAG_1 (msym)

Definition at line 66 of file m68hc11-tdep.c.

#define MSYMBOL_IS_RTI (   msym)    MSYMBOL_TARGET_FLAG_2 (msym)

Definition at line 69 of file m68hc11-tdep.c.

#define MSYMBOL_SET_RTC (   msym)    MSYMBOL_TARGET_FLAG_1 (msym) = 1

Definition at line 60 of file m68hc11-tdep.c.

#define MSYMBOL_SET_RTI (   msym)    MSYMBOL_TARGET_FLAG_2 (msym) = 1

Definition at line 63 of file m68hc11-tdep.c.

#define OP_DIRECT   (0x100) /* 8-byte direct addressing. */

Definition at line 434 of file m68hc11-tdep.c.

#define OP_IMM_HIGH   (0x300) /* High part of 16-bit constant/address. */

Definition at line 436 of file m68hc11-tdep.c.

#define OP_IMM_LOW   (0x200) /* Low part of 16-bit constant/address. */

Definition at line 435 of file m68hc11-tdep.c.

#define OP_PBYTE   (0x400) /* 68HC12 indexed operand. */

Definition at line 437 of file m68hc11-tdep.c.

#define SOFT_D1_REGNUM   14

Definition at line 112 of file m68hc11-tdep.c.

#define SOFT_D32_REGNUM   (SOFT_D1_REGNUM+31)

Definition at line 113 of file m68hc11-tdep.c.

#define SOFT_FP_REGNUM   9

Definition at line 107 of file m68hc11-tdep.c.

#define SOFT_TMP_REGNUM   10

Definition at line 108 of file m68hc11-tdep.c.

#define SOFT_UNUSED_REGNUM   13

Definition at line 111 of file m68hc11-tdep.c.

#define SOFT_XY_REGNUM   12

Definition at line 110 of file m68hc11-tdep.c.

#define SOFT_Z_REGNUM   8

Definition at line 102 of file m68hc11-tdep.c.

#define SOFT_ZS_REGNUM   11

Definition at line 109 of file m68hc11-tdep.c.

#define STACK_CORRECTION (   gdbarch)    (gdbarch_tdep (gdbarch)->stack_correction)

Definition at line 146 of file m68hc11-tdep.c.

#define USE_PAGE_REGISTER (   gdbarch)    (gdbarch_tdep (gdbarch)->use_page_register)

Definition at line 147 of file m68hc11-tdep.c.


Enumeration Type Documentation

Enumerator:
RETURN_RTS 
RETURN_RTC 
RETURN_RTI 

Definition at line 72 of file m68hc11-tdep.c.

Enumerator:
P_LAST 
P_SAVE_REG 
P_SET_FRAME 
P_LOCAL_1 
P_LOCAL_2 
P_LOCAL_N 

Definition at line 440 of file m68hc11-tdep.c.


Function Documentation

void _initialize_m68hc11_tdep ( void  )

Definition at line 1566 of file m68hc11-tdep.c.


Variable Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines