Chris Lattner
68960ff1c7
Expose TD to ExternalFunctions.cpp
...
llvm-svn: 4020
2002-10-02 21:10:48 +00:00
Chris Lattner
7de3aaa26f
* Fix a bug that was causing lli to misrun:
...
test/Regression/Transforms/DecomposeMultiDimRefs/mixedindices.c
* Eliminate unneccesary #include
llvm-svn: 3712
2002-09-13 23:30:42 +00:00
Chris Lattner
7fa7135b32
Export symbols for linux
...
llvm-svn: 3707
2002-09-13 22:20:19 +00:00
Chris Lattner
c96a7a51bf
Another portability patch graciously provided by Casey Carter
...
llvm-svn: 3698
2002-09-13 14:41:38 +00:00
Chris Lattner
cb973bf5ee
- Change getelementptr instruction to use long indexes instead of uint
...
indexes for sequential types.
llvm-svn: 3683
2002-09-11 01:21:35 +00:00
Chris Lattner
3ce5b343c5
- Renamed Type::isIntegral() to Type::isInteger()
...
- Added new method Type::isIntegral() that is the same as isInteger, but
also accepts bool.
llvm-svn: 3574
2002-09-03 01:08:28 +00:00
Chris Lattner
236778fa0f
Implement ConstantPointerRef support, & ConstantExpr support for Cast, GEP & Add.
...
llvm-svn: 3516
2002-08-27 22:33:45 +00:00
Chris Lattner
20b85d96e4
Eliminated the MemAccessInst class, folding contents into GEP class.
...
llvm-svn: 3487
2002-08-22 23:37:20 +00:00
Chris Lattner
969c616d51
Load & StoreInst no longer derive from MemAccessInst, so we don't have
...
to handle indexing anymore
llvm-svn: 3485
2002-08-22 22:49:05 +00:00
Chris Lattner
c8183d92e3
Remove support for NOT instruction
...
llvm-svn: 3313
2002-08-14 17:45:39 +00:00
Chris Lattner
3d013e4c40
Minor change to make lli print out characters numerically as well as symbolically
...
llvm-svn: 3303
2002-08-13 20:45:11 +00:00
Chris Lattner
5f2b5e70e0
Fix problem where lli would not print out a 64 bit value when the client code
...
uses the modifier "%ld". Now lli passes off "%lld" to the underlying runtime
library in this case.
llvm-svn: 3230
2002-08-02 23:08:32 +00:00
Chris Lattner
64e62f9a50
Fix one real nasty bug
...
llvm-svn: 3227
2002-08-02 22:06:04 +00:00
Chris Lattner
f4d892dffb
Fix gcc 3.1 complaint
...
llvm-svn: 3091
2002-07-25 17:37:05 +00:00
Chris Lattner
24bcbdd155
*** empty log message ***
...
llvm-svn: 3002
2002-07-23 17:52:38 +00:00
Chris Lattner
99ad379582
*** empty log message ***
...
llvm-svn: 2985
2002-07-22 02:10:13 +00:00
Chris Lattner
128410dd4c
Implementing shift left & shift right on pointers
...
llvm-svn: 2844
2002-07-09 18:42:36 +00:00
Chris Lattner
d7cbd7d5d2
MEGAPATCH checkin.
...
For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2778
2002-06-25 16:13:21 +00:00
Chris Lattner
7d07dffa5f
Remove explicit support for tracing code. It should be linked into the
...
executable just like everything else.
llvm-svn: 2674
2002-05-20 21:17:16 +00:00
Chris Lattner
7563f3d1fb
Remove tracing code hack
...
llvm-svn: 2673
2002-05-20 21:16:46 +00:00
Vikram S. Adve
db5bc3b4a2
Link with test/Libraries/libinstr32.a for runtime routines
...
supporting tracing. That should be moved to a "runtime" directory.
llvm-svn: 2660
2002-05-19 16:00:28 +00:00
Vikram S. Adve
02f9033264
Added external functions for hashing pointers to sequence numbers.
...
llvm-svn: 2659
2002-05-19 15:59:25 +00:00
Chris Lattner
9e1c79995e
Updates to move some header files out of include/llvm/Transforms into
...
the Scalar and Utils subdirectories
llvm-svn: 2523
2002-05-07 18:36:35 +00:00
Chris Lattner
8898eec72c
Change usage of isPointerType to use isa
...
llvm-svn: 2487
2002-05-06 16:15:49 +00:00
Chris Lattner
beb2a36b9e
Implement the NOT operator.
...
llvm-svn: 2455
2002-05-03 19:52:30 +00:00
Chris Lattner
dff0195064
Implement cast operations on booleans to allow casting bools to ints, f.e.
...
llvm-svn: 2437
2002-05-02 19:28:45 +00:00
Chris Lattner
05a37c1dae
Fix #include broken by iMemory.h not including DerivedTypes.h
...
llvm-svn: 2407
2002-04-29 18:56:45 +00:00
Chris Lattner
9e194d76a1
FIXME removed: malloc/alloca ALWAYS have a size argument
...
llvm-svn: 2389
2002-04-28 21:57:33 +00:00
Chris Lattner
321a8cf4ba
Split ConstantVals.h into Constant.h and Constants.h
...
llvm-svn: 2378
2002-04-28 19:55:58 +00:00
Chris Lattner
a903875f0f
Eliminate use of SymTabValue class
...
llvm-svn: 2357
2002-04-28 04:55:14 +00:00
Chris Lattner
e4f2e7ecf4
Fix a bug printing out %c formated characters.
...
llvm-svn: 2277
2002-04-17 17:43:01 +00:00
Chris Lattner
4434e03eb6
Move FunctionArgument out of iOther.h into Argument.h and rename class to
...
be 'Argument' instead of FunctionArgument.
llvm-svn: 2217
2002-04-09 19:59:31 +00:00
Chris Lattner
a5c460d052
Update comment to reflect class name change.
...
llvm-svn: 2213
2002-04-09 19:40:40 +00:00
Chris Lattner
ba71c8f7e1
Remove extranous #include
...
llvm-svn: 2183
2002-04-08 22:05:10 +00:00
Chris Lattner
8b16900b1b
Remove asmwriter library from link line, because the useful contents of it
...
have been incorporated into the vmcore library.
llvm-svn: 2153
2002-04-07 22:35:30 +00:00
Chris Lattner
bc15ae64dd
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.
llvm-svn: 2144
2002-04-07 20:49:59 +00:00
Chris Lattner
dc0566e721
s/Method/Function
...
llvm-svn: 2036
2002-03-29 03:57:15 +00:00
Chris Lattner
18073550b8
Change from Method to Function
...
llvm-svn: 1992
2002-03-26 18:02:30 +00:00
Chris Lattner
558efd4bf0
Remove runtime library in favor of users linking against real libraries.
...
llvm-svn: 1853
2002-03-11 17:57:13 +00:00
Chris Lattner
32669e6211
Do not link in runtime library anymore, assume that user manually links in
...
libraries. Code should be generalized to allow lli to take -lc -lm arguments
in the future (todo)
llvm-svn: 1852
2002-03-11 17:52:43 +00:00
Chris Lattner
e71c9ba6d0
Implement a bunch of new functions to support the SPECINT mcf
...
benchmark
llvm-svn: 1841
2002-03-08 22:51:07 +00:00
Chris Lattner
44d96e69f4
Remove hack. This is better fixed in Makefile.common
...
llvm-svn: 1795
2002-02-24 23:25:46 +00:00
Chris Lattner
dcdf0532ff
Build with newer compiler, with same bug
...
llvm-svn: 1793
2002-02-24 23:11:05 +00:00
Chris Lattner
f576e43330
Keep track of memory allocated by alloca so that it is freed appropriately
...
llvm-svn: 1776
2002-02-19 18:50:09 +00:00
Chris Lattner
801f59eb1f
Implement exp function
...
llvm-svn: 1774
2002-02-18 19:06:25 +00:00
Chris Lattner
b0a2c5546b
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
llvm-svn: 1746
2002-02-12 21:07:25 +00:00
Chris Lattner
ce754be520
Add new abort-on-exceptions flag
...
llvm-svn: 1737
2002-02-12 15:47:23 +00:00
Chris Lattner
658f0b593d
Make array bound checks optional and disabled by default.
...
llvm-svn: 1725
2002-02-11 20:19:16 +00:00
Chris Lattner
e77bf6231e
Implement the clock() function
...
llvm-svn: 1573
2002-01-23 21:38:07 +00:00
Chris Lattner
10a9b7627d
Eliminate opt library
...
llvm-svn: 1516
2002-01-21 23:13:46 +00:00
Chris Lattner
3dc9a2a61f
Changes to build successfully with GCC 3.02
...
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner
59918ae040
* Support the new -q flag for automated tests
...
* Remove unsized array support
* Add pointer indexing support
llvm-svn: 1477
2001-12-14 16:49:29 +00:00
Chris Lattner
eed30bc7da
Build runtime library with local GCCAS
...
llvm-svn: 1447
2001-12-13 00:44:23 +00:00
Chris Lattner
472385127d
Implement sprintf
...
llvm-svn: 1445
2001-12-13 00:43:47 +00:00
Chris Lattner
c4a5815033
Renamed inst_const_iterator -> const_inst_iterator
...
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
llvm-svn: 1408
2001-12-04 00:03:30 +00:00
Chris Lattner
f6b7da2bb5
Rename ConstPoolVal -> Constant
...
Rename ConstPool* -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h
llvm-svn: 1407
2001-12-03 22:26:30 +00:00
Chris Lattner
bcf2df7058
Split the PHINode class out from the iOther.h file into the iPHINode.h file
...
llvm-svn: 1405
2001-12-03 18:02:31 +00:00
Chris Lattner
463cc31132
Create a new #include "Support/..." directory structure to move things
...
from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400
2001-11-27 00:03:19 +00:00
Chris Lattner
cead7793a7
Move DataTypes.h from llvm/Support to just Support
...
llvm-svn: 1399
2001-11-26 23:04:08 +00:00
Chris Lattner
90bdf397e1
Use pointertype where appropriate
...
llvm-svn: 1392
2001-11-26 19:20:16 +00:00
Chris Lattner
f4cbfaed0a
Remove invalid,unneccesary ## token
...
llvm-svn: 1391
2001-11-26 19:19:27 +00:00
Chris Lattner
136ed3b396
* Implement array indexing in lli
...
* Add external atoi method as well as floor, and srand
llvm-svn: 1355
2001-11-26 18:18:18 +00:00
Chris Lattner
80788c6947
Rename cruft
...
llvm-svn: 1299
2001-11-14 11:28:18 +00:00
Chris Lattner
2d05a0dd7d
Implement some more rand functions for em3d benchmark
...
llvm-svn: 1291
2001-11-13 05:46:08 +00:00
Chris Lattner
ab0f8a05f6
Print percentages for profiling info better
...
llvm-svn: 1274
2001-11-12 20:13:14 +00:00
Chris Lattner
29ad087a83
Print profile info if exit() is called
...
llvm-svn: 1268
2001-11-12 16:28:48 +00:00
Chris Lattner
28afda8ca4
Hack a structure profiling option together
...
llvm-svn: 1267
2001-11-12 16:19:45 +00:00
Chris Lattner
4bded629ca
Correct problem that allows indirect function calls
...
llvm-svn: 1179
2001-11-07 20:12:30 +00:00
Chris Lattner
caf89d678c
* 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
llvm-svn: 1177
2001-11-07 19:46:27 +00:00
Chris Lattner
7627d5b279
*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.
llvm-svn: 1170
2001-11-07 05:31:27 +00:00
Chris Lattner
b9ca754b0d
* 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
llvm-svn: 1169
2001-11-07 04:23:00 +00:00
Chris Lattner
7f56e171e5
Add %p format to printf, which MUST be used when printing pointer values.
...
llvm-svn: 1166
2001-11-07 02:57:33 +00:00
Chris Lattner
06d10f646d
Implement log and drand48 for TSP bm
...
llvm-svn: 1165
2001-11-06 22:53:25 +00:00
Chris Lattner
d907c7c9eb
Implement sqrt, implement printf better, simpler.
...
llvm-svn: 1161
2001-11-06 21:52:18 +00:00
Chris Lattner
38732a00f5
Be lenient on types so that programs that are not very typesafe will work
...
llvm-svn: 1104
2001-11-03 10:15:32 +00:00
Chris Lattner
1474ad4c46
Implement xor operator
...
llvm-svn: 1050
2001-10-30 20:54:36 +00:00
Chris Lattner
5ea831acc4
callExternalMethod now returns the return value of the function
...
llvm-svn: 1048
2001-10-30 20:28:23 +00:00
Chris Lattner
b773a4e59d
Implement a gross function name map that must be used when linking statically
...
This is for use with purify
llvm-svn: 1047
2001-10-30 20:28:00 +00:00
Chris Lattner
d85d2dfcba
* 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
llvm-svn: 1046
2001-10-30 20:27:31 +00:00
Chris Lattner
727495d6dc
Don't fail to load runtime if running LLI from the current directory
...
llvm-svn: 1044
2001-10-30 16:40:37 +00:00
Chris Lattner
84d4bc52df
Print out a label if we step into the first instruction of a basic block
...
llvm-svn: 1038
2001-10-29 20:44:34 +00:00
Chris Lattner
b4899254c0
* Fix pow wrapper to actually work
...
* Implement rudimentary printf support for lli
llvm-svn: 1037
2001-10-29 20:27:45 +00:00
Chris Lattner
3f63736182
Implement getelementptr instruction as well as the load and store forms
...
that incorporate gep
llvm-svn: 1036
2001-10-29 19:32:19 +00:00
Chris Lattner
c476c9b156
Remember to print out the next instruction if stepping over an external method call
...
llvm-svn: 1028
2001-10-29 16:05:19 +00:00
Chris Lattner
3f9f8e34ca
Fix problem next'ing over an external method
...
llvm-svn: 1027
2001-10-29 14:08:33 +00:00
Chris Lattner
4c2070b697
Fix some illegal uses of the ## operator
...
llvm-svn: 1013
2001-10-28 22:38:22 +00:00
Vikram S. Adve
fa2af8b48c
Add methods print<TYPE> for String, Pointer, and each primitive type.
...
llvm-svn: 994
2001-10-28 20:52:27 +00:00
Chris Lattner
52736dc8e3
Implement a -trace command line option and a trace option in the interpreter.
...
llvm-svn: 989
2001-10-27 08:43:52 +00:00
Chris Lattner
9def26ab6b
* 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
llvm-svn: 988
2001-10-27 08:28:11 +00:00
Chris Lattner
de2726ed00
Provide argv for commands
...
llvm-svn: 987
2001-10-27 05:54:31 +00:00
Chris Lattner
e04a4efa13
* Implement exit() builtin function
...
* Implement linked in runtime library with puts(char*) in it
* implement builtin putchar(int) function
llvm-svn: 985
2001-10-27 04:15:57 +00:00
Chris Lattner
fc68c300ce
Add support for building a runtime library for LLI
...
llvm-svn: 983
2001-10-24 19:52:41 +00:00
Chris Lattner
127fa2e39d
Enhancements to pass argc & argv to main if required
...
llvm-svn: 909
2001-10-18 21:55:32 +00:00
Chris Lattner
20a04bd230
Implement ulong & long support
...
llvm-svn: 843
2001-10-15 19:18:26 +00:00
Chris Lattner
554f1b941d
Implement initializers for structs and pointers
...
llvm-svn: 823
2001-10-15 13:25:40 +00:00
Chris Lattner
af1d77e07c
Implement global variables. Struct and Pointer initializers are not implemented yet though
...
llvm-svn: 818
2001-10-15 05:51:48 +00:00
Chris Lattner
a01eda3091
* Both Method & GlobalVariable now subclass GlobalValue
...
* ConstPoolPointerReference now represents a pointer to a GlobalValue
* Methods name references are now explicit pointers to methods
* Rename Value::GlobalVal to Value::GlobalVariableVal to avoid confusion
llvm-svn: 703
2001-10-03 14:53:21 +00:00
Chris Lattner
08b1dde37e
Commit more code over to new cast style
...
llvm-svn: 697
2001-10-02 03:41:24 +00:00
Chris Lattner
ad1b0a1a83
Convert more code to use new style casts
...
Eliminate old style casts from value.h
llvm-svn: 696
2001-10-01 20:11:19 +00:00
Chris Lattner
43781f1f96
Add support for new style casts
...
llvm-svn: 694
2001-10-01 16:18:37 +00:00
Chris Lattner
97440eba29
File #include file
...
llvm-svn: 665
2001-09-28 22:56:43 +00:00
Chris Lattner
a0a3946882
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
llvm-svn: 566
2001-09-14 05:34:53 +00:00
Chris Lattner
836b03a509
Use the correct style casts
...
llvm-svn: 546
2001-09-10 20:12:04 +00:00
Chris Lattner
3e7417ba99
Add support for external methods
...
llvm-svn: 529
2001-09-10 04:50:17 +00:00
Chris Lattner
34c9e1a6fb
Genericize support for calling functions a bit
...
Add external method support
llvm-svn: 528
2001-09-10 04:49:44 +00:00
Chris Lattner
5e9c4e67c2
Make use of the new TOOLNAME/USEDLIBS options provided in Makefile.common
...
llvm-svn: 501
2001-09-07 22:59:25 +00:00
Chris Lattner
78c2f4ab17
Annotations are now const
...
llvm-svn: 470
2001-09-07 16:59:15 +00:00
Chris Lattner
0a85e4845d
Lots of new functionality
...
llvm-svn: 372
2001-08-27 05:16:50 +00:00
Chris Lattner
8e225d7a21
Initial checkin of interpreter
...
llvm-svn: 361
2001-08-23 17:05:04 +00:00