mirror of
				https://git.zaroz.cloud/nintendo-back-up/yuzu/yuzu.git
				synced 2025-05-12 00:45:25 +00:00 
			
		
		
		
	Tests/VFP: Use a standalone pagetable for the TestEnvironment memory operations.
This fixes building the tests
This commit is contained in:
		
							parent
							
								
									f18a176b60
								
							
						
					
					
						commit
						3bde97ea05
					
				@ -3,20 +3,30 @@
 | 
				
			|||||||
// Refer to the license.txt file included.
 | 
					// Refer to the license.txt file included.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "core/core.h"
 | 
					#include "core/core.h"
 | 
				
			||||||
 | 
					#include "core/memory.h"
 | 
				
			||||||
#include "core/memory_setup.h"
 | 
					#include "core/memory_setup.h"
 | 
				
			||||||
#include "tests/core/arm/arm_test_common.h"
 | 
					#include "tests/core/arm/arm_test_common.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace ArmTests {
 | 
					namespace ArmTests {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					static Memory::PageTable page_table;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TestEnvironment::TestEnvironment(bool mutable_memory_)
 | 
					TestEnvironment::TestEnvironment(bool mutable_memory_)
 | 
				
			||||||
    : mutable_memory(mutable_memory_), test_memory(std::make_shared<TestMemory>(this)) {
 | 
					    : mutable_memory(mutable_memory_), test_memory(std::make_shared<TestMemory>(this)) {
 | 
				
			||||||
    Memory::MapIoRegion(0x00000000, 0x80000000, test_memory);
 | 
					
 | 
				
			||||||
    Memory::MapIoRegion(0x80000000, 0x80000000, test_memory);
 | 
					    page_table.pointers.fill(nullptr);
 | 
				
			||||||
 | 
					    page_table.attributes.fill(Memory::PageType::Unmapped);
 | 
				
			||||||
 | 
					    page_table.cached_res_count.fill(0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Memory::MapIoRegion(page_table, 0x00000000, 0x80000000, test_memory);
 | 
				
			||||||
 | 
					    Memory::MapIoRegion(page_table, 0x80000000, 0x80000000, test_memory);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Memory::current_page_table = &page_table;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TestEnvironment::~TestEnvironment() {
 | 
					TestEnvironment::~TestEnvironment() {
 | 
				
			||||||
    Memory::UnmapRegion(0x80000000, 0x80000000);
 | 
					    Memory::UnmapRegion(page_table, 0x80000000, 0x80000000);
 | 
				
			||||||
    Memory::UnmapRegion(0x00000000, 0x80000000);
 | 
					    Memory::UnmapRegion(page_table, 0x00000000, 0x80000000);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void TestEnvironment::SetMemory64(VAddr vaddr, u64 value) {
 | 
					void TestEnvironment::SetMemory64(VAddr vaddr, u64 value) {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user