aboutsummaryrefslogtreecommitdiffstats
path: root/lib/AsmParser
Commit message (Collapse)AuthorAgeFilesLines
* For PR950:Reid Spencer2006-10-205-3049/+4043
| | | | | | | | | This patch implements the first increment for the Signless Types feature. All changes pertain to removing the ConstantSInt and ConstantUInt classes in favor of just using ConstantInt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31063 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the new "target data" information in .ll files. This providesOwen Anderson2006-10-185-2372/+2224
| | | | | | | | | | a better encoding of the targets data layout, rather than trying to guess it from the endianness and pointersize like before. Update the generated files. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31031 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the new "target data" information in .ll files. This providesOwen Anderson2006-10-182-0/+7
| | | | | | | | a better encoding of the targets data layout, rather than trying to guess it from the endianness and pointersize like before. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31030 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-10-153-3858/+2870
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30971 91177308-0d34-0410-b5e6-96231b3b80d8
* Produce a useful error message for Regression/Verifier/2006-10-15-AddrLabel.llChris Lattner2006-10-151-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30970 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR886:Reid Spencer2006-10-094-2878/+3894
| | | | | | | | | | | The result of yyparse() was not being checked. When YYERROR or YYABORT is called it causes yyparse() to return 1 to indicate the error. The code was silently ignoring this situation because it previously expected either an exception or a null ParserResult to indicate an error. The patch corrects this situation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30834 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate ConstantBool::True and ConstantBool::False. Instead, provideChris Lattner2006-09-285-3868/+2876
| | | | | | | ConstantBool::getTrue() and ConstantBool::getFalse(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30665 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR902:Reid Spencer2006-09-284-1292/+1421
| | | | | | | | | | | | | | | Errors are generated with the YYERROR macro which can only be called from a production (inside yyparse) because of the goto statement in the macro. This lead to several situations where GEN_ERROR was not called but GenerateError was used instead (because it doesn't use YYERROR). However, in such situations, catching the error much later (e.g. at the end of the production) is not sufficient because LLVM can assert on invalid data before the end of the production is reached. The solution is to ensure that the CHECK_FOR_ERROR macro (which invokes YYERROR if there's an error) is used as soon as possible after a call to GenerateError has been made. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30650 91177308-0d34-0410-b5e6-96231b3b80d8
* Added some eye-candy for Subtarget type checkingAnton Korobeynikov2006-09-177-1607/+1684
| | | | | | | Added X86 StdCall & FastCall calling conventions. Codegen will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30446 91177308-0d34-0410-b5e6-96231b3b80d8
* Small fixes for supporting dll* linkage typesAnton Korobeynikov2006-09-173-110/+107
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30441 91177308-0d34-0410-b5e6-96231b3b80d8
* Adding generated files for the last commitAnton Korobeynikov2006-09-143-4054/+5507
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30375 91177308-0d34-0410-b5e6-96231b3b80d8
* Adding dllimport, dllexport and external weak linkage types.Anton Korobeynikov2006-09-144-30/+106
| | | | | | | | | | DLL* linkages got full (I hope) codegeneration support in C & both x86 assembler backends. External weak linkage added for future use, we don't provide any codegeneration, etc. support for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30374 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-08-184-3844/+2881
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29771 91177308-0d34-0410-b5e6-96231b3b80d8
* trivial optimizationChris Lattner2006-08-181-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29770 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a comment about the mechanisms used to rid AsmParser of exceptions.Reid Spencer2006-08-184-214/+244
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29769 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR797:Reid Spencer2006-08-181-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Actually turn on -fno-exceptions in libraries that do not have the REQUIRES_EH option in their Makefile. The following library file size savings were made (DEBUG): libLLVMDataStructure.a 525K libLLVMCore.a 380K libLLVMCodeGen.a 350K libLLVMTransformUtils.a 305K libLLVMScalarOpts.a 270K libLLVMAnalysis.a 247K libLLVMSelectionDAG.a 233K libLLVMipo.a 175K LLVMX86.o 123K LLVMPPC.o 81K libLLVMipa.a 17K TOTAL 2,706K Note that the savings is actually a little larger than this because I didn't count any of the libraries that had small changes. 2. Remove REQUIRES_EH from the AsmParser library as it is now exception free. This resulted in a nearly 78K drop in the size of the debug library for AsmParser. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29767 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR797:Reid Spencer2006-08-189-3256/+4729
| | | | | | | | | | | | | | Rid the Assembly Parser of exceptions. This is a really gross hack but it will do until the Assembly Parser is re-written as a recursive descent. The basic premise is that wherever the old "ThrowException" function was called (new name: GenerateError) we set a flag (TriggerError). Every production checks that flag and calls YYERROR if it is set. Additionally, each call to ThrowException in the grammar is replaced with GEN_ERROR which calls GenerateError and then YYERROR immediately. This prevents the remaining production from continuing after an error condition. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29763 91177308-0d34-0410-b5e6-96231b3b80d8
* These libs use EH infoChris Lattner2006-07-071-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29043 91177308-0d34-0410-b5e6-96231b3b80d8
* fix typoChris Lattner2006-06-212-187/+187
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28897 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix build on systems with bad bison'sChris Lattner2006-06-021-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28657 91177308-0d34-0410-b5e6-96231b3b80d8
* Use archive libraries instead of object files for VMCore, BCReader,Reid Spencer2006-06-011-0/+1
| | | | | | | | BCWriter, and bzip2 libraries. Adjust the various makefiles to accommodate these changes. This was done to speed up link times. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28610 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix grammar in a comment.Reid Spencer2006-05-291-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28534 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateChris Lattner2006-05-195-1442/+1455
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28407 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for parsing csretChris Lattner2006-05-192-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28406 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure CVS versions of yacc and lex files get distributed.Reid Spencer2006-04-121-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27630 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateChris Lattner2006-04-082-165/+143
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27526 91177308-0d34-0410-b5e6-96231b3b80d8
* Use isValidOperands instead of duplicating or eliding checks.Chris Lattner2006-04-081-19/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27525 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-04-082-731/+778
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27521 91177308-0d34-0410-b5e6-96231b3b80d8
* Add insertelement and shufflevector constantexpr supportChris Lattner2006-04-081-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27520 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-04-085-1090/+1117
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27512 91177308-0d34-0410-b5e6-96231b3b80d8
* Parse shufflevectorChris Lattner2006-04-082-1/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27511 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new generated files.Reid Spencer2006-03-231-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27013 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateChris Lattner2006-03-042-185/+185
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26522 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use invalidated iterators!Chris Lattner2006-03-041-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26521 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert this over to work with the new makefilesChris Lattner2006-02-153-181/+2617
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26206 91177308-0d34-0410-b5e6-96231b3b80d8
* random lexer change to test the makefile updating stuffChris Lattner2006-02-153-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26203 91177308-0d34-0410-b5e6-96231b3b80d8
* adjust to new style of handling lexer changesChris Lattner2006-02-142-111/+466
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26162 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-01-253-1302/+1339
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25619 91177308-0d34-0410-b5e6-96231b3b80d8
* Parse inline asm objectsChris Lattner2006-01-253-3/+56
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25618 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename methodChris Lattner2006-01-244-1141/+1180
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25571 91177308-0d34-0410-b5e6-96231b3b80d8
* syntax changeChris Lattner2006-01-242-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25567 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-01-233-3493/+2745
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25558 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for parsing global asm blocksChris Lattner2006-01-232-4/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25557 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure intrinsic auto-upgrade is invoked correctly.Reid Spencer2006-01-193-2178/+2961
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25434 91177308-0d34-0410-b5e6-96231b3b80d8
* Lexer and parser support for the insertelement operation.Robert Bocchino2006-01-175-3365/+2628
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25403 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR411:Reid Spencer2006-01-163-2170/+2957
| | | | | | | | | | | | | | | | | This patch is an incremental step towards supporting a flat symbol table. It de-overloads the intrinsic functions by providing type-specific intrinsics and arranging for automatically upgrading from the old overloaded name to the new non-overloaded name. Specifically: llvm.isunordered -> llvm.isunordered.f32, llvm.isunordered.f64 llvm.sqrt -> llvm.sqrt.f32, llvm.sqrt.f64 llvm.ctpop -> llvm.ctpop.i8, llvm.ctpop.i16, llvm.ctpop.i32, llvm.ctpop.i64 llvm.ctlz -> llvm.ctlz.i8, llvm.ctlz.i16, llvm.ctlz.i32, llvm.ctlz.i64 llvm.cttz -> llvm.cttz.i8, llvm.cttz.i16, llvm.cttz.i32, llvm.cttz.i64 New code should not use the overloaded intrinsic names. Warnings will be emitted if they are used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25366 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate these files. FreeBSD apparently has issues with the version ofChris Lattner2006-01-112-281/+281
| | | | | | | lex/bison Rob used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25196 91177308-0d34-0410-b5e6-96231b3b80d8
* Added lexer and parser support for the extractelement operation.Robert Bocchino2006-01-105-1106/+1164
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25177 91177308-0d34-0410-b5e6-96231b3b80d8
* RegenerateChris Lattner2005-12-211-121/+127
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24908 91177308-0d34-0410-b5e6-96231b3b80d8
* allow logical operators on packed integral typesChris Lattner2005-12-211-4/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24907 91177308-0d34-0410-b5e6-96231b3b80d8