Driver changes, clCreateProgramWithBinary, clGetProgramInfo

I’m wondering what, if any, effects do changes in device drivers have on clCreateProgramWithBinary and clGetProgramInfo. Could a program binary generated when using an older driver still work as input to clCreateProgramWithBinary after updating to a newer driver? Could the newer driver output a different program binary from clGetProgramInfo?

After driver change, the generated binary can definitely change as optimizations, binary object format and code generation strategies can change with driver revisions. And it is not necessary that the new driver will accept the binary generated from the older driver in clCreateProgramFromBinary either. It is not wise to rely on being able to use the older binaries with newer driver.