Misha Brukman
aa7d26c8c8
Fix spelling.
...
llvm-svn: 9021
2003-10-10 17:42:19 +00:00
Brian Gaeke
6cc20deac1
Rewrite head-of-file comment.
...
In lookupFunction():
Change to use "F" for Function argument instead of ancient "M".
Remove commented-out code.
Change to use GetAddressOfSymbol instead of dlsym.
llvm-svn: 9013
2003-10-10 17:03:10 +00:00
Chris Lattner
93cb392a33
Do not read past the end of the contained type list
...
llvm-svn: 8986
2003-10-09 20:31:18 +00:00
Brian Gaeke
a7669038fc
Make CreateArgv part of lli rather than part of ExecutionEngine.
...
Switch Interpreter and JIT's "run" methods to take a Function and a vector of
GenericValues.
Move (almost all of) the stuff that constructs a canonical call to main()
into lli (new methods "callAsMain", "makeStringVector").
Nuke getCurrentExecutablePath(), enableTracing(), getCurrentFunction(),
isStopped(), and many dead decls from interpreter.
Add linux strdup() support to interpreter.
Make interpreter's atexit handler runner and JIT's runAtExitHandlers() look
more alike, in preparation for refactoring.
atexit() is spelled "atexit", not "at_exit".
llvm-svn: 8366
2003-09-05 18:42:01 +00:00
Chris Lattner
479854091a
Add preliminary support for "any" pointersize/endianness. This will need
...
to change soon though.
llvm-svn: 8123
2003-08-24 14:02:47 +00:00
Misha Brukman
7eb05a170a
Spell `necessary' correctly.
...
llvm-svn: 7944
2003-08-18 14:43:39 +00:00
John Criswell
3ef61afb76
Merged in autoconf branch. This provides configuration via the autoconf
...
system.
llvm-svn: 7014
2003-06-30 21:59:07 +00:00
Brian Gaeke
fcd72643fa
Include <cmath> instead of <math.h>
...
Remove isnan; it's too unportable to handle cleanly at this point.
llvm-svn: 6866
2003-06-23 19:41:55 +00:00
Brian Gaeke
44a4adfad2
Use std::isnan instead of isnan. Brought back to you from the
...
future, by the reconciliation of the C++ and C99 standards. Someday.
llvm-svn: 6751
2003-06-17 19:59:17 +00:00
Chris Lattner
4a5bb95729
Add support for atexit function, remove support for __main function
...
llvm-svn: 6194
2003-05-14 14:21:30 +00:00
Chris Lattner
525e251c4e
Implement varargs support for LLI!
...
llvm-svn: 6043
2003-05-08 16:52:43 +00:00
Chris Lattner
470754e3ca
A large number of simple changes:
...
* s/Method/Function
* Kill some obsolete (external) functions that used to be to support tracing
llvm-svn: 6041
2003-05-08 16:18:31 +00:00
Chris Lattner
01971e1267
Only do the %ld -> %lld promotion when running a 64 bit bytecode on a 32 bit host
...
llvm-svn: 5942
2003-04-25 18:28:44 +00:00
Chris Lattner
4c5245b144
Add __strdup
...
llvm-svn: 5941
2003-04-25 18:23:38 +00:00
Chris Lattner
487bb80496
Add memcpy
...
llvm-svn: 5887
2003-04-23 20:23:16 +00:00
Chris Lattner
93f4ff73a6
Implement a bunch of new external functions
...
llvm-svn: 5885
2003-04-23 19:55:24 +00:00
Chris Lattner
26a4a1f5ca
Add support for _IO_getc function used on linux
...
llvm-svn: 5883
2003-04-23 19:20:50 +00:00
Chris Lattner
1610666ea5
fprintf CAN take exactly 2 args
...
llvm-svn: 5830
2003-04-21 22:43:20 +00:00
Chris Lattner
d31837154d
Implement scanf and fix sscanf to actually endian swap the results correctly
...
llvm-svn: 5763
2003-03-31 22:12:37 +00:00
Chris Lattner
d49518c534
* Wrap at 80 columns
...
* Fix a ton of warnings
* Implement puts
llvm-svn: 5254
2003-01-13 00:59:47 +00:00
Chris Lattner
a0d7b084ef
Substantial changes to refactor LLI to incorporate both the Jello JIT and
...
the traditional LLI interpreter
llvm-svn: 5125
2002-12-23 23:59:41 +00:00
Chris Lattner
677671d1af
Add support for isnan
...
llvm-svn: 5111
2002-12-20 04:18:13 +00:00
Chris Lattner
98cf1f5d64
- Eliminated the deferred symbol table stuff in Module & Function, it really
...
wasn't an optimization and it was causing lots of bugs.
llvm-svn: 4779
2002-11-20 18:36:02 +00:00
Chris Lattner
7a1da7c850
Implement feof
...
llvm-svn: 4627
2002-11-08 19:10:26 +00:00
Chris Lattner
a41a195374
Implement freopen for burg
...
llvm-svn: 4606
2002-11-07 19:33:50 +00:00
Chris Lattner
c3a84099a9
Implement fprintf
...
llvm-svn: 4585
2002-11-06 23:05:03 +00:00
Chris Lattner
8529020770
Implement fputc and ungetc to allow burg to run in lli
...
llvm-svn: 4584
2002-11-06 22:59:28 +00:00
Chris Lattner
0313db6b02
* Implement the getc() function
...
* Support usage of stdin, stdout & stderr correctly in LLI!
llvm-svn: 4022
2002-10-02 21:12:13 +00:00
Chris Lattner
bd0d2eab64
* 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
33b3b9660b
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
7076ff29ed
MEGAPATCH checkin.
...
For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2778
2002-06-25 16:13:21 +00:00
Chris Lattner
1319429f4d
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
Vikram S. Adve
a77150b977
Added external functions for hashing pointers to sequence numbers.
...
llvm-svn: 2659
2002-05-19 15:59:25 +00:00
Chris Lattner
d6010abae8
Fix a bug printing out %c formated characters.
...
llvm-svn: 2277
2002-04-17 17:43:01 +00:00
Chris Lattner
62b7fd136e
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
f94811af13
s/Method/Function
...
llvm-svn: 2036
2002-03-29 03:57:15 +00:00
Chris Lattner
5dec460017
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
568a770742
Implement exp function
...
llvm-svn: 1774
2002-02-18 19:06:25 +00:00
Chris Lattner
8f52ffd3ce
Implement the clock() function
...
llvm-svn: 1573
2002-01-23 21:38:07 +00:00
Chris Lattner
7f74a56e24
Changes to build successfully with GCC 3.02
...
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner
60a9a23aba
Implement sprintf
...
llvm-svn: 1445
2001-12-13 00:43:47 +00:00
Chris Lattner
2413b160ec
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
e977e5d973
Remove invalid,unneccesary ## token
...
llvm-svn: 1391
2001-11-26 19:19:27 +00:00
Chris Lattner
5ba757369c
* 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
9754aba7f0
Implement some more rand functions for em3d benchmark
...
llvm-svn: 1291
2001-11-13 05:46:08 +00:00
Chris Lattner
31e9e4d219
* 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
51862ef777
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
c23094efb4
Implement log and drand48 for TSP bm
...
llvm-svn: 1165
2001-11-06 22:53:25 +00:00
Chris Lattner
5cc318819c
Implement sqrt, implement printf better, simpler.
...
llvm-svn: 1161
2001-11-06 21:52:18 +00:00
Chris Lattner
d7c742f46a
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
7fd51b54e5
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
490d2a8461
* 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
9cd1451b89
Fix some illegal uses of the ## operator
...
llvm-svn: 1013
2001-10-28 22:38:22 +00:00
Vikram S. Adve
578a840b29
Add methods print<TYPE> for String, Pointer, and each primitive type.
...
llvm-svn: 994
2001-10-28 20:52:27 +00:00
Chris Lattner
0b00b31c78
* 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
15157b88e9
* 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
d299dbac0e
Enhancements to pass argc & argv to main if required
...
llvm-svn: 909
2001-10-18 21:55:32 +00:00
Chris Lattner
c62e2e5bf7
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
7fac070215
* 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
f4a0d70778
Use the correct style casts
...
llvm-svn: 546
2001-09-10 20:12:04 +00:00
Chris Lattner
baf08eb2a7
Add support for external methods
...
llvm-svn: 529
2001-09-10 04:50:17 +00:00