aboutsummaryrefslogtreecommitdiffstats
path: root/lib/AsmParser
Commit message (Collapse)AuthorAgeFilesLines
* For PR1146:Reid Spencer2007-04-092-46/+82
| | | | | | | Adapt handling of parameter attributes to use the new ParamAttrsList class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35814 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateReid Spencer2007-04-094-498/+568
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35813 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateReid Spencer2007-04-095-2173/+2127
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35795 91177308-0d34-0410-b5e6-96231b3b80d8
* Drop the implementation keyword.Reid Spencer2007-04-092-14/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35794 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1289: RegenerateReid Spencer2007-03-302-0/+64
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35500 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1289:Reid Spencer2007-03-301-0/+32
| | | | | | | | | | Check at the end of the parse that there are no unresolved types and no undefined values. Issue errors if there are. This gets rid of the need for implementation or checkpoint by ensuring you can't finish a parse with undefined things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35499 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-295-448/+451
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35473 91177308-0d34-0410-b5e6-96231b3b80d8
* Give users a grace period on the implementation keyword. This *will* getReid Spencer2007-03-292-3/+3
| | | | | | | removed in a few days. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35472 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-285-451/+448
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35411 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace the "implementation" keyword with "checkpoint". This more accuratelyReid Spencer2007-03-282-3/+3
| | | | | | | | | describes its function as check against unresolved types and definitions. This is handy for forcing error messages in assembly test cases or otherwise ensuring that everything is resolved at that point in the assembly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35410 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-225-1546/+1580
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35259 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the noreturn and nounwind function attributes.Reid Spencer2007-03-222-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35258 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-202-176/+172
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35215 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't delete things before their last use (avoids bad reads).Reid Spencer2007-03-201-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35214 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-203-282/+320
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35199 91177308-0d34-0410-b5e6-96231b3b80d8
* Plug some PATypeHolder memory leaks.Reid Spencer2007-03-201-6/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35198 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-192-156/+146
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35183 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix test/Assembler/2007-03-19-NegValue.ll by using the new "isSigned"Reid Spencer2007-03-191-9/+4
| | | | | | | | parameter on ConstantInt::get to indicate the signedness of the intended value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35182 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-193-579/+607
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35174 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1248:Reid Spencer2007-03-191-155/+169
| | | | | | | | | | | | Eliminate support for type planes in numbered values. This simplifies the data structures involved in managing forward definitions, etc. Instead of requiring maps from type to value, we can now just use a vector of values. These changes also required rewrites of some support functions such as InsertValue, getBBVal, and ResolveDefinitions. Some other cosmetic changes were made as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35173 91177308-0d34-0410-b5e6-96231b3b80d8
* Add and Operator== method to ValID so equality can be done properly forReid Spencer2007-03-191-0/+20
| | | | | | | named or numbered ValIDs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35172 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-092-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35050 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1245:Reid Spencer2007-03-091-1/+1
| | | | | | | | Account for the sign bit when computing the number of bits required for a negative integer literal constant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35046 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-03-012-170/+156
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34797 91177308-0d34-0410-b5e6-96231b3b80d8
* Use a simpler constructor when constructing ConstantInt. Also, replaceReid Spencer2007-03-011-16/+9
| | | | | | | | verbose code to sext/trunc or zext/trunc and APInt with new methods on that class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34794 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-02-285-3362/+4592
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34716 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement arbitrary integer constants through the use of APInt values.Reid Spencer2007-02-281-13/+45
| | | | | | | | Positive, negative, and hexadecimal integer constants will now return an APInt for values having > 64 bits of precision. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34715 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement support for aribrary precision integers by creating two newReid Spencer2007-02-281-2/+41
| | | | | | | | | tokens: ESAPINTVAL and EUAPINTVAL and adding an APInt* as a semantic value. This allows us to extend the definition of an integer constant to allow arbitrary precision integer constant values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34714 91177308-0d34-0410-b5e6-96231b3b80d8
* remove dead methodsChris Lattner2007-02-193-4290/+3215
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34419 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1195:Reid Spencer2007-02-151-8/+10
| | | | | | | | Change use of "packed" term to "vector" in comments, strings, variable names, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34300 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1195:Reid Spencer2007-02-154-3229/+4308
| | | | | | | | Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34293 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate use of vector ctorsChris Lattner2007-02-134-4473/+3220
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34221 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2007-02-133-3217/+4472
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34212 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate use of methods that take vectors as argsChris Lattner2007-02-131-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34211 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2007-02-113-4275/+3198
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34188 91177308-0d34-0410-b5e6-96231b3b80d8
* add #includeChris Lattner2007-02-111-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34187 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR411:Reid Spencer2007-02-055-552/+608
| | | | | | | | | | | This patch replaces the SymbolTable class with ValueSymbolTable which does not support types planes. This means that all symbol names in LLVM must now be unique. The patch addresses the necessary changes to deal with this and removes code no longer needed as a result. This completes the bulk of the changes for this PR. Some cleanup patches will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33918 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-02-052-18/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33912 91177308-0d34-0410-b5e6-96231b3b80d8
* ! removal was a little over zealous. Put the ! back in asserts.Reid Spencer2007-02-051-9/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33911 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2007-02-052-204/+204
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33909 91177308-0d34-0410-b5e6-96231b3b80d8
* There is nothing exclamatory about an error message. No other compilerReid Spencer2007-02-051-102/+102
| | | | | | | or assembler uses ! at the end of every message. We shouldn't either. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33907 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes to support making the shift instructions be true BinaryOperators.Reid Spencer2007-02-027-4444/+5296
| | | | | | | | | | | | | This feature is needed in order to support shifts of more than 255 bits on large integer types. This changes the syntax for llvm assembly to make shl, ashr and lshr instructions look like a binary operator: shl i32 %X, 1 instead of shl i32 %X, i8 1 Additionally, this should help a few passes perform additional optimizations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33776 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2007-01-313-4305/+3217
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33696 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate a temporary vectorChris Lattner2007-01-311-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33695 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-304-1193/+1019
| | | | | | | confusion with external linkage types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateAnton Korobeynikov2007-01-283-3599/+3980
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33599 91177308-0d34-0410-b5e6-96231b3b80d8
* Propagate changes from my local tree. This patch includes:Anton Korobeynikov2007-01-284-14/+16
| | | | | | | | | | | | | | | | | | | | | | | | 1. New parameter attribute called 'inreg'. It has meaning "place this parameter in registers, if possible". This is some generalization of gcc's regparm(n) attribute. It's currently used only in X86-32 backend. 2. Completely rewritten CC handling/lowering code inside X86 backend. Merged stdcall + c CCs and fastcall + fast CC. 3. Dropped CSRET CC. We cannot add struct return variant for each target-specific CC (e.g. stdcall + csretcc and so on). 4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in on first attribute has meaning 'This is hidden pointer to structure return. Handle it gently'. 5. Fixed small bug in llvm-extract + add new feature to FunctionExtraction pass, which relinks all internal-linkaged callees from deleted function to external linkage. This will allow further linking everything together. NOTEs: 1. Documentation will be updated soon. 2. llvm-upgrade should be improved to translate csret => sret. Before this, there will be some unexpected test fails. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33597 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate for PR645 and PR761Reid Spencer2007-01-265-3581/+3787
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33525 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR645:Reid Spencer2007-01-263-157/+173
| | | | | | | | | | | | | | | Implement separation of local and global symbols. Local symbols and types now use % prefix. Global variables and functions now use @ prefix. For PR761: Replace: target endian = target pointersize = With: target datalayout = git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33524 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this error:Jeff Cohen2007-01-214-1580/+1357
| | | | | | | | | llvm[2]: Compiling llvmAsmParser.cpp for Debug build /usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y: In function 'int llvmAsmparse()': /usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y:1846: error: expected `;' before '}' token git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33425 91177308-0d34-0410-b5e6-96231b3b80d8