summaryrefslogtreecommitdiff
path: root/tools/llee/README.txt
diff options
context:
space:
mode:
authorMisha Brukman <brukman+llvm@gmail.com>2003-08-15 23:31:16 +0000
committerMisha Brukman <brukman+llvm@gmail.com>2003-08-15 23:31:16 +0000
commit593ece00509fe5ced9f6a44732cab0e45d03cf63 (patch)
tree7a942643230618914c92436e107902f7c2319984 /tools/llee/README.txt
parenta1ee42ac8e4e31f06476233f89b2993868c2183b (diff)
downloadllvm-593ece00509fe5ced9f6a44732cab0e45d03cf63.tar.gz
llvm-593ece00509fe5ced9f6a44732cab0e45d03cf63.tar.bz2
llvm-593ece00509fe5ced9f6a44732cab0e45d03cf63.tar.xz
A lot of changes were suggested by Chris.
ExecveHandler.c: * Use "" instead of <> for LLVM include files * Use raw I/O, we don't need buffering * Set errno = 0 before using open() * strlen() doesn't count NULL terminator in its size * Use memcmp() instead of strcmp() * Return result of the real execve(), not 0 * Search for path to bytecode file if not absolute/relative path SysUtils.c: * Convert all comments to C-style * Stop using `bool', use `unsigned' instead SysUtils.h: * Stop using `bool', use `unsigned' instead * Updated comment to FindExecutable() README.txt: * Describe the goal of LLEE and an application git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7911 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llee/README.txt')
-rw-r--r--tools/llee/README.txt12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/llee/README.txt b/tools/llee/README.txt
new file mode 100644
index 0000000000..ac9b01bbfb
--- /dev/null
+++ b/tools/llee/README.txt
@@ -0,0 +1,12 @@
+ LLEE: (LL)VM (E)xecution (E)nvironment
+
+This tool presents a virtual execution environment for LLVM programs. By
+preloading a shared object which defines a custom execve() functions, we can
+execute bytecode files with the JIT directly, without the user ever thinking
+about it.
+
+Thus, a user can freely run any program, native or LLVM bytecode, transparently,
+and without even being aware of it.
+
+To use LLEE, run `./llee <native_program>', a good choice is a shell. Anything
+started within that program will be affected by the execve() replacement.