History log of /external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
2c3e0051c31c3f5b2328b447eadf1cf9c4427442 06-May-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r235153

Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7
(cherry picked from commit 0c7f116bb6950ef819323d855415b2f2b0aad987)
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4c5e43da7792f75567b693105cc53e3f1992ad98 08-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master llvm for rebase to r233350

Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3c5ce29cad9b8fab1a280ffd3bd1dbdb4b53ff5e 12-Sep-2013 Elena Demikhovsky <elena.demikhovsky@intel.com> LLVM Interpreter: implementation of "insertvalue" and "extractvalue";
undef constatnt for structure and test for these functions.

done by Yuri Veselov (mailto:Yuri.Veselov@intel.com)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190599 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
db3a9e64f856e3a233a427da1f3969fd3a65a438 09-Sep-2013 Bob Wilson <bob.wilson@apple.com> Revert patches to add case-range support for PR1255.

The work on this project was left in an unfinished and inconsistent state.
Hopefully someone will eventually get a chance to implement this feature, but
in the meantime, it is better to put things back the way the were. I have
left support in the bitcode reader to handle the case-range bitcode format,
so that we do not lose bitcode compatibility with the llvm 3.3 release.

This reverts the following commits: 155464, 156374, 156377, 156613, 156704,
156757, 156804 156808, 156985, 157046, 157112, 157183, 157315, 157384, 157575,
157576, 157586, 157612, 157810, 157814, 157815, 157880, 157881, 157882, 157884,
157887, 157901, 158979, 157987, 157989, 158986, 158997, 159076, 159101, 159100,
159200, 159201, 159207, 159527, 159532, 159540, 159583, 159618, 159658, 159659,
159660, 159661, 159703, 159704, 160076, 167356, 172025, 186736

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190328 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4ca0ce2594a3e3d420be548cb3b6e4e8f51e229f 02-Sep-2013 Elena Demikhovsky <elena.demikhovsky@intel.com> llvm interpreter: select, shuffle and insertelement instructions.
This patch implements vector support for select instruction and adds specific vector instructions : shuffle and insertelement. (tests are also included)
and functions lle_X_memset, lle_X_memcpy added.

Done by Veselov, Yuri (mailto:Yuri.Veselov@intel.com)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189735 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cf21d155ed16c6eb9a2c0a5fa2e7f6a19e488476 05-Aug-2013 Elena Demikhovsky <elena.demikhovsky@intel.com> LLVM Interpreter: This patch implements vector support for cast operations (zext, sext, uitofp, sitofp, trunc, fpext, fptosi, fptrunc, bitcast) and shift operations (shl, ashr, lshr) for integer and floating point data types.
Added tests.

Done by Yuri Veselov (mailto:Yuri.Veselov@intel.com).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187724 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0d840bb2faa6c8cabedaa64826e3c98988d30abb 26-Apr-2013 Nadav Rotem <nrotem@apple.com> Teach the interpreter to handle vector compares and additional vector arithmetic operations.

Patch by Yuri Veselov.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180626 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0fda0f397621a6b50812622a73f0991768662491 13-Apr-2013 Nadav Rotem <nrotem@apple.com> Revert r179409 because it caused some warnings and some of the build bots fail.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
affe889d08fe95ab4ef3d818efa1a2a98fd7e736 12-Apr-2013 Nadav Rotem <nrotem@apple.com> Add support for additional vector instructions in the interpreter.

patch by Veselov, Yuri <Yuri.Veselov@intel.com>.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179409 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
953783e00c9934bc41077108fffeb1e2a17b00df 01-Apr-2013 Nadav Rotem <nrotem@apple.com> Add support for vector data types in the LLVM interpreter.

Patch by:
Veselov, Yuri <Yuri.Veselov@intel.com>



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178469 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9f285c6c31019f9db237932a56eff95d307fce06 01-Feb-2013 Jim Grosbach <grosbach@apple.com> Fix misplaced 'break'.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cce07c9b3162acc756535e813e6ae818ad61564b 31-Jan-2013 Jim Grosbach <grosbach@apple.com> interpreter: Fix errant fallthrough.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174080 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f 03-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Use the new script to sort the includes of every file under lib.

Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.

Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
426c2bf5cdd2173e4a33aea8cb92cf684a724f4b 01-Nov-2012 Chandler Carruth <chandlerc@gmail.com> Revert the majority of the next patch in the address space series:

r165941: Resubmit the changes to llvm core to update the functions to
support different pointer sizes on a per address space basis.

Despite this commit log, this change primarily changed stuff outside of
VMCore, and those changes do not carry any tests for correctness (or
even plausibility), and we have consistently found questionable or flat
out incorrect cases in these changes. Most of them are probably correct,
but we need to devise a system that makes it more clear when we have
handled the address space concerns correctly, and ideally each pass that
gets updated would receive an accompanying test case that exercises that
pass specificaly w.r.t. alternate address spaces.

However, from this commit, I have retained the new C API entry points.
Those were an orthogonal change that probably should have been split
apart, but they seem entirely good.

In several places the changes were very obvious cleanups with no actual
multiple address space code added; these I have not reverted when
I spotted them.

In a few other places there were merge conflicts due to a cleaner
solution being implemented later, often not using address spaces at all.
In those cases, I've preserved the new code which isn't address space
dependent.

