Solid cloud demand helps Microsoft offset PC market weakness