[LLVMdev] Getting a named value in llvm-c

Bill Hart goodwillhart at googlemail.com
Wed Nov 21 16:52:22 PST 2012


That's what I am doing of course, It;s just odd that I can get a
global by name but not a local.

Bill.

On 21 November 2012 09:35, Duncan Sands <baldrick at free.fr> wrote:
> Hi Bill,
>
>
>> I am wondering if there is a way to get a value by name in the C
>> interface for the LLVM Jit?
>
>
> since a Value includes simple constants like 42 that have no name, this is
> not possible in general.  Moreover names are usually optional and have no
> real meaning: they are just there to make the IR easier to read (an
> exception
> being struct type names).
>
> Perhaps you could maintain a map from name to Value* in your front-end?
>
> Ciao, Duncan.
>
>>
>> There seems to be a way to name values consistently, but no way to
>> retrieve those LLVMValueRef's by name.
>>
>> I see it is possible to get a struct by name and a type by name and a
>> function by name, and a few other esoteric things, but not a general
>> value.
>>
>> The reason I am wanting this is that I am writing a language where
>> there is a separation between the back end and the code which
>> processes the AST. In particular, I do not have any LLVM values or
>> types in the AST nodes themselves, only strings naming those values
>> and types. When the back end processes the AST it looks up the
>> relevant types and values by string name.
>>
>> The specific circumstance where this causes an issue is with
>> allocating local variables. The back end code needs to access such
>> variables at points different from where they were defined. At present
>> I have to store the relevant LLVMValueRef's in the AST or in some
>> other type information elsewhere in my implementation, rather than
>> store a string name and look them up as needed.
>>
>> Bill.
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>
> _______________________________________________
> 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