23d8f94535
Metal needs helper functions in order to compare arrays, structs, and matrices. Depending on the input code, it was possible for the array-comparison helper to be emitted before a matrix-comparison or struct-comparison helper. If this occurred, array comparisons of that matrix or struct type would fail, because the operator== for the array's inner type was defined after array==, and Metal (like C++) parses top-to-bottom and only considers functions declared above the current function. We now emit prototypes for all the array, struct and matrix helper function. These prototypes are emitted above any helper functions. This ensures visibility no matter how your comparisons are organized. Change-Id: Ib3d8828c301fd0fa6c209788f9ea60800371edbe Bug: skia:12326 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/437739 Commit-Queue: John Stiles <johnstiles@google.com> Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Brian Osman <brianosman@google.com> |
||
---|---|---|
.. | ||
blend | ||
errors | ||
folding | ||
glsl | ||
inliner | ||
intrinsics | ||
metal | ||
runtime | ||
runtime_errors | ||
shared | ||
spirv | ||
workarounds | ||
README.txt |
This directory contains source files for testing skslc compilation. The compiled output files are in the /tests/sksl/ directory.