Enums in the boundary cuda calls as well
Remove the use of tmp3 from GPU code, now we only need 2 tmp fields at GPU