[Beignet] beignet and LLVM 8+
Rebecca N. Palmer
rebecca_palmer at zoho.com
Sat Jan 11 14:30:38 UTC 2020
Debian's beignet-opencl-icd package currently uses LLVM 7, and fails to
build with anything newer. This will no longer be an option when LLVM 7
is removed from Debian ( https://bugs.debian.org/947438 ).
Patches exist that allow beignet to build in LLVM 8 and 9, originally
from FreeBSD ( https://svnweb.freebsd.org/ports/head/lang/beignet/files/
) and also used by Arch. However, when I attempted to use these patches
in Debian, some of the tests crashed ( https://bugs.debian.org/948563 ):
--error 1--
compiler_rotate()ASSERTION FAILED: Unsupported intrinsics
at file /build/beignet-1.3.2/backend/src/llvm/llvm_gen_backend.cpp,
function void gbe::GenWriter::regAllocateCallInst(llvm::CallInst&), line
3865
Trace/breakpoint trap
(Debian sets -DGBE_DEBUG=1 making this one a crash - without that, it's
a silently wrong answer.)
--error 2--
compiler_subgroup_buffer_block_write_ui1()ASSERTION FAILED: index <
this->size()
at file /build/beignet-1.3.2/backend/src/./sys/vector.hpp, function
T& gbe::vector<T>::operator[](size_t) [with T = gbe::GenRegInterval;
size_t = long unsigned int], line 66
Trace/breakpoint trap
(This one is a crash with or without GBE_DEBUG, and affects (probably
all of) compiler_subgroup_(image|buffer)_block_*.)
----
It is not known whether these errors also happen in FreeBSD, as their
testing process didn't use beignet's own tests (
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=239175#c8 ).
Has anyone else seen this? Any ideas for how to fix it?
Any thoughts on whether it's better to have beignet with these bugs, or
no beignet at all? (Debian does also have intel-opencl-icd (Neo), but
it's currently broken ( https://bugs.debian.org/946752 ), and doesn't
support older hardware.)
More information about the Beignet
mailing list