Reland "GraphiteDawn: use dawn's LoadResolveTexture extension."

This is a reland of commit cb016dd7154aa0d8fd8a178d9f830ea3ba8f2a4b

What're changed:
- Restructure DawnCaps to avoid EMSCRIPTEN #ifdef
- Use MultisampleStateExpandResolveTextureDawn chained struct
to create graphics pipeline that is compatible with a render pass
loading a resove texture.

Original change's description:
> GraphiteDawn: use dawn's LoadResolveTexture extension.
>
> This extension allows loading the resolve texture to MSAA texture
> using a load op. The MSAA texture's memory will be controlled by
> graphite unlike the old MSAARenderToSingleSampled feature.
>
> Bug: b/258652999
> Change-Id: I3f537e278bd7787afc7404e611518cfa75136379
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/849496
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

Bug: b/258652999
Change-Id: I8b4c4b4392256b509505cfca6116de2c4ce19178
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/853476
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
6 files changed