summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine
Commit message (Collapse)AuthorAgeFilesLines
* Fix PR1216 by cleaning up the ownership of JITResolver.Chris Lattner2007-02-242-29/+42
| | | | llvm-svn: 34552
* For PR1195:Reid Spencer2007-02-151-1/+1
| | | | | | | Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. llvm-svn: 34293
* From Dan Gohman:Chris Lattner2007-02-142-3/+3
| | | | | | | | | | While preparing http://llvm.org/PR1198 I noticed several asserts protecting unprepared code from i128 types that weren't actually failing when they should because they were written as assert("foo") instead of something like assert(0 && "foo"). This patch fixes all the cases that a quick grep found. llvm-svn: 34267
* Generalize TargetData strings, to support more interesting forms of data.Chris Lattner2007-02-141-1/+1
| | | | | | Patch by Scott Michel. llvm-svn: 34266
* eliminate vector-related allocationsChris Lattner2007-02-131-2/+2
| | | | llvm-svn: 34223
* eliminate use of TargetData::getIndexedOffset that takes a vectorChris Lattner2007-02-101-2/+3
| | | | llvm-svn: 34163
* Privatize StructLayout::MemberOffsets, adding an accessorChris Lattner2007-02-102-2/+2
| | | | llvm-svn: 34156
* For PR1188:Reid Spencer2007-02-082-2/+2
| | | | | | | | Compute BitMask correctly. Patch by Leo (wenwenti@hotmail.com). llvm-svn: 34026
* For PR411:Reid Spencer2007-02-051-1/+1
| | | | | | | | Adjust to changes in Module interface: getMainFunction() -> getFunction("main") getNamedFunction(X) -> getFunction(X) llvm-svn: 33922
* Changes to support making the shift instructions be true BinaryOperators.Reid Spencer2007-02-022-6/+7
| | | | | | | | | | | | This feature is needed in order to support shifts of more than 255 bits on large integer types. This changes the syntax for llvm assembly to make shl, ashr and lshr instructions look like a binary operator: shl i32 %X, 1 instead of shl i32 %X, i8 1 Additionally, this should help a few passes perform additional optimizations. llvm-svn: 33776
* For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoidReid Spencer2007-01-304-10/+10
| | | | | | confusion with external linkage types. llvm-svn: 33663
* Remove tabs.Reid Spencer2007-01-291-2/+2
| | | | llvm-svn: 33620
* Implement use of new IntrinsicLowering interface.Reid Spencer2007-01-291-1/+1
| | | | llvm-svn: 33619
* For PR761:Reid Spencer2007-01-261-12/+11
| | | | | | | The Module::setEndianness and Module::setPointerSize methods have been removed. Instead you can get/set the DataLayout. Adjust thise accordingly. llvm-svn: 33530
* Moved disassembler to libSystemAnton Korobeynikov2007-01-231-10/+2
| | | | llvm-svn: 33461
* For PR970:Reid Spencer2007-01-211-1/+1
| | | | | | | Clean up handling of isFloatingPoint() and dealing with PackedType. Patch by Gordon Henriksen! llvm-svn: 33415
* Teach TargetData to handle 'preferred' alignment for each target, and useChris Lattner2007-01-201-1/+1
| | | | | | these alignment amounts to align scalars when we can. Patch by Scott Michel! llvm-svn: 33409
* DOUT still evaluates side effects, even though it doesn't print. This meansChris Lattner2007-01-201-0/+2
| | | | | | | that disassembleBuffer will be called even if NDEBUG, but the result will be ignored. llvm-svn: 33408
* Implement the signed icmp instructions properly. To do this we introduceReid Spencer2007-01-201-17/+27
| | | | | | | | a small inline function to sign extend a uint64_t value based on its type's bitwidth. This function is then used in both executeSExtInst and the various executeICMP_S** functions. llvm-svn: 33403
* Implement bit-accurate sext instruction.Reid Spencer2007-01-201-10/+14
| | | | | | This patch fixes test/Integer/2007-01-17-TruncSext.ll llvm-svn: 33394
* For PR1043:Reid Spencer2007-01-191-6/+2
| | | | | | | | | | | | | | This is the final patch for this PR. It implements some minor cleanup in the use of IntegerType, to wit: 1. Type::getIntegerTypeMask -> IntegerType::getBitMask 2. Type::Int*Ty changed to IntegerType* from Type* 3. ConstantInt::getType() returns IntegerType* now, not Type* This also fixes PR1120. Patch by Sheng Zhou. llvm-svn: 33370
* fix build on amd64Andrew Lenharth2007-01-191-1/+1
| | | | llvm-svn: 33367
* Adding disassembler interface and external hook to udis86 library.Anton Korobeynikov2007-01-191-1/+14
| | | | llvm-svn: 33358
* Fix a regression in the last patch. When constructing a BitMask, be carefulReid Spencer2007-01-181-0/+4
| | | | | | | not to overflow 64-bits and end up with a 0 mask. This caused i64 values to always be stored as 0 with lots of consequential damage to nightly test. llvm-svn: 33335
* Use the new maskToBitWidth function to ensure that the results ofReid Spencer2007-01-181-10/+15
| | | | | | computations do not overflow the intended bit width. llvm-svn: 33326
* Add an inline helper function that masks a GenericValue to a specifiedReid Spencer2007-01-181-0/+12
| | | | | | bit width. llvm-svn: 33325
* Make shl instruction mask its result to the correct bitsize. This isReid Spencer2007-01-181-5/+10
| | | | | | | sufficient to get llvm-test/SingleSource/UnitTests/Integer/general-test.ll working with lli in interpreter mode. llvm-svn: 33321
* Two changes:Reid Spencer2007-01-181-18/+17
| | | | | | | | | 1. Fix logic for executeGEP. Only 32-bit and 64-bit integer types are acceptable as indices. 2. Ensure that all integer cast operations truncate their result to the integer size of the operand. llvm-svn: 33318
* Make sure we truncate stored values to their bit width.Reid Spencer2007-01-181-30/+40
| | | | llvm-svn: 33317
* rename Type::isIntegral to Type::isInteger, eliminating the old Type::isInteger.Chris Lattner2007-01-151-6/+6
| | | | | | | | | rename Type::getIntegralTypeMask to Type::getIntegerTypeMask. This makes naming much more consistent. For example, there are now no longer any instances of IntegerType that are not considered isInteger! :) llvm-svn: 33225
* eliminate calls to Type::isInteger, preferring isIntegral instead.Chris Lattner2007-01-151-4/+4
| | | | llvm-svn: 33222
* For PR1064:Reid Spencer2007-01-125-500/+967
| | | | | | | | | | | | | | | | | | | | | | | 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-122-2/+2
| | | | | | | | 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
* Rename BoolTy as Int1Ty. Patch by Sheng Zhou.Reid Spencer2007-01-114-36/+36
| | | | llvm-svn: 33076
* For PR1043:Zhou Sheng2007-01-112-2/+2
| | | | | | | Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. llvm-svn: 33073
* For PR950:Reid Spencer2006-12-314-498/+346
| | | | | | Convert signed integer types to signless ones. llvm-svn: 32787
* For PR950:Reid Spencer2006-12-232-112/+331
| | | | | | | | This patch removes the SetCC instructions and replaces them with the ICmp and FCmp instructions. The SetCondInst instruction has been removed and been replaced with ICmpInst and FCmpInst. llvm-svn: 32751
* elimiante Statistic static ctorsChris Lattner2006-12-191-5/+2
| | | | llvm-svn: 32702
* remove static ctors from Statistic objectsChris Lattner2006-12-192-10/+5
| | | | llvm-svn: 32700
* Fix PR1057 (compilation on macos 10.3), patch by Scott Michel!Chris Lattner2006-12-171-8/+8
| | | | llvm-svn: 32644
* Simplify the fetching of relocation mode.Jim Laskey2006-12-141-4/+4
| | | | llvm-svn: 32588
* 1. Tidy up jump table info.Jim Laskey2006-12-141-17/+36
| | | | | | 2. Allow the jit to handle PIC relocable jump tables. llvm-svn: 32581
* Change inferred cast creation calls to more specific cast creations.Reid Spencer2006-12-121-1/+1
| | | | llvm-svn: 32460
* Removing even more <iostream> includes.Bill Wendling2006-12-075-43/+38
| | | | llvm-svn: 32320
* Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, areBill Wendling2006-12-073-45/+44
| | | | | | now cerr, cout, and NullStream resp. llvm-svn: 32298
* Detemplatize the Statistic class. The only type it is instantiated withChris Lattner2006-12-063-5/+5
| | | | | | is 'unsigned'. llvm-svn: 32279
* Unbreak VC++ build.Jeff Cohen2006-12-022-0/+2
| | | | llvm-svn: 32113
* Introducing external weak linkage. Darwin codegen should be added later.Anton Korobeynikov2006-12-011-1/+1
| | | | llvm-svn: 32052
* Removed #include <iostream> and replaced streams with llvm streams.Bill Wendling2006-11-273-47/+47
| | | | llvm-svn: 31949
* For PR950:Reid Spencer2006-11-273-56/+217
| | | | | | | | | | The long awaited CAST patch. This introduces 12 new instructions into LLVM to replace the cast instruction. Corresponding changes throughout LLVM are provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the exception of 175.vpr which fails only on a slight floating point output difference. llvm-svn: 31931
OpenPOWER on IntegriCloud