[LLVMdev] GenericValue changes from 1.8 to 2.0
Reid Spencer
rspencer at reidspencer.com
Tue Jul 17 10:45:27 PDT 2007
Hi Sarah,
On Tue, 2007-07-17 at 10:05 -0700, Sarah Thompson wrote:
> Hi all,
>
> I've been quiet for a while, but I'm liable to be less so now that I'm
> starting on porting our model checker from LLVM 1.8 to 2.0.
We missed you! :)
> One thing
> that is puzzling me somewhat are the changes made to the GenericValue
> union, which is now a struct. I haven't found any mention of this on the
> llvm site or in the archives, so it may be that I am the only one who
> cares about it (I think it only really appears in the non-jitted
> interpreter code, which was the basis of the inner loop of our model
> checker).
This was done to support arbitrary precision integers in the interpreter
(about the only way to test them).
> I took advantage of the old GenericValue fitting into a 64-bit word,
> since it was fairly obviously intended to be exactly that, with the
> union serving to provide convenient access to various ways that it might
> be formatted.
Right. Unfortunately, there are integers now that don't fit into a
64-bit word so the integer portion of the union was extracted into a
struct.
> The new GenericValue seems to have morphed into a struct,
> and looks like it's probably not intended to work in the same way as the
> old GenericValue class.
Right. Correspondingly the interpreter code change a fair bit to deal
with this.
> Before I weigh in and start ripping my code to pieces, I thought it
> might be a good idea to post here first.
Good idea.
> Any light that can be shed on this would be gratefully appreciated.
Hopefully the above is sufficient, if not feel free to ask.
Reid.
>
> Best regards,
> Sarah Thompson,
> RSE Group, NASA Ames Research Center
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list