Changeset 15173 in vbox for trunk/src/recompiler_new/target-i386
- Timestamp:
- Dec 9, 2008 2:05:12 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/recompiler_new/target-i386/op_helper.c
r15034 r15173 5454 5454 #endif 5455 5455 5456 #if defined(VBOX) && defined(REM_PHYS_ADDR_IN_TLB) 5457 /* This code assumes real physical address always fit into host CPU reg, 5458 which is wrong in general, but true for our current use cases. */ 5459 RTCCUINTREG REGPARM __ldb_vbox_phys(RTCCUINTREG addr) 5460 { 5461 return remR3PhysReadS8(addr); 5462 } 5463 RTCCUINTREG REGPARM __ldub_vbox_phys(RTCCUINTREG addr) 5464 { 5465 return remR3PhysReadU8(addr); 5466 } 5467 void REGPARM __stb_vbox_phys(RTCCUINTREG addr, RTCCUINTREG val) 5468 { 5469 remR3PhysWriteU8(addr, val); 5470 } 5471 RTCCUINTREG REGPARM __ldw_vbox_phys(RTCCUINTREG addr) 5472 { 5473 return remR3PhysReadS16(addr); 5474 } 5475 RTCCUINTREG REGPARM __lduw_vbox_phys(RTCCUINTREG addr) 5476 { 5477 return remR3PhysReadU16(addr); 5478 } 5479 void REGPARM __stw_vbox_phys(RTCCUINTREG addr, RTCCUINTREG val) 5480 { 5481 remR3PhysWriteU16(addr, val); 5482 } 5483 RTCCUINTREG REGPARM __ldl_vbox_phys(RTCCUINTREG addr) 5484 { 5485 return remR3PhysReadS32(addr); 5486 } 5487 RTCCUINTREG REGPARM __ldul_vbox_phys(RTCCUINTREG addr) 5488 { 5489 return remR3PhysReadU32(addr); 5490 } 5491 void REGPARM __stl_vbox_phys(RTCCUINTREG addr, RTCCUINTREG val) 5492 { 5493 remR3PhysWriteU32(addr, val); 5494 } 5495 uint64_t REGPARM __ldq_vbox_phys(RTCCUINTREG addr) 5496 { 5497 return remR3PhysReadU64(addr); 5498 } 5499 void REGPARM __stq_vbox_phys(RTCCUINTREG addr, uint64_t val) 5500 { 5501 remR3PhysWriteU64(addr, val); 5502 } 5503 #endif 5504 5456 5505 /* try to fill the TLB and return an exception if error. If retaddr is 5457 5506 NULL, it means that the function was called in C code (i.e. not
Note:
See TracChangeset
for help on using the changeset viewer.