mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	Kernel/Thread: Added a helper function to get a thread's command buffer VAddr.
This commit is contained in:
		
							parent
							
								
									a3de996ae7
								
							
						
					
					
						commit
						8217ed7acb
					
				
					 2 changed files with 12 additions and 0 deletions
				
			
		|  | @ -534,6 +534,12 @@ s32 Thread::GetWaitObjectIndex(WaitObject* object) const { | |||
|     return static_cast<s32>(std::distance(match, wait_objects.rend()) - 1); | ||||
| } | ||||
| 
 | ||||
| VAddr Thread::GetCommandBufferAddress() const { | ||||
|     // Offset from the start of TLS at which the IPC command buffer begins.
 | ||||
|     static constexpr int CommandHeaderOffset = 0x80; | ||||
|     return GetTLSAddress() + CommandHeaderOffset; | ||||
| } | ||||
| 
 | ||||
| ////////////////////////////////////////////////////////////////////////////////////////////////////
 | ||||
| 
 | ||||
| void ThreadingInit() { | ||||
|  |  | |||
|  | @ -159,6 +159,12 @@ public: | |||
|         return tls_address; | ||||
|     } | ||||
| 
 | ||||
|     /*
 | ||||
|      * Returns the address of the current thread's command buffer, located in the TLS. | ||||
|      * @returns VAddr of the thread's command buffer. | ||||
|      */ | ||||
|     VAddr GetCommandBufferAddress() const; | ||||
| 
 | ||||
|     /**
 | ||||
|      * Returns whether this thread is waiting for all the objects in | ||||
|      * its wait list to become ready, as a result of a WaitSynchronizationN call | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue