Java (JDK), 109 bytes
BiFunction<Float,Float,Float>g=(a,b)->Float.intBitsToFloat(Float.floatToIntBits(a)^Float.floatToIntBits(b)) Been a while since I golfed in Java and I'm not certain if I need the declaration on the LHS as part of the byte count? If it used DoubleBinaryOperator the LHS would be shorter, but the RHS would have to use Double.doubleToLongBits and Double.longBitsToDouble, so that's actually longer.