Skip to content
  1. Jan 09, 2010
    • Chris Lattner's avatar
      "In order to ease automatic bindings generation, it would be helpful if... · 25963c61
      Chris Lattner authored
      "In order to ease automatic bindings generation, it would be helpful if boolean values were distinguishable from integers. The attached patch introduces "typedef int LLVMBool;", and uses LLVMBool instead of int throughout the C API, wherever a boolean value is called for."
      
      Patch by James Y Knight!
      
      llvm-svn: 93079
      25963c61
  2. Mar 31, 2008
  3. Dec 29, 2007
  4. Dec 19, 2007
  5. Oct 06, 2007
  6. Sep 18, 2007
    • Gordon Henriksen's avatar
      C bindings for libLLVMCore.a and libLLVMBitWriter.a. · 76a0374b
      Gordon Henriksen authored
      - The naming prefix is LLVM.
      - All types are represented using opaque references.
      - Functions are not named LLVM{Type}{Method}; the names became
        unreadable goop. Instead, they are named LLVM{ImperativeSentence}.
      - Where an attribute only appears once in the class hierarchy (e.g.,
        linkage only applies to values; parameter types only apply to
        function types), the class is omitted from identifiers for
        brevity. Tastes like methods.
      - Strings are C strings or string/length tuples on a case-by-case
        basis.
      - APIs which give the caller ownership of an object are not mapped
        (removeFromParent, certain constructor overloads). This keeps
        keep memory management as simple as possible.
      
      For each library with bindings:
      
        llvm-c/<LIB>.h       - Declares the bindings.
        lib/<LIB>/<LIB>.cpp  - Implements the bindings.
      
      So just link with the library of your choice and use the C header
      instead of the C++ one.
      
      llvm-svn: 42077
      76a0374b
Loading