/[gxemul]/trunk/src/include/cpu_mips.h
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/include/cpu_mips.h

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

revision 24 by dpavlin, Mon Oct 8 16:19:56 2007 UTC revision 28 by dpavlin, Mon Oct 8 16:20:26 2007 UTC
# Line 28  Line 28 
28   *  SUCH DAMAGE.   *  SUCH DAMAGE.
29   *   *
30   *   *
31   *  $Id: cpu_mips.h,v 1.42 2006/06/22 13:22:41 debug Exp $   *  $Id: cpu_mips.h,v 1.45 2006/07/16 13:32:27 debug Exp $
32   */   */
33    
34  #include "misc.h"  #include "misc.h"
# Line 69  struct mips_cpu_type_def { Line 69  struct mips_cpu_type_def {
69    
70  /*  /*
71   *  Coproc 0:   *  Coproc 0:
72     *
73     *  NOTE:
74     *      On R3000, only hi and lo0 are used, and then only the lowest 32 bits.
75   */   */
76  #define N_MIPS_COPROC_REGS      32  #define N_MIPS_COPROC_REGS      32
77  struct mips_tlb {  struct mips_tlb {
# Line 348  int memory_cache_R3000(struct cpu *cpu, Line 351  int memory_cache_R3000(struct cpu *cpu,
351  int mips_memory_rw(struct cpu *cpu, struct memory *mem, uint64_t vaddr,  int mips_memory_rw(struct cpu *cpu, struct memory *mem, uint64_t vaddr,
352          unsigned char *data, size_t len, int writeflag, int cache_flags);          unsigned char *data, size_t len, int writeflag, int cache_flags);
353    
354    int translate_v2p_mmu3k(struct cpu *cpu, uint64_t vaddr,
355            uint64_t *return_addr, int flags);
356    int translate_v2p_mmu8k(struct cpu *cpu, uint64_t vaddr,
357            uint64_t *return_addr, int flags);
358    int translate_v2p_mmu10k(struct cpu *cpu, uint64_t vaddr,
359            uint64_t *return_addr, int flags);
360    int translate_v2p_mmu4100(struct cpu *cpu, uint64_t vaddr,
361            uint64_t *return_addr, int flags);
362    int translate_v2p_generic(struct cpu *cpu, uint64_t vaddr,
363            uint64_t *return_addr, int flags);
364    
365    
366  /*  Dyntrans unaligned load/store:  */  /*  Dyntrans unaligned load/store:  */
367  void mips_unaligned_loadstore(struct cpu *cpu, struct mips_instr_call *ic,  void mips_unaligned_loadstore(struct cpu *cpu, struct mips_instr_call *ic,
368          int is_left, int wlen, int store);          int is_left, int wlen, int store);
369    
370    
371    int mips_run_instr(struct cpu *cpu);
372  void mips_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,  void mips_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,
373          unsigned char *host_page, int writeflag, uint64_t paddr_page);          unsigned char *host_page, int writeflag, uint64_t paddr_page);
374  void mips_invalidate_translation_caches(struct cpu *cpu, uint64_t, int);  void mips_invalidate_translation_caches(struct cpu *cpu, uint64_t, int);
375  void mips_invalidate_code_translation(struct cpu *cpu, uint64_t, int);  void mips_invalidate_code_translation(struct cpu *cpu, uint64_t, int);
376    int mips32_run_instr(struct cpu *cpu);
377  void mips32_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,  void mips32_update_translation_table(struct cpu *cpu, uint64_t vaddr_page,
378          unsigned char *host_page, int writeflag, uint64_t paddr_page);          unsigned char *host_page, int writeflag, uint64_t paddr_page);
379  void mips32_invalidate_translation_caches(struct cpu *cpu, uint64_t, int);  void mips32_invalidate_translation_caches(struct cpu *cpu, uint64_t, int);
380  void mips32_invalidate_code_translation(struct cpu *cpu, uint64_t, int);  void mips32_invalidate_code_translation(struct cpu *cpu, uint64_t, int);
 void mips_init_64bit_dummy_tables(struct cpu *cpu);  
381    
382    
383  #endif  /*  CPU_MIPS_H  */  #endif  /*  CPU_MIPS_H  */

Legend:
Removed from v.24  
changed lines
  Added in v.28

  ViewVC Help
Powered by ViewVC 1.1.26