summaryrefslogtreecommitdiffstats
path: root/llvm/include/llvm-c/Core.h
Commit message (Collapse)AuthorAgeFilesLines
* Cast unused parameter to void.Hans Wennborg2011-06-041-0/+1
| | | | llvm-svn: 132641
* Declare this function here so that it doesn't get C++ mangling.Nick Lewycky2011-05-151-0/+2
| | | | llvm-svn: 131379
* Expose getTypeName to the C API. Patch by Patrick Walton.Rafael Espindola2011-02-181-0/+1
| | | | llvm-svn: 125845
* I swear I did a make clean and make before committing all this...Michael J. Spencer2010-11-291-1/+1
| | | | llvm-svn: 120304
* 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
* Next step on the getting-rid-of-static-ctors train: begin adding per-libraryOwen Anderson2010-10-071-0/+10
| | | | | | | initialization functions that initialize the set of passes implemented in that library. Add C bindings for these functions as well. llvm-svn: 115927
* Add missing X86 MMX declarations. Hopefully fixes buildbot?Dale Johannesen2010-09-101-0/+2
| | | | llvm-svn: 113643
* Add X86 MMX type to bitcode and Type.Dale Johannesen2010-09-101-1/+2
| | | | | | | (The Ada bindings probably need it too, but all the obvious places to change say "do not edit this file".) llvm-svn: 113618
* remove unions from LLVM IR. They are severely buggy and notChris Lattner2010-08-281-10/+1
| | | | | | being actively maintained, improved, or extended. llvm-svn: 112356
* Create the new linker type "linker_private_weak_def_auto".Bill Wendling2010-08-201-1/+3
| | | | | | | | | | | It's similar to "linker_private_weak", but it's known that the address of the object is not taken. For instance, functions that had an inline definition, but the compiler decided not to inline it. Note, unlike linker_private and linker_private_weak, linker_private_weak_def_auto may have only default visibility. The symbols are removed by the linker from the final linked image (executable or dynamic library). llvm-svn: 111684
* Expose LLVMSetOperand and LLVMGetNumOperands to llvm-c and ocaml.Erick Tryzelaar2010-08-201-0/+2
| | | | llvm-svn: 111625
* Expose BasicBlock::moveBefore and moveAfter in C API, patchDuncan Sands2010-07-191-0/+3
| | | | | | by Benjamin Saunders. llvm-svn: 108699
* Implement the "linker_private_weak" linkage type. This will be used forBill Wendling2010-07-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | Objective-C metadata types which should be marked as "weak", but which the linker will remove upon final linkage. However, this linkage isn't specific to Objective-C. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". Currently only supported on Darwin platforms. llvm-svn: 107433
* Revert r107205 and r107207.Bill Wendling2010-06-291-2/+1
| | | | llvm-svn: 107215
* Introducing the "linker_weak" linkage type. This will be used for Objective-CBill Wendling2010-06-291-1/+2
| | | | | | | | | | | | | | | | | | | metadata types which should be marked as "weak", but which the linker will remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". llvm-svn: 107205
* add attributes and module level asm to the ocaml bindings,Chris Lattner2010-04-101-0/+2
| | | | | | patch by Patrick Walton! llvm-svn: 100932
* Expose alignment and stack alignment attributes to llvm-c and ocaml.Erick Tryzelaar2010-03-031-1/+3
| | | | llvm-svn: 97682
* Add Module functions in place of module providers.Erick Tryzelaar2010-03-021-0/+3
| | | | llvm-svn: 97608
* Rename LLVMUseIteratorRef to LLVMUseRef since we don't refer to iterators in ↵Erick Tryzelaar2010-03-021-10/+7
| | | | | | llvm-c. llvm-svn: 97585
* Add support for global variables in an address space for llvm-c and ocaml.Erick Tryzelaar2010-02-281-0/+3
| | | | llvm-svn: 97377
* Add indirect br support to llvm-c and ocaml.Erick Tryzelaar2010-02-281-0/+6
| | | | llvm-svn: 97376
* Add metadata functions to llvm-c and ocaml.Erick Tryzelaar2010-02-281-1/+23
| | | | llvm-svn: 97375
* Add the new builder arthmetic instructions to llvm-c and ocaml.Erick Tryzelaar2010-02-281-0/+21
| | | | llvm-svn: 97372
* Add the new union arthmetic instructions to llvm-c and ocaml.Erick Tryzelaar2010-02-281-0/+1
| | | | llvm-svn: 97371
* Add generic binary op and cast builder functions.Erick Tryzelaar2010-02-281-0/+5
| | | | llvm-svn: 97370
* Fix a typo in an LLVMOpcode enum. LLVMTrunk -> LLVMTrunc.Erick Tryzelaar2010-02-161-1/+1
| | | | llvm-svn: 96324
* Remove c++ style comments from c header.Bill Wendling2010-02-151-8/+8
| | | | llvm-svn: 96266
* Renumber Instruction enums in llvm-c.Bill Wendling2010-02-151-50/+62
| | | | llvm-svn: 96264
* Add support for a union type in LLVM IR. Patch by Talin!Chris Lattner2010-02-121-1/+9
| | | | llvm-svn: 96011
* Reintroduce the InlineHint function attribute.Jakob Stoklund Olesen2010-02-061-1/+2
| | | | | | | | | | | | This time it's for real! I am going to hook this up in the frontends as well. The inliner has some experimental heuristics for dealing with the inline hint. When given a -respect-inlinehint option, functions marked with the inline keyword are given a threshold just above the default for -O3. We need some experiments to determine if that is the right thing to do. llvm-svn: 95466
* Kill ModuleProvider and ghost linkage by inverting the relationship betweenJeffrey Yasskin2010-01-271-12/+14
| | | | | | | | | | | | | | | | | | | | | Modules and ModuleProviders. Because the "ModuleProvider" simply materializes GlobalValues now, and doesn't provide modules, it's renamed to "GVMaterializer". Code that used to need a ModuleProvider to materialize Functions can now materialize the Functions directly. Functions no longer use a magic linkage to record that they're materializable; they simply ask the GVMaterializer. Because the C ABI must never change, we can't remove LLVMModuleProviderRef or the functions that refer to it. Instead, because Module now exposes the same functionality ModuleProvider used to, we store a Module* in any LLVMModuleProviderRef and translate in the wrapper methods. The bindings to other languages still use the ModuleProvider concept. It would probably be worth some time to update them to follow the C++ more closely, but I don't intend to do it. Fixes http://llvm.org/PR5737 and http://llvm.org/PR5735. llvm-svn: 94686
* Stop building RTTI information for *most* llvm libraries. NotableChris Lattner2010-01-221-1/+1
| | | | | | | | | | | missing ones are libsupport, libsystem and libvmcore. libvmcore is currently blocked on bugpoint, which uses EH. Once it stops using EH, we can switch it off. This #if 0's out 3 unit tests, because gtest requires RTTI information. Suggestions welcome on how to fix this. llvm-svn: 94164
* Remove the InlineHint attribute. There are no current or plannedEric Christopher2010-01-151-2/+1
| | | | | | users. llvm-svn: 93558
* "In order to ease automatic bindings generation, it would be helpful if ↵Chris Lattner2010-01-091-34/+36
| | | | | | | | 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
* Remove dead debug info intrinsics.Devang Patel2010-01-051-4/+0
| | | | | | | | | | Intrinsic::dbg_stoppoint Intrinsic::dbg_region_start Intrinsic::dbg_region_end Intrinsic::dbg_func_start AutoUpgrade simply ignores these intrinsics now. llvm-svn: 92557
* I forgot to update the prototype for LLVMBuildIntCast when correctingDuncan Sands2009-11-231-1/+1
| | | | | | | | | | | | the body to not pass the name for the isSigned parameter. However it seems that changing prototypes is a big-no-no, so here I revert the previous change and pass "true" for isSigned, meaning this always does a signed cast, which was the previous behaviour assuming the name was not NULL! Some other C function needs to be introduced for the general case of signed or unsigned casts. This hopefully unbreaks the ocaml binding. llvm-svn: 89648
* Remove FreeInst.Victor Hernandez2009-10-261-1/+0
| | | | | | | Remove LowerAllocations pass. Update some more passes to treate free calls just like they were treating FreeInst. llvm-svn: 85176
* Move DataTypes.h to include/llvm/System, update all users. This breaks the lastChandler Carruth2009-10-261-1/+1
| | | | | | direct inclusion edge from System to Support. llvm-svn: 85086
* Remove AllocationInst. Since MallocInst went away, AllocaInst is the only ↵Victor Hernandez2009-10-231-2/+1
| | | | | | subclass of AllocationInst, so it no longer is necessary. llvm-svn: 84969
* Remove MallocInst from LLVM Instructions.Victor Hernandez2009-10-171-1/+0
| | | | llvm-svn: 84299
* add some more hooks to the C bindings, patch by Kenneth Uildriks!Chris Lattner2009-10-121-0/+78
| | | | llvm-svn: 83821
* Add C API calls for building FNeg operations. Patch by KS Sreeram!Dan Gohman2009-09-281-0/+1
| | | | llvm-svn: 83021
* Revert 80959. It isn't sufficient to solve the full problem. And itDan Gohman2009-09-031-0/+5
| | | | | | introduced regressions in the Ocaml bindings tests. llvm-svn: 80969
* Remove the API for creating ConstantExprs with the nsw, nuw, inbounds,Dan Gohman2009-09-031-5/+0
| | | | | | | | | | | | | | | and exact flags. Because ConstantExprs are uniqued, creating an expression with this flag causes all expressions with the same operands to have the same flag, which may not be safe. Add, sub, mul, and sdiv ConstantExprs are usually folded anyway, so the main interesting flag here is inbounds, and the constant folder already knows how to set the inbounds flag automatically in most cases, so there isn't an urgent need for the API support. This can be reconsidered in the future, but for now just removing these API bits eliminates a source of potential trouble with little downside. llvm-svn: 80959
* Make sure we specify no arguments for context functions.Erick Tryzelaar2009-08-301-2/+2
| | | | llvm-svn: 80525
* Add an 'inline hint' attribute to represent sourceDale Johannesen2009-08-261-1/+2
| | | | | | | | code hints that it would be a good idea to inline a function ("inline" keyword). No functional change yet; FEs do not emit this and inliner does not use it. llvm-svn: 80063
* Expose some extra functions to llvm-cErick Tryzelaar2009-08-191-1/+2
| | | | llvm-svn: 79413
* Expose creating constant ints and floats from strings in llvm-c.Erick Tryzelaar2009-08-161-0/+9
| | | | llvm-svn: 79213
* Add an llvm-c function that lets you insert an instruction with a name.Erick Tryzelaar2009-08-161-0/+2
| | | | llvm-svn: 79163
OpenPOWER on IntegriCloud