Hello, i parse the llvm IR (llvm-3.3 version) and when i meet a constant, i want to get it's value. eg i32 5, i want to get the 5. I am interested in ConstantInt-ConstantFP-ConstantArray-ConstantStruct subclasses. Things are a bit easier with ConstantInt and ConstantFP constants but how could i get the value of a ConstantArray? The http://llvm.org/docs/ProgrammersManual.html#the-constant-class-and-subclasses says: ConstantArray : This represents a constant array. const std::vector<Use> &getValues() const: Returns a vector of component constants that makeup this array. But i cannot find this method, i think that it is not implemented in the 3.3 version. There is the method 'Value::print()' but this gives me also the type which is not what i want. I found also the 'static void WriteConstantInternal()' method in llvm/lib/IR/AsmWriter.cpp which is called by 'Value::print()' but it is 'static' so i cannot access it. I need something like the 'WriteConstantInternal' method. Any ideas? Thanks Eirini -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131017/97f2c88a/attachment.html>
On 10/17/13 8:42 AM, Eirini Psallida wrote:> Hello, > i parse the llvm IR (llvm-3.3 version) and when i meet a constant, i > want to get it's value. > eg i32 5, i want to get the 5. > I am interested in ConstantInt-ConstantFP-ConstantArray-ConstantStruct > subclasses. > Things are a bit easier with ConstantInt and ConstantFP constants but how > could i get the value of a ConstantArray? > The > http://llvm.org/docs/ProgrammersManual.html#the-constant-class-and-subclasses > > says: > ConstantArray : This represents a constant array.ConstantArray is a subclass of Constant. Constant, in turn, has a method called getAggregateElement() that will return the Constant * value at the specified offset within the aggregate constant (be it an array, vector, etc.). For more information, consult the Constant class doxygen page: http://llvm.org/doxygen/classllvm_1_1Constant.html -- John T. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131017/9ea574a5/attachment.html>
Seemingly Similar Threads
- [LLVMdev] get the address in memory where an instruction lives
- [LLVMdev] unique id for a llvm Instruction‏
- [LLVMdev] get the address in memory where an instruction lives
- [LLVMdev] How to get the string value?
- [LLVMdev] Problem with building llvm and running project