summaryrefslogtreecommitdiffstats
path: root/lib/AsmParser
Commit message (Collapse)AuthorAgeFilesLines
* * Remove trailing whitespaceMisha Brukman2005-04-212-15/+15
| | | | | | | * Convert tabs to spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21415 91177308-0d34-0410-b5e6-96231b3b80d8
* fix PR549Chris Lattner2005-04-191-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21360 91177308-0d34-0410-b5e6-96231b3b80d8
* don't crash in some bad cases.Chris Lattner2005-03-231-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20776 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a bunch of cruft and dead code for handling the case when types wereChris Lattner2005-03-211-48/+30
| | | | | | | | | | | | | | | | | | defined in function constant pools. The assembler grammar has long disallowed functions from having constant pools, so all of this stuff is dead. This makes it an immediate error for functions to refer to nonexisting types, fixing Regression/Verifier/2005-03-21-UndefinedTypeReference.ll. Before, references to non-existing types in functions would only be detected when the subsequent function was parsed, due to the call to "ResolveTypes". "ResolveTypes" has not resolved any types for a long time, instead it emitted an error message if no resolved types are left. Since the only caller of this method is in the module code, just inline it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20726 91177308-0d34-0410-b5e6-96231b3b80d8
* This mega patch converts us from using Function::a{iterator|begin|end} toChris Lattner2005-03-151-6/+6
| | | | | | | | | using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*. This patch is contributed by Gabor Greif, thanks! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20597 91177308-0d34-0410-b5e6-96231b3b80d8
* zapChris Lattner2005-03-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20461 91177308-0d34-0410-b5e6-96231b3b80d8
* add more checkingChris Lattner2005-02-241-2/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20296 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not read free'd memory when printing an error message.Chris Lattner2005-02-241-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20295 91177308-0d34-0410-b5e6-96231b3b80d8
* C++ is not a functional programming language.Chris Lattner2005-02-221-5/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20274 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix test/Regression/Assembler/2005-01-31-CallingAggregateFunction.llChris Lattner2005-02-011-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19966 91177308-0d34-0410-b5e6-96231b3b80d8
* Apparently := confuses makellvmChris Lattner2005-02-011-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19965 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust to slight changes in instruction interfaces.Chris Lattner2005-01-291-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19893 91177308-0d34-0410-b5e6-96231b3b80d8
* Silence VS warnings.Chris Lattner2005-01-081-3/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19390 91177308-0d34-0410-b5e6-96231b3b80d8
* Do not allow empty label names.Alkis Evlogimenos2004-12-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18743 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement test/Feature/escaped_label.llChris Lattner2004-12-101-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18741 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for compilers with arg dependent name lookup, contributed byChris Lattner2004-12-081-1/+2
| | | | | | | Bjørn Wennberg git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18628 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR409: \Reid Spencer2004-12-061-0/+2
| | | | | | | | Make sure to check isValueValidForType on floating point constants and give \ an error if the value is not valid, otherwise it would assert in the VMCore git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18584 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR463Chris Lattner2004-11-281-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18303 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure that the yacc and lex output are specified as BUILT_SOURCES.Reid Spencer2004-10-281-8/+7
| | | | | | | | | Correct the dependency of the Lexer.o file on the constructed llvmAsmParser.h header file. It is not the Lexer.cpp file that depends on the header, its the output of compiling Lexer.cpp, Lexer.o git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17289 91177308-0d34-0410-b5e6-96231b3b80d8
* Change Library Names Not To Conflict With Others When InstalledReid Spencer2004-10-271-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17286 91177308-0d34-0410-b5e6-96231b3b80d8
* Plug a memory leak in the asmparser. It turns out that we were leakingChris Lattner2004-10-261-1/+1
| | | | | | | | the strings for basic block labels in some cases. This amounted to about 120K of memory for namd, a medium sized program. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17262 91177308-0d34-0410-b5e6-96231b3b80d8
* We won't use automakeReid Spencer2004-10-222-695/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17155 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial automake generated Makefile templateReid Spencer2004-10-181-0/+675
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17136 91177308-0d34-0410-b5e6-96231b3b80d8
* Parse undef and unreachableChris Lattner2004-10-163-4/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17053 91177308-0d34-0410-b5e6-96231b3b80d8
* Update to reflect changes in Makefile rules.Reid Spencer2004-10-131-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16950 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial version of automake Makefile.am file.Reid Spencer2004-10-101-0/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16885 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a check to avoid an assertion on malformed inputChris Lattner2004-10-091-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16861 91177308-0d34-0410-b5e6-96231b3b80d8
* Okay, the list of link-time passes wasn't such a hot idea. Its prone toReid Spencer2004-09-142-17/+1
| | | | | | | | error. We'll strategize on this when we have multiple front ends to deal with. For now llvm-ld just runs a standard set of transforms. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16333 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for the link-time pass list to Modules.Reid Spencer2004-09-132-1/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16321 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes For Bug 352Reid Spencer2004-09-012-2/+2
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
* Examine the type code in the setcc class of instructions and if itReid Spencer2004-08-211-0/+4
| | | | | | | | | is a PackedType, throw an error. Temporary solution. Patch contributed by Brad Jones. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15963 91177308-0d34-0410-b5e6-96231b3b80d8
* quish a warningChris Lattner2004-08-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15954 91177308-0d34-0410-b5e6-96231b3b80d8
* Packed types, brought to you by Brad JonesBrian Gaeke2004-08-201-2/+68
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15938 91177308-0d34-0410-b5e6-96231b3b80d8
* Work around PR424 for old c/c++ frontends.Chris Lattner2004-08-171-3/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15882 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge i*.h headers into Instructions.h as part of bug403.Alkis Evlogimenos2004-07-292-7/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15325 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug in previous patch :(Chris Lattner2004-07-261-6/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15226 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix an extremely serious regression that was causing LLVM basic blocks to beChris Lattner2004-07-261-0/+6
| | | | | | | scrambled around almost at random, having really bad effects on icache locality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15225 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust to new Module.h interface for dependent librariesReid Spencer2004-07-251-8/+7
| | | | | | | Remove mem leaks resulting from not freeing parse strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15217 91177308-0d34-0410-b5e6-96231b3b80d8
* bug 263:Reid Spencer2004-07-251-1/+22
| | | | | | | Provide parsing for the target triple and dependent libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15209 91177308-0d34-0410-b5e6-96231b3b80d8
* bug 263:Reid Spencer2004-07-251-0/+2
| | | | | | | Provide new tokens for target triples and dependent libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15208 91177308-0d34-0410-b5e6-96231b3b80d8
* bug 122:Reid Spencer2004-07-181-48/+47
| | | | | | | | | | | - Replace ConstantPointerRef usage with GlobalValue usage - Minimize redundant isa<GlobalValue> usage - Correct isa<Constant> for GlobalValue subclass - Remove tabs - Fix coments refering to ConstantPointerRef git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14937 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the regressions handling unnamed global variablesChris Lattner2004-07-161-2/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14870 91177308-0d34-0410-b5e6-96231b3b80d8
* This is logically part of the last patch. Just more really horrible codeChris Lattner2004-07-141-17/+0
| | | | | | | that is made unnecessary by it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14831 91177308-0d34-0410-b5e6-96231b3b80d8
* ** Finally DeclareNewGlobalValue is dead!Chris Lattner2004-07-141-125/+90
| | | | | | | | | | | | | | | | | | | | | * Simplify a lot of code because type's cannot be in function symbol tables * Fix memory leaks in handling of redefined function prototypes * Don't use SymbolTable directly for stuff that we can go through the Module for. * Fix some minor bugs on obscure testcases like: test/Feature/globalredefinition.ll * Do not create GlobalVariable objects for forward referenced Functions! * When forward referencing a function in a constant expression, do not create a placeholder, add a bunch of references to it, then turn around and replaceAllUsesOfWith on it with a new global, deleting the placeholder. Instead, when we find the real definition of the global, just use the placeholder instead of creating a new object. This substantially simplifies the asmwriter and should even speed it up on cases heavy in constantexprs (like C++, Java, MSIL)... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14830 91177308-0d34-0410-b5e6-96231b3b80d8
* * Fairly substantial change. Instead of creating new globalvariables, thenChris Lattner2004-07-141-14/+49
| | | | | | | | | | | replaceAllUsesWith'ing any forward references, just use the forward reference if it exists. This introduces GetForwardRefForGlobal, which will eventually completely replace the horrible DeclareNewGlobalValue function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14828 91177308-0d34-0410-b5e6-96231b3b80d8
* Fold setValueNameMergingDuplicates into ParseGlobalVariable, allowing usChris Lattner2004-07-141-55/+38
| | | | | | | | | | | | to substantially simplify the result. In particular, we no longer create GlobalVariables and then immediately destroy them when they are duplciate definitions. The real point of this patch though is that it gets us closer to the DeclareNewGlobalValue calls... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14827 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a regression from last night. Apparently the CFE is broken and outputsChris Lattner2004-07-141-6/+16
| | | | | | | | functions multiple times, expecting them to be merged. This should be fixed in the CFE, then here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14823 91177308-0d34-0410-b5e6-96231b3b80d8
* Pull out code shared between GV forward-decl and definition processing.Chris Lattner2004-07-141-50/+37
| | | | | | | | This gives us only a single call site for setValueNameMergingDuplicates. The next stage is the start merging them together. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14811 91177308-0d34-0410-b5e6-96231b3b80d8
* Simplify code. Do not allow functions to be redefined more than once.Chris Lattner2004-07-141-26/+9
| | | | | | | | Since the stupid '%X = const int 4' thing is gone, we can now simplify setValueNameMergingDuplicates a bit more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14810 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a gross and crufty "feature" that was never documented and doesn't work.Chris Lattner2004-07-142-7/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14809 91177308-0d34-0410-b5e6-96231b3b80d8