summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)AuthorFilesLines
2007-01-13Regenerate.Reid Spencer4-173/+173
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33180 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13Can't generate "bool" any more. Change to i1Reid Spencer2-5/+5
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33179 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13Regenerate.Reid Spencer2-26/+30
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33172 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13Don't attempt to upgrade argument to va.start and va.end if there are none.Reid Spencer1-5/+7
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33171 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13Regenerate.Reid Spencer2-2/+2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33169 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13Regenerate.Reid Spencer3-1280/+1341
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33165 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-13For PR1093:Reid Spencer1-5/+34
Implement upgrading of the varargs intrinsics. These must now have i8* arguments. This patch bitcasts arguments to i8* and fixes the prototypes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33163 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12Regenerate.Reid Spencer3-660/+641
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33140 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12Remove support for upgrading NOT. The llvm-upgrade lexer didn't recognizeReid Spencer1-6/+1
it either. NOT is just plain illegal now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33139 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12unbreak i1 constants with the cpp writer, eliminate special case.Chris Lattner1-6/+2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33133 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12For PR1064:Reid Spencer1-27/+24
Implement the arbitrary bit-width integer feature. The feature allows integers of any bitwidth (up to 64) to be defined instead of just 1, 8, 16, 32, and 64 bit integers. This change does several things: 1. Introduces a new Derived Type, IntegerType, to represent the number of bits in an integer. The Type classes SubclassData field is used to store the number of bits. This allows 2^23 bits in an integer type. 2. Removes the five integer Type::TypeID values for the 1, 8, 16, 32 and 64-bit integers. These are replaced with just IntegerType which is not a primitive any more. 3. Adjust the rest of LLVM to account for this change. Note that while this incremental change lays the foundation for arbitrary bit-width integers, LLVM has not yet been converted to actually deal with them in any significant way. Most optimization passes, for example, will still only deal with the byte-width integer types. Future increments will rectify this situation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33113 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12Fix persistent conflict madness by removing these from cvs.Chris Lattner3-8061/+0
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33111 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-12Implement review feedback for the ConstantBool->ConstantInt merge. ChrisReid Spencer1-1/+1
recommended that getBoolValue be replaced with getZExtValue and that get(bool) be replaced by get(const Type*, uint64_t). This implements those changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33110 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-11Rename BoolTy as Int1Ty. Patch by Sheng Zhou.Reid Spencer1-3/+3
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33076 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-11For PR1043:Zhou Sheng3-171/+172
Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33073 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-09Fixing a ">" redirect to be a ">>" redirect, so a sed command doesn't get ↵Chandler Carruth1-1/+1
clobbered. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33032 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-08Modules are consumed when they are merged together by Linker.Devang Patel1-0/+2
Clear modules vector so that destructure does not try to delete these modules again. Patch by Chandler Carruth. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33017 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-08fix atexit. This is an overcomplex way of calling exit, but it is required,Chris Lattner1-3/+16
as the jit intercepts exit calls to implement atexit handlers. This fixes SingleSource/UnitTests/2003-05-14-AtExit git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33008 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-08Build libLLVMlto on non-Darwin architectures. Resolves PR1055: ↵Chandler Carruth3-5/+12
http://llvm.org/PR1055 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33006 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-07relax typeChris Lattner1-1/+1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32990 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-07Regenerate.Reid Spencer3-74/+104
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32987 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-07Upgrade the llvm.isunordered intrinsics to "fcmp uno" instruction.Reid Spencer1-14/+24
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32986 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-07this is an overcomplex way to call exit :)Chris Lattner1-12/+1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32978 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06Add C wrappers for the LTO library (PR1081). Patch by Chandler Carruth!Chris Lattner1-0/+66
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32966 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06fix typoChris Lattner1-1/+1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32965 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06For PR411:Reid Spencer2-9/+10
Take an incremental step towards type plane elimination. This change separates types from values in the symbol tables by finally making use of the TypeSymbolTable class. This yields more natural interfaces for dealing with types and unclutters the SymbolTable class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32956 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06Regenerate.Reid Spencer5-571/+748
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32955 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06For PR1082:Reid Spencer2-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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32953 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06Add an option for getting the C compiler flags, --cflags.Reid Spencer2-0/+6
Patch contributed by Chandler Carruth git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32950 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06RegenerateReid Spencer3-6/+6
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32944 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-06For PR1080:Reid Spencer1-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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32942 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05Fix dependencies. The lexer depends on the grammar for the UpgradeParser.hReid Spencer1-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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32937 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05RegenerateReid Spencer8-6247/+9419
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32908 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05Adjust to new header file name.Reid Spencer1-1/+1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32907 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-05Major update of llvm-upgrade:Reid Spencer3-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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32906 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-04regenerateChris Lattner6-8133/+6026
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32880 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-04If we hit a parse error, emit something bad to the output stream. This ↵Chris Lattner1-0/+2
ensures that llvm-upgrade < foo | llvm-as | llvm-dis will fail if llvm-upgrade fails. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32879 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-03Regenerate.Reid Spencer6-500/+608
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32848 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-03Implement many new type features including upreferences, proper retentionReid Spencer1-4/+15
of structure contents, counts of packed and array types, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32847 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-03Finish implementation of variable renaming to handle collapsed type planesReid Spencer1-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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32846 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-03A bit more debugging printf's.Evan Cheng1-0/+10
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32832 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-02Regenerate.Reid Spencer3-211/+211
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32817 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-02Permit signed and unsigned integer constants to be used with either signedReid Spencer1-1/+1
or unsigned integer types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32816 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-02Regenerate.Reid Spencer8-1574/+1967
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32811 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-02For PR1070:Reid Spencer3-313/+563
Revise the upgrade parser to keep track of types more faithfully and use this information to resolve name conflicts resulting from collapsed type planes. The type planes have collapsed because the integer types are now signless so that uint and int became i32. Where two planes existed for uint and int, only i32 exists. Any variable names depending on the type planes to pmake the identifier unique would cause a conflict. This patch resolves that conflict for many but not all cases. Situations involving the integer types and pointers to them are handled by this patch. However, there are corner cases that are not handled well, such as: %t1 = type { uint, int } %t2 = type { int, uint } void %myfunc(%t1* one, %t2* two) { %var = load %t1* one %var = load %t2* two } In the scenario above, %t1 and %t2 are really the same type: { i32, i32 } Consequently attempting to name %var twice will yield a redefinition error when assembled. While this patch is sufficien to allow the llvm/test suite to pass, More work needs to be to complete the handling of these corner cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32810 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-01Regenerate.Reid Spencer5-400/+493
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32805 91177308-0d34-0410-b5e6-96231b3b80d8
2007-01-01For PR1070:Reid Spencer1-2/+33
Remove useless bitcasts by commenting them out. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32804 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31For PR950:Reid Spencer14-4503/+4485
Convert signed integer types to signless. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32790 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-31For PR950:Reid Spencer2-30/+29
Don't attempt to parse both the old and new grammars. It is near impossible to get it right. Remove support for the new define keyword and don't attempt to insert parameter attributes because there isn't enough contextual information for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32784 91177308-0d34-0410-b5e6-96231b3b80d8
2006-12-29Regenerate.Reid Spencer8-4461/+4610
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32772 91177308-0d34-0410-b5e6-96231b3b80d8