aboutsummaryrefslogtreecommitdiffstats
path: root/lib/AsmParser
Commit message (Collapse)AuthorAgeFilesLines
...
* Regenerate.Reid Spencer2006-12-014-196/+184
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32053 91177308-0d34-0410-b5e6-96231b3b80d8
* Introducing external weak linkage. Darwin codegen should be added later.Anton Korobeynikov2006-12-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32052 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed #include <iostream> and used llvm streamsBill Wendling2006-11-281-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31984 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2006-11-283-586/+678
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31965 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement signedness caching for values, value lists, constants andReid Spencer2006-11-283-205/+253
| | | | | | | | | | | | constant lists. This is just an internal change to the parser in preparation for some backwards compatibility code that is to follow. This will allow things like "uint 4000000000" to retain the unsignedness of the integer constant as the value moves through the parser. In the future, all integer types will be signless but parsing "uint" and friends will be retained for backwards compatibility. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31964 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR950:Reid Spencer2006-11-278-2152/+2569
| | | | | | | | | | | The long awaited CAST patch. This introduces 12 new instructions into LLVM to replace the cast instruction. Corresponding changes throughout LLVM are provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the exception of 175.vpr which fails only on a slight floating point output difference. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31931 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR950:Reid Spencer2006-11-193-215/+277
| | | | | | | | | | Retain the signedness of the old integer types in a new TypeInfo structure so that it can be used in the grammar to implement auto-upgrade of things that depended on signedness of types. This doesn't implement any new functionality in the AsmParser, its just plumbing for future changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31866 91177308-0d34-0410-b5e6-96231b3b80d8
* Initialize some pointers to quiet the compiler (when doing build_gccBill Wendling2006-11-121-2/+2
| | | | | | | builds). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31694 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR950:Reid Spencer2006-11-085-2913/+3999
| | | | | | | | | This patch converts the old SHR instruction into two instructions, AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not dependent on the sign of their operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31542 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-11-084-4045/+3042
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31539 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a bug noticed by Emil Mikulic.Chris Lattner2006-11-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31538 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR786:Reid Spencer2006-11-025-1731/+1844
| | | | | | | | | | | Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31380 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR950:Reid Spencer2006-11-022-8/+19
| | | | | | | Replace the REM instruction with UREM, SREM and FREM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31369 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR950:Reid Spencer2006-10-266-1196/+1359
| | | | | | | | | Make necessary changes to support DIV -> [SUF]Div. This changes llvm to have three division instructions: signed, unsigned, floating point. The bytecode and assembler are bacwards compatible, however. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31195 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed extraneous semi-colon; this was prevening the grammar file fromJohn Criswell2006-10-242-2/+2
| | | | | | | bison'ing correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31169 91177308-0d34-0410-b5e6-96231b3b80d8
* Regenerate.Reid Spencer2006-10-223-2885/+3870
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31111 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneeded CHECK_FOR_ERROR invocations.Reid Spencer2006-10-221-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31110 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2006-10-225-4288/+3300
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31109 91177308-0d34-0410-b5e6-96231b3b80d8
* change keyword to datalayoutChris Lattner2006-10-222-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31108 91177308-0d34-0410-b5e6-96231b3b80d8
* 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