summaryrefslogtreecommitdiffstats
path: root/llvm/include/llvm-c
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Add a set of C bindings for the Object interface.Eric Christopher2011-04-031-0/+77
| | | | | | Patch by Patrick Walton! llvm-svn: 128798
* C-API: Include DataTypes.h instead of stdint.h.Daniel Dunbar2011-03-291-1/+1
| | | | llvm-svn: 128446
* Again adding a C API to the disassembler for use by such tools as Darwin'sKevin Enderby2011-03-281-0/+106
| | | | | | | | | | | otool(1), this time with the needed fix for case sensitive file systems :) . This is a work in progress as the interface for producing symbolic operands is not done. But a hacked prototype using information from the object file's relocation entiries and replacing immediate operands with MCExpr's has been shown to work with no changes to the instrucion printer. These APIs will be moved into a dynamic library at some point. llvm-svn: 128415
* Remove the files for r128308 as it is causing a buildbot failure.Kevin Enderby2011-03-261-106/+0
| | | | llvm-svn: 128309
* Adding a C API to the disassembler for use by such tools as Darwin's otool(1).Kevin Enderby2011-03-261-0/+106
| | | | | | | | | | This is a work in progress as the interface for producing symbolic operands is not done. But a hacked prototype using information from the object file's relocation entiries and replacing immediate operands with MCExpr's has been shown to work with no changes to the instrucion printer. These APIs will be moved into a dynamic library at some point. llvm-svn: 128308
* Add a lto_codegen_compile_to_file to avoid producing a file, reading it toRafael Espindola2011-03-221-0/+7
| | | | | | memory and writing it back to disk. llvm-svn: 128108
* Add support in the LTO library for loading an object from the middleRafael Espindola2011-03-171-1/+9
| | | | | | of an file. llvm-svn: 127781
* Trailing whitespace.Jim Grosbach2011-03-141-26/+26
| | | | llvm-svn: 127620
* Expose getTypeName to the C API. Patch by Patrick Walton.Rafael Espindola2011-02-181-0/+1
| | | | llvm-svn: 125845
* Don't open the file again in the gold plugin. To be able to do this, updateRafael Espindola2011-02-081-0/+8
| | | | | | MemoryBuffer::getOpenFile to not close the file descriptor. llvm-svn: 125128
* Do not include DataTypes.h in llvm-c/lto.h.Devang Patel2011-01-071-4/+3
| | | | | | This means avoid using uint32_t. This patch reverts r112200 and fixes original problem by fixing argument type in lto.cpp. llvm-svn: 123038
* I swear I did a make clean and make before committing all this...Michael J. Spencer2010-11-292-2/+2
| | | | llvm-svn: 120304
* Merge System into Support.Michael J. Spencer2010-11-291-1/+1
| | | | llvm-svn: 120298
* add a function to the C api to get the context out of a module, patchChris Lattner2010-11-281-0/+3
| | | | | | by Eric Dobson! llvm-svn: 120259
* add a 'LLVMConstIntOfArbitraryPrecision' api to the C api,Chris Lattner2010-11-231-0/+3
| | | | | | patch by Greg Pfeil! llvm-svn: 119989
* Fix comment typo.Duncan Sands2010-11-021-1/+1
| | | | llvm-svn: 118016
* remove dead prototype, PR8351Chris Lattner2010-10-111-3/+0
| | | | llvm-svn: 116209
* Add initialization routines for Instrumentation.Owen Anderson2010-10-071-0/+1
| | | | llvm-svn: 115971
* Add initialization routines to InstCombine.Owen Anderson2010-10-071-0/+1
| | | | llvm-svn: 115965
* Add initialization routines for VMCore.Owen Anderson2010-10-071-0/+1
| | | | llvm-svn: 115963
* Add initialization routines for Target.Owen Anderson2010-10-071-0/+1
| | | | llvm-svn: 115957
OpenPOWER on IntegriCloud