glsl: add ir_control_flow_visitor
glsl: add ir_control_flow_visitor

This is just a subclass of ir_visitor with empty implementations of all
the visit methods for non-control flow nodes.

Used to avoid duplicating that in ir_visitor subclasses.

ir_hierarchical_visitor is another way to solve this, but is less natural
for some applications.

benaadams/glsl-optimizer,zeux/glsl-optimizer,bkaradzic/glsl-optimizer,wolf96/glsl-optimizer,djreep81/glsl-optimizer,zz85/glsl-optimizer,jbarczak/glsl-optimizer,zz85/glsl-optimizer,tokyovigilante/glsl-optimizer,zz85/glsl-optimizer,benaadams/glsl-optimizer,KTXSoftware/glsl2agal,mapbox/glsl-optimizer,adobe/glsl2agal,mcanthony/glsl-optimizer,mcanthony/glsl-optimizer,tokyovigilante/glsl-optimizer,dellis1972/glsl-optimizer,adobe/glsl2agal,metora/MesaGLSLCompiler,mcanthony/glsl-optimizer,KTXSoftware/glsl2agal,wolf96/glsl-optimizer,benaadams/glsl-optimizer,mapbox/glsl-optimizer,zz85/glsl-optimizer,mapbox/glsl-optimizer,bkaradzic/glsl-optimizer,jbarczak/glsl-optimizer,zeux/glsl-optimizer,zz85/glsl-optimizer,wolf96/glsl-optimizer,bkaradzic/glsl-optimizer,adobe/glsl2agal,jbarczak/glsl-optimizer,zeux/glsl-optimizer,mapbox/glsl-optimizer,zz85/glsl-optimizer,djreep81/glsl-optimizer,KTXSoftware/glsl2agal,benaadams/glsl-optimizer,adobe/glsl2agal,mapbox/glsl-optimizer,jbarczak/glsl-optimizer,bkaradzic/glsl-optimizer,djreep81/glsl-optimizer,benaadams/glsl-optimizer,jbarczak/glsl-optimizer,tokyovigilante/glsl-optimizer,tokyovigilante/glsl-optimizer,wolf96/glsl-optimizer,KTXSoftware/glsl2agal,zeux/glsl-optimizer,tokyovigilante/glsl-optimizer,dellis1972/glsl-optimizer,zeux/glsl-optimizer,adobe/glsl2agal,dellis1972/glsl-optimizer,djreep81/glsl-optimizer,djreep81/glsl-optimizer,dellis1972/glsl-optimizer,wolf96/glsl-optimizer,benaadams/glsl-optimizer,mcanthony/glsl-optimizer,mcanthony/glsl-optimizer,metora/MesaGLSLCompiler,KTXSoftware/glsl2agal,dellis1972/glsl-optimizer,bkaradzic/glsl-optimizer,metora/MesaGLSLCompiler