cpu_sh.cc File Reference

Back to the index.

Macros | Functions | Variables
cpu_sh.cc File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <unistd.h>
#include "cpu.h"
#include "device.h"
#include "float_emul.h"
#include "interrupt.h"
#include "machine.h"
#include "memory.h"
#include "misc.h"
#include "settings.h"
#include "symbol.h"
#include "thirdparty/sh4_exception.h"
#include "thirdparty/sh4_mmu.h"
#include "tmp_sh_head.cc"
#include "tmp_sh_tail.cc"

Go to the source code of this file.

Macros

#define DYNTRANS_32
 
#define DYNTRANS_DELAYSLOT
 

Functions

void sh_pc_to_pointers (struct cpu *)
 
void sh3_cpu_interrupt_assert (struct interrupt *interrupt)
 
void sh3_cpu_interrupt_deassert (struct interrupt *interrupt)
 
int sh_cpu_new (struct cpu *cpu, struct memory *mem, struct machine *machine, int cpu_id, char *cpu_type_name)
 
void sh_update_interrupt_priorities (struct cpu *cpu)
 
void sh_cpu_interrupt_assert (struct interrupt *interrupt)
 
void sh_cpu_interrupt_deassert (struct interrupt *interrupt)
 
void sh_cpu_list_available_types (void)
 
void sh_cpu_dumpinfo (struct cpu *cpu)
 
int sh_cpu_instruction_has_delayslot (struct cpu *cpu, unsigned char *ib)
 
void sh_cpu_register_dump (struct cpu *cpu, int gprs, int coprocs)
 
void sh_cpu_tlbdump (struct machine *m, int x, int rawflag)
 
void sh_update_sr (struct cpu *cpu, uint32_t new_sr)
 
void sh_update_fpscr (struct cpu *cpu, uint32_t new_fpscr)
 
void sh_exception (struct cpu *cpu, int expevt, int intevt, uint32_t vaddr)
 
int sh_cpu_disassemble_instr (struct cpu *cpu, unsigned char *instr, int running, uint64_t dumpaddr)
 

Variables

int quiet_mode
 

Macro Definition Documentation

◆ DYNTRANS_32

#define DYNTRANS_32

Definition at line 57 of file cpu_sh.cc.

◆ DYNTRANS_DELAYSLOT

#define DYNTRANS_DELAYSLOT

Definition at line 58 of file cpu_sh.cc.

Function Documentation

◆ sh3_cpu_interrupt_assert()

void sh3_cpu_interrupt_assert ( struct interrupt interrupt)

Definition at line 291 of file cpu_sh.cc.

◆ sh3_cpu_interrupt_deassert()

void sh3_cpu_interrupt_deassert ( struct interrupt interrupt)

Definition at line 295 of file cpu_sh.cc.

◆ sh_cpu_disassemble_instr()

int sh_cpu_disassemble_instr ( struct cpu cpu,
unsigned char *  instr,
int  running,
uint64_t  dumpaddr 
)

◆ sh_cpu_dumpinfo()

void sh_cpu_dumpinfo ( struct cpu cpu)

Definition at line 383 of file cpu_sh.cc.

References cpu::byte_order, debug, and EMUL_BIG_ENDIAN.

◆ sh_cpu_instruction_has_delayslot()

int sh_cpu_instruction_has_delayslot ( struct cpu cpu,
unsigned char *  ib 
)

Definition at line 395 of file cpu_sh.cc.

References BE16_TO_HOST, cpu::byte_order, EMUL_BIG_ENDIAN, cpu::is_32bit, and LE16_TO_HOST.

◆ sh_cpu_interrupt_assert()

void sh_cpu_interrupt_assert ( struct interrupt interrupt)

◆ sh_cpu_interrupt_deassert()

void sh_cpu_interrupt_deassert ( struct interrupt interrupt)

◆ sh_cpu_list_available_types()

void sh_cpu_list_available_types ( void  )

Definition at line 364 of file cpu_sh.cc.

References debug, sh_cpu_type_def::name, SH_CPU_TYPE_DEFS, and strlen().

◆ sh_cpu_new()

int sh_cpu_new ( struct cpu cpu,
struct memory mem,
struct machine machine,
int  cpu_id,
char *  cpu_type_name 
)

Definition at line 77 of file cpu_sh.cc.

◆ sh_cpu_register_dump()

void sh_cpu_register_dump ( struct cpu cpu,
int  gprs,
int  coprocs 
)

◆ sh_cpu_tlbdump()

void sh_cpu_tlbdump ( struct machine m,
int  x,
int  rawflag 
)

◆ sh_exception()

void sh_exception ( struct cpu cpu,
int  expevt,
int  intevt,
uint32_t  vaddr 
)

◆ sh_pc_to_pointers()

void sh_pc_to_pointers ( struct cpu )

Referenced by sh_exception().

◆ sh_update_fpscr()

void sh_update_fpscr ( struct cpu cpu,
uint32_t  new_fpscr 
)

Definition at line 607 of file cpu_sh.cc.

References cpu::cd, sh_cpu::fpscr, sh_cpu::fr, cpu::sh, SH_FPSCR_FR, SH_N_FPRS, and sh_cpu::xf.

Referenced by X().

◆ sh_update_interrupt_priorities()

void sh_update_interrupt_priorities ( struct cpu cpu)

◆ sh_update_sr()

void sh_update_sr ( struct cpu cpu,
uint32_t  new_sr 
)

Definition at line 585 of file cpu_sh.cc.

References cpu::cd, sh_cpu::r, sh_cpu::r_bank, cpu::sh, SH_N_GPRS_BANKED, SH_SR_RB, and sh_cpu::sr.

Referenced by sh_exception(), and X().

Variable Documentation

◆ quiet_mode

int quiet_mode

Definition at line 68 of file emul.cc.

Referenced by arm_exception(), mips_cpu_exception(), ppc_exception(), and sh_exception().


Generated on Tue Aug 25 2020 19:25:06 for GXemul by doxygen 1.8.18