added hardware floating point support