vcl: Use single-buffer rendering and only flush when necessary

Change-Id: I832dd6f3647fbb423975fa928a5ec32447225e85
vcl: Fix the masked texture program attributes binding

Change-Id: Ie7440881f35eaf348aef35beea5a6d407d16a342
vcl: Fix memory free bugs

Change-Id: Ic8c507014f0b02c7a0baa40f3f48070301604ca4
vcl: Use new size when scaling with filter in OpenGL backend

Change-Id: Ib5d12b0e57b537bbd1798121e80cd517d9c8f751
vcl: Add support for GPU scaling when no rendering is involved

Change-Id: Id5aa4c1e843d286026a7bcd1297670db467dcbbc
vcldemo: Draw mini-view of the whole window in the last rectangle

Change-Id: I74e8807e6a4f50b99fdc761bbdbef6e43405a3ed
vcl: Use scissor or stencil for clipping in OpenGL backend

Change-Id: Ib6620572391999d5f8124a1a8695909d6c48643d
vcl: Fix gradient programs attribute binding

Change-Id: I4210f09759824bf9415350262fd07534c9b3a317
vcl: Use glScissor for rectangular clip regions

Change-Id: I62bf28d854d889242a49146cfe87c3dd6be89c32
vcl: Use stencil mask to clip gradient shape

Change-Id: I5dc17a20ab65f0b0bad4741a7d1ec76a0e028e23
vcl: Fix several coordinates calculations

Change-Id: I15878b4d91081a7ac880713ad278893aaad4a844
vcldemo: Add some values to the gradient arrays

Change-Id: I6c51bce7503866f39e72957752303e4d28145afb
Revert "loplugin:unreffun"

This reverts commit 3e90cc12731eaf149dce83237bfccb88ffbd26a9.