diff --git a/CMakeLists.txt b/CMakeLists.txt index 33876138..d54463be 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -743,6 +743,22 @@ if (MOBILEGL_BUILD_DISAGGREGATED) list(APPEND MOBILEGL_COMPILE_DEF -DMOBILEGL_BUILD_DISAGGREGATED=1) endif() +# P13 W5 (notes/p13/W5-DESIGN.md): THE RECORD ARM'S OWN GUARD. A plain variable, not an option and +# not a cache entry, so no build tree can keep a stale value (W3a's lesson): it equals +# MOBILEGL_BUILD_DISAGGREGATED while the record arm's guards are reclassified one by one - every +# such commit leaves both library shapes byte-identical - and one later commit sets it on for every +# build (the library without MG_Remote then runs the record arm). Always defined, to 0 or 1. +if (MOBILEGL_BUILD_DISAGGREGATED) + set(MOBILEGL_BUILD_RECORD_ARM ON) +else() + set(MOBILEGL_BUILD_RECORD_ARM OFF) +endif() +if (MOBILEGL_BUILD_RECORD_ARM) + list(APPEND MOBILEGL_COMPILE_DEF -DMOBILEGL_BUILD_RECORD_ARM=1) +else() + list(APPEND MOBILEGL_COMPILE_DEF -DMOBILEGL_BUILD_RECORD_ARM=0) +endif() + if (MOBILEGL_PIPE_VERIFY) list(APPEND MOBILEGL_COMPILE_DEF -DMOBILEGL_PIPE_VERIFY=1) endif() diff --git a/docs/Disaggregated/notes/p13/tools/w5_classify.py b/docs/Disaggregated/notes/p13/tools/w5_classify.py index 5d557f63..278b702b 100644 --- a/docs/Disaggregated/notes/p13/tools/w5_classify.py +++ b/docs/Disaggregated/notes/p13/tools/w5_classify.py @@ -34,7 +34,10 @@ TRANSPORT = [r'ClientSession', r'ServerSession', r'ServerLoop', r'Transport::', r'SessionLatch', r'ServerRole', r'SplitRoles', r'TransportMode::Spawn', r'TransportMode::InProcess', r'ServerOwnedWindow', r'ServerSetContextLive', r'DeviceLost', r'RoleSplit', r'ApplyThread', r'MGPipeServerArm', r'MGPipeSessionLive', r'ClientBlock', r'EndedServerSession', r'OnApplyThread', - r'Transport\s*!=', r'Transport\s*=='] + r'Transport\s*!=', r'Transport\s*==', + # Second pass (S2): transport-shaped words that name no MG_Remote symbol. + r'Window', r'SwapInterval', r'ContextLive', r'Ahb', r'AHardwareBuffer', r'HardwareBuffer', r'[Dd]ma[Bb]uf', + r'Gbm', r'SyncFile', r'sync_file', r'Session', r'Peer', r'Spawn', r'Tcp', r'Socket'] RECORD = [r'DataArmIsRecord', r'RecordArm', r'Staged', r'\bWire', r'MGPipe', r'Handle', r'Record\b', r'Twin', r'Respecif', r'Readback', r'Verb', r'PersistentMap', r'GpuWrite', r'Emit', r'Applier', r'Slot', r'Residual', r'ContextValues', r'Cso\b', r'CSO', r'Placeholder', r'Mipmap', r'Shadow']