| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
If this doesn't work, I'll write a configure test.
llvm-svn: 52213
|
|
|
|
| |
llvm-svn: 45418
|
|
|
|
| |
llvm-svn: 44535
|
|
|
|
| |
llvm-svn: 44534
|
|
|
|
|
|
| |
windows-based hosts, where files are opened in text mode by default.
llvm-svn: 44533
|
|
|
|
| |
llvm-svn: 42707
|
|
|
|
|
|
| |
bindings headers themselves, hidden behind #ifdef __cplusplus.
llvm-svn: 42666
|
|
|
|
| |
llvm-svn: 42465
|
|
- 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
|