| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 35067
|
| |
|
|
| |
llvm-svn: 35038
|
| |
|
|
| |
llvm-svn: 35037
|
| |
|
|
|
|
| |
implementation of getConstantValue().
llvm-svn: 34988
|
| |
|
|
| |
llvm-svn: 34959
|
| |
|
|
|
|
|
|
| |
to make a copy of the GenericValue.
2. Fix a copy & paste bug in StoreValueToMemory where 64-bit values were
truncated to 32
llvm-svn: 34958
|
| |
|
|
|
|
| |
might need to zext not just trunc the value.
llvm-svn: 34955
|
| |
|
|
|
|
| |
is larger. Adjust so that it truncates to pointer width, only if necessary.
llvm-svn: 34954
|
| |
|
|
|
|
| |
integer field of type APInt instead of different sized integer fields.
llvm-svn: 34952
|
| |
|
|
|
|
|
|
| |
handling for integer of various sizes. GenericValue now has just a single
integer field of type APInt. We use its facilities directly in the
execution of all instructions.
llvm-svn: 34951
|
| |
|
|
|
|
| |
a single integer field of type APInt.
llvm-svn: 34950
|
| |
|
|
|
|
|
| |
members of GenericValue. Consequently the code to clean them up isn't
needed.
llvm-svn: 34948
|
| |
|
|
|
|
|
|
| |
Target DataLayout incorrectly. For now, we'll trust that the module has
got the correct DataLayout. In the future, this needs to be changed to
tell the TargetData to be "current host".
llvm-svn: 34947
|
| |
|
|
|
|
|
|
|
| |
field, of type APInt, instead of multiple integer fields. Also, get rid of
the special endianness code in StoreValueToMemory and LoadValueToMemory.
ExecutionEngine is always used to execute on the host platform so this is
now unnecessary.
llvm-svn: 34946
|
| |
|
|
| |
llvm-svn: 34889
|
| |
|
|
| |
llvm-svn: 34887
|
| |
|
|
|
|
|
| |
have been removed and dealt with. The interpreter should now be able to
execute any LLVM program using any bit width.
llvm-svn: 34884
|
| |
|
|
|
|
| |
destination value of LoadValueFromMemory.
llvm-svn: 34883
|
| |
|
|
|
|
|
| |
Move the getConstantExpr function towards the end of the file so we don't
need a dozen forward declarations.
llvm-svn: 34877
|
| |
|
|
|
|
|
| |
ensure they are cleaned up when the stack frame exits.
2. Move a function to the Execution.cpp file where it belongs.
llvm-svn: 34876
|
| |
|
|
| |
llvm-svn: 34874
|
| |
|
|
| |
llvm-svn: 34552
|
| |
|
|
|
|
|
| |
Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and
PackedTyID -> VectorTyID. No functional changes.
llvm-svn: 34293
|
| |
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
Patch by Scott Michel.
llvm-svn: 34266
|
| |
|
|
| |
llvm-svn: 34223
|
| |
|
|
| |
llvm-svn: 34163
|
| |
|
|
| |
llvm-svn: 34156
|
| |
|
|
|
|
|
|
| |
Compute BitMask correctly.
Patch by Leo (wenwenti@hotmail.com).
llvm-svn: 34026
|
| |
|
|
|
|
|
|
| |
Adjust to changes in Module interface:
getMainFunction() -> getFunction("main")
getNamedFunction(X) -> getFunction(X)
llvm-svn: 33922
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
confusion with external linkage types.
llvm-svn: 33663
|
| |
|
|
| |
llvm-svn: 33620
|
| |
|
|
| |
llvm-svn: 33619
|
| |
|
|
|
|
|
| |
The Module::setEndianness and Module::setPointerSize methods have been
removed. Instead you can get/set the DataLayout. Adjust thise accordingly.
llvm-svn: 33530
|
| |
|
|
| |
llvm-svn: 33461
|
| |
|
|
|
|
|
| |
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!
llvm-svn: 33415
|
| |
|
|
|
|
| |
these alignment amounts to align scalars when we can. Patch by Scott Michel!
llvm-svn: 33409
|
| |
|
|
|
|
|
| |
that disassembleBuffer will be called even if NDEBUG, but the result will
be ignored.
llvm-svn: 33408
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
This patch fixes test/Integer/2007-01-17-TruncSext.ll
llvm-svn: 33394
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 33367
|
| |
|
|
| |
llvm-svn: 33358
|
| |
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
computations do not overflow the intended bit width.
llvm-svn: 33326
|
| |
|
|
|
|
| |
bit width.
llvm-svn: 33325
|
| |
|
|
|
|
|
| |
sufficient to get llvm-test/SingleSource/UnitTests/Integer/general-test.ll
working with lli in interpreter mode.
llvm-svn: 33321
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
llvm-svn: 33317
|