clover: Don't erase build info of devices not being built
Every call to _cl_program::build() was erasing the binaries and logs for every device associated with the program. This is incorrect because it is possible to build a program for only a subset of devices and so any device not being build should not have this information erased. Reviewed-by: Francisco Jerez <currojerez@riseup.net>
This commit is contained in:
@@ -42,10 +42,10 @@ _cl_program::_cl_program(clover::context &ctx,
|
||||
|
||||
void
|
||||
_cl_program::build(const std::vector<clover::device *> &devs) {
|
||||
__binaries.clear();
|
||||
__logs.clear();
|
||||
|
||||
for (auto dev : devs) {
|
||||
__binaries.erase(dev);
|
||||
__logs.erase(dev);
|
||||
try {
|
||||
auto module = (dev->ir_format() == PIPE_SHADER_IR_TGSI ?
|
||||
compile_program_tgsi(__source) :
|
||||
|
||||
Reference in New Issue
Block a user