`half` cannot be bitcasted to `float`, because the two types are not the same size. Use an expanding cast instead. We were already doing this for stores to the tessellation levels; why I didn't also do this for loads is beyond me.