[Perf] (TLS): pGLContext and gPipeInputs become pointer slots

This commit is contained in:
2026-10-10 04:14:09 -04:00
parent 0a206b0963
commit 575be3532d
34 changed files with 505 additions and 401 deletions
@@ -32,10 +32,10 @@ namespace MGITest {
out->peekAvailable = true;
out->roleSplitActive = MGP::MGPipeRoleSplitRehearsalActive();
MGP::PipeInputs& client = MGP::MGPipeClientInputs();
out->blocksDistinct = &client != &MGP::gPipeInputs;
out->blocksDistinct = &client != &*MGP::gPipeInputs;
out->clientSerial = client.FilledState().CurrentVerbSerial;
out->serverSerial = MGP::gPipeInputs.FilledState().CurrentVerbSerial;
out->serverIdentity = MGP::gPipeInputs.ContextIdentity();
out->serverSerial = MGP::gPipeInputs->FilledState().CurrentVerbSerial;
out->serverIdentity = MGP::gPipeInputs->ContextIdentity();
return true;
}
@@ -39,7 +39,7 @@ namespace MGITest {
// verb boundaries; the server block's moves only on a server verb stamp.
unsigned long long clientSerial = 0;
unsigned long long serverSerial = 0;
// gPipeInputs.ContextIdentity(): non-null once the server has stamped a verb boundary
// gPipeInputs->ContextIdentity(): non-null once the server has stamped a verb boundary
// under the rehearsal (CONTRACT-P5E §3.2's server-owned identity).
const void* serverIdentity = nullptr;
};