Search
lxdream.org :: lxdream/src/sh4/mmu.c :: log
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/mmu.c
changeset1295:9067aff5522d
authornkeynes
dateMon Oct 15 21:19:22 2012 +1000 (7 years ago)
permissions-rw-r--r--
last changeMerge workaround for interpreted mode accesses to the OC ram regions in AT=0
cases. Still broken for other cases
file annotate diff log rss
1295:9067aff5522d7 yearsnkeynesMerge workaround for interpreted mode accesses to the OC ram regions in AT=0
1217:677b1d85f1b47 yearsnkeynesFix MMU on non-translated platforms
1202:01ae5cbad4c88 yearsnkeynesMove the exception exit macros up to sh4core.h
1198:407659e01ef08 yearsNathan KeynesAdd volatile qualifier to return-address frobbing - works around optimizer
1173:49207ef698e18 yearsnkeynesUnprotect TLB entries for all systems, not just 64-bit (seems to be needed
1090:71e28626b35810 yearsnkeynesPrevent writes to the mmu page tables when the TLB is disabled.
1088:cf3900ae8acc10 yearsnkeynesFix crash on vmu device create introduced in r1072 - config was being
1067:d3c00ffccfcd10 yearsnkeynesNo-op merge lxdream-mem to tip to remove head (Long since merged in
1065:bc1cc0c5491710 yearsnkeynesNo-op merge lxdream-mmu to remove head (actually merged long ago)
980:deb4361928fe10 yearsnkeynesFix signedness in mmu_ext_page_remapped (Thanks kaz!)
975:007bf7eb944f11 yearsnkeynesAdd read_byte_for_write mem function for correct implementation of AND.B and friends
973:7434ac745eff11 yearsnkeynesFix mmu_utlb_entry_for_vpn (failed to take 1k page entries into account)
971:886e1ec8447d11 yearsnkeynesFix 1k-entry allocation
968:6fb1481859a411 yearsnkeynesFix various compile-time warnings
963:1c3a0f67c60311 yearsnkeynesFix missing prototype for mmu_vma_to_phys_disasm
960:2f0819278fdb11 yearsnkeynesExecute the mem_unprotect call only on 64-bit platforms (where it may be needed), since
955:e289b49c28f111 yearsnkeynesReplace mmu_fix_urc with mmu_read_urc (slightly cleaner)
953:f4a156508ad111 yearsnkeynesMerge lxdream-mem branch back to trunk
952:18e57984092311 yearsnkeynesHandle URC/URB case where URC is initialized >= URB lxdream-mem
951:63483914846f11 yearsnkeynesTidy up exceptions+resets lxdream-mem
948:545c85cc56f111 yearsnkeynesIntroduce sh4_finalize_instruction to clean-up on instruction exits lxdream-mem
946:d41ee7994db711 yearsnkeynesFully integrate SQ with the new address space code - added additional 'prefetch' lxdream-mem
943:9a277733eafa11 yearsnkeynesHandle remap-after-multihit-removal TLB updates lxdream-mem
939:6f2302afeb8911 yearsnkeynesMMU work-in-progress lxdream-mem
934:3acd3b3ee6d111 yearsnkeynesChange RAM regions to use static arrays rather than mmap regions, for a 2-3% performance gain. lxdream-mem
933:880c37bb190911 yearsnkeynesStart putting cache together lxdream-mem
931:430048ea8b7111 yearsnkeynesMore refactoring and general cleanup. Most things should be working again now. lxdream-mem
929:fd8cb0c82f5f11 yearsnkeynesFirst pass experiment using cached decoding. lxdream-mem
927:17b6b9e245d811 yearsnkeynesAdd return-address-modifying exception return code to mmu TLB lookups (a little bit faster)
915:c989eb4c22d811 yearsnkeynesImplement a sorted TLB lookup table (big improvement over the linear table scan)
911:2f6ba75b84d111 yearsnkeynesDeclare mem_copy_* functions as FASTCALL
905:4c17ebd9ef5e11 yearsnkeynesUse regparam calling conventions for all functions called from translated code,
841:808d64b0507311 yearsnkeynesInitial implementation of the performance counters, only working one for now
826:69f2c9f1e60811 yearsnkeynesFix mask correctness of MMU/general IO registers, add unknown/undoced
819:ef4fec10a63a11 yearsnkeynesAdd stubs for the (undocumented) SH4 performance counter registers
818:2e08d8237d3311 yearsnkeynesAdd semi-documented PVR register at 0xFF000030 (SH4 version identification)
817:e9d2d9be7cb611 yearsnkeynesFix CCR register mask
810:833cc496055611 yearsnkeynesRemap 1C000000 .. 1FFFFFFF to the P4 region when accessed through TLB
807:1ca418e6ed5d11 yearsnkeynesFix ITLB lookup ASID behaviour (was somewhat back-to-front)
796:a2dc8359246711 yearsnkeynesBug #61: OpenBSD support
740:dd11269ee48b11 yearsnkeynesRationalize the two SH4 run slice impls into sh4.c, and tidy up the vm exits.
736:a02d1475ccfd11 yearsnkeynesRe-indent everything consistently
669:ab344e42bca911 yearsnkeynesCleanup most of the -Wall warnings (getting a bit sloppy...)
597:87cbdf62aa3512 yearsnkeynesInitial VMA support for the SH4 disassembly
586:2a3ba82cf24312 yearsnkeynesMerged lxdream-mmu r570:596 to trunk
583:ba995fadf17312 yearsnkeynesFix assoc UTLB write lxdream-mmu
577:a181aeacd6e812 yearsnkeynesRemove asm file and convert to inline (easier to cope with platform conventions) lxdream-mmu
571:9bc09948d0f212 yearsnkeynesMore MMU work in progess. Much better now... lxdream-mmu
570:d2893980fbf512 yearsnkeynesChange to generate different code for mmu on/off cases lxdream-mmu
569:a1c49e1e877612 yearsnkeynesBring icache partially into line with the mmu, a little less slow with AT off lxdream-mmu
561:533f6b47807112 yearsnkeynesEnable Id keyword on all source files lxdream-mmu
559:06714bc6427112 yearsnkeynesCommit first pass at full TLB support - still needs a lot more work lxdream-mmu
550:a27e3134014712 yearsnkeynesAdd support for the MMIO side of the TLB (and LDTLB)
.