I have a few questions about the mechanism of shared memory and semaphore,
Do all the load/store operations of shared memory "complete" before the semaphore releases ? Or just "issue" the operations, which means the value may changed after the semaphore releases ?
Are the load/store operations inside the code block protected by semaphore reordered during the execution?