/[gxemul]/trunk/src/cpus/cpu_sh.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/src/cpus/cpu_sh.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 18 by dpavlin, Mon Oct 8 16:19:11 2007 UTC revision 22 by dpavlin, Mon Oct 8 16:19:37 2007 UTC
# Line 25  Line 25 
25   *  SUCH DAMAGE.   *  SUCH DAMAGE.
26   *   *
27   *   *
28   *  $Id: cpu_sh.c,v 1.7 2005/10/22 17:24:21 debug Exp $   *  $Id: cpu_sh.c,v 1.9 2006/02/17 18:38:30 debug Exp $
29   *   *
30   *  Hitachi SuperH ("SH") CPU emulation.   *  Hitachi SuperH ("SH") CPU emulation.
31   *   *
# Line 126  void sh_cpu_dumpinfo(struct cpu *cpu) Line 126  void sh_cpu_dumpinfo(struct cpu *cpu)
126  void sh_cpu_register_dump(struct cpu *cpu, int gprs, int coprocs)  void sh_cpu_register_dump(struct cpu *cpu, int gprs, int coprocs)
127  {  {
128          char *symbol;          char *symbol;
129          uint64_t offset, tmp;          uint64_t offset;
130          int i, x = cpu->cpu_id, nregs = cpu->cd.sh.compact? 16 : 64;          int i, x = cpu->cpu_id, nregs = cpu->cd.sh.compact? 16 : 64;
131          int bits32 = cpu->cd.sh.bits == 32;          int bits32 = cpu->cd.sh.bits == 32;
132    
# Line 192  void sh_cpu_register_match(struct machin Line 192  void sh_cpu_register_match(struct machin
192    
193    
194  /*  /*
  *  sh_cpu_show_full_statistics():  
  *  
  *  Show detailed statistics on opcode usage on each cpu.  
  */  
 void sh_cpu_show_full_statistics(struct machine *m)  
 {  
         fatal("sh_cpu_show_full_statistics(): TODO\n");  
 }  
   
   
 /*  
  *  sh_cpu_tlbdump():  
  *  
  *  Called from the debugger to dump the TLB in a readable format.  
  *  x is the cpu number to dump, or -1 to dump all CPUs.  
  *  
  *  If rawflag is nonzero, then the TLB contents isn't formated nicely,  
  *  just dumped.  
  */  
 void sh_cpu_tlbdump(struct machine *m, int x, int rawflag)  
 {  
         fatal("sh_cpu_tlbdump(): TODO\n");  
 }  
   
   
 /*  
195   *  sh_cpu_interrupt():   *  sh_cpu_interrupt():
196   */   */
197  int sh_cpu_interrupt(struct cpu *cpu, uint64_t irq_nr)  int sh_cpu_interrupt(struct cpu *cpu, uint64_t irq_nr)
# Line 247  int sh_cpu_interrupt_ack(struct cpu *cpu Line 221  int sh_cpu_interrupt_ack(struct cpu *cpu
221  int sh_cpu_disassemble_instr_compact(struct cpu *cpu, unsigned char *instr,  int sh_cpu_disassemble_instr_compact(struct cpu *cpu, unsigned char *instr,
222          int running, uint64_t dumpaddr, int bintrans)          int running, uint64_t dumpaddr, int bintrans)
223  {  {
224          uint64_t offset, addr;          uint64_t addr;
225          uint16_t iword;          uint16_t iword;
226          int hi4, lo4, lo8, r8, r4;          int hi4, lo4, lo8, r8, r4;
         char *symbol, *mnem = "ERROR";  
227    
228          if (cpu->byte_order == EMUL_BIG_ENDIAN)          if (cpu->byte_order == EMUL_BIG_ENDIAN)
229                  iword = (instr[0] << 8) + instr[1];                  iword = (instr[0] << 8) + instr[1];
# Line 571  int sh_cpu_disassemble_instr_compact(str Line 544  int sh_cpu_disassemble_instr_compact(str
544  int sh_cpu_disassemble_instr(struct cpu *cpu, unsigned char *instr,  int sh_cpu_disassemble_instr(struct cpu *cpu, unsigned char *instr,
545          int running, uint64_t dumpaddr, int bintrans)          int running, uint64_t dumpaddr, int bintrans)
546  {  {
547          uint64_t offset, addr;          uint64_t offset;
548          uint32_t iword;          uint32_t iword;
549          int hi6;          char *symbol;
         char *symbol, *mnem = "ERROR";  
550    
551          if (running)          if (running)
552                  dumpaddr = cpu->pc;                  dumpaddr = cpu->pc;

Legend:
Removed from v.18  
changed lines
  Added in v.22

  ViewVC Help
Powered by ViewVC 1.1.26