summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* set up the top-level parsing loop.Chris Lattner2009-06-213-0/+59
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73860 91177308-0d34-0410-b5e6-96231b3b80d8
* stub out parser for asm files. Change invariant on lexer to alwaysChris Lattner2009-06-215-14/+102
| | | | | | | | | print its error message when it returns an asmtok::Error token. Compute a proper error code for llvm-mc in 'lex' mode. Add new -as-lex option to enable lexing mode (vs parsing mode). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73859 91177308-0d34-0410-b5e6-96231b3b80d8
* add string literals.Chris Lattner2009-06-213-2/+35
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73858 91177308-0d34-0410-b5e6-96231b3b80d8
* hopefully fix the build on linux.Chris Lattner2009-06-211-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73857 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify some error recovery stuff.Chris Lattner2009-06-211-5/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73856 91177308-0d34-0410-b5e6-96231b3b80d8
* implement enough of a lexer to get through Olden/health/Output/health.llc.sChris Lattner2009-06-213-10/+184
| | | | | | | | without errors. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73855 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR4185.Rafael Espindola2009-06-212-2/+17
| | | | | | | | Handle FpSET_ST0_80 being used when ST0 is still alive. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73850 91177308-0d34-0410-b5e6-96231b3b80d8
* oh yeah, cmake needs to be told explicitly about new files :)Chris Lattner2009-06-211-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73849 91177308-0d34-0410-b5e6-96231b3b80d8
* some baby steps.Chris Lattner2009-06-213-2/+201
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73848 91177308-0d34-0410-b5e6-96231b3b80d8
* prune #include, fix warning.Chris Lattner2009-06-212-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73847 91177308-0d34-0410-b5e6-96231b3b80d8
* start wiring up support for asm parsing.Chris Lattner2009-06-211-12/+45
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73846 91177308-0d34-0410-b5e6-96231b3b80d8
* move include searching logic from TGLexer to SourceMgr.Chris Lattner2009-06-216-25/+40
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73845 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename TGSourceMgr -> SourceMgr.Chris Lattner2009-06-218-22/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73844 91177308-0d34-0410-b5e6-96231b3b80d8
* rename TGLoc -> SMLoc.Chris Lattner2009-06-218-66/+66
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73843 91177308-0d34-0410-b5e6-96231b3b80d8
* move TGSourceMgr class out of TableGen into libsupport.Chris Lattner2009-06-215-8/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73842 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify closing paren and (rip) printing.Chris Lattner2009-06-211-15/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73841 91177308-0d34-0410-b5e6-96231b3b80d8
* indentation fixChris Lattner2009-06-211-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73840 91177308-0d34-0410-b5e6-96231b3b80d8
* Expand this test to handle more cases (remainder and shifts) of zero.Nick Lewycky2009-06-212-8/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73839 91177308-0d34-0410-b5e6-96231b3b80d8
* fit in 80 colsChris Lattner2009-06-211-9/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73838 91177308-0d34-0410-b5e6-96231b3b80d8
* remove #if 0 codeChris Lattner2009-06-212-268/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73837 91177308-0d34-0410-b5e6-96231b3b80d8
* cosmetic changes.Chris Lattner2009-06-212-5/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73836 91177308-0d34-0410-b5e6-96231b3b80d8
* implement PR4424: 0/x is always 0 for integer division.Chris Lattner2009-06-212-0/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73835 91177308-0d34-0410-b5e6-96231b3b80d8
* change TLS_ADDR lowering to lower to a real mem operand, instead of matching asChris Lattner2009-06-207-11/+44
| | | | | | | | | | | | | | a global with that gets printed with the :mem modifier. All operands to lea's should be handled with the lea32mem operand kind, and this allows the TLS stuff to do this. There are several better ways to do this, but I went for the minimal change since I can't really test this (beyond make check). This also makes the use of EBX explicit in the operand list in the 32-bit, instead of implicit in the instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73834 91177308-0d34-0410-b5e6-96231b3b80d8
* no need for unwind infoChris Lattner2009-06-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73832 91177308-0d34-0410-b5e6-96231b3b80d8
* no need for unwind info here.Chris Lattner2009-06-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73831 91177308-0d34-0410-b5e6-96231b3b80d8
* remove dead code, the main codepath never has to dealChris Lattner2009-06-203-20/+0
| | | | | | | with MBB's. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73830 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate the "call" operand modifier from the asm descriptions, modelingChris Lattner2009-06-207-55/+223
| | | | | | | | it as a pcrel immediate instead. This gets pc-rel weirdness out of the main printoperand codepath. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73829 91177308-0d34-0410-b5e6-96231b3b80d8
* Clarify that if the alignment is zero then an alignmentDuncan Sands2009-06-201-6/+8
| | | | | | | | compatible with the type will be used (at least the ABI alignment). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73827 91177308-0d34-0410-b5e6-96231b3b80d8
* fix edit-oChris Lattner2009-06-201-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73824 91177308-0d34-0410-b5e6-96231b3b80d8
* some comments and cleanupChris Lattner2009-06-202-15/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73818 91177308-0d34-0410-b5e6-96231b3b80d8
* implement support for lowering subregs when preparing to print Chris Lattner2009-06-206-19/+78
| | | | | | | | | | LEA64_32r, eliminating a bunch of modifier logic stuff on addr modes. Implement support for printing mbb labels as operands. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73817 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR4419: handle defs of partial uses.Evan Cheng2009-06-202-7/+36
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73816 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unused field.Devang Patel2009-06-202-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73815 91177308-0d34-0410-b5e6-96231b3b80d8
* Initialize MMIDevang Patel2009-06-203-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73813 91177308-0d34-0410-b5e6-96231b3b80d8
* hook up printMemReference.Chris Lattner2009-06-201-4/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73811 91177308-0d34-0410-b5e6-96231b3b80d8
* Start implementing translation of MachineInstr to MCInst. NextChris Lattner2009-06-202-8/+371
| | | | | | | | | | step is to make tblgen generate something more appropriate for MCInst, and generate calls to operand translation routines where needed. This includes a bunch of #if 0 code which will slowly be refactored into something sensible. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73810 91177308-0d34-0410-b5e6-96231b3b80d8
* make immediates be int64_t like machineoperand. Add some apisChris Lattner2009-06-201-4/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73809 91177308-0d34-0410-b5e6-96231b3b80d8
* Tweak this test to be a little less unusual.Dan Gohman2009-06-201-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73808 91177308-0d34-0410-b5e6-96231b3b80d8
* Generalize isLoopGuardedByCond's checking to consider twoDan Gohman2009-06-202-3/+134
| | | | | | | | | | | SCEVUnknowns with identical Instructions to be equal. This allows it to analze cases such as the attached testcase, where the front-end has cloned the loop controlling expression. Along with r73805, this lets IndVarSimplify eliminate all the sign-extend casts in the loop in the attached testcase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73807 91177308-0d34-0410-b5e6-96231b3b80d8
* Workaround for an... interesting bug in Darwin's pthread_rwlock_init.Owen Anderson2009-06-201-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73806 91177308-0d34-0410-b5e6-96231b3b80d8
* Use ScalarEvolution's new GetMinSignBits and GetMinLeadingZerosDan Gohman2009-06-201-3/+6
| | | | | | | | in the loop backedge-taken count computation of the maximum possible trip count. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73805 91177308-0d34-0410-b5e6-96231b3b80d8
* Add debugging code to test for various locking faux-pas's, when running in ↵Owen Anderson2009-06-202-2/+38
| | | | | | | | | single threaded mode. This should help improve testing coverage for threading support, without having extensive actually concurrent clients yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73803 91177308-0d34-0410-b5e6-96231b3b80d8
* Forgot this file.Owen Anderson2009-06-201-8/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73802 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r73790, and replace it with a significantly less ugly solution. ↵Owen Anderson2009-06-207-475/+356
| | | | | | | | | | Rather than trying to make the global reader-writer lock work, create separate recursive mutexes for each value map. The recursive-ness fixes the double-acquiring issue, which having one per ValueMap lets us continue to maintain some concurrency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73801 91177308-0d34-0410-b5e6-96231b3b80d8
* stub out some hacky code for wiring up the new asmprinter interfacesChris Lattner2009-06-195-13/+99
| | | | | | | | on X86. Not useful yet. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73799 91177308-0d34-0410-b5e6-96231b3b80d8
* allow clients of the asmprinter to opt-out of the boilerplate with a #define.Chris Lattner2009-06-191-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73798 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo in a comment that Frits von Bommel noticed.Dan Gohman2009-06-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73796 91177308-0d34-0410-b5e6-96231b3b80d8
* Make GetMinTrailingZeros a member function of ScalarEvolution,Dan Gohman2009-06-192-22/+97
| | | | | | | | | | | | so that it can access the TargetData member (when available) and use ValueTracking.h information to compute information for SCEVUnknown Values. Also add GetMinLeadingZeros and GetMinSignBits functions, with minimal implementations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73794 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-apply r73718, now that the fix in r73787 is in, and add aDan Gohman2009-06-194-32/+66
| | | | | | | | hand-crafted testcase which demonstrates the bug that was exposed in 254.gap. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73793 91177308-0d34-0410-b5e6-96231b3b80d8
* DwarfWriter is used to emit EH info also.Devang Patel2009-06-191-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73792 91177308-0d34-0410-b5e6-96231b3b80d8