Similar as with the return address guards, the goal of the guards is to implement a more robust control flow for setting and unsetting the frame pointer information.
Again, the added KMP_DEBUG_ASSERTS together with the overall OMPT test cases ensure consistent updates of the frame pointer.
The guards are not applicable for the if0 tasking functions and the serialized parallel because the runtime returns to the application in order to execute the task.