OpenCL not working on Radeon HD 8690M card which has Hainan chip. example hello world application shows this error log: Build Log: error: unknown target CPU 'hainan' haagch on #dri-devel suggested me to: $ sudo sed -i "s/tahiti/hainan/" /usr/lib/libMesaOpenCL.so and after this "fix" I got: Build Log: fatal error: cannot open file '/usr/lib/clc/hainan-r600--.bc': No such file or directory After that he suggested me to renaming tahiti-r600--.bc to hainan-r600--.bc which fixed that problem and OpenCL started working. So problem is probably in clang and libclc -- that there is missing hainan name in cpu table.
Created attachment 104915 [details] [review] Work around for missing Hainan in clang Does it work with this Mesa patch?
(In reply to comment #1) > Created attachment 104915 [details] [review] [review] > Work around for missing Hainan in clang > > Does it work with this Mesa patch? missing break...
I added missing break after both gpu = lines, recompiled mesa with that patch and opencl examples started working without above sed and symlink hacks.
Fixed in git commit 8109664dedee588dc98c9a7c25bd40c0eb56c35f
@Tom Stellard: Are you going to fix this problem in llvm/clang/libclc?
(In reply to comment #5) > @Tom Stellard: Are you going to fix this problem in llvm/clang/libclc? IIRC, it's already working with newer versions of clang.
(In reply to comment #5) > @Tom Stellard: Are you going to fix this problem in llvm/clang/libclc? Yes, it's fixed in llvm/clang 3.6 and I'll try to backport the patch for llvm/clang 3.5.1.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.