[LLVMdev] Some additions to the C bindings

Chris Lattner clattner at apple.com
Sun Oct 11 13:35:27 PDT 2009


On Oct 11, 2009, at 1:25 PM, Kenneth Uildriks wrote:

> On Sun, Oct 11, 2009 at 3:09 PM, Chris Lattner <clattner at apple.com>  
> wrote:
>>
>> Isn't LLVMHasInitializer just  LLVMGetInitializer(x) != 0?
>
> Last time I tried that, LLVMGetInitializer threw an assertion when the
> global variable didn't actually have one.  Has this changed?

No idea.  It would be more C like to return null.  The C  
implementation of the function can check and return null if not set.

> I was following the pattern of Functions, Globals, etc., where you get
> a Use* (not a use_iterator), and then pass it back to a GetNextUse
> call, which turns it back into an iterator and advances it.

Conceptually you're returning an iterator.  It happens to be  
implemented as a tight wrapper around the Use.
>
> So you want the whole patch, or just the pieces you highlighted?

Please resend an updated patch (the whole thing)

-Chris



More information about the llvm-dev mailing list