[llvm-dev] How to know the sub-class of a Value class?
Dipanjan Das via llvm-dev
llvm-dev at lists.llvm.org
Sun Jun 11 23:09:39 PDT 2017
On 11 June 2017 at 23:03, Craig Topper <craig.topper at gmail.com> wrote:
> Try value->dump() assuming you're using a debug build.
The information displayed is non-uniform. There are two different cases
based on my sample program:
(1) dump() shows the Type and *some* value which I don't
understand what it is
(2) dump() shows the instruction that creates the Value*
But, it doesn't display the concrete sub-class.
> On Sun, Jun 11, 2017 at 10:54 PM, Dipanjan Das via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>> As a concrete question, I understand 'Value' class is the parent of many
>> concrete sub-classes. Let's say I retrieve a Value* value =
>> store_inst->getValueOperand(). Unless I know what the sub-type is, how can
>> I further use this object? I tried something like this:
>> Value* value = store_inst->getValueOperand()
>> errs() << value->getValueID; // Which ID corresponds to which
>> errs() << value->getValueName(); // Prints numeric memory
>> errs() << *value->getValueName(); // Doesn't compile
>> I have mentioned the issues in each of the cases above. I am not sure if
>> the approach is correct or not. Please help me out.
>> Thanks & Regards,
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
Thanks & Regards,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev