__syncthreads_or() predicate evaluation: before syncing or after syncing?

When using __syncthreads_or(int p), is predicate evaluation happening right after all the threads in the block have arrived and synchronized? I had this thought but below post made me doubt: