[PATCH] LLVM 2.8 fixes
Peter Collingbourne
pcc03 at doc.ic.ac.uk
Thu Aug 5 10:54:44 PDT 2010
On Thu, Aug 05, 2010 at 05:44:42PM +0100, Daniel Dunbar wrote:
> > I'll commit this unless there is an objection.
>
> Sure, please do.
Applied in r110349-52.
> I'm ambivalent about the 0001- change, though, although it is fine to
> put it in. It isn't really a complete solution -- technically we would
> need to have the test be based on the LLVM version, and then set or
> unset DISABLE_ASSERTIONS as appropriate. Of course, then that is very
> confusing because users then need to be aware of the change when
> configuring KLEE.
>
> Now that we have some support for optimized debug info in KLEE, I'm
> beginning to think we should just eliminate the configure option for
> which mode to build the runtime library in. It is too complicated and
> annoying to deal with. Do you have an opinion on this?
If we do anything at all, the runtime library mode should by default
match the mode that LLVM was built with. I have been caught by this
a couple of times when building LLVM in Debug mode; the build process
for the runtime library tries to use Release binaries and fails unless
I use --with-runtime=Debug.
Perhaps we should have the mode always match but include the capability
to control assertions and optimisations independently. That way we
don't need to care about the semantics of the various build modes
in different versions of LLVM. I have not yet needed to modify the
runtime library to the extent that I have needed to control whether
assertions or optimisations are turned on, but this could be useful
for others. I haven't looked at the code to see how feasible this
would be.
I also wonder if it would be worthwhile to turn on optimisations
by default for the runtime library regardless of the build mode.
This would ensure consistency between build modes -- for example, I
recently tweaked one of the LLVM optimisations to add a feature that
may reduce the number of forks KLEE needs to make, and I imagine that
other optimisations could have a similar effect. I haven't checked
to see if they would have an effect on the runtime library though.
Thanks,
--
Peter
More information about the klee-commits
mailing list