This is part of my ongoing effort to clean out the partial address space
code which carries high risk and low test coverage, and not likely to be
finished before the 3.2 release looms closer. Duncan and I would both
like to see the above issues addressed before we return to these
changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2c39b15073db81d93bb629303915b7d7e5d088dc 15-Oct-2012 Micah Villmow <villmow@gmail.com> Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fb384d61c78b60787ed65475d8403aee65023962 11-Oct-2012 Micah Villmow <villmow@gmail.com> Revert 165732 for further review.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f3840d2c16a4ec4c879a8ded402835746de380f8 11-Oct-2012 Micah Villmow <villmow@gmail.com> Add in the first iteration of support for llvm/clang/lldb to allow variable per address space pointer sizes to be optimized correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
47cbc4e0ee6098b7be3c60108000a979f1809949 23-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Optimized usage of new SwitchInst case values (IntegersSubset type) in Local.cpp, Execution.cpp and BitcodeWriter.cpp.
I got about 1% of compile-time improvement on my machines (Ubuntu 11.10 i386 and Ubuntu 12.04 x64).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159076 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
43eb31bfae470b33bab9a6764b98b5e8a0beeda5 02-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: case ranges.
IntRange converted from struct to class. So main change everywhere is replacement of ".Low/High" with ".getLow/getHigh()"



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f8d14c4ca3874890cfd8867d9557efca9511c98f 01-Jun-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: case ranges.
IntItem cleanup. IntItemBase, IntItemConstantIntImp and IntItem merged into IntItem. All arithmetic operators was propogated from APInt. Also added comparison operators <,>,<=,>=. Currently you will find set of macros that propogates operators from APInt to IntItem in the beginning of IntegerSubset. Note that THESE MACROS WILL REMOVED after all passes will case-ranges compatible. Also note that these macros much smaller pain that something like this:
if (V->getValue().ugt(AnotherV->getValue()) { ... }

These changes made IntItem full featured integer object. It allows to make IntegerSubset class generic (move out all ConstantInt references inside and add unit-tests) in next commits.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157810 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0aa32d5d0ff6cd65b6cff957858a79e2d2a614bd 29-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> ConstantRangesSet renamed to IntegersSubset. CRSBuilder renamed to IntegersSubsetMapping.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157612 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
484fc93eff0295b1aa52b9a64d22346580e4b0e2 28-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255: Case Ranges
Implemented IntItem - the wrapper around APInt. Why not to use APInt item directly right now?
1. It will very difficult to implement case ranges as series of small patches. We got several large and heavy patches. Each patch will about 90-120 kb. If you replace ConstantInt with APInt in SwitchInst you will need to changes at the same time all Readers,Writers and absolutely all passes that uses SwitchInst.
2. We can implement APInt pool inside and save memory space. E.g. we use several switches that works with 256 bit items (switch on signatures, or strings). We can avoid value duplicates in this case.
3. IntItem can be easyly easily replaced with APInt.
4. Currenly we can interpret IntItem both as ConstantInt and as APInt. It allows to provide SwitchInst methods that works with ConstantInt for non-updated passes.

Why I need it right now? Currently I need to update SimplifyCFG pass (EqualityComparisons). I need to work with APInts directly a lot, so peaces of code
ConstantInt *V = ...;
if (V->getValue().ugt(AnotherV->getValue()) {
...
}
will look awful. Much more better this way:
IntItem V = ConstantIntVal->getValue();
if (AnotherV < V) {
}

Of course any reviews are welcome.

P.S.: I'm also going to rename ConstantRangesSet to IntegersSubset, and CRSBuilder to IntegersSubsetMapping (allows to map individual subsets of integers to the BasicBlocks).
Since in future these classes will founded on APInt, it will possible to use them in more generic ways.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
1c8f4b8c34a75e184ec40251225c2699efecedac 21-May-2012 Stepan Dyatkovskiy <stpworld@narod.ru> PR1255 (case ranges: work with ConstantRangesSet instead of ConstantInt) related changes for Execution and Verifier.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3d3abe0852d5f499bed7ab014519dd582a0a795d 11-Mar-2012 Stepan Dyatkovskiy <stpworld@narod.ru> llvm::SwitchInst
Renamed methods caseBegin, caseEnd and caseDefault with case_begin, case_end, and case_default.
Added some notes relative to case iterators.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152532 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c10fa6c801e48771b5eade50afc2fe6abaf08227 08-Mar-2012 Stepan Dyatkovskiy <stpworld@narod.ru> Taken into account Duncan's comments for r149481 dated by 2nd Feb 2012:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120130/136146.html

Implemented CaseIterator and it solves almost all described issues: we don't need to mix operand/case/successor indexing anymore. Base iterator class is implemented as a template since it may be initialized either from "const SwitchInst*" or from "SwitchInst*".

ConstCaseIt is just a read-only iterator.
CaseIt is read-write iterator; it allows to change case successor and case value.

Usage of iterator allows totally remove resolveXXXX methods. All indexing convertions done automatically inside the iterator's getters.

Main way of iterator usage looks like this:
SwitchInst *SI = ... // intialize it somehow

for (SwitchInst::CaseIt i = SI->caseBegin(), e = SI->caseEnd(); i != e; ++i) {
BasicBlock *BB = i.getCaseSuccessor();
ConstantInt *V = i.getCaseValue();
// Do something.
}

If you want to convert case number to TerminatorInst successor index, just use getSuccessorIndex iterator's method.
If you want initialize iterator from TerminatorInst successor index, use CaseIt::fromSuccessorIndex(...) method.

There are also related changes in llvm-clients: klee and clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152297 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b0934ab7d811e23bf530371976b8b35f3242169c 19-Feb-2012 Ahmed Charles <ace2001ac@gmail.com> Remove dead code. Improve llvm_unreachable text. Simplify some control flow.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
aa5abe88d6aa445afa593476a665e3ab14b3524c 06-Feb-2012 Bill Wendling <isanbard@gmail.com> [unwind removal] We no longer have 'unwind' instructions being generated, so
remove the code that handles them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149901 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
24473120a253a05f3601cd3373403b47e6d03d41 01-Feb-2012 Stepan Dyatkovskiy <stpworld@narod.ru> SwitchInst refactoring.
The purpose of refactoring is to hide operand roles from SwitchInst user (programmer). If you want to play with operands directly, probably you will need lower level methods than SwitchInst ones (TerminatorInst or may be User). After this patch we can reorganize SwitchInst operands and successors as we want.

What was done:

1. Changed semantics of index inside the getCaseValue method:
getCaseValue(0) means "get first case", not a condition. Use getCondition() if you want to resolve the condition. I propose don't mix SwitchInst case indexing with low level indexing (TI successors indexing, User's operands indexing), since it may be dangerous.
2. By the same reason findCaseValue(ConstantInt*) returns actual number of case value. 0 means first case, not default. If there is no case with given value, ErrorIndex will returned.
3. Added getCaseSuccessor method. I propose to avoid usage of TerminatorInst::getSuccessor if you want to resolve case successor BB. Use getCaseSuccessor instead, since internal SwitchInst organization of operands/successors is hidden and may be changed in any moment.
4. Added resolveSuccessorIndex and resolveCaseIndex. The main purpose of these methods is to see how case successors are really mapped in TerminatorInst.
4.1 "resolveSuccessorIndex" was created if you need to level down from SwitchInst to TerminatorInst. It returns TerminatorInst's successor index for given case successor.
4.2 "resolveCaseIndex" converts low level successors index to case index that curresponds to the given successor.

Note: There are also related compatability fix patches for dragonegg, klee, llvm-gcc-4.0, llvm-gcc-4.2, safecode, clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149481 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4d6ccb5f68cd7c6418a209f1fa4dbade569e4493 20-Jan-2012 David Blaikie <dblaikie@gmail.com> More dead code removal (using -Wunreachable-code)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148578 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
bb5a7442e362776621112dc9453e546a55878e79 29-Sep-2011 Eli Friedman <eli.friedman@gmail.com> Clean up uses of switch instructions so they are not dependent on the operand ordering. Patch by Stepan Dyatkovskiy.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140803 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e 18-Jul-2011 Chris Lattner <sabre@nondot.org> land David Blaikie's patch to de-constify Type, with a few tweaks.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e4d19c9eb22899c9a555395d446a9ceef3bea7eb 28-Nov-2010 Jay Foad <jay.foad@gmail.com> PR5207: change APInt::doubleToBits() and APInt::floatToBits() to be
static methods that return a new APInt.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120261 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
963433115a540a4521af8afb9880261dd7742807 18-Jun-2010 Dan Gohman <gohman@apple.com> Handle execution entrypoints with non-integer return types.
Fix from Russel Power in PR7284.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106271 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
75361b69f3f327842b9dad69fa7f28ae3b688412 08-Apr-2010 Chris Lattner <sabre@nondot.org> rename llvm::llvm_report_error -> llvm::report_fatal_error



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
1df9859c40492511b8aa4321eb76496005d3b75b 16-Feb-2010 Duncan Sands <baldrick@free.fr> There are two ways of checking for a given type, for example isa<PointerType>(T)
and T->isPointerTy(). Convert most instances of the first form to the second form.
Requested by Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b0bc6c361da9009e8414efde317d9bbff755f6c0 15-Feb-2010 Duncan Sands <baldrick@free.fr> Uniformize the names of type predicates: rather than having isFloatTy and
isInteger, we now have isFloatTy and isIntegerTy. Requested by Chris!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96223 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f012705c7e4ca8cf90b6b734ce1d5355daca5ba5 05-Jan-2010 Benjamin Kramer <benny.kra@googlemail.com> Avoid going through the LLVMContext for type equality where it's safe to dereference the type pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ef573a3a75557b35dd639bc44d5a3fcbe050cdcf 05-Jan-2010 David Greene <greened@obbligato.org> Change errs() to dbgs().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
dbf6f518e9dd68f87814a6f989399f2e40ea9f86 08-Nov-2009 Nick Lewycky <nicholas@mxc.ca> Fix the interpreter to not crash due to zeroext/signext


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f32a6a3091e0b01d17926f4b1cf78972854b8cb5 29-Oct-2009 Chris Lattner <sabre@nondot.org> add interpreter support for indirect goto / blockaddress. The interpreter
now correctly runs clang's test/CodeGen/indirect-goto.c. The JIT will abort
on it until someone feels compelled to implement this.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85488 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
046e78ce55a7c3d82b7b6758d2d77f2d99f970bf 27-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove FreeInst.
Remove LowerAllocations pass.
Update some more passes to treate free calls just like they were treating FreeInst.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85176 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7b929dad59785f62a66f7c58615082f98441e95e 23-Oct-2009 Victor Hernandez <vhernandez@apple.com> Remove AllocationInst. Since MallocInst went away, AllocaInst is the only subclass of AllocationInst, so it no longer is necessary.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84969 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cf0fe8d813727383d630055bb9d1cde21b00b7e7 05-Oct-2009 Chris Lattner <sabre@nondot.org> strength reduce a ton of type equality tests to check the typeid (Through
the new predicates I added) instead of going through a context and doing a
pointer comparison. Besides being cheaper, this allows a smart compiler
to turn the if sequence into a switch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83297 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
79c5d3f9717756dc3ff56cfcaa3ae1a5930c457a 23-Aug-2009 Chris Lattner <sabre@nondot.org> remove the std::ostream version of module and type printing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
bdff548e4dd577a72094d57b282de4e765643b96 23-Aug-2009 Chris Lattner <sabre@nondot.org> eliminate the "Value" printing methods that print to a std::ostream.
This required converting a bunch of stuff off DOUT and other cleanups.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79819 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
1d0be15f89cb5056e20e2d24faa8d6afb1573bca 13-Aug-2009 Owen Anderson <resistor@mac.com> Push LLVMContexts through the IntegerType APIs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d5fe92efbc1774ada25a1cfa18009bfc5c6e625c 03-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> llvm_report_error already prints "LLVM ERROR:". So stop reporting errors like "LLVM ERROR: llvm: error:" or "LLVM ERROR: ERROR:".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77971 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c23197a26f34f559ea9797de51e187087c039c42 14-Jul-2009 Torok Edwin <edwintorok@gmail.com> llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.
This adds location info for all llvm_unreachable calls (which is a macro now) in
!NDEBUG builds.
In NDEBUG builds location info and the message is off (it only prints
"UREACHABLE executed").


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c25e7581b9b8088910da31702d4ca21c4734c6d7 11-Jul-2009 Torok Edwin <edwintorok@gmail.com> assert(0) -> LLVM_UNREACHABLE.
Make llvm_unreachable take an optional string, thus moving the cerr<< out of
line.
LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for
NDEBUG builds.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7d696d80409aad20bb5da0fc4eccab941dd371d4 11-Jul-2009 Torok Edwin <edwintorok@gmail.com> Convert more assert(0)+abort() -> LLVM_UNREACHABLE,
and abort()/exit() -> llvm_report_error().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75363 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
354b5ac1610424a5fa56735425a43b8a475f5980 09-Jul-2009 Chris Lattner <sabre@nondot.org> remove dead function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fdca74c5671e01447be0f1bac3c0c7aa1727690b 26-Jun-2009 Owen Anderson <resistor@mac.com> Get rid of unnecessary global variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ae3a0be92e33bc716722aa600983fc1535acb122 05-Jun-2009 Dan Gohman <gohman@apple.com> Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72897 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
777d2306b36816a53bc1ae1244c0dc7d998ae691 09-May-2009 Duncan Sands <baldrick@free.fr> Rename PaddedSize to AllocSize, in the hope that this
will make it more obvious what it represents, and stop
it being confused with the StoreSize.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71349 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
de551f91d8816632a76a065084caab9fab6aacff 01-Apr-2009 Dan Gohman <gohman@apple.com> Use CHAR_BIT instead of hard-coding 8 in several places where it
is appropriate. This helps visually differentiate host-oriented
calculations from target-oriented calculations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9029cb836304cd2848f589dc79373d9b67eb48e0 16-Jan-2009 Chris Lattner <sabre@nondot.org> don't assert and die on out of range (undefined) shifts. This fixes
PR3334.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ceb4d1aecb9deffe59b3dcdc9a783ffde8477be9 12-Jan-2009 Duncan Sands <baldrick@free.fr> Rename getABITypeSize to getTypePaddedSize, as
suggested by Chris.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0598866c052147c31b808391f58434ce3dbfb838 25-Sep-2008 Devang Patel <dpatel@apple.com> Large mechanical patch.

s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g

This sets the stage
- to implement function notes as function attributes and
- to distinguish between function attributes and return value attributes.

This requires corresponding changes in llvm-gcc and clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
eaf42abab6d465c38891345d999255871cf03943 24-Sep-2008 Devang Patel <dpatel@apple.com> s/ParameterAttributes/Attributes/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
663ceeb948c526c705b38efd2075b7c80a190e5d 08-Jul-2008 Chris Lattner <sabre@nondot.org> Add a new hidden option to the interpreter to cause it to print
out every volatile load and store. This is useful for tracking
down insane volatile memory bugs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53241 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
aee7f21c47e0d726328f179697684088748f03a8 06-Apr-2008 Chris Lattner <sabre@nondot.org> fix warnings with assertions disabled.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49285 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4c71dfe356716e6bc1993ef5efdced08b68fe612 20-Feb-2008 Anton Korobeynikov <asl@math.spbu.ru> Update gcc 4.3 warnings fix patch with recent head changes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ae9f3a3b7c915f725aef5a7250e88eaeddda03c6 20-Feb-2008 Anton Korobeynikov <asl@math.spbu.ru> Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4ee451de366474b9c228b4e5fa573795a715216d 29-Dec-2007 Chris Lattner <sabre@nondot.org> Remove attribution from file headers, per discussion on llvmdev.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
afa3b6da11bc05281bcf09e45de9e037e0ee5011 28-Nov-2007 Duncan Sands <baldrick@free.fr> Add some convenience methods for querying attributes, and
use them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
514ab348fddcdffa8367685dc608b2f8d5de986d 01-Nov-2007 Duncan Sands <baldrick@free.fr> Executive summary: getTypeSize -> getTypeStoreSize / getABITypeSize.
The meaning of getTypeSize was not clear - clarifying it is important
now that we have x86 long double and arbitrary precision integers.
The issue with long double is that it requires 80 bits, and this is
not a multiple of its alignment. This gives a primitive type for
which getTypeSize differed from getABITypeSize. For arbitrary precision
integers it is even worse: there is the minimum number of bits needed to
hold the type (eg: 36 for an i36), the maximum number of bits that will
be overwriten when storing the type (40 bits for i36) and the ABI size
(i.e. the storage size rounded up to a multiple of the alignment; 64 bits
for i36).

This patch removes getTypeSize (not really - it is still there but
deprecated to allow for a gradual transition). Instead there is:

(1) getTypeSizeInBits - a number of bits that suffices to hold all
values of the type. For a primitive type, this is the minimum number
of bits. For an i36 this is 36 bits. For x86 long double it is 80.
This corresponds to gcc's TYPE_PRECISION.

(2) getTypeStoreSizeInBits - the maximum number of bits that is
written when storing the type (or read when reading it). For an
i36 this is 40 bits, for an x86 long double it is 80 bits. This
is the size alias analysis is interested in (getTypeStoreSize
returns the number of bytes). There doesn't seem to be anything
corresponding to this in gcc.

(3) getABITypeSizeInBits - this is getTypeStoreSizeInBits rounded
up to a multiple of the alignment. For an i36 this is 64, for an
x86 long double this is 96 or 128 depending on the OS. This is the
spacing between consecutive elements when you form an array out of
this type (getABITypeSize returns the number of bytes). This is
TYPE_SIZE in gcc.

Since successive elements in a SequentialType (arrays, pointers
and vectors) need to be aligned, the spacing between them will be
given by getABITypeSize. This means that the size of an array
is the length times the getABITypeSize. It also means that GEP
computations need to use getABITypeSize when computing offsets.
Furthermore, if an alloca allocates several elements at once then
these too need to be aligned, so the size of the alloca has to be
the number of elements multiplied by getABITypeSize. Logically
speaking this doesn't have to be the case when allocating just
one element, but it is simpler to also use getABITypeSize in this
case. So alloca's and mallocs should use getABITypeSize. Finally,
since gcc's only notion of size is that given by getABITypeSize, if
you want to output assembler etc the same as gcc then getABITypeSize
is the size you want.

Since a store will overwrite no more than getTypeStoreSize bytes,
and a read will read no more than that many bytes, this is the
notion of size appropriate for alias analysis calculations.

In this patch I have corrected all type size uses except some of
those in ScalarReplAggregates, lib/Codegen, lib/Target (the hard
cases). I will get around to auditing these too at some point,
but I could do with some help.

Finally, I made one change which I think wise but others might
consider pointless and suboptimal: in an unpacked struct the
amount of space allocated for a field is now given by the ABI
size rather than getTypeStoreSize. I did this because every
other place that reserves memory for a type (eg: alloca) now
uses getABITypeSize, and I didn't want to make an exception
for unpacked structs, i.e. I did it to make things more uniform.
This only effects structs containing long doubles and arbitrary
precision integers. If someone wants to pack these types more
tightly they can always use a packed struct.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43620 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
724441e64ad9dbf41579864d6364501aac8ba7db 11-Oct-2007 Gabor Greif <ggreif@gmail.com> Fix an assertion abort on sparc. malloc(0) is allowed to
return NULL.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42871 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
27725bf13f188c2b46b0211fca0eb9d2bcbcafed 21-Sep-2007 Chris Lattner <sabre@nondot.org> #ifdef out unsafe tracing code, which fixes PR1689


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9132a2b81842b0e2b77703fab3e6fe7467f859bb 23-Aug-2007 Chris Lattner <sabre@nondot.org> rename APInt::toString -> toStringUnsigned for symmetry with toStringSigned()

Add an APSInt::toString() method.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e770787be101e522425f658f76e4bb3091498f99 02-Jun-2007 Reid Spencer <rspencer@reidspencer.com> For PR1486:
Avoid overwriting the APInt instance with 0 bytes which causes the bitwidth
to be set to 0 (illegal) producing a subsequent assert.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37391 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
09d8c9278edd6c0f0d8b3f9ecbec2d8c6e3baaf7 17-May-2007 Reid Spencer <rspencer@reidspencer.com> Print integer values as both decimal and hexadecimal for convenience
of verifying result values when debugging.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
52811bdbf06e68f67ff6d526899d1c21270ca181 16-May-2007 Reid Spencer <rspencer@reidspencer.com> Avoid a "loss of precision" error in gcc 4.1.3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37105 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
951418b7e9e109bb4330d2e901a553aad69637c8 16-May-2007 Reid Spencer <rspencer@reidspencer.com> Implement printing of instruction result values when debug info is turned
on. This helps to speed up the debugging time by showing computational
results as the program executes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37095 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e4b4394b2f53c6ee8690669164710b109274a574 04-May-2007 Reid Spencer <rspencer@reidspencer.com> Bitcast all the bits of a floating point value, not just one. The zero
extension is needed because the constructor for the Destination value
causes the APInt to have a bit width of 1.
Patch by Guoling Han.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36733 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
6bc6333a1059b0ee9b3b7c2685f4daf370ae67bd 26-Apr-2007 Reid Spencer <rspencer@reidspencer.com> 1. Don't swap byte order in scanf. It isn't necessary and leads to
incorrect results (canonicalization was dropped several commits ago).
2. Add support for fscanf.
3. Suppress a warning about cast to pointer from non-pointer-sized integer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36482 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b8e237bb86cf810deba0bd0d11c12312978667be 17-Apr-2007 Chris Lattner <sabre@nondot.org> eliminate use of Instruction::getPrev(). Patch by Gabor Greif in 2005.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36198 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4ccf462b999d66b46e155eaa8c2d0e7ac91ecdfc 16-Apr-2007 Reid Spencer <rspencer@reidspencer.com> Implement @sext and @zext parameter attribute handling properly instead of
forcing every small argument of every function regardless of attributes or
calling convention to be expanded.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36174 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
47992ea4be0b5a357178e7f734625e9d4a27492d 09-Mar-2007 Bill Wendling <isanbard@gmail.com> Don't use std::hex.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3bae2e97d97ec5ed8df9ea4795a1127697738942 09-Mar-2007 Bill Wendling <isanbard@gmail.com> Don't use a cast. It causes an error on some platforms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35037 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
576310512118071393e3f216e1fd4108b0823e56 06-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Fix some thinko's in the last patch. PtrSize has to be in bits and we
might need to zext not just trunc the value.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34955 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7553c341354c7790cebda40ea0d647f9d204544b 06-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Fix a bug in IntToPtr. Truncating to 64-bits only works if the integer
is larger. Adjust so that it truncates to pointer width, only if necessary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34954 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f9536330d6271b242572eb1b8011b051b09e128c 06-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Radically simplify execution. This patch gets rid of all the special
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e0929364e8b263f8c090e88e2bf66e2e7bf566e4 03-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Complete the APIntification of the interpreter. All asserts for > 64 bits
have been removed and dealt with. The interpreter should now be able to
execute any LLVM program using any bit width.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e1aa0662162a891b5eb7c4e847e5332adf5e2b86 03-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Implement APInt support for the binary operators.
Move the getConstantExpr function towards the end of the file so we don't
need a dozen forward declarations.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34877 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
64f150fa92180c4176d64522158c4c643184b17c 14-Feb-2007 Chris Lattner <sabre@nondot.org> From Dan Gohman:

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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b1919e2f08ecb37140af676fd2916f8d5ed7df3d 10-Feb-2007 Chris Lattner <sabre@nondot.org> Privatize StructLayout::MemberOffsets, adding an accessor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34156 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
23cbb1c78a6de399b318f68577469b0a566b0faa 08-Feb-2007 Reid Spencer <rspencer@reidspencer.com> For PR1188:
Compute BitMask correctly.

Patch by Leo (wenwenti@hotmail.com).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
832254e1c2387c0cbeb0a820b8315fbe85cb003a 02-Feb-2007 Reid Spencer <rspencer@reidspencer.com> Changes to support making the shift instructions be true BinaryOperators.
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
5cbf985dcbc89fba3208e7baf8b6f488b06d3ec9 30-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid
confusion with external linkage types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
24d6da5fedcf39891f7d8c5b031c01324b3db545 21-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR970:
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
a42c7fd0ca5f2d6f653e3a9bac13ae176861a823 20-Jan-2007 Reid Spencer <rspencer@reidspencer.com> Implement the signed icmp instructions properly. To do this we introduce
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c00a43092ed960cdb28f4f3f00606f572869848d 20-Jan-2007 Reid Spencer <rspencer@reidspencer.com> Implement bit-accurate sext instruction.
This patch fixes test/Integer/2007-01-17-TruncSext.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33394 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
65367b26bfad4e34515ccd4f3c35625272508a18 18-Jan-2007 Reid Spencer <rspencer@reidspencer.com> Use the new maskToBitWidth function to ensure that the results of
computations do not overflow the intended bit width.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33326 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
547dcf2467f0701417afca2fd168a57971e7359f 18-Jan-2007 Reid Spencer <rspencer@reidspencer.com> Make shl instruction mask its result to the correct bitsize. This is
sufficient to get llvm-test/SingleSource/UnitTests/Integer/general-test.ll
working with lli in interpreter mode.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33321 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
23e28836edaa6750a48dc318c8e2bbe6dc1529c8 18-Jan-2007 Reid Spencer <rspencer@reidspencer.com> Two changes:
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33318 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
42a75517250017a52afb03a0ade03cbd49559fe5 15-Jan-2007 Chris Lattner <sabre@nondot.org> rename Type::isIntegral to Type::isInteger, eliminating the old Type::isInteger.
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! :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33225 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0ee69bbd333c22198344e7336ae74767ca9381cc 15-Jan-2007 Chris Lattner <sabre@nondot.org> eliminate calls to Type::isInteger, preferring isIntegral instead.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
a54b7cbd452b3adb2f51346140d996b29c2cdb30 12-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR1064:
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
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4fe16d607d11e29d742208894909733f5ad01f8f 11-Jan-2007 Reid Spencer <rspencer@reidspencer.com> Rename BoolTy as Int1Ty. Patch by Sheng Zhou.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33076 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e49661bdf5b7a913d4e368cf511381e524ae403a 31-Dec-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
Convert signed integer types to signless ones.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e4d87aa2de6e52952dca73716386db09aad5a8fd 23-Dec-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32751 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cecf56b0691b1f3e9ff4435b60f9bcbfd79f155a 19-Dec-2006 Chris Lattner <sabre@nondot.org> elimiante Statistic static ctors


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e81561909d128c6e2d8033cb5465a49b2596b26a 07-Dec-2006 Bill Wendling <isanbard@gmail.com> Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are
now cerr, cout, and NullStream resp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ac0b6ae358944ae8b2b5a11dc08f52c3ed89f2da 06-Dec-2006 Chris Lattner <sabre@nondot.org> Detemplatize the Statistic class. The only type it is instantiated with
is 'unsigned'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
97af751deb9b26fd42fbcee082da9ccc4ded5b45 02-Dec-2006 Jeff Cohen <jeffc@jolt-lang.org> Unbreak VC++ build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32113 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
480f093dc2b6aff9b501cc56cf5728513e55be81 28-Nov-2006 Bill Wendling <isanbard@gmail.com> Removed #include <iostream> and replaced streams with llvm streams.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31949 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3da59db637a887474c1b1346c1f3ccf53b6c4663 27-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31931 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d6c3422e3126927840683574a658a0deada903f0 08-Nov-2006 Jim Laskey <jlaskey@mac.com> Remove redundant <cmath>.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31561 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3822ff5c71478c7c90a50ca57045fb676fcb5005 08-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
This patch converts the old SHR instruction into two instructions,
AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not
dependent on the sign of their operands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31542 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
45430ac4f6bb87db51add87a3479c023d76f4e0d 02-Nov-2006 Reid Spencer <rspencer@reidspencer.com> Remove a function prototype that is no longer needed (REM patch missed it)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31374 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0a783f783ca05c961234385f5b269d4cf03dbbdb 02-Nov-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
Replace the REM instruction with UREM, SREM and FREM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fa8a51e041fc378d4b578c53ee3d3b29590c63a0 01-Nov-2006 Reid Spencer <rspencer@reidspencer.com> Remove unnecessary sign conversions made possible by last patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31339 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fe85526713ec54e5ab130d6bc1626458bd22115e 01-Nov-2006 Reid Spencer <rspencer@reidspencer.com> Fix a bug in the interpreter where divides of unmatched signed operands
would fail. E.g. udiv sint X, Y or sdiv uint X, Y would fail to find a
type match in the switch statement and fail the operation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
1628cec4d7fce310d9cde0bcc73997e5a71692c4 26-Oct-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
Make necessary changes to support DIV -> [SUF]Div. This changes llvm to
have three division instructions: signed, unsigned, floating point. The
bytecode and assembler are bacwards compatible, however.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31195 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b83eb6447ba155342598f0fabe1f08f5baa9164a 20-Oct-2006 Reid Spencer <rspencer@reidspencer.com> For PR950:
This patch implements the first increment for the Signless Types feature.
All changes pertain to removing the ConstantSInt and ConstantUInt classes
in favor of just using ConstantInt.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
8c9191c644cf8c3aceac8e0d1ddc72273355588c 07-Feb-2006 Jeff Cohen <jeffc@jolt-lang.org> The interpreter assumes that the caller of runFunction() must be lli, and
therefore the function being called must be a main() returning an int. The
consequences when these assumptions are false are not good, so don't assume
them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26031 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
558bc88a00930fce283b240b7c9555f649a18f1b 18-Jun-2005 Andrew Lenharth <andrewl@lenharth.org> core changes for varargs


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22254 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d1c881a8d4da8b4d99c2a40512fbcca652ab445e 22-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> * Remove trailing whitespace
* Convert tabs to spaces


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e4d5c441e04bdc00ccf1804744af670655123b07 15-Mar-2005 Chris Lattner <sabre@nondot.org> This mega patch converts us from using Function::a{iterator|begin|end} to
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*.

This patch is contributed by Gabor Greif, thanks!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20597 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d564496b46bb5bd0515f545999c7ad0301a2e43c 08-Jan-2005 Chris Lattner <sabre@nondot.org> Silence VS warnings


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ec7c1ab1dafa0fdb383d0e6df4726cecb4c88c70 16-Oct-2004 Chris Lattner <sabre@nondot.org> Add support for unreachable


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17056 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2da5c3dda6f5b9c4ec6d55008d33327764364bd4 15-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Convert code to compile with vc7.1.

Patch contributed by Paolo Invernizzi. Thanks Paolo!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
551ccae044b0ff658fe629dd67edd5ffe75d10e8 02-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ed6c073097ca83fe55b6eb9d1014e41f58c5ee34 15-Jul-2004 Chris Lattner <sabre@nondot.org> Fixes for PR341


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14848 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0a8e8e1a4ea46fa5da067369ac43d8a459d0cac0 15-Jul-2004 Chris Lattner <sabre@nondot.org> Fixes for PR341


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14847 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
30483737486d00e5c1c37f51138419aa08d8b5e3 20-Jun-2004 Chris Lattner <sabre@nondot.org> Move the IntrinsicLowering header into the CodeGen directory, as per PR346


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f70c22b019494723d0e706f93d6542dfaa6e73a5 17-Jun-2004 Chris Lattner <sabre@nondot.org> Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b440dea57b4680f78e5eca9fb83dc26951a1d1e0 23-Apr-2004 Brian Gaeke <gaeke@uiuc.edu> Go back to the interpreter main loop after performing intrinsic lowering,
because 1) the first instruction might not be a call site, and
2) CS and SF.Caller were not getting set to point to the new call site
anyway (resulting in a crash on e.g. call %llvm.memset).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13122 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
759d34ffb718cf35e97682b5bd541beb82d9a192 20-Apr-2004 Chris Lattner <sabre@nondot.org> Add support for the select instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13076 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
317201d77354e6fc9547468ce827e1a7c30761d7 13-Mar-2004 Chris Lattner <sabre@nondot.org> Rename the intrinsic enum values for llvm.va_* from Intrinsic::va_* to
Intrinsic::va*. This avoid conflicting with macros in the stdlib.h file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12356 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9d20b71ecaffbda5311dfc486b0143d4a94cc502 26-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> Represent va_list in interpreter as a (ec-stack-depth . var-arg-index)
pair, and look up varargs in the execution stack every time, instead of
just pushing iterators (which can be invalidated during callFunction())
around. (union GenericValue now has a "pair of uints" member, to support
this mechanism.) Fixes Bug 234.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11845 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d8400d86dd016ae93b25465dcf3bd5513800293a 13-Feb-2004 Brian Gaeke <gaeke@uiuc.edu> The Interpreter was failing the AtExit UnitTest. This fixes it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
aeb2a1d70807aa626f335fb23d47bc604ffeaa15 08-Feb-2004 Chris Lattner <sabre@nondot.org> rename the "exceptional" destination of an invoke instruction to the 'unwind' dest


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
34562bab046cc091f95ae5333b57ea2538f18336 14-Jan-2004 Brian Gaeke <gaeke@uiuc.edu> Don't pass anything to the IntrinsicLowering class that is not_intrinsic,
because that makes it abort. Also, fix a typo in a comment.

