mirror of
				https://git.suyu.dev/suyu/suyu
				synced 2025-11-04 00:49:02 -06:00 
			
		
		
		
	Kernel/Thread: Added a helper function to get a thread's command buffer VAddr.
This commit is contained in:
		@@ -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
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user