gl: optimize for gaussian blur with CAIRO_EXTEND_NONE case

In CAIRO_EXTEND_REPEAT and CAIRO_EXTEND_REFLECT cases, we must
do a seperate pass for y-axis blur and paint back to original dst.

However, if the extend is CAIRO_EXTEND_NONE, we can paint the
result of x-axis pass back to original dst directly with y-axis
shader.  This saves an extra step.