glsl: add cache to ctx and add sha1 string fields