[LLVMdev] How to cast Value* to ConstantDataArray*
Richard Catlin
richard.m.catlin at gmail.com
Sat Apr 20 14:15:42 PDT 2013
I extended the LLVM Kaleidoscope example to support Strings. I added a
StringExprAST, which has the virtual Codegen method impl as follows:
Value *StringExprAST::Codegen() {
StringRef r(Val);
return ConstantDataArray::getString(getGlobalContext(), r, false);
}
I am trying to concatenate Strings and have a ConcatExprAST with its
Codegen method. Upon trying to access the data in the ConstantDataArray, I
need to cast the Value* back to a ConstantDataArray* in order to use the
getAsString() method.
I tried:
ConstantDataArray * cda = cast<ConstantDataArray>(v);
where v is a Value*. It does not work.
How can I do this?
Thanks for any help.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130420/701f1611/attachment.html>
More information about the llvm-dev
mailing list