Add dedicted dot ops to RP codegen.

Since dot is such a common building block, it made sense to have a
dedicated op for 2, 3 and 4-slot dot products. However, it's a bit of
an odd duck and requires special handling in the builder, because
unlike most binary ops, dot products take two vectors and generate
a scalar (_not_ a vector).

Change-Id: I2e7914cce1b1962f5225cb0534e518c4653c2cbd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/639637
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
12 files changed