summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bitcode
Commit message (Collapse)AuthorAgeFilesLines
...
* If the bitcode reader input stream isn't a multiple of 4 bytes, it's moreDan Gohman2010-04-021-3/+7
| | | | | | | likely not a bitcode file at all, rather than being a bitcode file which is truncated. Check for this case and issue a more relevant error message. llvm-svn: 100156
* Finally land the InvokeInst operand reordering.Gabor Greif2010-03-241-2/+2
| | | | | | | | | | | | I have audited all getOperandNo calls now, fixing hidden assumptions. CallSite related uglyness will be eliminated successively. Note this patch has a long and griveous history, for all the back-and-forths have a look at CallSite.h's log. llvm-svn: 99399
* backing out r99170 because it still fails on clang-x86_64-darwin10-fntGabor Greif2010-03-221-2/+2
| | | | llvm-svn: 99171
* Now that hopefully all direct accesses to InvokeInst operands are fixedGabor Greif2010-03-221-2/+2
| | | | | | we can reapply the InvokeInst operand reordering patch. (see r98957). llvm-svn: 99170
* back out r98957, it broke ↵Gabor Greif2010-03-191-2/+2
| | | | | | http://smooshlab.apple.com:8010/builders/clang-x86_64-darwin10-fnt/builds/703 in the nightly test suite llvm-svn: 98958
* Recommit r80858 again (which has been backed out in r80871).Gabor Greif2010-03-191-2/+2
| | | | | | | | | | | This time I did a self-hosted bootstrap on Linux x86-64, with no problems. Let's see how darwin 64-bit self-hosting goes. At the first sign of failure I'll back this out. Maybe the valgrind bots give me a hint of what may be wrong (it at all). llvm-svn: 98957
* reapply r98656 unmodified, which exposed the asmprinter not Chris Lattner2010-03-162-1/+22
| | | | | | handling constant unions. llvm-svn: 98680
* Revert r98656, its breaking all over the place.Daniel Dunbar2010-03-162-22/+1
| | | | llvm-svn: 98662
* improve support for uniontype and ConstantUnion, patch by Tim Northover!Chris Lattner2010-03-162-1/+22
| | | | llvm-svn: 98656
* Add a LLVMWriteBitcodeToFD that exposes the raw_fd_ostream options.Erick Tryzelaar2010-03-061-2/+7
| | | | llvm-svn: 97858
* Whoops, the old LLVMWriteBitcodeToFileHandle closed the stream.Erick Tryzelaar2010-03-061-1/+1
| | | | | | Luckily this never was released. llvm-svn: 97857
* LLVMWriteBitcodeToFileHandle should work on all architectures now.Erick Tryzelaar2010-03-061-11/+0
| | | | llvm-svn: 97856
* Add Module functions in place of module providers.Erick Tryzelaar2010-03-021-14/+32
| | | | llvm-svn: 97608
* Make the side-numbering of instructions used by metadata (which is needed toNick Lewycky2010-02-252-2/+2
| | | | | | | | | keep track of instructions that return void) per-function. This fixes PR5278. This breaks backwards compatibility with the metadata format. That's okay because we haven't released the metadata bitcode yet. llvm-svn: 97132
* There are two ways of checking for a given type, for example isa<PointerType>(T)Duncan Sands2010-02-162-7/+7
| | | | | | | and T->isPointerTy(). Convert most instances of the first form to the second form. Requested by Chris. llvm-svn: 96344
* Simplify.Daniel Dunbar2010-02-151-23/+4
| | | | llvm-svn: 96269
* Uniformize the names of type predicates: rather than having isFloatTy andDuncan Sands2010-02-151-7/+7
| | | | | | isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris! llvm-svn: 96223
* Add support for a union type in LLVM IR. Patch by Talin!Chris Lattner2010-02-122-1/+27
| | | | llvm-svn: 96011
* Also recognize armv6t2-* and armv5te-* triplets.Evan Cheng2010-02-121-5/+12
| | | | llvm-svn: 96008
* Add ARM bitcode file magic.Evan Cheng2010-02-121-3/+32
| | | | llvm-svn: 96006
* Function-local metadata whose operands had been optimized to no longer refer ↵Victor Hernandez2010-02-061-2/+2
| | | | | | to function-local IR were not getting written by BitcodeWriter; solution is for these metadata to be enumerated just like global metadata. llvm-svn: 95467
* Fix (and test) function-local metadata that occurs before the instruction ↵Victor Hernandez2010-02-041-4/+8
| | | | | | that it refers to; fix is to not enumerate operands of function-local metadata until after all instructions have been enumerated llvm-svn: 95269
* We were not writing bitcode for function-local metadata whose operands have ↵Victor Hernandez2010-01-291-2/+2
| | | | | | been erased (making it not have any more function-local operands) llvm-svn: 94842
* Kill ModuleProvider and ghost linkage by inverting the relationship betweenJeffrey Yasskin2010-01-274-93/+86
| | | | | | | | | | | | | | | | | | | | | 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
* Fix the bitcode reader to deserialize nuw/nsw/etc. bits properly in the caseDan Gohman2010-01-251-3/+3
| | | | | | of a forward-reference, which doesn't use an "abbrev" encoding. llvm-svn: 94454
* make -fno-rtti the default unless a directory builds with REQUIRES_RTTI.Chris Lattner2010-01-242-2/+0
| | | | llvm-svn: 94378
* Respect operator precedence (and silence a gcc 4.3 warning).Benjamin Kramer2010-01-231-1/+1
| | | | llvm-svn: 94304
* Remove MetadataBase class because it is not adding significant value.Devang Patel2010-01-222-5/+6
| | | | llvm-svn: 94243
* Stop building RTTI information for *most* llvm libraries. NotableChris Lattner2010-01-222-0/+2
| | | | | | | | | | | 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
* Fix a crasher trying to fold each element in a comparison between two vectorsNick Lewycky2010-01-211-1/+1
| | | | | | | | | | if one of the vectors didn't have elements (such as undef). Fixes PR 6096. Fix an issue in the constant folder where fcmp (<2 x %ty>, <2 x %ty>) would have <2 x i1> type if constant folding was successful and i1 type if it wasn't. This exposed a related issue in the bitcode reader. llvm-svn: 94069
* Simplify code that chooses when to enumerate function-local metadata operandsVictor Hernandez2010-01-142-29/+31
| | | | llvm-svn: 93446
* Avoid modifying ValueEnumerator's MD ValueList by choosing which ↵Victor Hernandez2010-01-142-17/+8
| | | | | | function-local MD to write based on the function currently being written llvm-svn: 93441
* In WriteFunction(), write function-local metadata before we write the ↵Victor Hernandez2010-01-141-1/+3
| | | | | | instructions, so instruction's references to metadata are fully resolved by the time they get written. llvm-svn: 93403
* Clean up unnecessary return and bracketsVictor Hernandez2010-01-141-3/+1
| | | | llvm-svn: 93401
* Fix comment typoVictor Hernandez2010-01-131-1/+1
| | | | llvm-svn: 93355
* Write function-local metadata as a metadata subblock of a funciton blockVictor Hernandez2010-01-131-4/+36
| | | | llvm-svn: 93339
* Enumerate function-local metadata (and its types and operands) only during ↵Victor Hernandez2010-01-132-20/+35
| | | | | | function-incorporation, global metadata continues to be enumerated during creation of ValueEnumerator llvm-svn: 93338
* Parse function-local metadata inside function blocksVictor Hernandez2010-01-131-0/+3
| | | | llvm-svn: 93337
* Revert 93270 pending investigation of how stray non-constant values end up ↵Victor Hernandez2010-01-131-5/+0
| | | | | | in ValueEnumerator's ValueList during WriteConstants() llvm-svn: 93289
* Make WriteConstants() more robust against stray values in ValueEnumerator's ↵Victor Hernandez2010-01-121-0/+5
| | | | | | ValueList llvm-svn: 93270
* s/NextValueNo/NextMDValueNo while processing metadata.Devang Patel2010-01-111-5/+4
| | | | llvm-svn: 93165
* Compute isFunctionLocal in MDNode ctor or via argument in new function ↵Victor Hernandez2010-01-102-2/+10
| | | | | | | | getWhenValsUnresolved(). Document PFS argument to ParseValID() and ConvertGlobalOrMetadataValIDToValue(). llvm-svn: 93108
* "In order to ease automatic bindings generation, it would be helpful if ↵Chris Lattner2010-01-091-13/+14
| | | | | | | | 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
* clean up this code, add a fixme.Chris Lattner2010-01-091-7/+7
| | | | llvm-svn: 93042
* NamedMDNode is never used so there is no need to enumerate it here.Devang Patel2010-01-091-1/+1
| | | | llvm-svn: 93039
* NamedMDNode element is either null or MDNode. Otherwise this is a malformed ↵Devang Patel2010-01-091-1/+3
| | | | | | NamedMDNode record. llvm-svn: 93037
* Derive NamedMDNode from Value.Devang Patel2010-01-092-10/+24
| | | | llvm-svn: 93032
* Use separate namespace for named metadata.Devang Patel2010-01-073-6/+16
| | | | llvm-svn: 92931
* Allow null to be an element of NamedMDNode. e.g. !llvm.stuff = !{!0, !1, null}Devang Patel2010-01-053-5/+10
| | | | llvm-svn: 92783
* NamedMDNode is a collection MDNodes.Devang Patel2010-01-051-3/+3
| | | | llvm-svn: 92761
OpenPOWER on IntegriCloud