Allocate dirty float directly in jit helper
Use immediate class as specialization type

We also use the direct class for inline caches, so we want to use this
consistently. This also makes it easier to improve check_serial so the
JIT can create a better version of that. Another advantage is that this
makes it easier to create direct jumps to specialized functions in the
JIT.