Closed fbrausse closed 2 years ago
Oh, forgot about --cheri-uncompressed
, make that ~24~ 20.
The hand-crafted version of __esbmc_cheri_length_get()
which is based on the new bit-field support inherently depends on the endianness. This would increase the number of libraries required to 36 (twice the amount for each CHERI-C-enabled version of the libs).
Fixed by esbmc#581.
For each of the new to-be-supported ABIs
--cheri {off,hybrid,purecap}
, another version of the goto-libs has to be linked. This is in addition to the 4 versions already included for--{32,64}
and--{fixedbv,floatbv}
, totalling then in 12. Additionally, there is the question how these libraries play together with the new--target
and--sysroot
options: using the cheri-clang frontend, we can only support CHERI-C on the targets it supports, i.e., the cheribsd ones{mips{,64},riscv{32,64},morello}-unknown-freebsd{,-purecap}
. All are distinct from the ones CI is building for and they are also not relevant for competitions. In my opinion, the best option would be to add a feature that includes all of thec2goto/{headers,library}
into the preamble before the translation units in case no c2goto library has been built for this target.