summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-upgrade
Commit message (Collapse)AuthorAgeFilesLines
* Regenerate.Reid Spencer2007-01-293-272/+342
| | | | llvm-svn: 33624
* For PR1142:Reid Spencer2007-01-291-4/+39
| | | | | | | | | | When an unresolved definition is found, check to see if it is only unresolved because the csretcc was upgraded to the sret param attribute. Such changes change the function type and lead to unresolved definitions. In such cases, just cast the function to the type expected by the CallInst. That is, cast to the version of the function that has the sret param attribute. llvm-svn: 33623
* Regenerate.Reid Spencer2007-01-293-1261/+1163
| | | | llvm-svn: 33615
* Upgrade old csret calling convention into sret parameter attribute.Reid Spencer2007-01-292-15/+60
| | | | llvm-svn: 33614
* Merge error at my side. Fixed.Anton Korobeynikov2007-01-284-294/+450
| | | | llvm-svn: 33601
* RegenerateAnton Korobeynikov2007-01-283-2078/+2370
| | | | llvm-svn: 33599
* Drop CSRET CCAnton Korobeynikov2007-01-282-126/+22
| | | | llvm-svn: 33598
* Regenerate.Reid Spencer2007-01-283-284/+388
| | | | llvm-svn: 33595
* For PR1137:Reid Spencer2007-01-281-10/+62
| | | | | | | | | | When a value is found to have the same name as another, try harder to disambiguate when its a type plane collapse issue and when it isn't. We traverse the type to see if it contains an integer. If it does not then we issue the error because it can't be resulting from integer type planes collapsing. Otherwise we just rename it, even if that's a bit of overkill. llvm-svn: 33594
* Regenerate.Reid Spencer2007-01-263-267/+271
| | | | llvm-svn: 33547
* Make sure that an upgraded index is also inserted into the VIndicesReid Spencer2007-01-261-1/+3
| | | | | | | | | | otherwise it gets ignored. This fixes test/CodeGen/X86/2006-05-11-InstrSched.ll Thanks to Evan Cheng for noticing this. llvm-svn: 33546
* Regenerate.Reid Spencer2007-01-263-538/+276
| | | | llvm-svn: 33545
* Ensure that gep_upgrade zext instructions we insert have unique names.Reid Spencer2007-01-261-1/+1
| | | | llvm-svn: 33544
* Remove extraneous ; to make some versions of bison happy.Reid Spencer2007-01-261-3/+3
| | | | llvm-svn: 33541
* Remove the SignedType class and other dead code. Improve comments.Reid Spencer2007-01-262-166/+13
| | | | llvm-svn: 33538
* Regenerate.Reid Spencer2007-01-267-6156/+9230
| | | | llvm-svn: 33532
* For All These Bugs:Reid Spencer2007-01-263-1948/+3459
| | | | | | | | | | | | | | | | | | | | | | | | | | PR645 PR761 PR1082 PR1122 Completely rewrite llvm-upgrade. This should be its final design. Any future changes will use this same design. The changes involve the following: 1. Make this work very much like the 1.9 AsmParser 2. Retain old upgrades dating back to release 1.2 time frame. 3. Merge in some of the upgrades between 1.9 and 2.0 (e.g. icmp/fcmp). 4. Attach a Signedness value (Signless, Unsigned, Signed) to every type, Value, Constant, Instruction, and list of those things in the Parser. Use these to make signedness decisions for instruction upgrades. 5. Implement unique name upgrade for function values and global values. 6. Identify rename cases that might cause problems and warn about them. For example: renaming a global variable with external linkage. 7. Generate a 2.0 IR using VMCore. This is necessary for numerous reasons and has the advantage that it never goes out of date. 8. Use the AsmPrinter to make the output nice. 9. Clean up error and warning messages from 1.9 form. llvm-svn: 33531
* Fix a bunch of missing semicolon parse errors from bison.Jeff Cohen2007-01-214-1552/+1334
| | | | llvm-svn: 33426
* Regenerate.Reid Spencer2007-01-155-844/+850
| | | | llvm-svn: 33227
* For PR1113:Reid Spencer2007-01-153-211/+215
| | | | | | | | | | | Increment the counter after the second use, not after the first use. This fixes PR1113. Also, rename some classes for simplicity and to more naturally be reminscient of LLVM 1.9. This in preparation for additional classes that will provide a scaled down model of the LLVM 1.9 IR. llvm-svn: 33226
* RegenerateReid Spencer2007-01-155-1029/+1476
| | | | llvm-svn: 33212
* Reorganize things a bit in preparation for rewrite. Although this looksReid Spencer2007-01-153-501/+574
| | | | | | | | | | | | | | | like a lot, its really only two changes: 1. Move stuff that should be private to .y out of the .h file. 2. Make all semantic values pointers. This cleans up the silly destroy methods and changes them to delete. It also moves the TypeInfo and ValueInfo classes into the .y where we can modify them more readily because they have no clients any more. This shouldn't result in any functional changes in llvm-upgrade. llvm-svn: 33211
* Regenerate.Reid Spencer2007-01-134-173/+173
| | | | llvm-svn: 33180
* Can't generate "bool" any more. Change to i1Reid Spencer2007-01-132-5/+5
| | | | llvm-svn: 33179
* Regenerate.Reid Spencer2007-01-132-26/+30
| | | | llvm-svn: 33172
* Don't attempt to upgrade argument to va.start and va.end if there are none.Reid Spencer2007-01-131-5/+7
| | | | llvm-svn: 33171
* Regenerate.Reid Spencer2007-01-132-2/+2
| | | | llvm-svn: 33169
* Regenerate.Reid Spencer2007-01-133-1280/+1341
| | | | llvm-svn: 33165
* For PR1093:Reid Spencer2007-01-131-5/+34
| | | | | | | Implement upgrading of the varargs intrinsics. These must now have i8* arguments. This patch bitcasts arguments to i8* and fixes the prototypes. llvm-svn: 33163
* Regenerate.Reid Spencer2007-01-123-660/+641
| | | | llvm-svn: 33140
* Remove support for upgrading NOT. The llvm-upgrade lexer didn't recognizeReid Spencer2007-01-121-6/+1
| | | | | | it either. NOT is just plain illegal now. llvm-svn: 33139
* Fix persistent conflict madness by removing these from cvs.Chris Lattner2007-01-123-8061/+0
| | | | llvm-svn: 33111
* For PR1043:Zhou Sheng2007-01-112-165/+165
| | | | | | | Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. llvm-svn: 33073
* Regenerate.Reid Spencer2007-01-073-74/+104
| | | | llvm-svn: 32987
* Upgrade the llvm.isunordered intrinsics to "fcmp uno" instruction.Reid Spencer2007-01-071-14/+24
| | | | llvm-svn: 32986
* Regenerate.Reid Spencer2007-01-065-571/+748
| | | | llvm-svn: 32955
* For PR1082:Reid Spencer2007-01-062-59/+122
| | | | | | | | Solve several related problems by making variable names more unique and dealing with recursive phi nodes. Unfortunately, this doesn't solve the main issue reported in the PR, but its a step in that direction. llvm-svn: 32953
* RegenerateReid Spencer2007-01-063-6/+6
| | | | llvm-svn: 32944
* For PR1080:Reid Spencer2007-01-061-2/+2
| | | | | | | | Emit the correct syntax for icmp and fcmp constant expressions. The predicate goes outside the parentheses not inside. This was a change made in the assembler without the corresponding change made in llvm-upgrade. llvm-svn: 32942
* Fix dependencies. The lexer depends on the grammar for the UpgradeParser.hReid Spencer2007-01-051-2/+1
| | | | | | | file so make it depend on the .y file as well. This ensures that in parallel builds the lexer is built after bison runs. llvm-svn: 32937
* RegenerateReid Spencer2007-01-058-6247/+9419
| | | | llvm-svn: 32908
* Adjust to new header file name.Reid Spencer2007-01-051-1/+1
| | | | llvm-svn: 32907
* Major update of llvm-upgrade:Reid Spencer2007-01-053-238/+534
| | | | | | | | | | | | | | | | | | | 1. Completely revise the type system so that types are handled as const objects and not created multiple times, cloned, or otherwise copied. This gets around memory issues, saves memory, and also emulates LLVM's no-two-types-of-the-same-shape-created semantics. 2. Adjust the handling of global names. Basically, we cannot rename them for a variety of reasons: linking, forward references, etc. 3. Detect global names that have name conflicts as the result of collapsed type planes or redefinitions that llvm-as no longer accepts. These will produce warnings on stderr and one of the globals will be renamed. 4. Rename ParserInternals.h as UpgradeInternals.h so it doesn't conflict in the debugger with ParserInternals.h from lib/AsmParser. 5. Move the guts of the TypeInfo class into the grammar so we aren't implementing large functions in a header file. This also helps with debugging a bit. llvm-svn: 32906
* regenerateChris Lattner2007-01-046-8133/+6026
| | | | llvm-svn: 32880
* If we hit a parse error, emit something bad to the output stream. This ↵Chris Lattner2007-01-041-0/+2
| | | | | | | | | | ensures that llvm-upgrade < foo | llvm-as | llvm-dis will fail if llvm-upgrade fails. llvm-svn: 32879
* Regenerate.Reid Spencer2007-01-036-500/+608
| | | | llvm-svn: 32848
* Implement many new type features including upreferences, proper retentionReid Spencer2007-01-031-4/+15
| | | | | | of structure contents, counts of packed and array types, etc. llvm-svn: 32847
* Finish implementation of variable renaming to handle collapsed type planesReid Spencer2007-01-031-35/+71
| | | | | | | | by correctly handling up references and enumerated types. Previously there was some confusion of these two. Thanks to Chris Lattner for demistifying llvm up references. llvm-svn: 32846
* Regenerate.Reid Spencer2007-01-023-211/+211
| | | | llvm-svn: 32817
* Permit signed and unsigned integer constants to be used with either signedReid Spencer2007-01-021-1/+1
| | | | | | or unsigned integer types. llvm-svn: 32816
OpenPOWER on IntegriCloud