Bootstrap capacitor.
With the circuit you have, you need to pulse the high side drive on a regular basis to keep ensure the bootstrap capacitor has adequate charge so that it all stays digital and never goes linear.
Do you intend to have a current limit in the circuit?
What are you doing about shoot through protection? Inductive loads can do strange things, and you must ensure the mosfets are always protected.
Another thing I have found useful is to slow the switching down considerably with gate resistors even up to 470 ohms or so.
This will increase the dissipation as the frequency goes up, but being very slow switching makes the inductive load/spikes no longer a problem.
There is also a shoot through problem with a device turning on very fast, causing high currents to charge the opposite device capacitance.
When it turns off fast, the interruption of current through the inductance makes big spikes.
Getting a nice compromise takes a bit of effort.
Opto couple the output from the CPU, at least during initial testing, then get the earthing and spikes right later.
Without a fast storage CRO it is not easy to get this right.
Super X3. 3600rpm. Sheridan 6"x24" Lathe + more. Three ways to fix things: The right way, the other way, and maybe your way, which is possibly a faster wrong way.