This checkin brought to you by the "It only takes about 30 seconds to run
ENABLE_LLI tests on Shootout on zion, even if they all dump core" fund.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f70e0c216c074bd2ae2b08178f5512849545db4e 28-Dec-2003 Chris Lattner <sabre@nondot.org> Clean up a lot of the code I added yesterday by exposing the IntrinsicLowering
implementation from the TargetMachine directly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7301178aac1baf1cc334e7c7a66bfe50a65fbf49 28-Dec-2003 Chris Lattner <sabre@nondot.org> Pass around IntrinsicLowering instances as appropriate.
Reimplement the Interpreters implementation of va_* to be more direct.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2798cd077a4a754064755ca82ad14434daea59fe 12-Dec-2003 Brian Gaeke <gaeke@uiuc.edu> Since we are using a gep_type_iterator, we apparently must get the type
index by using I.getOperand() here. This was failing an assertion on
basically every struct access.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
63438cc9b02d715ef2ef470c5a4a6282c5fef406 11-Dec-2003 Brian Gaeke <gaeke@uiuc.edu> Add support for --debug-only=interpreter, to print out instrs before
interpreting them.

Move support for getting the value of a ConstantExpr into
getConstantExprValue(), and add support for the rest of the different
kinds of ConstantExprs. (I don't think I like ConstantExprs!)
This requires separate procedures executeShlInst() and executeShrInst().

Reduce the number of references to TheEE.

Get rid of an old comment mentioning annotations.

Fix exitCalled(), which was crashing the Interpreter. This was a
leftover from the return-value code refactoring.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4af6de8f0a767a3892ff7682954cbd2ae2ca3de8 25-Nov-2003 Chris Lattner <sabre@nondot.org> Do not depend on structure elements being of type UByteTy


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10224 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
8da17489aa1a66bee9a4ceda352c78bcbcd1ac56 13-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Change LLI's internal representation of va_list to a pointer to the next
argument to be returned by va_arg. This allows va_lists to be passed
between different LLVM procedures (though it is unlikely that an LLI
va_list would make sense to an external function, except by chance.)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9965 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c1a2be18eaf1e9862af973126be1f1ef975185f1 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Implement vaarg instruction. This is not quite perfect: 2003-08-11-VaListArg
still causes a crash. But it's better than before.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9794 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
dbde1ae7a03cfed13b7abd3a37fa74fbdc2c9551 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> popStackAndReturnValueToCaller() must advance instruction pointer to normal
destination, if returning from an invoke.

Implement 'unwind' instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9792 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9bf06b155c3e158ac405d2df0f1b9c9c5b387311 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Add stub version of unwind support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fea483d7c027c595101dce825bdf3f512bf9aaca 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> visitCallInst --> visitCallSite.
Use visitCallSite to implement both CallInsts and InvokeInsts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9788 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ae2495a9210257a9d4c430df20952c34034828c8 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Make the operation of visitCallInst() only depend on the CallSite.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2cb474c8ad8d9d5fe65e801e19e1d96e2c3128b4 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Use CallSites for call sites, instead of CallInsts. A revolutionary concept.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9784 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
af955ba503e37c3e1efb694a01bce84b7e5d05a7 07-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Refactor the return-from-function code into popStackAndReturnValueToCaller().
Make external function calls slightly less special; now they get a stack frame.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
502dda001a9b106b5618bcb6b3136c541865c2b8 05-Nov-2003 Chris Lattner <sabre@nondot.org> Be friendly to gcc 3.4... good compiler. Nice compiler.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2fa8212a7a7fc089751831a046ab4798a7dabba7 05-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Use regular old malloc to emulate malloc/alloca instructions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9713 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3636f4e0d68858cb7b521a90cb3235852301c2b3 05-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Remove a comment which no longer applies.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
03e43dcfe7a30f01f9ad606d265efd6cb8fe381c 24-Oct-2003 Brian Gaeke <gaeke@uiuc.edu> Reduce the number of #includes.
CurFrame, TraceMode, and the CachedWriter are history.
ArrayChecksEnabled and non-QuietMode are history.
The ExecutionAnnotations (SlotNumber, InstNumber, and FunctionInfo) are history.
ExecutionContext now keeps Values for each stack frame in a std::map.
Stop pre-initializing Values on the stack to 42.
Remove some dead variables, excess whitespace and commented-out code.
executeInstruction() is now part of run().
printValue() and print() are history.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9489 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b576c94c15af9a440f69d9d03c2afead7971118c 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4c6654963dfa4b91c702a913f3715c4a207472d2 18-Oct-2003 Chris Lattner <sabre@nondot.org> Interpret the new varargs intrinsics correctly


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d5d96b9fcd779806555cf5db602f80d5a308a471 10-Oct-2003 Misha Brukman <brukman+llvm@gmail.com> Fix spelling.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
235b200e6bae0bbad52f0f31d3c615e498b3565e 10-Oct-2003 Brian Gaeke <gaeke@uiuc.edu> Never set any signal handlers.
Never call setjmp(), longjmp() or strsignal().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9014 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
63bd61330b89afc669b17a08a25b97ba911e1c96 17-Sep-2003 Chris Lattner <sabre@nondot.org> Change FunctionInfo from being an annotation put on Functions to be
something which is mapped from functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8580 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
29794cba810ec249a9ede5ea77333a71579fd182 05-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Make getOperandValue and executeCastOperation methods of Interpreter.
This lets us protect a few more ExecutionEngine methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d5caf7c432dcf52fc614b5bcbded6f64df0177a2 05-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Remove printOperandInfo(), and simplify run().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8362 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
932539a941dff605bdced24c56ea10a01fc113e8 05-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Remove support for printing values from a module by name, only used
w/ interactive keyboard entry of names.
With that, Support.cpp is history.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
413ab6655bfe0b1e58d0da6c3f4c3a9833e8a952 05-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Remove support for interactive (step finish next) instructions.
Remove printCurrentInstruction, printStackFrame and infoValue
(only used interactively) and other unused methods of Interpreter.
Fold UserInput.cpp containing only callMainFunction() into Interpreter.cpp.
Remove unused Profile flag.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9ad671d54092464b0f385aa5447711eeaf03b17e 05-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Remove support for breakpoints (not used).
Remove some dead code and whitespace.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f58815e161c8c91075dd1af7a277314190ebc286 05-Sep-2003 Brian Gaeke <gaeke@uiuc.edu> Interpreter cleanups:

Get rid of support for DebugMode (make it always off).
Mung some comments.
Get rid of interpreter's PROFILE_STRUCTURE_FIELDS and PerformExitStuff
which have been disabled forever.
Get rid of -abort-on-exception (make it always on).
Get rid of user interaction stuff (debug mode innards).
Simplify Interpreter's callMainFunction().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
832688a6d28c6e1a5a4f869cea00941ccb93281e 23-Jul-2003 Chris Lattner <sabre@nondot.org> Remove redundant const qualifier


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7254 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
44edb6bdd2edc48eb31ed160a09006b610cead67 14-May-2003 Chris Lattner <sabre@nondot.org> Add support for atexit function, remove support for __main function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6194 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d7916e988c544b2ab6af26b723b6bc340ecb78cc 10-May-2003 Chris Lattner <sabre@nondot.org> switch main LLI core execution to use an InstVisitor instead of a switch statement


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
77113b627237fe2850676cccd809de1e05f03952 10-May-2003 Chris Lattner <sabre@nondot.org> Fix testcase: SingleSource/UnitTests/2003-05-02-DependantPHI.c


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6074 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
374344c0cc5368da4bb1806b2b198bd7401fa1e8 08-May-2003 Chris Lattner <sabre@nondot.org> Implement varargs support for LLI!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6043 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
da82ed52ac02497d343b898cca0bb2cf303f062d 08-May-2003 Chris Lattner <sabre@nondot.org> A large number of simple changes:
* s/Method/Function
* Kill some obsolete (external) functions that used to be to support tracing


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6041 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cdf5178f8362b0b415a4e1c1378a5b76638826be 08-May-2003 Chris Lattner <sabre@nondot.org> Add support for recording arguments passed through the ... of a varargs function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
d5bc41a2497b8ccfc21fe4de9f48e3db3a21895c 25-Apr-2003 Chris Lattner <sabre@nondot.org> Fix problem where we would read 64 bits worth of pointer information, even on 32 bit targets!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5930 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fd506f551d2ca89cb757c75faf87809d9d07548d 23-Apr-2003 Chris Lattner <sabre@nondot.org> Fix a problem with setcc instructions and pointers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
669b76ae875fe11f0a47463bceff18db0ae38fcf 23-Apr-2003 Chris Lattner <sabre@nondot.org> Implement &|^ on bool values


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5884 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0286835685cfd718af98ad6e1e61998eeb60942f 22-Apr-2003 Chris Lattner <sabre@nondot.org> Kill using declarations
Kill code for invalid operations on pointers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
5bff50d1b0feb8f801541a2f9e3e8c5261dc7943 22-Apr-2003 Chris Lattner <sabre@nondot.org> Implement cast to bool


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5855 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b945e4ddae07c8f5b69bb79ad9a591496b645b18 22-Apr-2003 Chris Lattner <sabre@nondot.org> Get rid of extraneous arguments to implementation functions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5852 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
09e9392d636c7f28ccb346d7dbf83d45f28fad9a 22-Apr-2003 Chris Lattner <sabre@nondot.org> Add support to LLI for switch instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5851 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
04e2ad76f8db3d0eade6979e296219f95fc85202 22-Apr-2003 Chris Lattner <sabre@nondot.org> Fix wierd idiom


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5831 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
006a4a59905fd1d32bca5cc0426d1754a92746fa 25-Feb-2003 Chris Lattner <sabre@nondot.org> Fix typeo


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5624 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
93780132a702df8b47f259014aea4cc4e54e69c5 13-Jan-2003 Chris Lattner <sabre@nondot.org> Handle value promotion properly to work with tracing better


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fe11a97fcde7c63109c3ad36570657807d0cd6ef 24-Dec-2002 Chris Lattner <sabre@nondot.org> Substantial changes to refactor LLI to incorporate both the Jello JIT and
the traditional LLI interpreter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5125 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
138b0cd7daae5f95e1f851bd885cc0b385732abf 08-Dec-2002 Chris Lattner <sabre@nondot.org> Namespacify more


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4956 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
bbdabce1e97f77d383def3f06a51c4fc75d114cf 08-Dec-2002 Chris Lattner <sabre@nondot.org> Add support to count the number of dynamic instructions executed by LLI


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4955 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ab2dea568729ac68af0fec982756ca8d491f913b 07-Nov-2002 Chris Lattner <sabre@nondot.org> Make command line arguments setup be endian correct!!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4605 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2fdaddf44541bacb62442915ae0edc6b700157c9 30-Oct-2002 Chris Lattner <sabre@nondot.org> Fix two problems:
* Load Implementation can cause unaligned memory accesses, which caused
problems for sparc.
* cast from pointer to pointer would zero the upper 32 bits of the pointer
which obviously causes problems on 64 bit hosts.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4454 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
683d5da9fbb68be46c8ad2c8e9f1f94cbdf7b71c 26-Oct-2002 Chris Lattner <sabre@nondot.org> Fix a major bug in lli


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
fddc755a6f6042457b04d1c070e2a032add56b39 15-Oct-2002 Chris Lattner <sabre@nondot.org> - Fix LLI so that it simulates the endianness of the target machine
correctly, despite the fact that the host machine might not be the same.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4180 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
dbaf74d108b7328bbbe8075ba93e3f034672eb77 02-Oct-2002 Chris Lattner <sabre@nondot.org> Expose TD to ExternalFunctions.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4020 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e8b3e9b2e1b1c8eaa3ba50e69053a5aa87def588 14-Sep-2002 Chris Lattner <sabre@nondot.org> * Fix a bug that was causing lli to misrun:
test/Regression/Transforms/DecomposeMultiDimRefs/mixedindices.c
* Eliminate unneccesary #include


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3712 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
8b77be22f50cfdcdff63b7de3b6b391ec2f010f6 13-Sep-2002 Chris Lattner <sabre@nondot.org> Another portability patch graciously provided by Casey Carter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0374b8de2b4a329793287439a9c79d372778230b 11-Sep-2002 Chris Lattner <sabre@nondot.org> - Change getelementptr instruction to use long indexes instead of uint
indexes for sequential types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3683 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0c4e886dbf1cf7736819a49d5143ae1c2a0cfb79 03-Sep-2002 Chris Lattner <sabre@nondot.org> - Renamed Type::isIntegral() to Type::isInteger()
- Added new method Type::isIntegral() that is the same as isInteger, but
also accepts bool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3574 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
a34c5689dd38a56ad33dfdfd6b951eb4d6d421ad 28-Aug-2002 Chris Lattner <sabre@nondot.org> Implement ConstantPointerRef support, & ConstantExpr support for Cast, GEP & Add.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3516 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cc63f1c67456f41b25e8ccb8c1dce72067ddbadf 23-Aug-2002 Chris Lattner <sabre@nondot.org> Eliminated the MemAccessInst class, folding contents into GEP class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3487 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
24ea74eb9a47b81c1557926acd83e0fbe6d7594e 23-Aug-2002 Chris Lattner <sabre@nondot.org> Load & StoreInst no longer derive from MemAccessInst, so we don't have
to handle indexing anymore


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3485 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e4c3764a9fa7bb7c6438567b2ddbf3f3d3ac8390 14-Aug-2002 Chris Lattner <sabre@nondot.org> Remove support for NOT instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3313 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
65629d5a169753f007c5eab6586b98acd90b2dc7 13-Aug-2002 Chris Lattner <sabre@nondot.org> Minor change to make lli print out characters numerically as well as symbolically


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3303 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
1bbd36156b75447667e20cdc0160640a3ecf8bf3 03-Aug-2002 Chris Lattner <sabre@nondot.org> Fix one real nasty bug


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
601d71595937e9b68402d51411dfc355d1328c31 25-Jul-2002 Chris Lattner <sabre@nondot.org> Fix gcc 3.1 complaint


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
5ff62e90d0bc321206023897edc1e2691cb0fbb6 22-Jul-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
743cd3e2b8ea315a1b785187654ab3665128cba7 09-Jul-2002 Chris Lattner <sabre@nondot.org> Implementing shift left & shift right on pointers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
0b12b5f50ec77a8bd01b92d287c52d748619bb4b 25-Jun-2002 Chris Lattner <sabre@nondot.org> MEGAPATCH checkin.

For details, See: docs/2002-06-25-MegaPatchInfo.txt


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2778 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
45d8b917bed115f904a33ca24cd0774d86f34fd8 06-May-2002 Chris Lattner <sabre@nondot.org> Change usage of isPointerType to use isa


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2487 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2adcd83b89d1eb38c7118861454b528d5812aad0 03-May-2002 Chris Lattner <sabre@nondot.org> Implement the NOT operator.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2455 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f4dca807d8c337154afc6cc1aa194a607df89494 02-May-2002 Chris Lattner <sabre@nondot.org> Implement cast operations on booleans to allow casting bools to ints, f.e.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2437 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e2cbbce6aa756e3453cefb4b907aa534fbb81d03 29-Apr-2002 Chris Lattner <sabre@nondot.org> Fix #include broken by iMemory.h not including DerivedTypes.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cc82cc174c4afa974450ac1e32ec85cb4d5324a8 28-Apr-2002 Chris Lattner <sabre@nondot.org> FIXME removed: malloc/alloca ALWAYS have a size argument


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
31bcdb822fe9133b1973de51519d34e5813a6184 28-Apr-2002 Chris Lattner <sabre@nondot.org> Split ConstantVals.h into Constant.h and Constants.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2378 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e06e9146eeb48e3ebf0f30bdaf7d86a6e03946ad 09-Apr-2002 Chris Lattner <sabre@nondot.org> Move FunctionArgument out of iOther.h into Argument.h and rename class to
be 'Argument' instead of FunctionArgument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2fbfdcffd3e0cf41422aaa6c526c37cb02b81341 07-Apr-2002 Chris Lattner <sabre@nondot.org> Change references to the Method class to be references to the Function
class. The Method class is obsolete (renamed) and all references to it
are being converted over to Function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2144 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9a3d69649ae8cb28d5ab38b949f656187a4f140d 26-Mar-2002 Chris Lattner <sabre@nondot.org> Change from Method to Function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1992 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9bffa73530b3712b42f6e6bddf21f22b8aba276d 19-Feb-2002 Chris Lattner <sabre@nondot.org> Keep track of memory allocated by alloca so that it is freed appropriately


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
221d688a5ef21a22c2368c9fff0e92d7966c95e5 12-Feb-2002 Chris Lattner <sabre@nondot.org> Method.h no longer includes BasicBlock.h
Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
74030254b59dd3fcefba25c7a560fbfbde93d351 12-Feb-2002 Chris Lattner <sabre@nondot.org> Add new abort-on-exceptions flag


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c0fbd57c978ecefdcce3ee054cbe736f4f82a76c 11-Feb-2002 Chris Lattner <sabre@nondot.org> Make array bound checks optional and disabled by default.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1725 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
697954c15da58bd8b186dbafdedd8b06db770201 20-Jan-2002 Chris Lattner <sabre@nondot.org> Changes to build successfully with GCC 3.02


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f23eb85de8c19eeb0b1b274c19b2b1f7dc5c80ff 14-Dec-2001 Chris Lattner <sabre@nondot.org> * Support the new -q flag for automated tests
* Remove unsized array support
* Add pointer indexing support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7a1767520611d9ff6face702068de858e1cadf2c 04-Dec-2001 Chris Lattner <sabre@nondot.org> Renamed inst_const_iterator -> const_inst_iterator
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e9bb2df410f7a22decad9a883f7139d5857c1520 03-Dec-2001 Chris Lattner <sabre@nondot.org> Rename ConstPoolVal -> Constant
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7061dc50b2513731d7b346ab16183cda4a44619f 03-Dec-2001 Chris Lattner <sabre@nondot.org> Split the PHINode class out from the iOther.h file into the iPHINode.h file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1405 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
cee8f9ae67104576b2028125b56e9ba4856a1d66 27-Nov-2001 Chris Lattner <sabre@nondot.org> Create a new #include "Support/..." directory structure to move things
from "llvm/Support/..." that are not llvm dependant.

Move files and fix #includes


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1400 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
360e17eaf1a2abda82b02235dc57d26d8f83c937 27-Nov-2001 Chris Lattner <sabre@nondot.org> Move DataTypes.h from llvm/Support to just Support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
782b939db105c1ead1ee9420d95fae8c341dbf47 26-Nov-2001 Chris Lattner <sabre@nondot.org> * Implement array indexing in lli
* Add external atoi method as well as floor, and srand


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1355 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
3bcce72f95244bb9a6e090d024d60410766aa604 14-Nov-2001 Chris Lattner <sabre@nondot.org> Rename cruft


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1299 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
84efe09e3d5dcda476f6baf53f24865e11ea78de 12-Nov-2001 Chris Lattner <sabre@nondot.org> Print percentages for profiling info better


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
a95c69997faa0422f135efad2f25281011d1cbf0 12-Nov-2001 Chris Lattner <sabre@nondot.org> Print profile info if exit() is called


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1268 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e2409064715ac156ead333a039107b6e14548050 12-Nov-2001 Chris Lattner <sabre@nondot.org> Hack a structure profiling option together


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
070cf5e47ed67ef03cfd551005d6d1834ba51b79 07-Nov-2001 Chris Lattner <sabre@nondot.org> Correct problem that allows indirect function calls


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1179 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
ea38c0e85c29783fdaf3b6c25fe7e3aa43688521 07-Nov-2001 Chris Lattner <sabre@nondot.org> * Switch to operation on pointers with PointerTy more consistently
* Fix misspeling
* Catch SIGFPE for traps
* info XXX now prints the raw contents of the GenericValue
* Switch to calloc instead of malloc (temporarily I hope) to bandaid Olden benchmarks
* Implement binary And & Or
* Convert expressions like this:
PointerTy SrcPtr = getOperandValue(I->getPtrOperand(), SF).PointerVal;
to:
GenericValue SRC = getOperandValue(I->getPtrOperand(), SF);
PointerTy SrcPtr = SRC.PointerVal;
because the prior way confuses purify.
* Taint the initial values of the value planes
* Handling 'print bb4' in the interpreter without crashing
* Print nicer stack frames with concise return type
* printf doesn't suck nearly as badly as it used to


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
461f02fc1914d4382d6df52061220443d6b9259b 07-Nov-2001 Chris Lattner <sabre@nondot.org> *Print Stack traces better.
* Use the cache writer for all it's problems.
* print arguments to methods in stack traces.
*Print the current stack from for up/down commands.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1170 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
5af0c4803b7064938dabc4c7275dcfb231e814ae 07-Nov-2001 Chris Lattner <sabre@nondot.org> * Use cached writer to speed up printing and get symbolic types more consistently
* When a segfault or bus error occurs, stop the program, print a stack trace, and dump the user in the debugger mode


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
4d0e1f96f495439c1e244e9714484b3d4b60826d 30-Oct-2001 Chris Lattner <sabre@nondot.org> Implement xor operator


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1050 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
bb76f02756dded5d43d1032ac1c8bfcfd4e76e5d 30-Oct-2001 Chris Lattner <sabre@nondot.org> * Add some assertions for checking internal error conditions
* Implement the 'rem' instruction
* Fix getelementptr to work right
* Copy the return result of an external function call into the receiving value
* Convert stuff to new style casts


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1046 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f5b2ec19cec3203288f51eb4f5fdbbddbe080d66 29-Oct-2001 Chris Lattner <sabre@nondot.org> Print out a label if we step into the first instruction of a basic block


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1038 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
95c3af584fda818ee7ae80c8ec7201e64e1f5e43 29-Oct-2001 Chris Lattner <sabre@nondot.org> Implement getelementptr instruction as well as the load and store forms
that incorporate gep


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1036 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
069aa256afa781b05665f7e5d2acdb4641d6d560 29-Oct-2001 Chris Lattner <sabre@nondot.org> Remember to print out the next instruction if stepping over an external method call


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1028 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
a74a6b5fdf35f011ca38e219e3728ca74fc5ea04 29-Oct-2001 Chris Lattner <sabre@nondot.org> Fix problem next'ing over an external method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1027 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
43e3f7c9627d0793a31a9457d3bbbe4d8d56d331 27-Oct-2001 Chris Lattner <sabre@nondot.org> Implement a -trace command line option and a trace option in the interpreter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@989 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
c25931673092b1dae646aeeac1d18f75d9640ec7 27-Oct-2001 Chris Lattner <sabre@nondot.org> * Make pointer values work better by treating them uniformly as 64 bit values.
This causes code that is generated by gcc to work better.
* Implement mul & div
* Export malloc, free, and pow
* add strtol, atoi, and atol to the runtime library


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@988 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
204eec3f57aedd703fb73db78ac2b4087caf9f07 27-Oct-2001 Chris Lattner <sabre@nondot.org> Provide argv for commands


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e43db88b2d12f2aebbe62aca8465a46c92292fce 27-Oct-2001 Chris Lattner <sabre@nondot.org> * Implement exit() builtin function
* Implement linked in runtime library with puts(char*) in it
* implement builtin putchar(int) function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@985 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
f8f2afb8cc5f080b291faad678e0a256ea44d15f 18-Oct-2001 Chris Lattner <sabre@nondot.org> Enhancements to pass argc & argv to main if required


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@909 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
7b851abd85ec57108c1f24ab9c972e14572deac3 15-Oct-2001 Chris Lattner <sabre@nondot.org> Implement ulong & long support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
39bb5b4ee9f7b0b36f3c304a2c813e38fa4db81f 15-Oct-2001 Chris Lattner <sabre@nondot.org> Implement initializers for structs and pointers


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@823 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
2e42d3a3060ff0c3d4c419f17493bc6a7683e9d0 15-Oct-2001 Chris Lattner <sabre@nondot.org> Implement global variables. Struct and Pointer initializers are not implemented yet though


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b00c582b6d40e6b9ff2d1ed4f5eaf7930e792ace 02-Oct-2001 Chris Lattner <sabre@nondot.org> Commit more code over to new cast style


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
1d87bcf4909b06dcd86320722653341f08b8b396 01-Oct-2001 Chris Lattner <sabre@nondot.org> Convert more code to use new style casts
Eliminate old style casts from value.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@696 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
9636a91649f168f41b477cba705287665e054f79 01-Oct-2001 Chris Lattner <sabre@nondot.org> Add support for new style casts


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
41c2e5c43473997d2041a9374d05c58cbe0af944 29-Sep-2001 Chris Lattner <sabre@nondot.org> File #include file


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@665 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
b26bcc5087029ffe8037ed9036ff74430c6054cf 14-Sep-2001 Chris Lattner <sabre@nondot.org> Make a new llvm/Target #include directory.
Move files from lib/CodeGen/TargetMachine to lib/Target
Move TargetData.h and TargetMachine.h to Target/{Data.h|Machine.h}
Prepare to split TargetMachine.h into several smaller files


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
e93cdce4c9d3cbc991f662bf81efa1904acbf023 10-Sep-2001 Chris Lattner <sabre@nondot.org> Use the correct style casts


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
365a76e46e7b22ee2cd7881d0a7055fc20930fd5 10-Sep-2001 Chris Lattner <sabre@nondot.org> Genericize support for calling functions a bit
Add external method support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
86660981e1382f954152b0f029f874aa36de0308 27-Aug-2001 Chris Lattner <sabre@nondot.org> Lots of new functionality


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@372 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
92101acd7fd44fd467fbeb974ae6c042289c74f9 23-Aug-2001 Chris Lattner <sabre@nondot.org> Initial checkin of interpreter


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@361 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp