summaryrefslogtreecommitdiffstats
path: root/llvm/include/llvm-c
Commit message (Collapse)AuthorAgeFilesLines
...
* Use LLVMBool for a function that logically returns a boolean value.Owen Anderson2011-10-211-1/+1
| | | | llvm-svn: 142683
* Fix typo.Owen Anderson2011-10-211-1/+1
| | | | llvm-svn: 142681
* Bind libObject API for obtaining the section containing a Symbol.Owen Anderson2011-10-211-0/+2
| | | | llvm-svn: 142667
* Expand the coverage of the libObject C bindings to include more SectionRef ↵Owen Anderson2011-10-211-2/+31
| | | | | | accessors as well as Symbol iterators. llvm-svn: 142661
* ocaml bindings: introduce classify_valueTorok Edwin2011-10-141-2/+7
| | | | llvm-svn: 141991
* ocaml bindings: add getopcode for constant and instruction, and int64_of_const.Torok Edwin2011-10-141-0/+1
| | | | llvm-svn: 141990
* Change relocation API to be per section. This time without breaking GCC.Michael J. Spencer2011-10-071-4/+4
| | | | llvm-svn: 141385
* Revert 141376 and 141377 due to breaking the build.Bill Wendling2011-10-071-4/+4
| | | | | | | | | | | | | | | | --- Reverse-merging r141377 into '.': U tools/llvm-objdump/MachODump.cpp --- Reverse-merging r141376 into '.': U include/llvm/Object/COFF.h U include/llvm/Object/ObjectFile.h U include/llvm-c/Object.h U tools/llvm-objdump/llvm-objdump.cpp U lib/Object/MachOObjectFile.cpp U lib/Object/COFFObjectFile.cpp U lib/Object/Object.cpp U lib/Object/ELFObjectFile.cpp llvm-svn: 141379
* Change relocation API to be per section.Michael J. Spencer2011-10-071-4/+4
| | | | llvm-svn: 141376
* Don't require C bindings opcode numbers to be kept in sync.Torok Edwin2011-10-061-3/+5
| | | | | | | | They are not in sync now, for example Bitcast would show up as LLVMCall. So instead introduce 2 functions that map to and from the opcodes in the C bindings. llvm-svn: 141290
* Add uwtable, returnstwice and nonlazybind to the C bindings also.Torok Edwin2011-10-061-1/+4
| | | | llvm-svn: 141289
* ocaml/C bindings: type->isSized()Torok Edwin2011-10-061-0/+1
| | | | llvm-svn: 141288
* add binding to read icmp predicateTorok Edwin2011-10-061-0/+1
| | | | llvm-svn: 141287
* ocaml/C bindings: getmdstring, add num_op, get_op should work on metadata tooTorok Edwin2011-10-061-0/+5
| | | | llvm-svn: 141286
* C/OCaml API to retrieve struct name.Torok Edwin2011-10-061-0/+1
| | | | llvm-svn: 141285
* Adding back support for printing operands symbolically to ARM's new disassemblerKevin Enderby2011-10-041-4/+28
| | | | | | | | | | | | | | | | | | | using llvm's public 'C' disassembler API now including annotations. Hooked this up to Darwin's otool(1) so it can again print things like branch targets for example this: blx _puts instead of this: blx #-36 and includes support for annotations for branches to symbol stubs like: bl 0x40 @ symbol stub for: _puts and annotations for pc relative loads like this: ldr r3, #8 @ literal pool for: Hello, world! Also again can print the expression encoded in the Mach-O relocation entries for things like this: movt r0, :upper16:((_foo-_bar)+1234) llvm-svn: 141129
* Add C api for Instruction->eraseFromParent().Devang Patel2011-10-031-0/+1
| | | | llvm-svn: 141023
* Add some useful accessors to c++ api that appear to be missing from the c apiNate Begeman2011-08-231-2/+8
| | | | llvm-svn: 138371
* C API functions must be able to see their extern "C" definitions, or it will ↵Benjamin Kramer2011-08-191-0/+3
| | | | | | be impossible to call them from C. llvm-svn: 138022
* Initial commit of the 'landingpad' instruction.Bill Wendling2011-08-121-1/+14
| | | | | | | | | | | | This implements the 'landingpad' instruction. It's used to indicate that a basic block is a landing pad. There are several restrictions on its use (see LangRef.html for more detail). These restrictions allow the exception handling code to gather the information it needs in a much more sane way. This patch has the definition, implementation, C interface, parsing, and bitcode support in it. llvm-svn: 137501
* Add missing file.Rafael Espindola2011-08-091-0/+90
| | | | llvm-svn: 137162
* Remove the LowerSetJmp pass. It wasn't used effectively by any of the targets.Bill Wendling2011-08-031-3/+0
| | | | | | This is some of my original LLVM code. *wipes tear* llvm-svn: 136821
* Remove the LLVMBuildUnwind C API function.Bill Wendling2011-08-021-3/+1
| | | | | | | The 'unwind' function is going away with the new EH rewrite. This is step 0 in keeping front-ends from using it. llvm-svn: 136683
* Add the 'resume' instruction for the new EH rewrite.Bill Wendling2011-07-311-1/+6
| | | | | | | | | This adds the 'resume' instruction class, IR parsing, and bitcode reading and writing. The 'resume' instruction resumes propagation of an existing (in-flight) exception whose unwinding was interrupted with a 'landingpad' instruction (to be added later). llvm-svn: 136589
* Revert r136253, r136263, r136269, r136313, r136325, r136326, r136329, r136338,Bill Wendling2011-07-301-20/+1
| | | | | | | r136339, r136341, r136369, r136387, r136392, r136396, r136429, r136430, r136444, r136445, r136446, r136253 pending review. llvm-svn: 136556
* LangRef and basic memory-representation/reading/writing for 'cmpxchg' andEli Friedman2011-07-281-2/+4
| | | | | | | | | | | | | | | | | | | | | 'atomicrmw' instructions, which allow representing all the current atomic rmw intrinsics. The allowed operands for these instructions are heavily restricted at the moment; we can probably loosen it a bit, but supporting general first-class types (where it makes sense) might get a bit complicated, given how SelectionDAG works. As an initial cut, these operations do not support specifying an alignment, but it would be possible to add if we think it's useful. Specifying an alignment lower than the natural alignment would be essentially impossible to support on anything other than x86, but specifying a greater alignment would be possible. I can't think of any useful optimizations which would use that information, but maybe someone else has ideas. Optimizer/codegen support coming soon. llvm-svn: 136404
* Keep enums stable. Append EH stuff to the end.Bill Wendling2011-07-271-49/+52
| | | | llvm-svn: 136263
* Merge the contents from exception-handling-rewrite to the mainline.Bill Wendling2011-07-271-47/+64
| | | | | | This adds the new instructions 'landingpad' and 'resume'. llvm-svn: 136253
* The numbering of LLVMOpcode is supposed to be stable; revert my earlier ↵Eli Friedman2011-07-271-24/+26
| | | | | | change, and append Fence onto the end. llvm-svn: 136245
* Fix a couple minor mistakes pointed out by Bill in adding 'fence' instruction.Eli Friedman2011-07-261-23/+24
| | | | llvm-svn: 136124
* Add LLVMAddAlwaysInlinerPass to the C API.Rafael Espindola2011-07-261-0/+3
| | | | llvm-svn: 136083
* LLVM 3.0 is here, remove old do nothing method.Rafael Espindola2011-07-261-3/+0
| | | | llvm-svn: 136082
* Add LLVMAddTargetLibraryInfo to the C API.Rafael Espindola2011-07-251-0/+16
| | | | llvm-svn: 135975
* Add LLVMAddLowerExpectIntrinsicPass to the C API.Rafael Espindola2011-07-251-0/+3
| | | | llvm-svn: 135966
* Combine all MC initialization routines into one. e.g. InitializeX86MCAsmInfo,Evan Cheng2011-07-221-8/+2
| | | | | | InitializeX86MCInstrInfo, etc. are combined into InitializeX86TargetMC. llvm-svn: 135812
* Introduce MCCodeGenInfo, which keeps information that can affect codegenEvan Cheng2011-07-191-0/+6
| | | | | | | (including compilation, assembly). Move relocation model Reloc::Model from TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine. llvm-svn: 135468
* land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-181-1/+1
| | | | llvm-svn: 135375
* remove the InvalidateStructLayoutInfo API, which is dead and unnecessary nowChris Lattner2011-07-151-6/+0
| | | | | | that type refinement is toast. llvm-svn: 135245
* Rename createAsmInfo to createMCAsmInfo and move registration code to ↵Evan Cheng2011-07-141-0/+6
| | | | | | MCTargetDesc to prepare for next round of changes. llvm-svn: 135219
* Add LLVMConstNamedStruct to the C api to let its users create constantsRafael Espindola2011-07-141-0/+3
| | | | | | of named struct types. llvm-svn: 135178
* add a couple more missing C api, patch by Vitaly Lugovskiy!Chris Lattner2011-07-141-0/+3
| | | | llvm-svn: 135151
* add C api for hte new type system rewrite API. Patch by Vitaly Lugovskiy!Chris Lattner2011-07-141-1/+4
| | | | llvm-svn: 135132
* Land the long talked about "type system rewrite" patch. ThisChris Lattner2011-07-092-26/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | patch brings numerous advantages to LLVM. One way to look at it is through diffstat: 109 files changed, 3005 insertions(+), 5906 deletions(-) Removing almost 3K lines of code is a good thing. Other advantages include: 1. Value::getType() is a simple load that can be CSE'd, not a mutating union-find operation. 2. Types a uniqued and never move once created, defining away PATypeHolder. 3. Structs can be "named" now, and their name is part of the identity that uniques them. This means that the compiler doesn't merge them structurally which makes the IR much less confusing. 4. Now that there is no way to get a cycle in a type graph without a named struct type, "upreferences" go away. 5. Type refinement is completely gone, which should make LTO much MUCH faster in some common cases with C++ code. 6. Types are now generally immutable, so we can use "Type *" instead "const Type *" everywhere. Downsides of this patch are that it removes some functions from the C API, so people using those will have to upgrade to (not yet added) new API. "LLVM 3.0" is the right time to do this. There are still some cleanups pending after this, this patch is large enough as-is. llvm-svn: 134829
* Cast unused parameter to void.Hans Wennborg2011-06-041-0/+1
| | | | llvm-svn: 132641
* Fix some minor typos and grammar.Chris Lattner2011-05-221-40/+31
| | | | llvm-svn: 131835
* Declare this function here so that it doesn't get C++ mangling.Nick Lewycky2011-05-151-0/+2
| | | | llvm-svn: 131379
* Fix a ton of comment typos found by codespell. Patch byChris Lattner2011-04-152-5/+5
| | | | | | Luis Felipe Strano Moraes! llvm-svn: 129558
* Add the alias analysis to the C api.Rafael Espindola2011-04-131-0/+7
| | | | llvm-svn: 129447
* Adding support for printing operands symbolically to llvm's public 'C'Kevin Enderby2011-04-111-0/+43
| | | | | | | | | | | | | disassembler API. Hooked this up to the ARM target so such tools as Darwin's otool(1) can now print things like branch targets for example this: blx _puts instead of this: blx #-36 And even print the expression encoded in the Mach-O relocation entried for things like this: movt r0, :upper16:((_foo-_bar)+1234) llvm-svn: 129284
* Expose more passes to the C API.Rafael Espindola2011-04-071-0/+12
| | | | llvm-svn: 129087
OpenPOWER on IntegriCloud