Program change not detected
- OS: Windows 10 x64 (Visual Studio 2017 & 2019)
- GPU: softpipe + LLVM
- Mesa version: 20.1.3 + LLVM 10.0.0
Describe the issue
I have a case where I draw rectangles with two different GLSL programs, but changing the program with glUseProgramObjectARB() is not taken into account.
I have been able to write a small program to reproduce the problem (it uses GLUT and GLEW).
This problem only occurs with softpipe + LLVM. It does not occur without LLVM. It occurs in debug and release compilations.
From what I have been able to see, when llvmpipe_update_derived() is called during glDrawArrays(), the llvmpipe->dirty flags LP_NEW_VS and LP_NEW_FS are not set. I've not been able to go deeper.
This problem did not occur with Mesa 19.3.2 + LLVM 9.0.1. I have reproduced it also with Mesa 20.1.2, so it may have appeared with Mesa 20.x.
Screenshots/video files (if applicable)
Any extra information would be greatly appreciated
TestTexEnv.cpp Source file to reproduce the problem (stdafx.h only contains the includes for GLUT and GLEW).