[llvm-dev] ArrayBoundChecks in SafeCode-llvm37
John Criswell via llvm-dev
llvm-dev at lists.llvm.org
Thu Apr 28 16:41:00 PDT 2016
On 4/27/16 12:00 PM, Syed Rafiul Hussain via llvm-dev wrote:
> I am wondering if anyone could run ArrayBoundChecks located in
> SafeCode-llvm37 (https://github.com/jtcriswell/safecode-llvm37) on
As the 3.7 port isn't complete, I would guess that the answer is no.
Within that directory, which pass do you need? The
BreakConstantGEPs.cpp pass would be easy to get working with LLVM 3.8
(note: in general, I don't recommend using this pass, but there are rare
situations for which it is needed).
ArrayBoundsCheckLocal would probably be easy. ArrayBoundsCheckStruct
should be easy if you have DSA updated to LLVM 3.8.
The omega-based static array bounds checking code has long bitroted, and
it's design could use significant improvement. That code executed the
omega program for every array it checked. A more efficient
implementation would link the constraint solver in as a library and
query it via a function call.
If you can explain in more detail what you need, I can provide advice on
what I think your best path forward will be.
Department of Computer Science, University of Rochester
More information about the llvm-dev