aboutsummaryrefslogtreecommitdiff
path: root/src/core/memory.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Update clang formatJames Rowe2018-07-021-12/+12
|
* Rename logging macro back to LOG_*James Rowe2018-07-021-12/+12
|
* Kernel/Arbiters: Fix casts, cleanup comments/magic numbersMichael Scire2018-06-221-0/+4
|
* core: Implement multicore support.bunnei2018-05-101-2/+7
|
* general: Make formatting of logged hex values more straightforwardLioncash2018-05-021-11/+11
| | | | | | This makes the formatting expectations more obvious (e.g. any zero padding specified is padding that's entirely dedicated to the value being printed, not any pretty-printing that also gets tacked on).
* general: Convert assertion macros over to be fmt-compatibleLioncash2018-04-271-10/+9
|
* Merge pull request #387 from Subv/maxwell_2dbunnei2018-04-251-0/+4
|\ | | | | GPU: Partially implemented the 2D surface copy engine
| * Memory: Added a missing shortcut for Memory::CopyBlock for the current process.Subv2018-04-251-0/+4
| |
* | core/memory: Amend address widths in assertsLioncash2018-04-251-2/+2
| | | | | | | | Addresses are 64-bit, these formatting specifiers are simply holdovers from citra. Adjust them to be the correct width.
* | core/memory: Move logging macros over to new fmt-capable onesLioncash2018-04-251-22/+24
|/ | | | While we're at it, correct addresses to print all 64 bits where applicable, which were holdovers from citra.
* gl_rasterizer_cache: Update to be based on GPU addresses, not CPU addresses.bunnei2018-04-241-16/+48
|
* memory: Fix cast for ReadBlock/WriteBlock/ZeroBlock/CopyBlock.bunnei2018-03-261-4/+8
|
* memory: Add RasterizerMarkRegionCached code and cleanup.bunnei2018-03-261-200/+190
|
* Merge pull request #265 from bunnei/tegra-progress-2bunnei2018-03-231-0/+40
|\ | | | | Tegra progress 2
| * memory: Fix typo in RasterizerFlushVirtualRegion.bunnei2018-03-231-3/+3
| |
| * memory: RasterizerFlushVirtualRegion should also check process image region.bunnei2018-03-231-0/+1
| |
| * rasterizer: Flush and invalidate regions should be 64-bit.bunnei2018-03-231-2/+2
| |
| * memory: Port RasterizerFlushVirtualRegion from Citra.bunnei2018-03-221-0/+39
| |
* | Remove more N3DS ReferencesN00byKing2018-03-221-9/+0
|/
* core: Move process creation out of global state.bunnei2018-03-141-15/+15
|
* memory: LOG_ERROR when falling off end of page tableMerryMage2018-02-211-0/+11
|
* memory: Silence formatting sepecifier warningsLioncash2018-02-141-21/+30
|
* memory: Replace all memory hooking with Special regionsMerryMage2018-01-271-317/+163
|
* memory: Return false for large VAddr in IsValidVirtualAddressRozlette2018-01-201-0/+3
|
* Remove gpu debugger and get yuzu qt to compileJames Rowe2018-01-121-40/+1
|
* fix macos buildMerryMage2018-01-081-4/+4
|
* core/video_core: Fix a bunch of u64 -> u32 warnings.bunnei2018-01-011-8/+8
|
* memory: Print addresses as 64-bit.bunnei2017-10-181-2/+2
|
* Merge remote-tracking branch 'upstream/master' into nxbunnei2017-10-091-143/+211
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # src/core/CMakeLists.txt # src/core/arm/dynarmic/arm_dynarmic.cpp # src/core/arm/dyncom/arm_dyncom.cpp # src/core/hle/kernel/process.cpp # src/core/hle/kernel/thread.cpp # src/core/hle/kernel/thread.h # src/core/hle/kernel/vm_manager.cpp # src/core/loader/3dsx.cpp # src/core/loader/elf.cpp # src/core/loader/ncch.cpp # src/core/memory.cpp # src/core/memory.h # src/core/memory_setup.h
| * Memory: Make WriteBlock take a Process parameter on which to operateSubv2017-10-011-10/+17
| |
| * Memory: Make ReadBlock take a Process parameter on which to operateSubv2017-10-011-12/+28
| |
| * Fixed type conversion ambiguityHuw Pascoe2017-09-301-14/+22
| |
| * Merge pull request #2961 from Subv/load_titlesbunnei2017-09-291-7/+18
| |\ | | | | | | Loaders: Don't automatically set the current process every time we load an application.
| | * Memory: Allow IsValidVirtualAddress to be called with a specific process ↵Subv2017-09-261-7/+18
| | | | | | | | | | | | | | | | | | parameter. There is still an overload of IsValidVirtualAddress that only takes the VAddr and will default to the current process.
| * | Merge pull request #2954 from Subv/cache_unmapped_memJames Rowe2017-09-261-1/+16
| |\ \ | | |/ | |/| Memory/RasterizerCache: Ignore unmapped memory regions when caching physical regions
| | * Memory/RasterizerCache: Ignore unmapped memory regions when caching physical ↵Subv2017-09-251-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | regions. Not all physical regions need to be mapped into the address space of every process, for example, system modules do not have a VRAM mapping. This fixes a crash when loading applets and system modules.
| * | ARM_Interface: Implement PageTableChangedMerryMage2017-09-241-0/+5
| | |
| * | memory: Remove GetCurrentPageTablePointersMerryMage2017-09-241-4/+0
| | |
| * | memory: Add GetCurrentPageTable/SetCurrentPageTableMerryMage2017-09-241-1/+9
| |/ | | | | | | Don't expose Memory::current_page_table as a global.
| * Merge pull request #2842 from Subv/switchable_page_tableB3n302017-09-151-79/+74
| |\ | | | | | | Kernel/Memory: Give each process its own page table and allow switching the current page table upon reschedule
| | * Kernel/Memory: Make IsValidPhysicalAddress not go through the current ↵Subv2017-09-151-2/+1
| | | | | | | | | | | | process' virtual memory mapping.
| | * Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the ↵Subv2017-09-151-3/+62
| | | | | | | | | | | | current process' page table to obtain a pointer.
| | * Kernel/Memory: Give each Process its own page table.Subv2017-09-101-75/+12
| | | | | | | | | | | | The loader is in charge of setting the newly created process's page table as the main one during the loading process.
| * | Use recursive_mutex instead of mutex to fix #2902danzel2017-08-291-2/+2
| | |
| * | Merge pull request #2839 from Subv/global_kernel_lockJames Rowe2017-08-231-1/+8
| |\ \ | | |/ | |/| Kernel/HLE: Use a mutex to synchronize access to the HLE kernel state between the cpu thread and any other possible threads that might touch the kernel (network thread, etc).
| | * Kernel/Memory: Acquire the global HLE lock when a memory read/write ↵Subv2017-08-221-1/+8
| | | | | | | | | | | | operation falls outside of the fast path, for it might perform an MMIO operation.
* | | memory: Log with 64-bit values.bunnei2017-09-301-8/+8
| | |
* | | core: Various changes to support 64-bit addressing.bunnei2017-09-301-22/+22
|/ /
* | Merge pull request #2799 from yuriks/virtual-cached-range-flushWeiyi Wang2017-07-221-52/+76
|\ \ | |/ |/| Add address conversion functions returning optional, Add function to flush virtual region from rasterizer cache
| * Memory: Add function to flush a virtual range from the rasterizer cacheYuri Kunde Schlesner2017-06-211-39/+52
| | | | | | | | | | | | This is slightly more ergonomic to use, correctly handles virtual regions which are disjoint in physical addressing space, and checks only regions which can be cached by the rasterizer.