Redefining the shading languages ecosystem with SPIR-V