Is the TCP "matmul" op marked NoSideEffect?

I explicitly assume here that guard_b cannot be moved. It may, for example, depend on the result of op_a or there might be some other dependency.

My main point here is that not being ably to move any kind of operation over any kind of guard is very coarse grained as it restricts the scheduling options of otherwise sideeffect free operations.