summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* don't discriminate against boolChris Lattner2007-01-121-1/+1
| | | | llvm-svn: 33128
* remove unneeded special casesChris Lattner2007-01-121-7/+0
| | | | llvm-svn: 33127
* GEP operands can't be boolsChris Lattner2007-01-121-6/+3
| | | | llvm-svn: 33125
* Simplify codeChris Lattner2007-01-121-4/+1
| | | | llvm-svn: 33123
* Remove dead code.Devang Patel2007-01-121-225/+26
| | | | llvm-svn: 33121
* Regenerate.Reid Spencer2007-01-122-79/+79
| | | | llvm-svn: 33117
* Integer type names need 1 or more digits, not zero or more.Reid Spencer2007-01-121-1/+1
| | | | llvm-svn: 33116
* Always write 1 bit integers as i1 not "bool".Reid Spencer2007-01-121-5/+1
| | | | llvm-svn: 33115
* Comment.Evan Cheng2007-01-121-1/+1
| | | | llvm-svn: 33114
* For PR1064:Reid Spencer2007-01-1235-3305/+3906
| | | | | | | | | | | | | | | | | | | | | | | 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. llvm-svn: 33113
* Implement review feedback for the ConstantBool->ConstantInt merge. ChrisReid Spencer2007-01-1224-129/+168
| | | | | | | | recommended that getBoolValue be replaced with getZExtValue and that get(bool) be replaced by get(const Type*, uint64_t). This implements those changes. llvm-svn: 33110
* Store default libgcc routine names and allow them to be redefined by target.Evan Cheng2007-01-122-82/+205
| | | | llvm-svn: 33105
* If we know that it's a constant being casted, propagate through the castNick Lewycky2007-01-121-1/+10
| | | | | | | instruction. Doesn't work the other way though (can't recover bits that have been truncated). llvm-svn: 33104
* Clean up logic after ConstantBool removal.Nick Lewycky2007-01-121-20/+14
| | | | llvm-svn: 33096
* Start using PMStack. Now each pass is responsibe for assingingDevang Patel2007-01-111-28/+23
| | | | | | | | a pass manager for itself. There is some opportunity to remove some dead code from PassManager.cpp. llvm-svn: 33087
* Use getPassManagerType() instead of dynamic_cast.Devang Patel2007-01-111-18/+8
| | | | llvm-svn: 33078
* Rename BoolTy as Int1Ty. Patch by Sheng Zhou.Reid Spencer2007-01-1139-521/+521
| | | | llvm-svn: 33076
* Remove unnecessary boolean type check.Zhou Sheng2007-01-111-2/+1
| | | | llvm-svn: 33075
* For PR1043:Zhou Sheng2007-01-1135-1499/+1657
| | | | | | | Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. llvm-svn: 33073
* Fixed indentation.Zhou Sheng2007-01-111-4/+4
| | | | llvm-svn: 33072
* Shut up a warning about signed/unsigned.Reid Spencer2007-01-111-1/+1
| | | | llvm-svn: 33071
* simplify some logic furtherChris Lattner2007-01-111-11/+2
| | | | llvm-svn: 33069
* Recommit my previous patch with a bugfix: printInfoComment works on bothChris Lattner2007-01-111-63/+67
| | | | | | local and global values. llvm-svn: 33068
* Quiet compiler warning. The only reason the function is marked virtualNick Lewycky2007-01-111-0/+2
| | | | | | is so that it can be called from inside a debugger. llvm-svn: 33067
* New predicate simplifier!Nick Lewycky2007-01-111-974/+1155
| | | | | | Please do not enable, there is still some known miscompile problem. llvm-svn: 33066
* Add PassManagerType enum.Devang Patel2007-01-111-0/+12
| | | | llvm-svn: 33065
* Avoid taking the address of a macro by checking to see if stdin is definedReid Spencer2007-01-111-0/+4
| | | | | | or not. This allows DynamicLibrary.cpp to compile on Darwin. llvm-svn: 33064
* Implement better constant folding of unordered FCMP predicates.Reid Spencer2007-01-111-7/+27
| | | | llvm-svn: 33063
* Robustify assingPassManager() for Module, Function and Basic BlockDevang Patel2007-01-111-37/+73
| | | | | | | | | | Passes. Robustify PMStack.push() Add dump() routine to print PMStack. llvm-svn: 33062
* Allow LLI, in interpreter mode, to find stdin, stdout, and stderr. This isReid Spencer2007-01-101-2/+12
| | | | | | a bit of a hack but it lets some of the llvm-test programs run. llvm-svn: 33058
* Back out the last patch which is a nightly test killer. The assertionReid Spencer2007-01-101-63/+63
| | | | | | | | in getLocalSlot fires on many, many values. It broke nearly all of the dejagnu tests. Simple changes to the assertion did not fix the problem. llvm-svn: 33054
* Last refactoring before PR645: split up getSlot into getLocalSlot and ↵Chris Lattner2007-01-101-63/+63
| | | | | | | | getGlobalSlot. No functionality change. llvm-svn: 33053
* eliminate some iterator gymnastics.Chris Lattner2007-01-101-8/+4
| | | | llvm-svn: 33052
* Change the file header name as this file was renamed.Reid Spencer2007-01-101-1/+1
| | | | llvm-svn: 33051
* Rename Writer.cpp as CBackend.cpp so it doesn't conflict with Writer.cppReid Spencer2007-01-101-0/+0
| | | | | | in the bytecode writer library. This helps with debugging. llvm-svn: 33050
* Fix a bug in heap-sra that caused compilation failure of office-ispell.Chris Lattner2007-01-091-3/+19
| | | | llvm-svn: 33043
* For PR1099:Reid Spencer2007-01-091-33/+33
| | | | | | | | | | | Invert the "isSigned" logic in calls to printType and printPrimitiveType. We want variables to be declared unsigned by default so that signless operators like + and - perform the unsigned operation that LLVM expects by default. Parameters with the sext attribute will be declared signed and signed instructions will case operand values to signed regardless of the type of the variable. This passes all tests and fixes PR1099. llvm-svn: 33039
* Inline insertValue into CreateModuleSlot/CreateFunctionSlotChris Lattner2007-01-091-35/+24
| | | | llvm-svn: 33038
* Remove a bunch of complex logic that is completely dead: duplicates canChris Lattner2007-01-091-57/+1
| | | | | | never be inserted! llvm-svn: 33037
* Split CreateSlot into two versions, one for globals and one for function-localChris Lattner2007-01-091-61/+68
| | | | | | values llvm-svn: 33036
* Remove extraneous return value from insertValue and getOrCreateSlot. SinceChris Lattner2007-01-091-53/+34
| | | | | | getOrCreateSlot no longer gets the slot, rename it to CreateSlot. llvm-svn: 33035
* For PR1099:Reid Spencer2007-01-091-8/+9
| | | | | | | | | | | | | | | Partial fix for this PR. Default function parameters to signed integer, just like everything else in CBE. The bug was caused by incorrectly introducing parameter attributes feature by choosing "signed" parameter if the SExtAttribute was specified. Howeer, if no attribute is specified, this causes it to become unsigned which is incorrect. Reversing the logic so that signedness is detected by "not ZExtAttribute" set fixes the issue. This fixes 197.parser but there is more to do. Any comparison and possibly other operators involving arguments may need to correctly cast the parameter before its use, depending on the sign of the operator. llvm-svn: 33034
* Naming consistency.Evan Cheng2007-01-081-25/+27
| | | | llvm-svn: 33026
* Fix for PR1075: bottom-up register-reduction scheduling actually increases ↵Evan Cheng2007-01-081-120/+72
| | | | | | | | | | register pressure. - Fixed bugs in sethi-ullman number computation and priority queue comparison functions. - Separate code that handles priority computation special cases from SU number computation. llvm-svn: 33025
* Implement some trivial FP foldings when -enable-unsafe-fp-math is specified.Chris Lattner2007-01-081-0/+15
| | | | | | This implements CodeGen/PowerPC/unsafe-math.ll llvm-svn: 33024
* Need to handle static declarations properly.Jim Laskey2007-01-081-6/+9
| | | | llvm-svn: 33022
* Unbreak VC++ build.Jeff Cohen2007-01-081-1/+1
| | | | llvm-svn: 33021
* Parameter attributes are part of a FunctionType and deserve to be factoredReid Spencer2007-01-081-1/+6
| | | | | | into comparisons of two FunctionTypes. Make it so. llvm-svn: 33020
* Add PMStack, a Pass Manager stack.Devang Patel2007-01-081-0/+138
| | | | | | | | Eventually, Top level pass managers will use this to keep track of active pass managers. Eass pass will also learn how to find appropriate manager from these managers stack. llvm-svn: 33018
* And asm writing for packed struct initializersAndrew Lenharth2007-01-081-0/+4
| | | | llvm-svn: 33016
OpenPOWER on IntegriCloud