aboutsummaryrefslogtreecommitdiffstats
path: root/lib/AsmParser/llvmAsmParser.y
Commit message (Collapse)AuthorAgeFilesLines
* Allow parsing select instruction and constant exprChris Lattner2004-03-121-1/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12313 91177308-0d34-0410-b5e6-96231b3b80d8
* Insert functions into the module promptly, not lazily. This fixes a bugChris Lattner2004-03-081-11/+2
| | | | | | | I introduced last night. Note to self: test the *correct* tree... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12220 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate a REALLY HORRIBLE API: mutateReferences, which is gross gross gross.Chris Lattner2004-03-081-5/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12212 91177308-0d34-0410-b5e6-96231b3b80d8
* It turns out that the two dimensional vectors were causing big slowdownsChris Lattner2004-02-091-32/+34
| | | | | | | | | | | | | | | | | | in this for programs with lots of types (like the testcase in PR224). The problem was that the type ID that the outer vector was using was not very dense (as many types are getting resolved), so the vector is large and gets reallocated a lot. Since there are a lot of values in the program (the .ll file is 10M), each reallocation has to copy the subvectors, which is also quite slow (this wouldn't be a problem if C++ supported move semantics, but it doesn't, at least not yet :( Changing the outer data structure to a map speeds a release build of llvm-as up from 11.21s to 5.13s on the testcase in PR224. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11244 91177308-0d34-0410-b5e6-96231b3b80d8
* When resolving upreferences, if multiple uprefs will be resolved to the sameChris Lattner2004-02-091-6/+24
| | | | | | | | | type at the same time, resolve the upreferences to each other before resolving it to the outer type. This shaves off some time from the testcase in PR224, from 25.41s -> 21.72s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11241 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust to the changed StructType interface. In particular, ↵Chris Lattner2004-02-091-2/+2
| | | | | | getElementTypes() is gone. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11228 91177308-0d34-0410-b5e6-96231b3b80d8
* Start using the new and improve interface to FunctionType argumentsChris Lattner2004-02-091-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11224 91177308-0d34-0410-b5e6-96231b3b80d8
* This #include is not needed, it should have been removed with the last patchChris Lattner2004-02-091-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11222 91177308-0d34-0410-b5e6-96231b3b80d8
* Instead of searching the entire type graph for a type to determine if itChris Lattner2004-02-091-8/+29
| | | | | | | | | | | | contains the type we are looking for, just search the immediately used types. We can only do this because we keep the "current" type in the nesting level as we decrement upreferences. This change speeds up the testcase in PR224 from 50.4s to 22.08s, not too shabby. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11221 91177308-0d34-0410-b5e6-96231b3b80d8
* Upreferences are always OpaqueTypes, meaning that it is impossible for a ↵Chris Lattner2004-02-091-0/+1
| | | | | | | | | | non-abstract type from containing one. This speeds up the asmparser on the testcase in PR224 from 61->50s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11220 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the 'exception' destination to the 'unwind' destination. We will alwaysChris Lattner2004-02-081-2/+2
| | | | | | | allow 'except' instead of 'unwind' here though. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11203 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't use ConstantExpr::getShift anymoreChris Lattner2004-01-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10791 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor code cleanups. The only bugfix is to the UR_DEBUG stuff which didn'tChris Lattner2003-12-311-15/+20
| | | | | | | compile when enabled. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10657 91177308-0d34-0410-b5e6-96231b3b80d8
* Right, fix the problem with invoke instructions, not just call instructionsChris Lattner2003-12-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10599 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not delete the type holder until after the call instruction has beenChris Lattner2003-12-231-1/+1
| | | | | | | constructed! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10598 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanups, plug a minor memory leakChris Lattner2003-12-231-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10596 91177308-0d34-0410-b5e6-96231b3b80d8
* To not barf when an error occurs.Chris Lattner2003-11-261-9/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10236 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR147Chris Lattner2003-11-251-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10204 91177308-0d34-0410-b5e6-96231b3b80d8
* Check return types of functionsChris Lattner2003-11-211-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10146 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't crash on bogus source valueChris Lattner2003-11-211-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10132 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug PR107, patch contributed by Reid Spencer!Chris Lattner2003-11-121-1/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9911 91177308-0d34-0410-b5e6-96231b3b80d8
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-27/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure that PHI node operands are first class typesChris Lattner2003-10-301-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9607 91177308-0d34-0410-b5e6-96231b3b80d8
* Added LLVM copyright header.John Criswell2003-10-211-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9321 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the Opcode enum for PHI nodes from "Instruction::PHINode" to ↵Chris Lattner2003-10-191-2/+2
| | | | | | "Instruction::PHI" to be more consistent with the other instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9269 91177308-0d34-0410-b5e6-96231b3b80d8
* New revised variable argument handling supportChris Lattner2003-10-181-3/+104
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9219 91177308-0d34-0410-b5e6-96231b3b80d8
* Tighten up handling of checks for shift instructionsChris Lattner2003-10-171-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9191 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanupsChris Lattner2003-10-161-30/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9177 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for 'weak' linkage.Chris Lattner2003-10-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9171 91177308-0d34-0410-b5e6-96231b3b80d8
* Decrease usage of use_size()Chris Lattner2003-10-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9135 91177308-0d34-0410-b5e6-96231b3b80d8
* Regularize header file commentsChris Lattner2003-10-131-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9071 91177308-0d34-0410-b5e6-96231b3b80d8
* Reserve space for PHI operandsChris Lattner2003-10-101-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9007 91177308-0d34-0410-b5e6-96231b3b80d8
* Accept 'weak' as a linkage type. For now, just turn it into linkonce linkageChris Lattner2003-10-101-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8998 91177308-0d34-0410-b5e6-96231b3b80d8
* Add better checkingChris Lattner2003-10-101-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8996 91177308-0d34-0410-b5e6-96231b3b80d8
* The objects mapped are really PATypeHolders, not PATypeHandlesChris Lattner2003-10-021-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8822 91177308-0d34-0410-b5e6-96231b3b80d8
* Oops, look at the VOLATILE marker, not the opcodeChris Lattner2003-09-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8413 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the unwind instructionChris Lattner2003-09-081-2/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8408 91177308-0d34-0410-b5e6-96231b3b80d8
* Parse volatile loads/storesChris Lattner2003-09-081-17/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8402 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove gross old hacky code that was in there for backwards compatibilityChris Lattner2003-09-011-56/+9
| | | | | | | 1 year is plenty of migration time! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8282 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename SwitchInst::dest_push_back -> addCaseChris Lattner2003-08-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8089 91177308-0d34-0410-b5e6-96231b3b80d8
* Accept double quoted strings everwhere we accept a %ABC variable name.Chris Lattner2003-08-221-10/+8
| | | | | | | | | This introduces one more innoculous shift-reduce conflict, but will REALLY help the type names generated by the C++ frontend, which wants to use all kinds of crazy stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8050 91177308-0d34-0410-b5e6-96231b3b80d8
* Spell `necessary' correctly.Misha Brukman2003-08-181-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7944 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove redundant const qualifiers from cast<> expressionsChris Lattner2003-07-231-10/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7253 91177308-0d34-0410-b5e6-96231b3b80d8
* The word `separate' only has one `e'.Misha Brukman2003-07-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7173 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for a new zeroinitializer token which can be used to get rid ofChris Lattner2003-06-281-1/+6
| | | | | | | huge arrays of zero initialized values git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6937 91177308-0d34-0410-b5e6-96231b3b80d8
* Detemplatize the PATypeHandle class, which was only really instantiated on ↵Chris Lattner2003-06-181-2/+2
| | | | | | 'Type'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6774 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bugs:Chris Lattner2003-05-211-1/+3
| | | | | | | | Assembler/2003-05-21-MalformedShiftCrash.llx Assembler/2003-05-21-ConstantShiftExpr.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6258 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bugs:Chris Lattner2003-05-211-0/+15
| | | | | | | | Assembler/2003-05-21-EmptyStructTest.ll Assembler/2003-05-21-MalformedStructCrash.llx git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6255 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: Assembler/2003-05-15-SwitchBug.llChris Lattner2003-05-151-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6239 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the new va_arg instructionChris Lattner2003-05-081-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6029 91177308-0d34-0410-b5e6-96231b3b80d8