summaryrefslogtreecommitdiffstats
path: root/llvm/lib/AsmParser/llvmAsmParser.y
Commit message (Collapse)AuthorAgeFilesLines
...
* CommonLinkage (missed a file)Dale Johannesen2008-05-141-1/+2
| | | | llvm-svn: 51120
* Add two new instructions to the llvm IR, vicmp and vfcmp. see updated LangRefNate Begeman2008-05-121-1/+39
| | | | | | for details. CodeGen support coming in a follow up patch llvm-svn: 50985
* Remove 'unwinds to' support from mainline. This patch undoes r47802 r47989Nick Lewycky2008-04-251-14/+5
| | | | | | r48047 r48084 r48085 r48086 r48088 r48096 r48099 r48109 and r48123. llvm-svn: 50265
* Allow llvm-as to parse a getresult with an undef operand.Dan Gohman2008-04-231-1/+1
| | | | llvm-svn: 50175
* Validate that the result of a function type is valid using sharedChris Lattner2008-04-231-6/+15
| | | | | | logic with vmcore. llvm-svn: 50138
* Switch to using Simplified ConstantFP::get API.Chris Lattner2008-04-201-3/+3
| | | | llvm-svn: 49977
* Teach llvm-as to accept function types with multiple return types.Dan Gohman2008-04-191-0/+1
| | | | llvm-svn: 49945
* API changes for class Use size reduction, wave 1.Gabor Greif2008-04-061-19/+19
| | | | | | | | Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
* Reimplement the parameter attributes support, phase #1. hilights:Chris Lattner2008-03-121-59/+28
| | | | | | | | | | | | | | | | | | | | | | | 1. There is now a "PAListPtr" class, which is a smart pointer around the underlying uniqued parameter attribute list object, and manages its refcount. It is now impossible to mess up the refcount. 2. PAListPtr is now the main interface to the underlying object, and the underlying object is now completely opaque. 3. Implementation details like SmallVector and FoldingSet are now no longer part of the interface. 4. You can create a PAListPtr with an arbitrary sequence of ParamAttrsWithIndex's, no need to make a SmallVector of a specific size (you can just use an array or scalar or vector if you wish). 5. All the client code that had to check for a null pointer before dereferencing the pointer is simplified to just access the PAListPtr directly. 6. The interfaces for adding attrs to a list and removing them is a bit simpler. Phase #2 will rename some stuff (e.g. PAListPtr) and do other less invasive changes. llvm-svn: 48289
* Turn unwind_to into "unwinds to".Nick Lewycky2008-03-101-5/+5
| | | | llvm-svn: 48123
* Add an unwind_to field to basic blocks, making them Users instead of Values.Nick Lewycky2008-03-021-18/+24
| | | | | | This is the first checkin for PR1269, the new EH infrastructure. llvm-svn: 47802
* Add assert.Devang Patel2008-02-261-2/+2
| | | | llvm-svn: 47641
* Remove unncessary ReturnInst constructors.Devang Patel2008-02-261-1/+3
| | | | llvm-svn: 47633
* Use isa check instead of getTypeID() check.Devang Patel2008-02-231-1/+1
| | | | llvm-svn: 47518
* To support multiple return values, now ret instruction supports multiple ↵Devang Patel2008-02-231-23/+3
| | | | | | operands instead of one aggregate operand. llvm-svn: 47508
* Split ParameterAttributes.h, putting the complicatedDale Johannesen2008-02-221-0/+1
| | | | | | | stuff into ParamAttrsList.h. Per feedback from ParamAttrs changes. llvm-svn: 47504
* Use SymbolicValueRef to parse getresult operandDevang Patel2008-02-221-3/+2
| | | | llvm-svn: 47494
* Pass alignment on ByVal parameters, from FE, allDale Johannesen2008-02-221-1/+2
| | | | | | the way through. It is now used for codegen. llvm-svn: 47484
* ParseDevang Patel2008-02-201-3/+37
| | | | | | | ret i32 1, i8 2 another step towards multiple return value support. llvm-svn: 47407
* Support alignment within ParamAttrs in the I/O handling.Dale Johannesen2008-02-201-0/+1
| | | | llvm-svn: 47401
* Specify GetResultInst index as an unsigned.Devang Patel2008-02-201-1/+1
| | | | llvm-svn: 47390
* Fix newly-introduced 4.3 warningsAnton Korobeynikov2008-02-201-1/+2
| | | | llvm-svn: 47375
* ParseDevang Patel2008-02-191-1/+10
| | | | | | %b = getresult {i32, i32} %a, i32 1 llvm-svn: 47349
* Expand ParameterAttributes to 32 bits (in preparationDale Johannesen2008-02-191-1/+1
| | | | | | | for adding alignment info, not there yet). Clean up interfaces to reference ParameterAttributes consistently. llvm-svn: 47342
* Fix PR2060 by rejecting invalid types for integer constants.Chris Lattner2008-02-191-11/+15
| | | | llvm-svn: 47311
* If there are attributes on the varargs part of aDuncan Sands2008-01-111-2/+16
| | | | | | call, don't discard them. llvm-svn: 45884
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Change the PointerType api for creating pointer types. The old functionality ↵Christopher Lamb2007-12-171-3/+3
| | | | | | of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new prototype of PointerType::get() requires both a type and an address space. llvm-svn: 45082
* Implement part of review feedback for address spaces.Christopher Lamb2007-12-121-27/+13
| | | | llvm-svn: 44933
* Implement address space attribute for LLVM pointer types. Address spaces are Christopher Lamb2007-12-111-5/+26
| | | | | | | | | | | | | | | | | regions of memory that have a target specific relationship, as described in the Embedded C Technical Report. This also implements the 2007-12-11-AddressSpaces test, which demonstrates how address space attributes can be used in LLVM IR. In addition, this patch changes the bitcode signature for stores (in a backwards compatible manner), such that the pointer type, rather than the pointee type, is encoded. This permits type information in the pointer (e.g. address space) to be preserved for stores. LangRef updates are forthcoming. llvm-svn: 44858
* Adding a collector name attribute to Function in the IR. These Gordon Henriksen2007-12-101-3/+13
| | | | | | | | | | | | | | | | | | | | methods are new to Function: bool hasCollector() const; const std::string &getCollector() const; void setCollector(const std::string &); void clearCollector(); The assembly representation is as such: define void @f() gc "shadow-stack" { ... The implementation uses an on-the-side table to map Functions to collector names, such that there is no overhead. A StringPool is further used to unique collector names, which are extremely likely to be unique per process. llvm-svn: 44769
* Fix fallout from my last patch: don't reject varargs functions :)Anton Korobeynikov2007-12-031-7/+14
| | | | llvm-svn: 44545
* More sanity checks for function types. Anton Korobeynikov2007-12-031-1/+13
| | | | | | Thanks goes to PyPy folks for generating broken stuff :) llvm-svn: 44538
* Add a convenience method for modifying parameterDuncan Sands2007-11-301-3/+3
| | | | | | | | attributes. While there, I noticed that not all attribute methods returned a pointer-to-constant, so I fixed that. llvm-svn: 44457
* Fix PR1146: parameter attributes are longer part ofDuncan Sands2007-11-271-86/+88
| | | | | | | | | | | | the function type, instead they belong to functions and function calls. This is an updated and slightly corrected version of Reid Spencer's original patch. The only known problem is that auto-upgrading of bitcode files doesn't seem to work properly (see test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully a bitcode guru (who might that be? :) ) will fix it. llvm-svn: 44359
* Rename the 'const' parameter attribute to 'readnone',Duncan Sands2007-11-221-3/+3
| | | | | | | and the 'pure' parameter attribute to 'readonly'. Names suggested by DannyB. llvm-svn: 44273
* Replace the original flex lexer with a hand writen one. This Chris Lattner2007-11-181-43/+14
| | | | | | | drops a dependency on flex and lets us make future progress more easily. Yay for 2 fewer .cvs files to make silly conflicts with. llvm-svn: 44213
* Basic non-power-of-2 vector supportNate Begeman2007-11-151-2/+0
| | | | llvm-svn: 44181
* Add pure/const attributes. Documentation will follow.Anton Korobeynikov2007-11-141-0/+3
| | | | llvm-svn: 44109
* Add support for vector remainder operations.Dan Gohman2007-11-051-5/+0
| | | | llvm-svn: 43744
* Make labels work in asm blocks; allow labels asDale Johannesen2007-11-051-14/+26
| | | | | | | parameters. Rename ValueRefList to ParamList in AsmParser, since its only use is for parameters. llvm-svn: 43734
* Revise previous patch per review comments.Dale Johannesen2007-09-121-1/+1
| | | | | | | Next round of x87 long double stuff. Getting close now, basically works. llvm-svn: 41875
* Add APInt interfaces to APFloat (allows directlyDale Johannesen2007-09-111-6/+7
| | | | | | | | | access to bits). Use them in place of float and double interfaces where appropriate. First bits of x86 long double constants handling (untested, probably does not work). llvm-svn: 41858
* Fix PR1645 by resolving forward alias references.Chris Lattner2007-09-101-0/+21
| | | | llvm-svn: 41815
* Apply feedback from previous patch.Dale Johannesen2007-09-071-0/+1
| | | | llvm-svn: 41774
* Next round of APFloat changes.Dale Johannesen2007-09-061-5/+13
| | | | | | | | | | | | | | Use APFloat in UpgradeParser and AsmParser. Change all references to ConstantFP to use the APFloat interface rather than double. Remove the ConstantFP double interfaces. Use APFloat functions for constant folding arithmetic and comparisons. (There are still way too many places APFloat is just a wrapper around host float/double, but we're getting there.) llvm-svn: 41747
* Update GEP constructors to use an iterator interface to fixDavid Greene2007-09-041-3/+3
| | | | | | GLIBCXX_DEBUG issues. llvm-svn: 41697
* Update InvokeInst to work like CallInstDavid Greene2007-08-271-1/+1
| | | | llvm-svn: 41506
* Fix PR1577, a crash on invalid bug.Chris Lattner2007-08-061-0/+1
| | | | llvm-svn: 40874
* This is the patch to provide clean intrinsic function overloading support in ↵Chandler Carruth2007-08-041-0/+6
| | | | | | | | LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future. This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported. llvm-svn: 40807
OpenPOWER on IntegriCloud