Cherry-pick sequence of Vulkan Fixes.

    Respect disable driver correctness workaround flag in Vulkan

    Bug: skia:
    Change-Id: Ibbfac1ec5d290d3ed4a6fefbc1cec04377fcd9bc
    Reviewed-on: https://skia-review.googlesource.com/111020
    Commit-Queue: Greg Daniel <egdaniel@google.com>
    Reviewed-by: Robert Phillips <robertphillips@google.com>

(cherry picked from commit 691f5e7890)

    Update certain instrinsic calls in SkSL SPIR-V gen to not mix vectors and scalars.

    Functions like min, max, clamp, and mix cannot intermix vectors and scalars as
    operands and return value. This updates SkSL to promote scalars to vectors if
    need be before calling these functions.

    Bug: skia:7653
    Change-Id: I13f98d452978e3f15bafddea638b7bbe313d98ce
    Reviewed-on: https://skia-review.googlesource.com/110660
    Commit-Queue: Greg Daniel <egdaniel@google.com>
    Reviewed-by: Greg Daniel <egdaniel@google.com>

(cherry picked from commit 0fc07f95bb)

    Fix unit tests that were causes vulkan unitialized memory warnings in validation

    Bug: skia:
    Change-Id: Id9df92b76c9f948f41f4108bcecdb2687233f841
    Reviewed-on: https://skia-review.googlesource.com/110761
    Reviewed-by: Brian Osman <brianosman@google.com>
    Commit-Queue: Greg Daniel <egdaniel@google.com>

(cherry picked from commit f44cb48752)

    Make sure we add render target mem barriers after any last second copies

    Bug: skia:
    Change-Id: I67e6e6a026145ecbd7476fbf201ce07e053c337d
    Reviewed-on: https://skia-review.googlesource.com/110622
    Reviewed-by: Jim Van Verth <jvanverth@google.com>
    Commit-Queue: Greg Daniel <egdaniel@google.com>

(cherry picked from commit 45a44de0a1)

    Fix height calculation when doing copyImageToBuffer

    The bug only manifested when we were forcing copies from the origin.

    Bug: skia:
    Change-Id: I63f17ad9282b10f0d9c9c9ef38031faad32e20a3
    Reviewed-on: https://skia-review.googlesource.com/110445
    Reviewed-by: Brian Salomon <bsalomon@google.com>
    Commit-Queue: Greg Daniel <egdaniel@google.com>

(cherry picked from commit 3cdfa09a2f)

    Add cap workarounds for possible arm bugs

    This disables doing copies as draws and disables instance attrib support.

    Bug: skia:
    Change-Id: I52c03d773974a697901ba1fc9dfa824262285568
    Reviewed-on: https://skia-review.googlesource.com/110320
    Reviewed-by: Brian Osman <brianosman@google.com>
    Commit-Queue: Greg Daniel <egdaniel@google.com>

(cherry picked from commit 5ba448c21a)

    Revert "Revert "Fixes to alignment issues with regards to mapped vulkan memory.""

    This reverts commit 88fdee9bde97df106a8d81b450982b8296a2bc90.

    Reason for revert: Pre Fixes landed in other repos

    Original change's description:
    > Revert "Fixes to alignment issues with regards to mapped vulkan memory."
    >
    > This reverts commit 9fb6cf4c49b0f095e5cc005feb05b5522731421b.
    >
    > Reason for revert: breaks fuchsia
    >
    > Original change's description:
    > > Fixes to alignment issues with regards to mapped vulkan memory.
    > >
    > > Bug: skia:
    > > Change-Id: Ida9813fe774580a6d157b8eb8d330488c8e8c4bc
    > > Reviewed-on: https://skia-review.googlesource.com/109483
    > > Commit-Queue: Greg Daniel <egdaniel@google.com>
    > > Reviewed-by: Jim Van Verth <jvanverth@google.com>
    >
    > TBR=djsollen@google.com,egdaniel@google.com,jvanverth@google.com
    >
    > # Not skipping CQ checks because original CL landed > 1 day ago.
    >
    > Bug: skia:
    > Change-Id: If1223313cab27737ada401d1f3fe4b7ab849d03f
    > Reviewed-on: https://skia-review.googlesource.com/110040
    > Reviewed-by: Greg Daniel <egdaniel@google.com>
    > Commit-Queue: Greg Daniel <egdaniel@google.com>

    Bug: skia:
    Change-Id: Ifeebf535c3617674846f7ef25e686ee11ceee65c
    Reviewed-on: https://skia-review.googlesource.com/110160
    Reviewed-by: Jim Van Verth <jvanverth@google.com>
    Commit-Queue: Greg Daniel <egdaniel@google.com>

(cherry picked from commit 8385a8a44b)

    Send correct clear count to vulkan beginRenderPass

    This technically wasn't an error but fixes a warning in the validation
    layers.

    Bug: skia:
    Change-Id: I3d0d0aa3a29b5a08f145ceabedb9357791d36cb2
    Reviewed-on: https://skia-review.googlesource.com/109881
    Reviewed-by: Jim Van Verth <jvanverth@google.com>
    Commit-Queue: Greg Daniel <egdaniel@google.com>

(cherry picked from commit b68319a4b7)

Change-Id: Ic8dd2b6214e01b0ce424b1f545590ba141002074
Reviewed-on: https://skia-review.googlesource.com/111160
Reviewed-by: Hal Canary <halcanary@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
25 files changed