[vmkit-commits] [vmkit] r180272 - Initial state for migration. Checkout of commit 81b8d38763defcf2a71a10490d12923c6f176eb2
Peter Senna Tschudin
peter.senna at gmail.com
Thu Apr 25 09:45:57 PDT 2013
Author: peter.senna
Date: Thu Apr 25 11:44:13 2013
New Revision: 180272
URL: http://llvm.org/viewvc/llvm-project?rev=180272&view=rev
Log:
Initial state for migration. Checkout of commit 81b8d38763defcf2a71a10490d12923c6f176eb2
Added:
vmkit/trunk/.gitignore
vmkit/trunk/www-orig-llvm/
vmkit/trunk/www-orig-llvm/OpenProjects.html
- copied, changed from r180270, vmkit/trunk/www/OpenProjects.html
vmkit/trunk/www-orig-llvm/content.css
- copied, changed from r180270, vmkit/trunk/www/content.css
vmkit/trunk/www-orig-llvm/get_involved.html
- copied, changed from r180270, vmkit/trunk/www/get_involved.html
vmkit/trunk/www-orig-llvm/get_started.html
- copied, changed from r180270, vmkit/trunk/www/get_started.html
vmkit/trunk/www-orig-llvm/index.html
- copied, changed from r180270, vmkit/trunk/www/index.html
vmkit/trunk/www-orig-llvm/menu.css
- copied, changed from r180270, vmkit/trunk/www/menu.css
vmkit/trunk/www-orig-llvm/menu.html.incl
- copied, changed from r180270, vmkit/trunk/www/menu.html.incl
vmkit/trunk/www-orig-llvm/publications/
vmkit/trunk/www-orig-llvm/publications/ladyvm.html
- copied, changed from r180270, vmkit/trunk/www/publications/ladyvm.html
vmkit/trunk/www-orig-llvm/publications/osgi_dsn.html
- copied, changed from r180270, vmkit/trunk/www/publications/osgi_dsn.html
vmkit/trunk/www-orig-llvm/publications/osgi_iies.html
- copied, changed from r180270, vmkit/trunk/www/publications/osgi_iies.html
vmkit/trunk/www-orig-llvm/publications/thesis.html
- copied, changed from r180270, vmkit/trunk/www/publications/thesis.html
vmkit/trunk/www-orig-llvm/publications/vmkit.html
- copied, changed from r180270, vmkit/trunk/www/publications/vmkit.html
vmkit/trunk/www-orig-llvm/pubs.html
- copied, changed from r180270, vmkit/trunk/www/pubs.html
vmkit/trunk/www-orig-llvm/releases/
vmkit/trunk/www-orig-llvm/releases/index.html
- copied, changed from r180270, vmkit/trunk/www/releases/index.html
vmkit/trunk/www/Makefile
vmkit/trunk/www/common.php
vmkit/trunk/www/index.php
vmkit/trunk/www/index.php.orig (with props)
vmkit/trunk/www/involved.php
vmkit/trunk/www/lip6.gif
vmkit/trunk/www/ls.php
vmkit/trunk/www/publis/
vmkit/trunk/www/publis/.biblio
vmkit/trunk/www/publis/Makefile
vmkit/trunk/www/publis/Publications.php
vmkit/trunk/www/publis/Publications_abstracts.php
vmkit/trunk/www/publis/Publications_bib.php
vmkit/trunk/www/publis/ab-full.bib
vmkit/trunk/www/publis/generate-biblio.sh (with props)
vmkit/trunk/www/publis/geoffray08pppj-ladyvm.pdf
vmkit/trunk/www/publis/geoffray09dsn-ijvm.pdf
vmkit/trunk/www/publis/geoffray10vee-vmkit.pdf
vmkit/trunk/www/publis/root.php
vmkit/trunk/www/publis/vmkit.bib
vmkit/trunk/www/root.php
vmkit/trunk/www/start.php
- copied, changed from r180270, vmkit/trunk/www/get_started.html
vmkit/trunk/www/stylesheet.css
Removed:
vmkit/trunk/www/OpenProjects.html
vmkit/trunk/www/content.css
vmkit/trunk/www/get_involved.html
vmkit/trunk/www/get_started.html
vmkit/trunk/www/index.html
vmkit/trunk/www/menu.css
vmkit/trunk/www/menu.html.incl
vmkit/trunk/www/publications/ladyvm.html
vmkit/trunk/www/publications/osgi_dsn.html
vmkit/trunk/www/publications/osgi_iies.html
vmkit/trunk/www/publications/thesis.html
vmkit/trunk/www/publications/vmkit.html
vmkit/trunk/www/pubs.html
vmkit/trunk/www/releases/index.html
Modified:
vmkit/trunk/autoconf/configure.ac
vmkit/trunk/configure
vmkit/trunk/include/j3/JavaLLVMCompiler.h
vmkit/trunk/include/vmkit/JIT.h
vmkit/trunk/lib/j3/ClassLib/Makefile
vmkit/trunk/lib/j3/Compiler/J3Intrinsics.cpp
vmkit/trunk/lib/j3/Compiler/JavaAOTCompiler.cpp
vmkit/trunk/lib/j3/Compiler/JavaJIT.cpp
vmkit/trunk/lib/j3/Compiler/JavaJIT.h
vmkit/trunk/lib/j3/Compiler/JavaJITCompiler.cpp
vmkit/trunk/lib/j3/Compiler/JavaJITOpcodes.cpp
vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp
vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp
vmkit/trunk/lib/j3/Compiler/LowerConstantCalls.cpp
vmkit/trunk/lib/j3/VMCore/JavaThread.h
vmkit/trunk/lib/j3/VMCore/Jni.cpp
vmkit/trunk/lib/vmkit/Compiler/EscapeAnalysis.cpp
vmkit/trunk/lib/vmkit/Compiler/InlineMalloc.cpp
vmkit/trunk/lib/vmkit/Compiler/JIT.cpp
vmkit/trunk/lib/vmkit/JITGCPass/JITGCPass.cpp
vmkit/trunk/lib/vmkit/StaticGCPass/StaticGCPass.cpp
vmkit/trunk/lib/vmkit/StaticGCPrinter/VmkitGCPrinter.cpp
vmkit/trunk/mmtk/inline/InlineMethods.cpp
vmkit/trunk/mmtk/magic/LowerJavaRT.cpp
vmkit/trunk/mmtk/magic/LowerMagic.cpp
vmkit/trunk/tools/j3/Makefile
vmkit/trunk/tools/precompiler/Makefile
vmkit/trunk/tools/vmjc/vmjc.cpp
Added: vmkit/trunk/.gitignore
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/.gitignore?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/.gitignore (added)
+++ vmkit/trunk/.gitignore Thu Apr 25 11:44:13 2013
@@ -0,0 +1 @@
+*~
Modified: vmkit/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/autoconf/configure.ac?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/autoconf/configure.ac (original)
+++ vmkit/trunk/autoconf/configure.ac Thu Apr 25 11:44:13 2013
@@ -31,12 +31,12 @@ dnl===
dnl===-----------------------------------------------------------------------===
dnl Initialize autoconf and define the package name, version number and
dnl email address for reporting bugs.
-AC_INIT([vmkit],[0.33svn],[nicolas.geoffray at gmail.com])
+AC_INIT([vmkit],[0.31svn],[nicolas.geoffray at gmail.com])
dnl Provide a copyright substitution and ensure the copyright notice is included
dnl in the output of --version option of the generated configure script.
-AC_SUBST(VMKIT_COPYRIGHT,["Copyright (c) 2003-2012 Universite Pierre et Marie Curie."])
-AC_COPYRIGHT([Copyright (c) 2003-2012 Universite Pierre et Marie Curie.])
+AC_SUBST(VMKIT_COPYRIGHT,["Copyright (c) 2003-2011 Universite Pierre et Marie Curie."])
+AC_COPYRIGHT([Copyright (c) 2003-2011 Universite Pierre et Marie Curie.])
dnl Indicate that we require autoconf 2.59 or later. Ths is needed because we
dnl use some autoconf macros only available in 2.59.
Modified: vmkit/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/configure?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/configure (original)
+++ vmkit/trunk/configure Thu Apr 25 11:44:13 2013
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for vmkit 0.33svn.
+# Generated by GNU Autoconf 2.68 for vmkit 0.31svn.
#
# Report bugs to <nicolas.geoffray at gmail.com>.
#
@@ -13,7 +13,7 @@
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
#
-# Copyright (c) 2003-2012 Universite Pierre et Marie Curie.
+# Copyright (c) 2003-2011 Universite Pierre et Marie Curie.
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##
@@ -562,8 +562,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='vmkit'
PACKAGE_TARNAME='vmkit'
-PACKAGE_VERSION='0.33svn'
-PACKAGE_STRING='vmkit 0.33svn'
+PACKAGE_VERSION='0.31svn'
+PACKAGE_STRING='vmkit 0.31svn'
PACKAGE_BUGREPORT='nicolas.geoffray at gmail.com'
PACKAGE_URL=''
@@ -1269,7 +1269,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures vmkit 0.33svn to adapt to many kinds of systems.
+\`configure' configures vmkit 0.31svn to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1335,7 +1335,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of vmkit 0.33svn:";;
+ short | recursive ) echo "Configuration of vmkit 0.31svn:";;
esac
cat <<\_ACEOF
@@ -1435,14 +1435,14 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-vmkit configure 0.33svn
+vmkit configure 0.31svn
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
-Copyright (c) 2003-2012 Universite Pierre et Marie Curie.
+Copyright (c) 2003-2011 Universite Pierre et Marie Curie.
_ACEOF
exit
fi
@@ -1898,7 +1898,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by vmkit $as_me 0.33svn, which was
+It was created by vmkit $as_me 0.31svn, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@@ -2247,7 +2247,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-VMKIT_COPYRIGHT="Copyright (c) 2003-2012 Universite Pierre et Marie Curie."
+VMKIT_COPYRIGHT="Copyright (c) 2003-2011 Universite Pierre et Marie Curie."
@@ -6323,7 +6323,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by vmkit $as_me 0.33svn, which was
+This file was extended by vmkit $as_me 0.31svn, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -6389,7 +6389,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-vmkit config.status 0.33svn
+vmkit config.status 0.31svn
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
Modified: vmkit/trunk/include/j3/JavaLLVMCompiler.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/j3/JavaLLVMCompiler.h?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/include/j3/JavaLLVMCompiler.h (original)
+++ vmkit/trunk/include/j3/JavaLLVMCompiler.h Thu Apr 25 11:44:13 2013
@@ -15,8 +15,8 @@
#include "j3/LLVMInfo.h"
#include "llvm/ADT/DenseMap.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
#include <map>
@@ -51,7 +51,7 @@ protected:
llvm::Module* TheModule;
llvm::DIBuilder* DebugFactory;
J3Intrinsics JavaIntrinsics;
- const llvm::DataLayout* TheDataLayout;
+ const llvm::TargetData* TheTargetData;
private:
bool enabledException;
Modified: vmkit/trunk/include/vmkit/JIT.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/vmkit/JIT.h?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/include/vmkit/JIT.h (original)
+++ vmkit/trunk/include/vmkit/JIT.h Thu Apr 25 11:44:13 2013
@@ -33,7 +33,7 @@ namespace llvm {
class JIT;
class Module;
class PointerType;
- class DataLayout;
+ class TargetData;
class TargetMachine;
class Type;
}
Modified: vmkit/trunk/lib/j3/ClassLib/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/ClassLib/Makefile?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/ClassLib/Makefile (original)
+++ vmkit/trunk/lib/j3/ClassLib/Makefile Thu Apr 25 11:44:13 2013
@@ -13,8 +13,6 @@ EXTRA_DIST = ArrayCopy.inc \
ClasspathConstructor.inc \
ClasspathField.inc \
ClasspathMethod.inc \
- DefineClass.inc \
- Reflect.inc \
SetProperties.inc \
Unsafe.inc
Modified: vmkit/trunk/lib/j3/Compiler/J3Intrinsics.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/J3Intrinsics.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/J3Intrinsics.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/J3Intrinsics.cpp Thu Apr 25 11:44:13 2013
@@ -7,10 +7,10 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/DerivedTypes.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Constants.h"
+#include "llvm/DerivedTypes.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
#include "vmkit/JIT.h"
Modified: vmkit/trunk/lib/j3/Compiler/JavaAOTCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaAOTCompiler.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaAOTCompiler.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaAOTCompiler.cpp Thu Apr 25 11:44:13 2013
@@ -7,15 +7,15 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/BasicBlock.h"
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
+#include "llvm/BasicBlock.h"
+#include "llvm/Constants.h"
+#include "llvm/Instructions.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
#include "llvm/PassManager.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/TargetRegistry.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include "vmkit/UTF8.h"
#include "vmkit/Thread.h"
@@ -1808,8 +1808,8 @@ JavaAOTCompiler::JavaAOTCompiler(const s
options.NoFramePointerElim = true;
TargetMachine* TM = TheTarget->createTargetMachine(
vmkit::VmkitModule::getHostTriple(), "", "", options);
- TheDataLayout = TM->getDataLayout();
- TheModule->setDataLayout(TheDataLayout->getStringRepresentation());
+ TheTargetData = TM->getTargetData();
+ TheModule->setDataLayout(TheTargetData->getStringRepresentation());
TheModule->setTargetTriple(TM->getTargetTriple());
JavaIntrinsics.init(TheModule);
initialiseAssessorInfo();
@@ -1896,7 +1896,7 @@ void JavaAOTCompiler::printStats() {
Module* Mod = getLLVMModule();
for (Module::const_global_iterator i = Mod->global_begin(),
e = Mod->global_end(); i != e; ++i) {
- size += TheDataLayout->getTypeAllocSize(i->getType());
+ size += TheTargetData->getTypeAllocSize(i->getType());
}
fprintf(stdout, "%lluB\n", (unsigned long long int)size);
}
Modified: vmkit/trunk/lib/j3/Compiler/JavaJIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaJIT.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaJIT.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaJIT.cpp Thu Apr 25 11:44:13 2013
@@ -14,12 +14,14 @@
#include <cstring>
-#include <llvm/IR/Constants.h>
-#include <llvm/IR/DerivedTypes.h>
-#include <llvm/IR/Function.h>
-#include <llvm/IR/Instructions.h>
-#include <llvm/IR/Module.h>
-#include <llvm/IR/Type.h>
+#include <llvm/Constants.h>
+#include <llvm/DerivedTypes.h>
+#include <llvm/Function.h>
+#include <llvm/Instructions.h>
+#include <llvm/Module.h>
+#include <llvm/Type.h>
+#include <llvm/Analysis/DebugInfo.h>
+#include "llvm/Analysis/DIBuilder.h"
#include <llvm/Support/CFG.h>
#include "vmkit/JIT.h"
@@ -1259,8 +1261,7 @@ llvm::Function* JavaJIT::javaCompile() {
const UTF8* name =
compilingClass->ctpInfo->UTF8At(AR.AnnotationNameIndex);
if (name->equals(TheCompiler->InlinePragma)) {
- llvmFunction->removeFnAttr(
- Attribute::get(*llvmContext, Attribute::NoInline));
+ llvmFunction->removeFnAttr(Attribute::NoInline);
llvmFunction->addFnAttr(Attribute::AlwaysInline);
} else if (name->equals(TheCompiler->NoInlinePragma)) {
llvmFunction->addFnAttr(Attribute::NoInline);
Modified: vmkit/trunk/lib/j3/Compiler/JavaJIT.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaJIT.h?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaJIT.h (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaJIT.h Thu Apr 25 11:44:13 2013
@@ -13,16 +13,15 @@
#include <vector>
#include <map>
-#include "llvm/IR/BasicBlock.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Metadata.h"
-#include "llvm/IR/Type.h"
-#include "llvm/IR/Value.h"
-#include "llvm/DIBuilder.h"
-#include "llvm/DebugInfo.h"
+#include "llvm/BasicBlock.h"
+#include "llvm/Function.h"
+#include "llvm/Instructions.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Metadata.h"
+#include "llvm/Type.h"
+#include "llvm/Value.h"
#include "llvm/Support/DebugLoc.h"
+#include "llvm/Analysis/DebugInfo.h"
#include "types.h"
Modified: vmkit/trunk/lib/j3/Compiler/JavaJITCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaJITCompiler.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaJITCompiler.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaJITCompiler.cpp Thu Apr 25 11:44:13 2013
@@ -7,13 +7,13 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/DerivedTypes.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
-#include "llvm/DebugInfo.h"
+#include "llvm/Constants.h"
+#include "llvm/DerivedTypes.h"
+#include "llvm/Function.h"
+#include "llvm/Instructions.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
+#include "llvm/Analysis/DebugInfo.h"
#include "llvm/CodeGen/GCStrategy.h"
#include <llvm/CodeGen/JITCodeEmitter.h>
#include "llvm/CodeGen/MachineFunction.h"
@@ -22,7 +22,7 @@
#include "llvm/Support/ManagedStatic.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include <../lib/ExecutionEngine/JIT/JIT.h>
#include "VmkitGC.h"
@@ -166,8 +166,8 @@ JavaJITCompiler::JavaJITCompiler(const s
executionEngine = engine.create();
executionEngine->RegisterJITEventListener(&listener);
- TheDataLayout = executionEngine->getDataLayout();
- TheModule->setDataLayout(TheDataLayout->getStringRepresentation());
+ TheTargetData = executionEngine->getTargetData();
+ TheModule->setDataLayout(TheTargetData->getStringRepresentation());
TheModule->setTargetTriple(vmkit::VmkitModule::getHostTriple());
JavaIntrinsics.init(TheModule);
initialiseAssessorInfo();
Modified: vmkit/trunk/lib/j3/Compiler/JavaJITOpcodes.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaJITOpcodes.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaJITOpcodes.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaJITOpcodes.cpp Thu Apr 25 11:44:13 2013
@@ -13,12 +13,12 @@
#include <cstring>
-#include <llvm/IR/Constants.h>
-#include <llvm/IR/DerivedTypes.h>
-#include <llvm/IR/Function.h>
-#include <llvm/IR/Instructions.h>
-#include <llvm/IR/Module.h>
-#include <llvm/IR/Type.h>
+#include <llvm/Constants.h>
+#include <llvm/DerivedTypes.h>
+#include <llvm/Function.h>
+#include <llvm/Instructions.h>
+#include <llvm/Module.h>
+#include <llvm/Type.h>
#include "vmkit/JIT.h"
Modified: vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/JavaLLVMCompiler.cpp Thu Apr 25 11:44:13 2013
@@ -7,12 +7,12 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
#include "llvm/PassManager.h"
-#include "llvm/DIBuilder.h"
+#include "llvm/Analysis/DIBuilder.h"
#include "llvm/Analysis/LoopPass.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include "vmkit/JIT.h"
@@ -61,7 +61,7 @@ Function* JavaLLVMCompiler::parseFunctio
// We are jitting. Take the lock.
vmkit::VmkitModule::protectIR();
if (func->getLinkage() == GlobalValue::ExternalWeakLinkage) {
- JavaJIT jit(this, meth, func, LMI->isCustomizable? customizeFor : NULL);
+ JavaJIT jit(this, meth, func, customizeFor);
if (isNative(meth->access)) {
jit.nativeCompile();
vmkit::VmkitModule::runPasses(func, JavaNativeFunctionPasses);
@@ -75,9 +75,11 @@ Function* JavaLLVMCompiler::parseFunctio
if (!LMI->isCustomizable && jit.isCustomizable) {
// It's the first time we parsed the method and we just found
// out it can be customized.
- // TODO(geoffray): return a customized version to this caller.
meth->isCustomizable = true;
LMI->isCustomizable = true;
+ if (customizeFor != NULL) {
+ LMI->setCustomizedVersion(customizeFor, func);
+ }
}
}
vmkit::VmkitModule::unprotectIR();
@@ -106,13 +108,13 @@ llvm::FunctionPass* createLowerConstantC
void JavaLLVMCompiler::addJavaPasses() {
JavaNativeFunctionPasses = new FunctionPassManager(TheModule);
- JavaNativeFunctionPasses->add(new DataLayout(TheModule));
+ JavaNativeFunctionPasses->add(new TargetData(TheModule));
J3FunctionPasses = new FunctionPassManager(TheModule);
J3FunctionPasses->add(createLowerConstantCallsPass(this));
JavaFunctionPasses = new FunctionPassManager(TheModule);
- JavaFunctionPasses->add(new DataLayout(TheModule));
+ JavaFunctionPasses->add(new TargetData(TheModule));
vmkit::VmkitModule::addCommandLinePasses(JavaFunctionPasses);
}
Modified: vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/LLVMInfo.cpp Thu Apr 25 11:44:13 2013
@@ -7,14 +7,14 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/BasicBlock.h"
-#include "llvm/IR/CallingConv.h"
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/Module.h"
+#include "llvm/BasicBlock.h"
+#include "llvm/CallingConv.h"
+#include "llvm/Constants.h"
+#include "llvm/Instructions.h"
+#include "llvm/Module.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/MutexGuard.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include "vmkit/JIT.h"
@@ -38,7 +38,7 @@ using namespace llvm;
Type* LLVMClassInfo::getVirtualType() {
if (!virtualType) {
std::vector<llvm::Type*> fields;
- const DataLayout* targetData = Compiler->TheDataLayout;
+ const TargetData* targetData = Compiler->TheTargetData;
const StructLayout* sl = 0;
StructType* structType = 0;
LLVMContext& context = Compiler->getLLVMModule()->getContext();
@@ -109,7 +109,7 @@ Type* LLVMClassInfo::getStaticType() {
StructType* structType = StructType::get(context, fields, false);
staticType = PointerType::getUnqual(structType);
- const DataLayout* targetData = Compiler->TheDataLayout;
+ const TargetData* targetData = Compiler->TheTargetData;
const StructLayout* sl = targetData->getStructLayout(structType);
// TODO: put that elsewhere.
@@ -209,6 +209,17 @@ Function* LLVMMethodInfo::getMethod(Clas
return result;
}
+void LLVMMethodInfo::setCustomizedVersion(Class* cl, llvm::Function* F) {
+ assert(customizedVersions.size() == 0);
+ vmkit::ThreadAllocator allocator;
+ if (Compiler->emitFunctionName()) {
+ char* buf = GetMethodName(allocator, methodDef, cl);
+ F->setName(buf);
+ }
+ methodFunction = NULL;
+ customizedVersions[cl] = F;
+}
+
FunctionType* LLVMMethodInfo::getFunctionType() {
if (!functionType) {
Signdef* sign = methodDef->getSignature();
Modified: vmkit/trunk/lib/j3/Compiler/LowerConstantCalls.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/Compiler/LowerConstantCalls.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/Compiler/LowerConstantCalls.cpp (original)
+++ vmkit/trunk/lib/j3/Compiler/LowerConstantCalls.cpp Thu Apr 25 11:44:13 2013
@@ -7,11 +7,11 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/GlobalVariable.h"
+#include "llvm/Constants.h"
+#include "llvm/GlobalVariable.h"
#include "llvm/Pass.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/Instructions.h"
+#include "llvm/Function.h"
+#include "llvm/Instructions.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Debug.h"
Modified: vmkit/trunk/lib/j3/VMCore/JavaThread.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/VMCore/JavaThread.h?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/VMCore/JavaThread.h (original)
+++ vmkit/trunk/lib/j3/VMCore/JavaThread.h Thu Apr 25 11:44:13 2013
@@ -156,7 +156,8 @@ public:
/// throwFromJNI - Throw an exception after executing JNI code.
///
void throwFromJNI(word_t SP) {
- // Nothing to do. The RETURN_FROM_JNI will take care of it.
+ endKnownFrame();
+ enterUncooperativeCode(SP);
}
/// throwFromNative - Throw an exception after executing Native code.
Modified: vmkit/trunk/lib/j3/VMCore/Jni.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/j3/VMCore/Jni.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/j3/VMCore/Jni.cpp (original)
+++ vmkit/trunk/lib/j3/VMCore/Jni.cpp Thu Apr 25 11:44:13 2013
@@ -459,7 +459,7 @@ jboolean IsInstanceOf(JNIEnv *env, jobje
END_JNI_EXCEPTION
- RETURN_FROM_JNI(0);
+ return JNI_FALSE;
}
Modified: vmkit/trunk/lib/vmkit/Compiler/EscapeAnalysis.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/Compiler/EscapeAnalysis.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/Compiler/EscapeAnalysis.cpp (original)
+++ vmkit/trunk/lib/vmkit/Compiler/EscapeAnalysis.cpp Thu Apr 25 11:44:13 2013
@@ -8,12 +8,12 @@
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/GlobalVariable.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Constants.h"
+#include "llvm/Function.h"
+#include "llvm/GlobalVariable.h"
+#include "llvm/Module.h"
#include "llvm/Pass.h"
-#include "llvm/IR/Instructions.h"
+#include "llvm/Instructions.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/Compiler.h"
Modified: vmkit/trunk/lib/vmkit/Compiler/InlineMalloc.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/Compiler/InlineMalloc.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/Compiler/InlineMalloc.cpp (original)
+++ vmkit/trunk/lib/vmkit/Compiler/InlineMalloc.cpp Thu Apr 25 11:44:13 2013
@@ -7,16 +7,16 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/GlobalVariable.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Constants.h"
+#include "llvm/GlobalVariable.h"
+#include "llvm/Function.h"
+#include "llvm/Instructions.h"
+#include "llvm/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include "llvm/Transforms/Utils/Cloning.h"
#include "vmkit/JIT.h"
@@ -45,7 +45,7 @@ bool InlineMalloc::runOnFunction(Functio
Function* ArrayWriteBarrier = F.getParent()->getFunction("arrayWriteBarrier");
Function* NonHeapWriteBarrier = F.getParent()->getFunction("nonHeapWriteBarrier");
bool Changed = false;
- const DataLayout *TD = getAnalysisIfAvailable<DataLayout>();
+ const TargetData *TD = getAnalysisIfAvailable<TargetData>();
for (Function::iterator BI = F.begin(), BE = F.end(); BI != BE; BI++) {
BasicBlock *Cur = BI;
for (BasicBlock::iterator II = Cur->begin(), IE = Cur->end(); II != IE;) {
Modified: vmkit/trunk/lib/vmkit/Compiler/JIT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/Compiler/JIT.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/Compiler/JIT.cpp (original)
+++ vmkit/trunk/lib/vmkit/Compiler/JIT.cpp Thu Apr 25 11:44:13 2013
@@ -7,16 +7,16 @@
//
//===----------------------------------------------------------------------===//
-#include <llvm/IR/CallingConv.h>
-#include <llvm/IR/Constants.h>
-#include <llvm/DebugInfo.h>
-#include <llvm/IR/DerivedTypes.h>
-#include <llvm/IR/Instructions.h>
+#include <llvm/CallingConv.h>
+#include <llvm/Constants.h>
+#include <llvm/DerivedTypes.h>
+#include <llvm/Instructions.h>
#include <llvm/LinkAllPasses.h>
-#include <llvm/IR/LLVMContext.h>
-#include <llvm/IR/Module.h>
+#include <llvm/LLVMContext.h>
+#include <llvm/Module.h>
#include <llvm/PassManager.h>
-#include <llvm/IR/Type.h>
+#include <llvm/Type.h>
+#include <llvm/Analysis/DebugInfo.h>
#include <llvm/Analysis/LoopPass.h>
#include <llvm/Analysis/Verifier.h>
#include <llvm/Assembly/Parser.h>
@@ -32,7 +32,7 @@
#include <llvm/Support/PassNameParser.h>
#include <llvm/Support/SourceMgr.h>
#include <llvm/Support/TargetSelect.h>
-#include <llvm/IR/DataLayout.h>
+#include <llvm/Target/TargetData.h>
#include <llvm/Target/TargetMachine.h>
#include <llvm/Target/TargetOptions.h>
#include <../lib/ExecutionEngine/JIT/JIT.h>
Modified: vmkit/trunk/lib/vmkit/JITGCPass/JITGCPass.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/JITGCPass/JITGCPass.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/JITGCPass/JITGCPass.cpp (original)
+++ vmkit/trunk/lib/vmkit/JITGCPass/JITGCPass.cpp Thu Apr 25 11:44:13 2013
@@ -9,8 +9,8 @@
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Intrinsics.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Intrinsics.h"
+#include "llvm/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/raw_ostream.h"
Modified: vmkit/trunk/lib/vmkit/StaticGCPass/StaticGCPass.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/StaticGCPass/StaticGCPass.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/StaticGCPass/StaticGCPass.cpp (original)
+++ vmkit/trunk/lib/vmkit/StaticGCPass/StaticGCPass.cpp Thu Apr 25 11:44:13 2013
@@ -9,8 +9,8 @@
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Intrinsics.h"
-#include "llvm//IR/Module.h"
+#include "llvm/Intrinsics.h"
+#include "llvm/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/raw_ostream.h"
Modified: vmkit/trunk/lib/vmkit/StaticGCPrinter/VmkitGCPrinter.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/vmkit/StaticGCPrinter/VmkitGCPrinter.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/lib/vmkit/StaticGCPrinter/VmkitGCPrinter.cpp (original)
+++ vmkit/trunk/lib/vmkit/StaticGCPrinter/VmkitGCPrinter.cpp Thu Apr 25 11:44:13 2013
@@ -7,23 +7,23 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/DerivedTypes.h"
-#include "llvm/IR/Type.h"
+#include "llvm/Constants.h"
+#include "llvm/DerivedTypes.h"
+#include "llvm/Type.h"
#include "llvm/CodeGen/GCs.h"
#include "llvm/CodeGen/GCStrategy.h"
#include "llvm/CodeGen/AsmPrinter.h"
#include "llvm/CodeGen/GCMetadataPrinter.h"
#include "llvm/CodeGen/MachineFunction.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Module.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
#include "llvm/MC/MCSymbol.h"
#include "llvm/MC/MCStreamer.h"
#include "llvm/Target/Mangler.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Target/TargetLoweringObjectFile.h"
#include "llvm/Target/TargetMachine.h"
@@ -289,7 +289,7 @@ Constant* FindMetadata(const Function& F
/// either condition is detected in a function which uses the GC.
///
void VmkitAOTGCMetadataPrinter::finishAssembly(AsmPrinter &AP) {
- unsigned IntPtrSize = AP.TM.getDataLayout()->getPointerSize(0);
+ unsigned IntPtrSize = AP.TM.getTargetData()->getPointerSize();
AP.OutStreamer.SwitchSection(AP.getObjFileLowering().getDataSection());
Modified: vmkit/trunk/mmtk/inline/InlineMethods.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/inline/InlineMethods.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/mmtk/inline/InlineMethods.cpp (original)
+++ vmkit/trunk/mmtk/inline/InlineMethods.cpp Thu Apr 25 11:44:13 2013
@@ -7,13 +7,13 @@
//
//===----------------------------------------------------------------------===//
-#include <llvm/IR/CallingConv.h>
-#include <llvm/IR/Constants.h>
-#include <llvm/IR/DerivedTypes.h>
-#include <llvm/IR/Instructions.h>
-#include <llvm/IR/LLVMContext.h>
-#include <llvm/IR/Module.h>
-#include <llvm/IR/Type.h>
+#include <llvm/CallingConv.h>
+#include <llvm/Constants.h>
+#include <llvm/DerivedTypes.h>
+#include <llvm/Instructions.h>
+#include <llvm/LLVMContext.h>
+#include <llvm/Module.h>
+#include <llvm/Type.h>
using namespace llvm;
Modified: vmkit/trunk/mmtk/magic/LowerJavaRT.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/magic/LowerJavaRT.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/mmtk/magic/LowerJavaRT.cpp (original)
+++ vmkit/trunk/mmtk/magic/LowerJavaRT.cpp Thu Apr 25 11:44:13 2013
@@ -7,11 +7,11 @@
//
//===----------------------------------------------------------------------===//
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Constants.h"
+#include "llvm/Function.h"
+#include "llvm/Instructions.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/Compiler.h"
Modified: vmkit/trunk/mmtk/magic/LowerMagic.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/magic/LowerMagic.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/mmtk/magic/LowerMagic.cpp (original)
+++ vmkit/trunk/mmtk/magic/LowerMagic.cpp Thu Apr 25 11:44:13 2013
@@ -8,11 +8,11 @@
//===----------------------------------------------------------------------===//
#include "llvm/ADT/SmallPtrSet.h"
-#include "llvm/IR/Constants.h"
-#include "llvm/IR/Function.h"
-#include "llvm/IR/Instructions.h"
-#include "llvm/IR/LLVMContext.h"
-#include "llvm/IR/Module.h"
+#include "llvm/Constants.h"
+#include "llvm/Function.h"
+#include "llvm/Instructions.h"
+#include "llvm/LLVMContext.h"
+#include "llvm/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CallSite.h"
#include "llvm/Support/Compiler.h"
Modified: vmkit/trunk/tools/j3/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/j3/Makefile?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/tools/j3/Makefile (original)
+++ vmkit/trunk/tools/j3/Makefile Thu Apr 25 11:44:13 2013
@@ -11,7 +11,7 @@ LEVEL = ../..
include $(LEVEL)/Makefile.config
TOOLNAME = j3
-USEDLIBS = Classpath.a J3.a J3Compiler.a Vmkit.a VmkitCompiler.a CommonThread.a FinalMMTk.a InlineMMTk.a Precompiled.a BootstrapClasses.a Classpath.a
+USEDLIBS = Classpath.a J3.a J3Compiler.a Vmkit.a VmkitCompiler.a CommonThread.a FinalMMTk.a InlineMMTk.a Precompiled.a BootstrapClasses.a
BUILD_FRAMETABLE = 1
LINK_COMPONENTS = jit nativecodegen scalaropts instrumentation ipa ipo
Modified: vmkit/trunk/tools/precompiler/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/precompiler/Makefile?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/tools/precompiler/Makefile (original)
+++ vmkit/trunk/tools/precompiler/Makefile Thu Apr 25 11:44:13 2013
@@ -12,7 +12,7 @@ include $(LEVEL)/Makefile.config
DIRS = trainer
TOOLNAME = precompiler
-USEDLIBS = Classpath.a J3.a J3Compiler.a Vmkit.a VmkitCompiler.a CommonThread.a FinalMMTk.a Classpath.a
+USEDLIBS = Classpath.a J3.a J3Compiler.a Vmkit.a VmkitCompiler.a CommonThread.a FinalMMTk.a
BUILD_FRAMETABLE = 1
LINK_COMPONENTS = jit nativecodegen scalaropts instrumentation ipa ipo asmparser linker bitwriter
Modified: vmkit/trunk/tools/vmjc/vmjc.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/vmjc/vmjc.cpp?rev=180272&r1=180271&r2=180272&view=diff
==============================================================================
--- vmkit/trunk/tools/vmjc/vmjc.cpp (original)
+++ vmkit/trunk/tools/vmjc/vmjc.cpp Thu Apr 25 11:44:13 2013
@@ -17,9 +17,9 @@
#include <llvm/Linker.h>
#include "llvm/LinkAllPasses.h"
-#include "llvm/IR/Module.h"
+#include "llvm/LinkAllVMCore.h"
+#include "llvm/Module.h"
#include "llvm/PassManager.h"
-#include "llvm/Analysis/Verifier.h"
#include "llvm/Assembly/PrintModulePass.h"
#include "llvm/CodeGen/LinkAllCodegenComponents.h"
#include "llvm/Bitcode/ReaderWriter.h"
@@ -34,7 +34,7 @@
#include "llvm/Support/SystemUtils.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Support/Signals.h"
-#include "llvm/IR/DataLayout.h"
+#include "llvm/Target/TargetData.h"
#include "llvm/Target/TargetMachine.h"
Copied: vmkit/trunk/www-orig-llvm/OpenProjects.html (from r180270, vmkit/trunk/www/OpenProjects.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/OpenProjects.html?p2=vmkit/trunk/www-orig-llvm/OpenProjects.html&p1=vmkit/trunk/www/OpenProjects.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/content.css (from r180270, vmkit/trunk/www/content.css)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/content.css?p2=vmkit/trunk/www-orig-llvm/content.css&p1=vmkit/trunk/www/content.css&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/get_involved.html (from r180270, vmkit/trunk/www/get_involved.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/get_involved.html?p2=vmkit/trunk/www-orig-llvm/get_involved.html&p1=vmkit/trunk/www/get_involved.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/get_started.html (from r180270, vmkit/trunk/www/get_started.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/get_started.html?p2=vmkit/trunk/www-orig-llvm/get_started.html&p1=vmkit/trunk/www/get_started.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/index.html (from r180270, vmkit/trunk/www/index.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/index.html?p2=vmkit/trunk/www-orig-llvm/index.html&p1=vmkit/trunk/www/index.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/menu.css (from r180270, vmkit/trunk/www/menu.css)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/menu.css?p2=vmkit/trunk/www-orig-llvm/menu.css&p1=vmkit/trunk/www/menu.css&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/menu.html.incl (from r180270, vmkit/trunk/www/menu.html.incl)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/menu.html.incl?p2=vmkit/trunk/www-orig-llvm/menu.html.incl&p1=vmkit/trunk/www/menu.html.incl&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/publications/ladyvm.html (from r180270, vmkit/trunk/www/publications/ladyvm.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/publications/ladyvm.html?p2=vmkit/trunk/www-orig-llvm/publications/ladyvm.html&p1=vmkit/trunk/www/publications/ladyvm.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/publications/osgi_dsn.html (from r180270, vmkit/trunk/www/publications/osgi_dsn.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/publications/osgi_dsn.html?p2=vmkit/trunk/www-orig-llvm/publications/osgi_dsn.html&p1=vmkit/trunk/www/publications/osgi_dsn.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/publications/osgi_iies.html (from r180270, vmkit/trunk/www/publications/osgi_iies.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/publications/osgi_iies.html?p2=vmkit/trunk/www-orig-llvm/publications/osgi_iies.html&p1=vmkit/trunk/www/publications/osgi_iies.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/publications/thesis.html (from r180270, vmkit/trunk/www/publications/thesis.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/publications/thesis.html?p2=vmkit/trunk/www-orig-llvm/publications/thesis.html&p1=vmkit/trunk/www/publications/thesis.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/publications/vmkit.html (from r180270, vmkit/trunk/www/publications/vmkit.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/publications/vmkit.html?p2=vmkit/trunk/www-orig-llvm/publications/vmkit.html&p1=vmkit/trunk/www/publications/vmkit.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/pubs.html (from r180270, vmkit/trunk/www/pubs.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/pubs.html?p2=vmkit/trunk/www-orig-llvm/pubs.html&p1=vmkit/trunk/www/pubs.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
(empty)
Copied: vmkit/trunk/www-orig-llvm/releases/index.html (from r180270, vmkit/trunk/www/releases/index.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www-orig-llvm/releases/index.html?p2=vmkit/trunk/www-orig-llvm/releases/index.html&p1=vmkit/trunk/www/releases/index.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
--- vmkit/trunk/www/releases/index.html (original)
+++ vmkit/trunk/www-orig-llvm/releases/index.html Thu Apr 25 11:44:13 2013
@@ -27,17 +27,10 @@
<!--=====================================================================-->
<ul>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_032/www/releases/vmkit-0.32.tar.bz2?revision=170960">
- VMKit release 0.32 </a>
- </li>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_031/www/releases/vmkit-0.31.tar.bz2?revision=166887">
- VMKit release 0.31 </a>
- </li>
<li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_030/www/releases/vmkit-0.30.tar.bz2?revision=145123">
VMKit release 0.30 </a> (
<a href="http://llvm.org/releases/3.0/docs/ReleaseNotes.html#vmkit">
Release notes </a>)
- </li>
<li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_029/www/releases/vmkit-0.29.tar.bz2?revision=129228">
VMKit release 0.29 </a> (
<a href="http://llvm.org/releases/2.9/docs/ReleaseNotes.html#vmkit">
Added: vmkit/trunk/www/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/Makefile?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/Makefile (added)
+++ vmkit/trunk/www/Makefile Thu Apr 25 11:44:13 2013
@@ -0,0 +1,12 @@
+
+
+all: compile
+
+compile:
+ $(MAKE) -C publis
+
+deploy: tidy
+ rsync -av * gaelthomas at scm.gforge.inria.fr:/home/groups/vmkit2/htdocs/
+
+tidy:
+ find . \( -iname "*~" -o -iname "\#*" -o -iname ".DS_Store" \) -exec rm -f {} \;
Removed: vmkit/trunk/www/OpenProjects.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/OpenProjects.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/OpenProjects.html (original)
+++ vmkit/trunk/www/OpenProjects.html (removed)
@@ -1,63 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>"VMKit" JVM and .Net runtimes for LLVM</title>
- <link type="text/css" rel="stylesheet" href="menu.css" />
- <link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<h1>Open VMKit Projects</h1>
-
-<p>Here are a few tasks that are available for newcomers to work on, depending
-on what your interests are. This list is provided to generate ideas, it is not
-intended to be comprehensive. Please ask on llvm-dev for more specifics. </p>
-
-<ul>
-
-<li><b>Port VMKit's JVM to Harmony or OpenJDK</b>:
-VMKit currently uses GNU Classpath for the standard Java classes. Interfacing
-with another library such as Apache Harmony (http://harmony.apache.org) or
-Sun's OpenJDK (http://openjdk.java.net) may help improving support for latest
-benchmarks (http://www.spec.org/jvm2008).</li>
-</ul>
-
-<p>
-On the LLVM side, here are a few interesting projects that would help VMKit:
-</p>
-
-<ul>
-<li><b>Adaptive Optimization System</b>:
-Being able to adaptively optimize JIT-compiled code would dramastically help
-the startup time of VMKit. All the non-adaptive bits are already there in LLVM:
-baseline compiler (with the -fast command line and the simple register
-allocator), optimized compiler (with the linear scan register allocator), and
-a full set of optimizations changeable at runtime. What's left is a system that
-dynamically lookup the hotness of methods and re-compile with optimizations the
-methods that are often executed.
-</li>
-
-<li><b>Type-based alias-analysis</b>:
-Safe languages such as ones supported by VMKit (Java, C#) benefit a lot from
-a type based alias analysis. LLVM currently lacks full support of this feature
-for safe languages.
-</li>
-
-<li><b>Misceallenous Java-related optimizations</b>:
-Removal of array bounds checks, null pointer checks, devirtualization,
-inlining, etc.
-</li>
-</ul>
-
-
-</div>
-</body>
-</html>
-
Added: vmkit/trunk/www/common.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/common.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/common.php (added)
+++ vmkit/trunk/www/common.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
+
+<meta http-equiv="content-type" content="text/html; charset=utf-8" />
+
+<?php
+ error_reporting(E_ALL ^ E_NOTICE);
+
+ date_default_timezone_set('Europe/Paris');
+
+ function section($dir, $name, $active, $link, $text) {
+ if($name == $active) {
+ echo "<h3 class=cadre><a class=cadre-selected href=", $dir, "$link>$text</a></h3>";
+ } else {
+ echo "<h3 class=cadre><a class=cadre href=", $dir, "$link>$text</a></h3>";
+ }
+ }
+
+ function preambule($title, $active) {
+ $root=$GLOBALS["ROOT"];
+ $dir=$root."/../";
+?>
+<HTML>
+ <HEAD>
+ <link rel="stylesheet" type="text/css" href="<?=$dir?>stylesheet.css">
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15">
+ <meta name="description" content="Gaël Thomas - Home Page">
+ <meta name="author" content="Gaël Thomas">
+ <TITLE>Gaël Thomas - Home Page</TITLE>
+ </HEAD>
+
+<body>
+ <table class=cadre cellpadding=0 cellspacing=0 width=100%>
+ <tr>
+ <td valign="middle" align="center" width="25%">
+ <a href="http://www.inria.fr">
+ <img border="0" src="http://www.inria.fr/var/inria/storage/images/medias/inria/images-corps/logo-inria-institutionnel-couleur/410230-1-fre-FR/logo-inria-institutionnel-couleur.jpg" height="80"
+ alt="INRIA"/>
+ </a>
+ </td>
+ <td valign="middle" align="center" width="50%">
+ <h1 class=name><a class="name" href="http://vmkit2.gforge.inria.fr/">VMKit2 Project</a></h1>
+ </td>
+ <td valign="middle" align="center" width="25%">
+ <a href="http://www.lip6.fr">
+ <img border="0" src="<?=$dir?>lip6.gif" height="70"
+ alt="Laboratoire d'Informatique de Paris6"/>
+ </a>
+ </td>
+ </tr>
+ </table>
+
+ <h1><center><?php echo $title?></center></h1>
+
+ <table class="cadre" cellpadding="5">
+ <tr class="cadre" >
+ <td align="right" valign="top" width=150>
+ <br>
+ <?php
+ section($dir, "overview", $active, "index.php", "Overview");
+ section($dir, "start", $active, "start.php", "Get Started");
+ section($dir, "involved", $active, "involved.php", "Get Involved");
+ section($dir, "publi", $active, "publis/Publications.php", "Publications");
+
+ if(basename($_SERVER["SCRIPT_FILENAME"]) == "ls.php") {
+ echo "<p>";
+ section($dir, "ls", $active, "ls.php", "Explore");
+ }
+ ?>
+ </td>
+ <td class="cadre" width="10" align=left/>
+ <td valign="top">
+<?php
+}
+?>
+
+<?php
+ function epilogue() {
+ // echo ini_get('user_dir');
+ // echo "???<p>";
+ // print_r(ini_get_all());
+?>
+ </td>
+ </tr>
+ <tr>
+ <td/><td/><td align=right class=tiny>Last update: <?=date ("F d Y H:i:s.", getlastmod());?></td>
+ </tr>
+ </table>
+</body></html>
+<?php
+}
+?>
+
Removed: vmkit/trunk/www/content.css
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/content.css?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/content.css (original)
+++ vmkit/trunk/www/content.css (removed)
@@ -1,27 +0,0 @@
-html { margin: 0px; } body { margin: 8px; }
-
-html, body {
- padding:0px;
- font-size:14px; font-family:"Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, Helvetica, sans-serif; background-color: #fff; color: #222;
- line-height:1.5;
-}
-
-h1, h2, h3, tt { color: #000 }
-
-h1 { padding-top:0px; margin-top:0px;}
-h2 { color:#333333; padding-top:0.5em; }
-h3 { padding-top: 0.5em; margin-bottom: -0.25em; color:#2d58b7}
-li { padding-bottom: 0.5em; }
-ul { padding-left:1.5em; }
-
-/* Slides */
-IMG.img_slide {
- display: block;
- margin-left: auto;
- margin-right: auto
-}
-
-.itemTitle { color:#2d58b7 }
-
-/* Tables */
-tr { vertical-align:top }
Removed: vmkit/trunk/www/get_involved.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/get_involved.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/get_involved.html (original)
+++ vmkit/trunk/www/get_involved.html (removed)
@@ -1,50 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>VMKit - Get Involved</title>
- <link type="text/css" rel="stylesheet" href="menu.css" />
- <link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<h1>Getting Involved with the vmkit Project</h1>
-
-<p>Once you have <a href="get_started.html">checked out and built</a> vmkit and
-played around with it, you might be wondering what you can do to make it better
-and contribute to its development. Alternatively, maybe you just want to follow
-the development of the project to see it progress.
-</p>
-
-<h2>Follow what's going on</h2>
-
-<p>VMKit is a subproject of the <a href="http://llvm.org">LLVM Project</a>, and
-uses llvm dev mailing list for development question and the vmkit-commits
-mailing list for patches:</p>
-
-<ul>
-<li><a href="http://lists.cs.uiuc.edu/mailman/listinfo/vmkit-commits">vmkit-commits
-</a> - This list is for patch submission/discussion.</li>
-
-<li><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">llvmdev</a> -
-This list is for everything else llvm/vmkit related (questions and answers, bug
-reports, etc).</li>
-
-</ul>
-
-<p>The best way to talk with other developers on the project is through the <a
-href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">llvm-dev mailing
-list</a>. </p>
-
-
-<p>You can also visit the <a href="http://vmkit.llvm.org/OpenProjects.html">
-Open Projects</a> page for a list of interesting things to work on in VMKit.</p>
-
-</div>
-</body>
-</html>
Removed: vmkit/trunk/www/get_started.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/get_started.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/get_started.html (original)
+++ vmkit/trunk/www/get_started.html (removed)
@@ -1,136 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>VMKit - Getting Started</title>
- <link type="text/css" rel="stylesheet" href="menu.css" />
- <link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<h1>Getting Started: Building and Running VMKit</h1>
-
-
-<p>This page gives you the shortest path to checking out vmkit and demos a few
-options. This should get you up and running with the minimum of muss and fuss.
-If you like what you see, please consider <a href="get_involved.html">getting
-involved</a> with the vmkit community.</p>
-
-
-<h2>A word of warning</h2>
-
-<p>While this work aims to provide a fully functional JVM, it
-is <em>still early work</em> and is under heavy development.
-<p>Some of the common missing pieces in vmkit/llvm are:</p>
-
-<ol>
- <li> Mixed interpretation/compilation.</li>
- <li> Adaptive optimization.</li>
-</ol>
-
-<h2 id="build">Building vmkit / working with the code</h2>
-
-<p>If you would like to check out and build the project, the current scheme
-is:</p>
-
-<ol>
- <li>Checkout <a href="http://www.llvm.org/docs/GettingStarted.html#checkout">
- LLVM</a> and
- <a href="http://clang.llvm.org/get_started.html">Clang</a> from SVN head.
- </li>
-
- <ul>
- <li><tt>svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm</tt></li>
- <li><tt>cd llvm/tools</li></tt>
- <li><tt>svn co http://llvm.org/svn/llvm-project/cfe/trunk clang</tt></li>
- <li><tt>cd ..</tt></li>
- <li><tt>./configure; make ENABLE_OPTIMIZED=1</tt></li>
- </ul>
-
-
- <li><a href="ftp://ftp.gnu.org/gnu/classpath/classpath-0.97.2.tar.gz">Download
- GNU Classpath 0.97.2</a>:</li>
-
- <ul>
- <li><tt>tar zxvf classpath-0.97.2.tar.gz</tt></li>
- <li><tt>cd classpath-0.97.2</tt></li>
- <li><tt>./configure --disable-plugin --disable-examples --disable-Werror; make</tt></li>
- <li><tt>cd lib</li></tt>
- <li><tt>If you are running on Linux:</li></tt>
- <ul>
- <li><tt>ln -s ../native/jni/gtk-peer/.libs/libgtkpeer.so;</li></tt>
- <li><tt>ln -s ../native/jni/gconf-peer/.libs/libgconfpeer.so;</li></tt>
- <li><tt>ln -s ../native/jni/java-io/.libs/libjavaio.so;</li></tt>
- <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalangreflect.so;</li></tt>
- <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalang.so;</li></tt>
- <li><tt>ln -s ../native/jni/java-net/.libs/libjavanet.so;</li></tt>
- <li><tt>ln -s ../native/jni/java-nio/.libs/libjavanio.so;</li></tt>
- <li><tt>ln -s ../native/jni/java-util/.libs/libjavautil.so;</li></tt>
- </ul>
- <li><tt>If you are running on MacOS:</li></tt>
- <ul>
- <li><tt>ln -s ../native/jni/gtk-peer/.libs/libgtkpeer.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/gconf-peer/.libs/libgconfpeer.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/java-io/.libs/libjavaio.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalangreflect.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/java-lang/.libs/libjavalang.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/java-net/.libs/libjavanet.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/java-nio/.libs/libjavanio.dylib;</li></tt>
- <li><tt>ln -s ../native/jni/java-util/.libs/libjavautil.dylib;</li></tt>
- </ul>
- </ul>
-
- <li>Checkout vmkit:</li>
- <ul>
- <li><tt>svn co http://llvm.org/svn/llvm-project/vmkit/trunk vmkit</tt></li>
-
- </ul>
- <li>Configure vmkit:</li>
- <ul>
- <li><tt>./configure </tt></li>
- <dl>
- <dt><tt>--with-llvmsrc=<directory></tt></dt>
- <dd>Tell vmkit where the LLVM source tree is located.</dd>
- <dt><br/><tt>--with-llvmobj=<directory></tt></dt>
- <dd>Tell vmkit where the LLVM object tree is located.</dd>
- <dt><br/><tt>--with-gnu-classpath-glibj=<file or directory></tt></dt>
- <dd>Tell vmkit where GNU Classpath glibj.zip is located.</dd>
- <dt><br/><tt>--with-gnu-classpath-libs=<directory></tt></dt>
- <dd>Tell vmkit where GNU Classpath libs are located.</dd>
- <dt><br/><tt>--with-mmtk-plan=</tt> </dt>
- <dd>
- <ul>
- <li><tt>org.mmtk.plan.marksweep.MS (default)</tt></li>
- <li><tt>org.mmtk.plan.copyms.CopyMS</tt></li>
- <li><tt>org.mmtk.plan.semispace.SS</tt></li>
- <li><tt>org.mmtk.plan.immix.Immix</tt></li>
- <li><tt>org.mmtk.plan.generational.marksweep.GenMS</tt></li>
- <li><tt>org.mmtk.plan.generational.copying.GenCopy</tt></li>
- <li><tt>org.mmtk.plan.generational.immix.GenImmix</tt></li>
- </ul>
- </dd>
- </dl>
-
- </ul>
-
- <li>Build vmkit:</li>
- <ul>
- <li><tt>cd vmkit</tt></li>
- <li><tt>make ENABLE_OPTIMIZED=1</tt> (this will give you a release build)</li>
- </ul>
-
- <li>Try it out: (assuming vmkit/Release+Asserts/bin is in your path)</li>
- <ul>
- <li><tt>j3 --help</tt></li>
- <li><tt>j3 HelloWorld</tt></li>
- </ul>
-</ol>
-
-</div>
-</body>
-</html>
Removed: vmkit/trunk/www/index.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/index.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/index.html (original)
+++ vmkit/trunk/www/index.html (removed)
@@ -1,111 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>VMKit: a substrate for virtual machines</title>
- <link type="text/css" rel="stylesheet" href="menu.css" />
- <link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-<!--#include virtual="menu.html.incl"-->
-<div id="content">
- <!--*********************************************************************-->
- <h1>VMKit: a substrate for virtual machines</h1>
- <!--*********************************************************************-->
-
- <p>The VMKit project is a framework for building virtual machines. It uses
- <a href="http://llvm.org">LLVM</a> for compiling and optimizing high-level
- languages to machine code, and <a href="http://jikesrvm.org/MMTk">MMTk</a>
- to manage memory. J3 is an implementation of a JVM with VMKit.
- You can <a href="get_started.html">get and build</a> the source of J3
- today.</p>
-
- <!--=====================================================================-->
- <h2 id="goals">Features</h2>
- <!--=====================================================================-->
-
- <p>VMKit provides the following features:</p>
-
- <p><b>End-User Features</a></b>:</p>
-
- <ul>
- <li>Precise garbage collection.</li>
- <li>Just-in-Time and Ahead-of-Time compilation.</li>
- <li>Portable on many architectures (x86, x64, ppc32, ppc64, arm).</li>
- </ul>
-
- <p><b>Developer Features</a></b>:</p>
-
- <ul>
- <li>Relatively small code base (~ 20k loc per VM)</li>
- <li>Infrastructure for running multiple VM/applications in a single
- process</li>
- <li>Infrastructure for virtual machine research and development</li>
- </ul>
-
- <!--=====================================================================-->
- <h2>Why?</h2>
- <!--=====================================================================-->
-
- <p>The development of VMKit was started out of a need to factorize virtual
- machine development. The JVM and CLI virtual machine have many
- similarities, but are too high-level to be the basis of a "universal"
- virtual machine. The LLVM IR on the opposite is low-level enough to be
- able to execute these VMs. VMKit is a proof of concept implementation
- towards that direction.</p>
-
- <p>Paper on the design of VMKit:
- <ul>
- <li><a href="publications/vmkit.html">VMKit: a Substrate for Managed Runtime Environments</a>
- </li>
- </ul>
-
- <p>The PhD thesis that initiated VMKit:
- <ul>
- <li><a href="publications/thesis.html">Nicolas Geoffray's PhD thesis</a>
- </li>
- </ul>
-
- <p>An introduction to VMKit can be found in the following video lectures:
- <ul>
- <li><a href="http://llvm.org/devmtg/2009-10/Geoffray_GarbageCollectionVMKit-700kbps.mov">
- Presentation of VMKit/MMTk at the 2009 LLVM Developer's Meeting</a>
- </li>
- <li><a href="http://llvm.org/devmtg/2008-08/Geoffray_VMKitProject_Lo.3gp">
- Presentation of VMKit at the 2008 LLVM Developer's Meeting</a>
- </li>
- </ul>
- </p>
-
- <!--=====================================================================-->
- <h2>Current Status</h2>
- <!--=====================================================================-->
-
- <p>VMKit currently has a decent implementation of a JVM. It executes
- large projects (e.g. OSGi Felix, Tomcat, Eclipse) and the
- <a href="http://dacapobench.org">DaCapo benchmarks</a>.
- </p>
-
- <p>The JVM has been tested on Linux/x64, Linux/x86, Linux/ppc32, MacOSX/x64,
- MacOSX/x86, MacOSX/ppc32. The JVM may work on ppc64. Support for
- Windows has not been investigated.
- </p>
-
-
- <!--=====================================================================-->
- <h2>Get it and get involved!</h2>
- <!--=====================================================================-->
-
- <p>Start by <a href="get_started.html">getting the code, building it, and
- playing with it</a>. This will show you the sorts of things we can do
- today.</p>
-
- <p>Once you've done that, please consider <a href="get_involved.html">getting
- involved in the VMKit community</a>. Currently, VMKit is tightly
- integrated into the LLVM community. You can sign up for the LLVM mailing
- list to ask and learn about how the project works.</p>
-</div>
-</body>
-</html>
Added: vmkit/trunk/www/index.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/index.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/index.php (added)
+++ vmkit/trunk/www/index.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,56 @@
+<?php
+include("root.php");
+include($ROOT."common.php");
+preambule("Overview", "overview");
+?>
+
+<p>
+Current MREs are monolithic. Extending them to propose new
+features or reusing them to execute new languages is difficult.
+VMKit2 is a library that
+eases the development of new MREs and the process of experimenting
+with new mechanisms inside MREs. VMKit2
+provides the basic components of MREs: a JIT compiler, a GC,
+and a thread manager. VMKit2 is a
+fork of the <a href="http://vmkit.llvm.org">VMKit project</a>.
+
+<p>
+VMKit2 relies on <a href="http://llvm.org">LLVM</a> for compilation and
+<a href="http://jikesrvm.org/MMTk">MMTk</a> to manage memory.
+Currently, a full Java virtual machine
+
+<p>
+For the end user, VMKit2 provides:
+<ul>
+<li>Precise garbage collection.
+<li>Just-in-Time and Ahead-of-Time compilation.
+<li>Portable on many architectures (x86, x64, ppc32, ppc64, arm).
+</ul>
+<p>
+
+For the MRE developer, VMKit2 provides:
+<ul>
+<li>Relatively small code base (~ 20k loc per VM)
+<li>Infrastructure for virtual machine research and development
+</ul>
+
+<h2>Current Status</h2>
+<p>
+VMKit2 currently has a decent implementation of a JVM called J3. It executes large
+projects (e.g. OSGi Felix, Tomcat, Eclipse) and the DaCapo benchmarks. A R virtual machine
+is currently under heavy development.
+
+<p>
+J3 has been tested on Linux/x64, Linux/x86, Linux/ppc32, MacOSX/x64, MacOSX/x86, MacOSX/ppc32. The JVM may work on ppc64.
+Support for Windows has not been investigated.
+
+<p>
+While this work aims to provide a fully functional JVM, it is still early work and is under heavy development.
+Some of the common missing pieces in vmkit2/llvm are:
+<ul>
+<li>Mixed interpretation/compilation.
+<li>Adaptive optimization.
+</ul>
+
+
+<?php epilogue() ?>
Added: vmkit/trunk/www/index.php.orig
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/index.php.orig?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/index.php.orig (added)
+++ vmkit/trunk/www/index.php.orig Thu Apr 25 11:44:13 2013
@@ -0,0 +1,159 @@
+<?php
+
+$domain=ereg_replace('[^\.]*\.(.*)$','\1',$_SERVER['HTTP_HOST']);
+$group_name=ereg_replace('([^\.]*)\..*$','\1',$_SERVER['HTTP_HOST']);
+
+echo '<?xml version="1.0" encoding="UTF-8"?>';
+?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en ">
+
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <title><?php echo $project_name; ?></title>
+ <script language="JavaScript" type="text/javascript">
+ <!--
+ function help_window(helpurl) {
+ HelpWin = window.open( helpurl,'HelpWindow','scrollbars=yes,resizable=yes,toolbar=no,height=400,width=400');
+ }
+ // -->
+ </script>
+
+<style type="text/css">
+ <!--
+ BODY {
+ margin-top: 3;
+ margin-left: 3;
+ margin-right: 3;
+ margin-bottom: 3;
+ background: #5651a1;
+ }
+ ol,ul,p,body,td,tr,th,form { font-family: verdana,arial,helvetica,sans-serif; font-size:small;
+ color: #333333; }
+
+ h1 { font-size: x-large; font-family: verdana,arial,helvetica,sans-serif; }
+ h2 { font-size: large; font-family: verdana,arial,helvetica,sans-serif; }
+ h3 { font-size: medium; font-family: verdana,arial,helvetica,sans-serif; }
+ h4 { font-size: small; font-family: verdana,arial,helvetica,sans-serif; }
+ h5 { font-size: x-small; font-family: verdana,arial,helvetica,sans-serif; }
+ h6 { font-size: xx-small; font-family: verdana,arial,helvetica,sans-serif; }
+
+ pre,tt { font-family: courier,sans-serif }
+
+ a:link { text-decoration:none }
+ a:visited { text-decoration:none }
+ a:active { text-decoration:none }
+ a:hover { text-decoration:underline; color:red }
+
+ .titlebar { color: black; text-decoration: none; font-weight: bold; }
+ a.tablink { color: black; text-decoration: none; font-weight: bold; font-size: x-small; }
+ a.tablink:visited { color: black; text-decoration: none; font-weight: bold; font-size: x-small; }
+ a.tablink:hover { text-decoration: none; color: black; font-weight: bold; font-size: x-small; }
+ a.tabsellink { color: black; text-decoration: none; font-weight: bold; font-size: x-small; }
+ a.tabsellink:visited { color: black; text-decoration: none; font-weight: bold; font-size: x-small; }
+ a.tabsellink:hover { text-decoration: none; color: black; font-weight: bold; font-size: x-small; }
+ -->
+</style>
+
+</head>
+
+<body>
+
+<table border="0" width="100%" cellspacing="0" cellpadding="0">
+
+ <tr>
+ <td><a href="/"><img src="http://<?php echo $domain; ?>/themes/inria/images/logo.png" border="0" alt="" width="198" height="52" /></a></td>
+ </tr>
+
+</table>
+
+<table border="0" width="100%" cellspacing="0" cellpadding="0">
+
+ <tr>
+ <td> </td>
+ <td colspan="3">
+
+
+ <!-- start tabs -->
+
+ <tr>
+ <td align="left" bgcolor="#E0E0E0" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/topleft.png" height="9" width="9" alt="" /></td>
+ <td bgcolor="#E0E0E0" width="30"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="30" height="1" alt="" /></td>
+ <td bgcolor="#E0E0E0"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="1" height="1" alt="" /></td>
+ <td bgcolor="#E0E0E0" width="30"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="30" height="1" alt="" /></td>
+ <td align="right" bgcolor="#E0E0E0" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/topright.png" height="9" width="9" alt="" /></td>
+ </tr>
+
+ <tr>
+
+ <!-- Outer body row -->
+
+ <td bgcolor="#E0E0E0"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="10" height="1" alt="" /></td>
+ <td valign="top" width="99%" bgcolor="#E0E0E0" colspan="3">
+
+ <!-- Inner Tabs / Shell -->
+
+ <table border="0" width="100%" cellspacing="0" cellpadding="0">
+ <tr>
+ <td align="left" bgcolor="#ffffff" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/topleft-inner.png" height="9" width="9" alt="" /></td>
+ <td bgcolor="#ffffff"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="1" height="1" alt="" /></td>
+ <td align="right" bgcolor="#ffffff" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/topright-inner.png" height="9" width="9" alt="" /></td>
+ </tr>
+
+ <tr>
+ <td bgcolor="#ffffff"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="10" height="1" alt="" /></td>
+ <td valign="top" width="99%" bgcolor="white">
+
+ <!-- whole page table -->
+<table width="100%" cellpadding="5" cellspacing="0" border="0">
+<tr><td width="65%" valign="top">
+
+WARNING: Private Projects' webspace is not private. It is visible for everybody with an internet connection.<br>
+ATTENTION : l'espace web des projets privés n'est pas privé. Il est visible par tous les utilisateurs d'Internet.
+</td>
+
+<td width="35%" valign="top">
+
+ <p> </p>
+</td></tr></table>
+ <p>
+ <center>
+ In case of problems, mail the <a href="mailto:help.et.gforge[at]inria.fr">administrators</a> or file a <a href="http://gforge.inria.fr/tracker/?func=browse&group_id=1&atid=110">bug</a>
+ </center>
+ <!-- end main body row -->
+
+
+ </td>
+ <td width="10" bgcolor="#ffffff"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="2" height="1" alt="" /></td>
+ </tr>
+ <tr>
+ <td align="left" bgcolor="#E0E0E0" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/bottomleft-inner.png" height="11" width="11" alt="" /></td>
+ <td bgcolor="#ffffff"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="1" height="1" alt="" /></td>
+ <td align="right" bgcolor="#E0E0E0" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/bottomright-inner.png" height="11" width="11" alt="" /></td>
+ </tr>
+ </table>
+
+ <!-- end inner body row -->
+
+ </td>
+ <td width="10" bgcolor="#E0E0E0"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="2" height="1" alt="" /></td>
+ </tr>
+ <tr>
+ <td align="left" bgcolor="#E0E0E0" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/bottomleft.png" height="9" width="9" alt="" /></td>
+ <td bgcolor="#E0E0E0" colspan="3"><img src="http://<?php echo $domain; ?>/themes/inria/images/clear.png" width="1" height="1" alt="" /></td>
+ <td align="right" bgcolor="#E0E0E0" width="9"><img src="http://<?php echo $domain; ?>/themes/inria/images/tabs/bottomright.png" height="9" width="9" alt="" /></td>
+ </tr>
+</table>
+
+<!-- PLEASE LEAVE "Powered By Gforge" on your site -->
+<br />
+<center>
+<a href="http://gforge.org/"><img src="http://<?php echo $domain; ?>/images/pow-gforge.png" alt="Powered By GForge Collaborative Development Environment" border="0" /></a>
+</center>
+
+
+</body>
+</html>
Propchange: vmkit/trunk/www/index.php.orig
------------------------------------------------------------------------------
svn:executable = *
Added: vmkit/trunk/www/involved.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/involved.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/involved.php (added)
+++ vmkit/trunk/www/involved.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,15 @@
+<?php
+include("root.php");
+include($ROOT."common.php");
+preambule("Get Involved", "involved");
+?>
+
+<p>
+First, you can participate to the mailing lists that are hosted by inria:<br>
+<a href="https://gforge.inria.fr/projects/vmkit2/">VMKit2 administration page</a>
+
+<p>
+Then, you can also participate to the development, just send a mail to the mailing list</a>
+
+<?php epilogue() ?>
+
Added: vmkit/trunk/www/lip6.gif
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/lip6.gif?rev=180272&view=auto
==============================================================================
Binary files vmkit/trunk/www/lip6.gif (added) and vmkit/trunk/www/lip6.gif Thu Apr 25 11:44:13 2013 differ
Added: vmkit/trunk/www/ls.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/ls.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/ls.php (added)
+++ vmkit/trunk/www/ls.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,60 @@
+<?php
+include("root.php");
+include($ROOT."common.php");
+
+ $pwd = realpath($ROOT . $_GET['from'] . "/" . $_GET['current']);
+ $base = realpath(dirname($_SERVER["SCRIPT_FILENAME"])."/".$ROOT);
+ $current = implode("/", array_diff(explode("/", $pwd),
+ explode("/", $base)));
+
+// echo "pwd: ", $pwd, "<br>";
+// echo "base: ", $base, "<br>";
+// echo "current: ", $current, "<br>";
+
+ if($current == "") {
+ $pwd = $base;
+ }
+
+ $rel_current = $ROOT.$current;
+ $current = "/" . $current;
+
+// echo "current: ", $current, "<br>";
+// echo "rel_current: ", $rel_current, "<br>";
+
+ if (is_dir($pwd)) {
+ preambule("Directory: " . $current, "ls");
+
+ echo "<form class=ls action=", $_SERVER["SCRIPT_NAME"], " method=get>";
+ echo "<input type=hidden name=from value=\"", $current, "\">";
+
+ if ($dh = opendir($pwd)) {
+ while (($file = readdir($dh)) !== false) {
+ if(is_dir($pwd . "/" . $file) && ($file != ".git") && (($file != "..") || ($pwd != $base)) && ($file != ".")) {
+ echo "<input type=submit name=current value=\"", $file, "/\"/><br>\n";
+ }
+ }
+ closedir($dh);
+ }
+
+ echo "<p>";
+ if ($dh = opendir($pwd)) {
+ while (($file = readdir($dh)) !== false) {
+ if(!is_dir($pwd . "/" . $file) && ($file != ".gitignore")) {
+ echo "<a href=\"", $rel_current . "/" . $file, "\">$file</a><br>";
+ }
+ }
+ closedir($dh);
+
+ }
+
+ echo "</form>";
+
+ epilogue();
+ } else {
+ echo "should not happen; current is: '" . $current . "'";
+ }
+?>
+
+
+
+
Removed: vmkit/trunk/www/menu.css
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/menu.css?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/menu.css (original)
+++ vmkit/trunk/www/menu.css (removed)
@@ -1,47 +0,0 @@
-/***************/
-/* page layout */
-/***************/
-
-html,body {
- padding:0px;
- font-size:14px; font-family:"Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, Helvetica, sans-serif; background-color: #fff; color: #222;
- line-height:1.5;
- margin-left: 10px;
-}
-
-
-[id=menu] {
- position:fixed;
- width:25ex;
-}
-[id=content] {
- /* ***** EDIT THIS VALUE IF CONTENT OVERLAPS MENU ***** */
- position:absolute;
- left:29ex;
- padding-right:4ex;
-}
-
-/**************/
-/* menu style */
-/**************/
-
-#menu .submenu {
- padding-top:1em;
- display:block;
-}
-
-#menu label {
- display:block;
- font-weight: bold;
- text-align: center;
- background-color: rgb(192,192,192);
-}
-#menu a {
- padding:0 .2em;
- display:block;
- text-align: center;
- background-color: rgb(235,235,235);
-}
-#menu a:visited {
- color:rgb(100,50,100);
-}
Removed: vmkit/trunk/www/menu.html.incl
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/menu.html.incl?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/menu.html.incl (original)
+++ vmkit/trunk/www/menu.html.incl (removed)
@@ -1,29 +0,0 @@
-<div id="menu">
- <div>
- <a href="http://llvm.org/">LLVM Home</a>
- </div>
-
- <div class="submenu">
- <label>VMKit Info</label>
- <a href="/index.html">About</a>
- <a href="/get_started.html">Get Started</a>
- <a href="/get_involved.html">Get Involved</a>
- <a href="/OpenProjects.html">Open Projects</a>
- <a href="/pubs.html">Publications</a>
- <a href="/releases/index.html">Releases</a>
- </div>
-
- <div class="submenu">
- <label>Quick Links</label>
- <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">llvm-dev</a>
- <a href="http://lists.cs.uiuc.edu/mailman/listinfo/vmkit-commits">vmkit-commits</a>
- <a href="http://llvm.org/bugs/">Bug Reports</a>
- <a href="http://llvm.org/viewvc/llvm-project/vmkit/trunk/">Browse Source</a>
- </div>
-
- <div class="submenu">
- <label>Events</label>
- <a href="http://llvm.org/devmtg/">LLVM/Clang Developer Meetings</a>
- </div>
-
-</div>
Removed: vmkit/trunk/www/publications/ladyvm.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/ladyvm.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/publications/ladyvm.html (original)
+++ vmkit/trunk/www/publications/ladyvm.html (removed)
@@ -1,51 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <link rel="stylesheet" href="http://llvm.org/llvm.css" type="text/css" media="screen" />
- <title>A Lazy Developer Approach: Building a JVM with Third Party Software</title>
-</head>
-<body>
-
-<div class="pub_title">
- A Lazy Developer Approach: Building a JVM with Third Party Software
-</div>
-<div class="pub_author">
- Nicolas Geoffray, Gael Thomas, Charles Clement and Bertil Folliot
-</div>
-
-<h2>Abstract:</h2>
-<blockquote>
-The development of a complete Java Virtual Machine (JVM)
-implementation is a tedious process which involves knowledge in different
-areas: garbage collection, just in time compilation, interpretation, file
-parsing, data structures, etc. The result is that developing its own virtual
-machine requires a considerable amount of man/year. In this paper we show that
-one can implement a JVM with third party software and with performance
-comparable to industrial and top open-source JVMs. Our proof-of-concept
-implementation uses existing versions of a garbage collector, a just in
-time compiler, and the base library, and is robust enough to
-execute complex Java applications such as the OSGi Felix
-implementation and the Tomcat servlet container.
-
-</blockquote>
-
-<h2>Bibtex:</h2>
-<pre>
- at inproceedings{geoffray08ladyvm,
- author = {N. Geoffray and G. Thomas and C. Cl\'ement and B. Folliot},
- title = { A Lazy Developer Approach: Building a JVM with Third Party Software },
- booktitle = {{International Conference on Principles and Practice of Programming In Java (PPPJ 2008) }},
- year = {2008},
- address = {Modena, Italy},
- month = {September},
-}
-</pre>
-
-<h2>Download:</h2>
-<ul>
- <li><a href="http://pagesperso-systeme.lip6.fr/Nicolas.Geoffray/files/pppj-08.pdf">A Lazy Developer Approach: Building a JVM with Third Party Software</a> (PDF)</li>
-</ul>
-
-</body>
-</html>
Removed: vmkit/trunk/www/publications/osgi_dsn.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/osgi_dsn.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/publications/osgi_dsn.html (original)
+++ vmkit/trunk/www/publications/osgi_dsn.html (removed)
@@ -1,55 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <link rel="stylesheet" href="http://llvm.org/llvm.css" type="text/css" media="screen" />
- <title>I-JVM: a Java Virtual Machine for Component Isolation in OSGi</title>
-</head>
-<body>
-
-<div class="pub_title">
- I-JVM: a Java Virtual Machine for Component Isolation in OSGi
-</div>
-<div class="pub_author">
- Nicolas Geoffray, Gael Thomas, Gilles Muller, Pierre Parrend, Stephane Frenot, Bertil Folliot
-</div>
-
-<h2>Abstract:</h2>
-<blockquote>
-The OSGi framework is a Java-based, centralized, component oriented
-platform. It is being widely adopted as an execution environment for
-the development of extensible applications. However, current Java
-Virtual Machines are unable to isolate components from each other.
-For instance, a malicious component can freeze the complete platform
-by allocating too much memory or alter the behavior of other components by
-modifying shared variables.
-
-This paper presents I-JVM, a Java Virtual Machine that provides a
-lightweight approach to isolation while preserving compatibility with
-legacy OSGi applications. Our evaluation of I-JVM shows that it solves
-the 8 known OSGi vulnerabilities that are due to the Java Virtual
-Machine and that the overhead of I-JVM compared to the JVM on which
-it is based is below 20%.
-</blockquote>
-
-<h2>Bibtex:</h2>
-<pre>
- at inproceedings{geoffray09ijvm,
- author = {N. Geoffray and G. Thomas and G. Muller and P. Parrend and S. Fr\'enot and B. Folliot},
- title = {{I-JVM: a Java Virtual Machine for Component Isolation in OSGi}},
- booktitle = {International Conference on Dependable Systems and Networks (DSN 2009)},
- publisher = {IEEE Computer Society},
- pdf = {files/ijvm.pdf},
- year = {2009},
- month = {June},
- address = {Estoril, Portugal}
-}
-</pre>
-
-<h2>Download:</h2>
-<ul>
- <li><a href="http://pagesperso-systeme.lip6.fr/Nicolas.Geoffray/files/ijvm.pdf">I-JVM: a Java Virtual Machine for Component Isolation in OSGi</a> (PDF)</li>
-</ul>
-
-</body>
-</html>
Removed: vmkit/trunk/www/publications/osgi_iies.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/osgi_iies.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/publications/osgi_iies.html (original)
+++ vmkit/trunk/www/publications/osgi_iies.html (removed)
@@ -1,49 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <link rel="stylesheet" href="http://llvm.org/llvm.css" type="text/css" media="screen" />
- <title>Towards a new Isolation Abstraction for OSGi</title>
-</head>
-<body>
-
-<div class="pub_title">
- Towards a new Isolation Abstraction for OSGi
-</div>
-<div class="pub_author">
- Nicolas Geoffray, Gael Thomas, Charles Clement and Bertil Folliot
-</div>
-
-<h2>Abstract:</h2>
-<blockquote>
-The Open Service Gateway Initiative (OSGi) specification defines a dynamic Java-based service oriented architecture for networked environments such
-as home service gateways. To provide isolation between different services, it relies on the Java class loading mechanism.
-While class loaders have many advantages beside isolation, they are poor in protecting the system against
-malicious or buggy services. In this paper,
-we propose a new approach for service isolation. It is based on the Java isolate technology, without a
-task-oriented architecture. Our approach is more tailored to service-oriented architectures and in particular
-offers a complete isolation abstraction to the OSGi platform. It is currently under development, hence
-we do not provide in this paper any technical details nor results.
-
-</blockquote>
-
-<h2>Bibtex:</h2>
-<pre>
- at inproceedings{geoffray08isolationosgi,
- author = {N. Geoffray and G. Thomas and C. Cl\'ement and B. Folliot},
- title = {{Towards a new Isolation Abstraction for OSGi}},
- booktitle = {Proceedings of the First Workshop on Isolation and Integration in Embedded Systems (IIES 2008)},
- year = {2008},
- pages = {41-45},
- address = {Glasgow, Scotland, UK},
- month = {April},
-}
-</pre>
-
-<h2>Download:</h2>
-<ul>
- <li><a href="http://pagesperso-systeme.lip6.fr/Nicolas.Geoffray/files/iies-08.pdf">Towards a new Isolation Abstraction for OSGi</a> (PDF)</li>
-</ul>
-
-</body>
-</html>
Removed: vmkit/trunk/www/publications/thesis.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/thesis.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/publications/thesis.html (original)
+++ vmkit/trunk/www/publications/thesis.html (removed)
@@ -1,59 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <link rel="stylesheet" href="http://llvm.org/llvm.css" type="text/css" media="screen" />
- <title>Fostering Systems Research with Managed Runtimes</title>
-</head>
-<body>
-
-<div class="pub_title">
- Fostering Systems Research with Managed Runtimes
-</div>
-<div class="pub_author">
- Nicolas Geoffray
-</div>
-
-<h2>Abstract:</h2>
-<blockquote>
-Many systems research projects now target managed runtime environments (MRE)
-because they provide better productivity and safety compared to native
-environments. Still, developing and optimizing an MRE is a tedious
-task that requires many years of development. Although MREs share some common
-functionalities, such as a Just In Time Compiler or a Garbage Collector, this
-opportunity for sharing has not been yet exploited in implementing MREs.
-This thesis describes and evaluates VMKit, a first attempt to build a common
-substrate that eases the development and experimentation of high-level MREs and
-systems mechanisms. VMKit has been successfully used to build two MREs,
-a Java Virtual Machine and a Common Language Runtime, as well as a a new system
-mechanism that provides better security in the context of service-oriented
-architectures.
-
-We describe the lessons learnt in implementing such a common
-infrastructure from a performance and an ease of development standpoint.
-The performance of VMKit are reasonable compared to industrial MREs, and
-the high-level MREs are only 20,000 lines of code. Our new system
-mechanism only requires the addition of 600 lines of code in VMKit, and
-is a significant step towards better dependable systems.
-
-</blockquote>
-
-<h2>Bibtex:</h2>
-<pre>
- at PhdThesis{geoffray:phd,
- author = {N. Geoffray},
- title = { Fostering Systems Research with Managed Runtimes },
- schoold = {Universit\'e Pierre et Marie Curie},
- year = {2009},
- address = {Paris, France},
- month = {September},
-}
-</pre>
-
-<h2>Download:</h2>
-<ul>
- <li><a href="http://pagesperso-systeme.lip6.fr/Nicolas.Geoffray/these-geoffray.pdf">Fostering Systems Research with Managed Runtimes</a> (PDF)</li>
-</ul>
-
-</body>
-</html>
Removed: vmkit/trunk/www/publications/vmkit.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/vmkit.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/publications/vmkit.html (original)
+++ vmkit/trunk/www/publications/vmkit.html (removed)
@@ -1,62 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
- <link rel="stylesheet" href="http://llvm.org/llvm.css" type="text/css" media="screen" />
- <title>VMKit: a Substrate for Managed Runtime Enviroments</title>
-</head>
-<body>
-
-<div class="pub_title">
- VMKit: a Substrate for Managed Runtime Environments
-</div>
-<div class="pub_author">
- Nicolas Geoffray, Gael Thomas, Julia Lawall, Gilles Muller and Bertil Folliot
-</div>
-
-<h2>Abstract:</h2>
-<blockquote>
-Managed Runtime Environments (MREs), such as the JVM and the CLI, form an
-attractive environment for program execution, by providing portability and
-safety, via the use of a bytecode language and automatic memory management,
-as well as good performance, via just-in-time (JIT) compilation.
-Nevertheless, developing a fully featured MRE, including e.g.
-a garbage collector and JIT compiler, is a herculean
-task. As a result, new languages cannot easily take advantage of the
-benefits of MREs, and it is difficult to experiment with
-extensions of existing MRE based languages.
-
-This paper describes and evaluates VMKit, a first attempt to build a common
-substrate that eases the development of high-level MREs. We have successfully
-used VMKit to build two MREs: a Java Virtual Machine and a Common
-Language Runtime. We provide an extensive study of the lessons learned in
-developing this infrastructure, and assess the ease of implementing new
-MREs or MRE extensions and the resulting performance. In
-particular, it took one of the authors only one month to develop a Common
-Language Runtime using VMKit. VMKit furthermore has performance comparable
-to the well established open source MREs Cacao, Apache Harmony and Mono, and is
-1.2 to 3 times slower than JikesRVM on most of the DaCapo
-benchmarks.
-
-</blockquote>
-
-<h2>Bibtex:</h2>
-<pre>
- at inproceedings{geoffray10vmkit,
- author = {N. Geoffray and G. Thomas and J.Lawall and G. Muller and B. Folliot},
- title = {{VMKit: a Substrate for Managed Runtime Environments}},
- booktitle = {Virtual Execution Environment Conference (VEE 2010)},
- publisher = {ACM Press},
- year = {2010},
- month = {March},
- address = {Pittsburgh, USA}
-}
-</pre>
-
-<h2>Download:</h2>
-<ul>
- <li><a href="http://llvm.org/pubs/2010-03-VEE-VMKit.pdf">VMKit: a Substrate for Managed Runtime Environments</a> (PDF)</li>
-</ul>
-
-</body>
-</html>
Added: vmkit/trunk/www/publis/.biblio
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/.biblio?rev=180272&view=auto
==============================================================================
(empty)
Added: vmkit/trunk/www/publis/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/Makefile?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/Makefile (added)
+++ vmkit/trunk/www/publis/Makefile Thu Apr 25 11:44:13 2013
@@ -0,0 +1,20 @@
+
+BIB_PAGES=Publications
+BIB_FILES=$(patsubst %,%.php,$(BIB_PAGES) $(patsubst %,%_bib, $(BIB_PAGES)) $(patsubst %,%_abstracts, $(BIB_PAGES)))
+
+.PHONY: all deploy tidy tidy clean distclean
+.SECONDARY:
+.SUFFIXES:
+
+all: .biblio
+
+.biblio: vmkit.bib ab-full.bib Makefile generate-biblio.sh
+ ./generate-biblio.sh vmkit.bib ab-full.bib 2000 2100 . && touch $@
+
+tidy:
+ find . \( -iname "*~" -o -iname "\#*" -o -iname ".DS_Store" \) -exec rm -f {} \;
+
+clean:
+
+distclean:
+ rm -f $(BIB_FILES)
Added: vmkit/trunk/www/publis/Publications.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/Publications.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/Publications.php (added)
+++ vmkit/trunk/www/publis/Publications.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,66 @@
+<?php
+include("root.php");
+include($ROOT."common.php");
+preambule("Publications", "publi");
+?>
+<p>
+
+<table>
+
+<tr valign="top">
+<td align="right" class="bibtexnumber">
+[<a name="vee/10/geoffray/vmkit">1</a>]
+</td>
+<td class="bibtexitem">
+Nicolas Geoffray, Gaël Thomas, Julia Lawall, Gilles Muller, and Bertil
+ Folliot.
+ VMKit: a substrate for managed runtime environments.
+ In <em>Proceedings of the international conference on Virtual
+ Execution Environments, VEE '10</em>, pages 51-62, Pittsburgh, PA, USA, 2010.
+ ACM.
+[ <a href="Publications_bib.php#vee/10/geoffray/vmkit">bib</a> |
+<a href="geoffray10vee-vmkit.pdf">.pdf</a> |
+<a href="Publications_abstracts.php#vee/10/geoffray/vmkit">Abstract</a> ]
+
+</td>
+</tr>
+
+
+<tr valign="top">
+<td align="right" class="bibtexnumber">
+[<a name="dsn/09/geoffray/ijvm">2</a>]
+</td>
+<td class="bibtexitem">
+Nicolas Geoffray, Gaël Thomas, Gilles Muller, Pierre Parrend, Stéphane
+ Frénot, and Bertil Folliot.
+ I-JVM: a Java virtual machine for component isolation in OSGi.
+ In <em>Proceedings of the international conference on Dependable
+ Systems and Networks, DSN '09</em>, pages 544-553, Estoril, Portugal, 2009. IEEE
+ Computer Society.
+[ <a href="Publications_bib.php#dsn/09/geoffray/ijvm">bib</a> |
+<a href="geoffray09dsn-ijvm.pdf">.pdf</a> |
+<a href="Publications_abstracts.php#dsn/09/geoffray/ijvm">Abstract</a> ]
+
+</td>
+</tr>
+
+
+<tr valign="top">
+<td align="right" class="bibtexnumber">
+[<a name="pppj/08/geoffray/ladyvm">3</a>]
+</td>
+<td class="bibtexitem">
+Nicolas Geoffray, Gaël Thomas, Charles Clément, and Bertil Folliot.
+ A lazy developer approach: building a JVM with third party
+ software.
+ In <em>Proceedings of the international symposium on Principles and
+ Practice of Programming in Java, PPPJ '08</em>, pages 73-82, Modena, Italy,
+ 2008. ACM.
+[ <a href="Publications_bib.php#pppj/08/geoffray/ladyvm">bib</a> |
+<a href="geoffray08pppj-ladyvm.pdf">.pdf</a> |
+<a href="Publications_abstracts.php#pppj/08/geoffray/ladyvm">Abstract</a> ]
+
+</td>
+</tr>
+</table>
+<?php epilogue() ?>
Added: vmkit/trunk/www/publis/Publications_abstracts.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/Publications_abstracts.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/Publications_abstracts.php (added)
+++ vmkit/trunk/www/publis/Publications_abstracts.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,121 @@
+<?php
+include("root.php");
+include($ROOT."common.php");
+preambule("Publications - Abstracts", "publi");
+?>
+<p>
+
+<table>
+
+<tr valign="top">
+<td align="right" class="bibtexnumber">
+[<a name="vee/10/geoffray/vmkit">1</a>]
+</td>
+<td class="bibtexitem">
+Nicolas Geoffray, Gaël Thomas, Julia Lawall, Gilles Muller, and Bertil
+ Folliot.
+ VMKit: a substrate for managed runtime environments.
+ In <em>Proceedings of the international conference on Virtual
+ Execution Environments, VEE '10</em>, pages 51-62, Pittsburgh, PA, USA, 2010.
+ ACM.
+[ <a href="Publications_bib.php#vee/10/geoffray/vmkit">bib</a> |
+<a href="geoffray10vee-vmkit.pdf">.pdf</a> ]
+<blockquote><font size="-1">
+
+Managed Runtime Environments (MREs), such as the JVM and the CLI, form
+an attractive environment for program execution, by providing
+portability and safety, via the use of a bytecode language and
+automatic memory management, as well as good performance, via
+just-in-time (JIT) compilation. Nevertheless, developing a fully
+featured MRE, including e.g. a garbage collector and JIT compiler, is
+a herculean task. As a result, new languages cannot easily take
+advantage of the benefits of MREs, and it is difficult to experiment
+with extensions of existing MRE based languages.<p>
+This paper describes and evaluates VMKit, a first attempt to build a
+common substrate that eases the development of high-level MREs. We
+have successfully used VMKit to build two MREs: a Java Virtual Machine
+and a Common Language Runtime. We provide an extensive study of the
+lessons learned in developing this infrastructure, and assess the ease
+of implementing new MREs or MRE extensions and the resulting
+performance. In particular, it took one of the authors only one month
+to develop a Common Language Runtime using VMKit. VMKit furthermore
+has performance comparable to the well established open source MREs
+Cacao, Apache Harmony and Mono, and is 1.2 to 3 times slower than
+JikesRVM on most of the DaCapo benchmarks.
+
+</font></blockquote>
+<p>
+</td>
+</tr>
+
+
+<tr valign="top">
+<td align="right" class="bibtexnumber">
+[<a name="dsn/09/geoffray/ijvm">2</a>]
+</td>
+<td class="bibtexitem">
+Nicolas Geoffray, Gaël Thomas, Gilles Muller, Pierre Parrend, Stéphane
+ Frénot, and Bertil Folliot.
+ I-JVM: a Java virtual machine for component isolation in OSGi.
+ In <em>Proceedings of the international conference on Dependable
+ Systems and Networks, DSN '09</em>, pages 544-553, Estoril, Portugal, 2009. IEEE
+ Computer Society.
+[ <a href="Publications_bib.php#dsn/09/geoffray/ijvm">bib</a> |
+<a href="geoffray09dsn-ijvm.pdf">.pdf</a> ]
+<blockquote><font size="-1">
+
+The OSGi framework is a Java-based, centralized, component oriented
+platform. It is being widely adopted as an execution environment for
+the development of extensible applications. However, current Java
+Virtual Machines are unable to isolate components from each other. For
+instance, a malicious component can freeze the complete platform by
+allocating too much memory or alter the behavior of other components
+by modifying shared variables. This paper presents I-JVM, a Java
+Virtual Machine that provides a lightweight approach to isolation
+while preserving compatibility with legacy OSGi applications. Our
+evaluation of I-JVM shows that it solves the 8 known OSGi
+vulnerabilities that are due to the Java Virtual Machine and that the
+overhead of I-JVM compared to the JVM on which it is based is below
+20%.
+
+</font></blockquote>
+<p>
+</td>
+</tr>
+
+
+<tr valign="top">
+<td align="right" class="bibtexnumber">
+[<a name="pppj/08/geoffray/ladyvm">3</a>]
+</td>
+<td class="bibtexitem">
+Nicolas Geoffray, Gaël Thomas, Charles Clément, and Bertil Folliot.
+ A lazy developer approach: building a JVM with third party
+ software.
+ In <em>Proceedings of the international symposium on Principles and
+ Practice of Programming in Java, PPPJ '08</em>, pages 73-82, Modena, Italy,
+ 2008. ACM.
+[ <a href="Publications_bib.php#pppj/08/geoffray/ladyvm">bib</a> |
+<a href="geoffray08pppj-ladyvm.pdf">.pdf</a> ]
+<blockquote><font size="-1">
+
+The development of a complete Java Virtual Machine (JVM)
+implementation is a tedious process which involves knowledge in
+different areas: garbage collection, just in time compilation,
+interpretation, file parsing, data structures, etc.
+The result is that developing its own virtual machine requires a
+considerable amount of man/year. In this paper
+we show that one can implement a JVM with third party
+software and with performance comparable to industrial and
+top open-source JVMs. Our proof-of-concept implementation
+uses existing versions of a garbage collector, a just in
+time compiler, and the base library, and is robust enough to
+execute complex Java applications such as the OSGi Felix
+implementation and the Tomcat servlet container.
+
+</font></blockquote>
+<p>
+</td>
+</tr>
+</table>
+<?php epilogue() ?>
Added: vmkit/trunk/www/publis/Publications_bib.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/Publications_bib.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/Publications_bib.php (added)
+++ vmkit/trunk/www/publis/Publications_bib.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1,100 @@
+<?php
+include("root.php");
+include($ROOT."common.php");
+preambule("Publications - Bibtex", "publi");
+?>
+<p>
+<a name="vee/10/geoffray/vmkit"></a><pre>
+ at inproceedings{<a href="Publications.php#vee/10/geoffray/vmkit">vee/10/geoffray/vmkit</a>,
+ author = {Geoffray, Nicolas and Thomas, Ga\"el and Lawall, Julia and Muller, Gilles and Folliot, Bertil},
+ title = {{VMKit: a substrate for managed runtime environments}},
+ booktitle = {Proceedings of the international conference on Virtual Execution Environments, VEE~'10},
+ publisher = {ACM},
+ pdf = {geoffray10vee-vmkit.pdf},
+ year = {2010},
+ address = {Pittsburgh, PA, USA},
+ pages = {51--62},
+ abstract = {
+Managed Runtime Environments (MREs), such as the JVM and the CLI, form
+an attractive environment for program execution, by providing
+portability and safety, via the use of a bytecode language and
+automatic memory management, as well as good performance, via
+just-in-time (JIT) compilation. Nevertheless, developing a fully
+featured MRE, including e.g. a garbage collector and JIT compiler, is
+a herculean task. As a result, new languages cannot easily take
+advantage of the benefits of MREs, and it is difficult to experiment
+with extensions of existing MRE based languages.
+
+This paper describes and evaluates VMKit, a first attempt to build a
+common substrate that eases the development of high-level MREs. We
+have successfully used VMKit to build two MREs: a Java Virtual Machine
+and a Common Language Runtime. We provide an extensive study of the
+lessons learned in developing this infrastructure, and assess the ease
+of implementing new MREs or MRE extensions and the resulting
+performance. In particular, it took one of the authors only one month
+to develop a Common Language Runtime using VMKit. VMKit furthermore
+has performance comparable to the well established open source MREs
+Cacao, Apache Harmony and Mono, and is 1.2 to 3 times slower than
+JikesRVM on most of the DaCapo benchmarks.
+ }
+}
+</pre>
+
+<a name="dsn/09/geoffray/ijvm"></a><pre>
+ at inproceedings{<a href="Publications.php#dsn/09/geoffray/ijvm">dsn/09/geoffray/ijvm</a>,
+ author = {Geoffray, Nicolas and Thomas, Ga\"el and Muller, Gilles and Parrend, Pierre and Fr\'enot, St\'ephane and Folliot, Bertil},
+ title = {{I-JVM: a Java virtual machine for component isolation in OSGi}},
+ booktitle = {Proceedings of the international conference on Dependable Systems and Networks, DSN~'09},
+ publisher = {IEEE Computer Society},
+ pdf = {geoffray09dsn-ijvm.pdf},
+ year = {2009},
+ address = {Estoril, Portugal},
+ pages = {544--553},
+ abstract = {
+The OSGi framework is a Java-based, centralized, component oriented
+platform. It is being widely adopted as an execution environment for
+the development of extensible applications. However, current Java
+Virtual Machines are unable to isolate components from each other. For
+instance, a malicious component can freeze the complete platform by
+allocating too much memory or alter the behavior of other components
+by modifying shared variables. This paper presents I-JVM, a Java
+Virtual Machine that provides a lightweight approach to isolation
+while preserving compatibility with legacy OSGi applications. Our
+evaluation of I-JVM shows that it solves the 8 known OSGi
+vulnerabilities that are due to the Java Virtual Machine and that the
+overhead of I-JVM compared to the JVM on which it is based is below
+20\%.
+ }
+}
+</pre>
+
+<a name="pppj/08/geoffray/ladyvm"></a><pre>
+ at inproceedings{<a href="Publications.php#pppj/08/geoffray/ladyvm">pppj/08/geoffray/ladyvm</a>,
+ author = { Geoffray, Nicolas and Thomas, Ga\"el and Cl\'ement, Charles and Folliot, Bertil},
+ title = {{A lazy developer approach: building a JVM with third party software}},
+ booktitle = {Proceedings of the international symposium on Principles and Practice of Programming in Java, PPPJ~'08},
+ year = {2008},
+ pages = {73--82},
+ address = {Modena, Italy},
+ publisher = {ACM},
+ pdf = {geoffray08pppj-ladyvm.pdf},
+ abstract = {
+The development of a complete Java Virtual Machine (JVM)
+implementation is a tedious process which involves knowledge in
+different areas: garbage collection, just in time compilation,
+interpretation, file parsing, data structures, etc.
+The result is that developing its own virtual machine requires a
+considerable amount of man/year. In this paper
+we show that one can implement a JVM with third party
+software and with performance comparable to industrial and
+top open-source JVMs. Our proof-of-concept implementation
+uses existing versions of a garbage collector, a just in
+time compiler, and the base library, and is robust enough to
+execute complex Java applications such as the OSGi Felix
+implementation and the Tomcat servlet container.
+}
+}
+</pre>
+
+
+<?php epilogue() ?>
Added: vmkit/trunk/www/publis/ab-full.bib
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/ab-full.bib?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/ab-full.bib (added)
+++ vmkit/trunk/www/publis/ab-full.bib Thu Apr 25 11:44:13 2013
@@ -0,0 +1,105 @@
+
+ at string{procof="Proceedings of the "}
+ at string{poster="Poster at the "}
+ at string{wip="Work in progress in the "}
+
+ at Comment publishers
+ at string{acm="ACM"}
+ at string{usenix="USENIX Association"}
+ at string{ieee="IEEE Computer Society"}
+ at string{springer="Springer-Verlag"}
+ at string{vldbend="VLDB Endowment"}
+ at string{ibm="IBM Corporation"}
+ at string{hermes="Hermes"}
+ at string{wiley="John Wiley \& Sons, Ltd."}
+ at string{morgan="Morgan Kaufmann"}
+ at string{addison="Addison-Wesley"}
+ at string{lncs="LNCS"}
+ at string{acta="ACTA Press"}
+ at string{oreilly="O'Reilly"}
+
+ at Comment conferences
+ at string{sosp="Symposium on Operating Systems Principles, SOSP~'"}
+ at string{osdi="conference on Operating Systems Design and Implementation, OSDI~'"}
+ at string{eurosys="EuroSys European Conference on Computer Systems, EuroSys~'"}
+ at string{usenix-atc="Usenix Annual Technical Conference, USENIX ATC~'"}
+ at string{usenix-stc="Usenix Summer Technical Conference, USENIX STC~'"}
+ at string{usenix-sec="USENIX Security Symposium~'"}
+ at string{pldi="conference on Programming Language Design and Implementation, PLDI~'"}
+ at string{popl="symposium on Principles Of Programming Languages, POPL~'"}
+ at string{oopsla="conference on Object Oriented Programming Systems Languages and Applications, OOPSLA~'"}
+ at string{ecoop="European Conference on Object-Oriented Programming, ECOOP~'"}
+ at string{ismm="International Symposium on Memory Management, ISMM~'"}
+ at string{isca="International Symposium on Computer Architecture, ISCA~'"}
+ at string{podc="symposium on Principles Of Distributed Computing, PODC~'"}
+ at string{disc="international conference on Distributed Computing, DISC~'"}
+ at string{cgo="international symposium on Code Generation and Optimization, CGO~'"}
+ at string{icdcs="International Conference on Distributed Computing Systems, ICDCS~'"}
+ at string{ipdps="International Parallel and Distributed Processing Symposium, IPDPS~'"}
+ at string{spaa="Symposium on Parallelism in Algorithms and Architectures, SPAA~'"}
+ at string{ppopp="symposium on Principles and Practices of Parallel Programming, PPoPP~'"}
+ at string{asplos="conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS~'"}
+ at string{sigmetrics="international conference on measurement and modeling of computer systems, SIGMETRICS~'"}
+ at string{hipc="international conference on High Performance Computing, HiPC~'"}
+ at string{javagrande={conference on Java Grande, JavaGrande~'}}
+ at string{jvm="Java\texttrademark\ Virtual Machine Research and Technology Symposium, JVM~'"}
+ at string{vmrt="Virtual Machine Research and Technology Symposium '"}
+ at string{ccnc="Consumer Communications and Networking Conference, CCNC~'"}
+ at string{sbac-pad="international Symposium on Computer Architecture and High Performance Computing, SBAC-PAD~'"}
+ at string{nca="international symposium on Network Computing and Applications, NCA~'"}
+ at string{dsn="international conference on Dependable Systems and Networks, DSN~'"}
+ at string{vee="international conference on Virtual Execution Environments, VEE~'"}
+ at string{pppj="international symposium on Principles and Practice of Programming in Java, PPPJ~'"}
+ at string{scc="international Conference on Services Computing, SCC~'"}
+ at string{doa="international conference on Distributed Objects and Applications, DOA~'"}
+ at string{sac="Symposium on Applied Computing, SAC~'"}
+ at string{europar="European conference on Parallel processing, EuroPar~'"}
+ at string{icse="International Conference on Software Engineering, ICSE~'"}
+ at string{isscc="International Solid-State Circuits Conference, ISSCC~'"}
+ at string{dac="Design Automation Conference, DAC~'"}
+ at string{socc="Symposium on Cloud computing, SoCC~'"}
+ at string{samos="International Conference on Embedded Computer Systems: Architectures, MOdeling and Simulation, SAMOS~'"}
+ at string{webapps="USENIX conference on Web application development, WebApps~'"}
+ at string{sde="software engineering symposium on practical Software Development Environments, SDE~'"}
+ at string{sc="conference on Supercomputing, Supercomputing~'"}
+ at string{sp="symposium on Security and Privacy, SP~'"}
+ at string{ijcai="International Joint Conference on Artificial Intelligence, IJCAI~'"}
+ at string{hpca="symposium on High Performance Computer Architecture, HPCA~'"}
+
+ at string{cfse="Conférence Française en Systèmes d'Exploitation, CFSE~'"}
+ at string{decor="conférence francophone sur le Déploiement et la (Re)configuration de logiciels, DECOR~'"}
+
+ at Comment workshops
+ at string{plos="SOSP Workshop on Programming Languages and Operating Systems, PLOS~'"}
+ at string{sigopsew=" ACM SIGOPS European Workshop"}
+ at string{hotpar="workshop on Hot topics in Parallelism, HotPar~'"}
+ at string{osihpa="workshop on Operating System Interference in High Performance Applications, OSIHPA~'"}
+ at string{acp4is="workshop on Aspects, Components, and Patterns for Infrastructure Software, ACP4IS~'"}
+ at string{iies="workshop on Isolation and Integration in Embedded Systems, IIES~'"}
+ at string{persys="international workshop on Pervasive Systems, PerSys~'"}
+ at string{mediate="international workshop on Mediation in Semantic Web Services, Mediate~'"}
+ at string{cipc="NATO workshop on Concurrent Information Processing and Computing, CIPC~'"}
+ at string{ivme="workshop on Interpreters, Virtual Machines and Emulators, IVME~'"}
+ at string{jtres="Workshop on Java Technologies for Real-Time and Embedded Systems, JTRES~'"}
+
+ at string{osgiw=" Atelier de travail OSGi\texttrademark"}
+ at string{cfsew=" Atelier journées des Jeunes Chercheurs en Systèmes, chapitre français de l'ACM-SIGOPS"}
+
+ at Comment journals
+ at string{pvldb="VLDB Endowment, PVLDB~'"}
+ at string{cacm="Communications of the ACM"}
+ at string{tocs="ACM Transactions on Computer Systems (TOCS)"}
+ at string{toplas="ACM Transactions on Programming Languages and Systems (TOPLAS)"}
+ at string{toiis="ACM Transactions on Information and System Security"}
+ at string{ibmsys="IBM System Journal"}
+ at string{cpe="Concurrency - Practice \& Experience (CP\&E)"}
+ at string{spe="Software - Practice \& Experience (SP\&E)"}
+ at string{jpdc="Journal of Parallel and Distributed Computing (JPDC)"}
+ at string{osr="SIGOPS Operating System Review (OSR)"}
+ at string{ijca="IASTED International Journal on Computers and Applications"}
+ at string{ieee-micro="IEEE Micro"}
+ at string{ieee-software="IEEE Software"}
+ at string{ieee-tc="IEEE Transactions on Computers"}
+
+ at string{tsi="Technique et Science Informatiques (TSI)"}
+
Added: vmkit/trunk/www/publis/generate-biblio.sh
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/generate-biblio.sh?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/generate-biblio.sh (added)
+++ vmkit/trunk/www/publis/generate-biblio.sh Thu Apr 25 11:44:13 2013
@@ -0,0 +1,73 @@
+#!/bin/bash
+
+ORIG_BIB_NAME=$1
+LAYOUT_BIB_NAME=$2
+STYLE=plain
+
+ORIG_DIR_PATH=$(dirname $1)
+BASE_PATH="$(echo $ORIG_DIR_PATH | sed -e 's/[^/]*/\.\./g')"
+
+usage() {
+ echo "Usage: $0 bib_name layout_name start_date end_date"
+ exit 1
+}
+
+[ -z "$ORIG_BIB_NAME" ] && usage
+[ -z "$LAYOUT_BIB_NAME" ] && usage
+
+mkdir -p tmp-biblio
+cd tmp-biblio
+
+one-preambule() {
+echo '<?php'
+echo 'include("root.php");'
+echo 'include($ROOT."common.php");'
+echo 'preambule("'$1'", "publi");'
+echo '?>'
+echo "<p>"
+}
+
+one-append() {
+ cat $1.html | sed -e 's/<hr><p><em>This file was.*//' \
+ | grep -v "bibtex2html" | sed -e 's/<h1>.*<\/h1>//' \
+ | sed -e 's/\.html/\.php/' >> $1.php
+}
+
+one-epilogue() {
+ echo '<?php epilogue() ?>' >> $1
+ mv $1 ../$ORIG_DIR_PATH
+}
+
+preambule() {
+ one-preambule "$1" > "$1".php
+ one-preambule "$1 - Abstracts" > "$1"_abstracts.php
+ one-preambule "$1 - Bibtex" > "$1"_bib.php
+}
+
+append() {
+ one-append "$1"
+ one-append "$1"_abstracts
+ one-append "$1"_bib
+}
+
+epilogue() {
+ one-epilogue "$1".php $2
+ one-epilogue "$1"_abstracts.php $2 _abstracts
+ one-epilogue "$1"_bib.php
+}
+
+generate() {
+ NAME=$3
+ cat ../$2 ../$1 > $NAME.bib
+ preambule "$NAME"
+ TMPDIR=. bibtex2html -q -d -nodoc -noheader -s "$STYLE" -r -t "" -both "$NAME".bib
+ append $NAME
+ epilogue $NAME $GO
+}
+
+generate $ORIG_BIB_NAME $LAYOUT_BIB_NAME Publications
+
+cd ..
+rm -Rf tmp-biblio
+
+exit 0
\ No newline at end of file
Propchange: vmkit/trunk/www/publis/generate-biblio.sh
------------------------------------------------------------------------------
svn:executable = *
Added: vmkit/trunk/www/publis/geoffray08pppj-ladyvm.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/geoffray08pppj-ladyvm.pdf?rev=180272&view=auto
==============================================================================
Binary files vmkit/trunk/www/publis/geoffray08pppj-ladyvm.pdf (added) and vmkit/trunk/www/publis/geoffray08pppj-ladyvm.pdf Thu Apr 25 11:44:13 2013 differ
Added: vmkit/trunk/www/publis/geoffray09dsn-ijvm.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/geoffray09dsn-ijvm.pdf?rev=180272&view=auto
==============================================================================
Binary files vmkit/trunk/www/publis/geoffray09dsn-ijvm.pdf (added) and vmkit/trunk/www/publis/geoffray09dsn-ijvm.pdf Thu Apr 25 11:44:13 2013 differ
Added: vmkit/trunk/www/publis/geoffray10vee-vmkit.pdf
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/geoffray10vee-vmkit.pdf?rev=180272&view=auto
==============================================================================
Binary files vmkit/trunk/www/publis/geoffray10vee-vmkit.pdf (added) and vmkit/trunk/www/publis/geoffray10vee-vmkit.pdf Thu Apr 25 11:44:13 2013 differ
Added: vmkit/trunk/www/publis/root.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/root.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/root.php (added)
+++ vmkit/trunk/www/publis/root.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1 @@
+<?php $ROOT="../" ?>
Added: vmkit/trunk/www/publis/vmkit.bib
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publis/vmkit.bib?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/publis/vmkit.bib (added)
+++ vmkit/trunk/www/publis/vmkit.bib Thu Apr 25 11:44:13 2013
@@ -0,0 +1,87 @@
+
+
+ at inproceedings{vee/10/geoffray/vmkit,
+ author = {Geoffray, Nicolas and Thomas, Ga\"el and Lawall, Julia and Muller, Gilles and Folliot, Bertil},
+ title = {{VMKit: a substrate for managed runtime environments}},
+ booktitle = procof#vee#{10},
+ publisher = acm,
+ pdf = {geoffray10vee-vmkit.pdf},
+ year = {2010},
+ address = {Pittsburgh, PA, USA},
+ pages = {51--62},
+ abstract = {
+Managed Runtime Environments (MREs), such as the JVM and the CLI, form
+an attractive environment for program execution, by providing
+portability and safety, via the use of a bytecode language and
+automatic memory management, as well as good performance, via
+just-in-time (JIT) compilation. Nevertheless, developing a fully
+featured MRE, including e.g. a garbage collector and JIT compiler, is
+a herculean task. As a result, new languages cannot easily take
+advantage of the benefits of MREs, and it is difficult to experiment
+with extensions of existing MRE based languages.
+
+This paper describes and evaluates VMKit, a first attempt to build a
+common substrate that eases the development of high-level MREs. We
+have successfully used VMKit to build two MREs: a Java Virtual Machine
+and a Common Language Runtime. We provide an extensive study of the
+lessons learned in developing this infrastructure, and assess the ease
+of implementing new MREs or MRE extensions and the resulting
+performance. In particular, it took one of the authors only one month
+to develop a Common Language Runtime using VMKit. VMKit furthermore
+has performance comparable to the well established open source MREs
+Cacao, Apache Harmony and Mono, and is 1.2 to 3 times slower than
+JikesRVM on most of the DaCapo benchmarks.
+ }
+}
+
+ at inproceedings{dsn/09/geoffray/ijvm,
+ author = {Geoffray, Nicolas and Thomas, Ga\"el and Muller, Gilles and Parrend, Pierre and Fr\'enot, St\'ephane and Folliot, Bertil},
+ title = {{I-JVM: a Java virtual machine for component isolation in OSGi}},
+ booktitle = procof#dsn#{09},
+ publisher = ieee,
+ pdf = {geoffray09dsn-ijvm.pdf},
+ year = {2009},
+ address = {Estoril, Portugal},
+ pages = {544--553},
+ abstract = {
+The OSGi framework is a Java-based, centralized, component oriented
+platform. It is being widely adopted as an execution environment for
+the development of extensible applications. However, current Java
+Virtual Machines are unable to isolate components from each other. For
+instance, a malicious component can freeze the complete platform by
+allocating too much memory or alter the behavior of other components
+by modifying shared variables. This paper presents I-JVM, a Java
+Virtual Machine that provides a lightweight approach to isolation
+while preserving compatibility with legacy OSGi applications. Our
+evaluation of I-JVM shows that it solves the 8 known OSGi
+vulnerabilities that are due to the Java Virtual Machine and that the
+overhead of I-JVM compared to the JVM on which it is based is below
+20\%.
+ }
+}
+
+ at inproceedings{pppj/08/geoffray/ladyvm,
+ author = { Geoffray, Nicolas and Thomas, Ga\"el and Cl\'ement, Charles and Folliot, Bertil},
+ title = {{A lazy developer approach: building a JVM with third party software}},
+ booktitle = procof#pppj#{08},
+ year = {2008},
+ pages = {73--82},
+ address = {Modena, Italy},
+ publisher = acm,
+ pdf = {geoffray08pppj-ladyvm.pdf},
+ abstract = {
+The development of a complete Java Virtual Machine (JVM)
+implementation is a tedious process which involves knowledge in
+different areas: garbage collection, just in time compilation,
+interpretation, file parsing, data structures, etc.
+The result is that developing its own virtual machine requires a
+considerable amount of man/year. In this paper
+we show that one can implement a JVM with third party
+software and with performance comparable to industrial and
+top open-source JVMs. Our proof-of-concept implementation
+uses existing versions of a garbage collector, a just in
+time compiler, and the base library, and is robust enough to
+execute complex Java applications such as the OSGi Felix
+implementation and the Tomcat servlet container.
+}
+}
Removed: vmkit/trunk/www/pubs.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/pubs.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/pubs.html (original)
+++ vmkit/trunk/www/pubs.html (removed)
@@ -1,46 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>VMKit - Getting Started</title>
- <link type="text/css" rel="stylesheet" href="menu.css" />
- <link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<h1>VMKit related publications</h1>
-
-
-<h2>2010</h2>
-<ol>
- <li><a href="publications/vmkit.html">VMKit: a Substrate for Managed Runtime Environments</a><br/>
- Nicolas Geoffray, Gael Thomas, Julia Lawall, Gilles Muller, Bertil Folliot<br>
- Proc. of the Virtual Execution Environments Conference (VEE'10), Pittsburgh, USA, Mar. 2010</li>
-</ol>
-<h2>2009</h2>
-<ol>
- <li><a href="publications/thesis.html">Fostering Systems Research with Managed Runtimes</a><br/>
- Nicolas Geoffray<br>
- PhD Thesis, Universite Pierre et Marie Curie, Paris, France, Sep. 2009</li>
- <li><a href="publications/osgi_dsn.html">I-JVM: a Java Virtual Machine for Component Isolation in OSGi</a><br/>
- Nicolas Geoffray, Gael Thomas, Gilles Muller, Pierre Parrend, Stephane Frenot, Bertil Folliot<br>
- Proc. of the Dependable Systems and Network Conference (DSN'09), Estoril, Portugal, Jun. 2009</li>
-</ol>
-<h2>2008</h2>
-<ol>
- <li><a href="publications/ladyvm.html">A Lazy Developer Approach: Building a JVM with Third Party Software</a><br/>
- Nicolas Geoffray, Gael Thomas, Charles Clement, Bertil Folliot<br>
- Proc. of the Principles and Practice of Programming in Java (PPPJ'08), Modena, Italy Sep. 2008</li>
- <li><a href="publications/osgi_dsn.html">Towards a new Isolation Abstraction for OSGi</a><br/>
- Nicolas Geoffray, Gael Thomas, Charles Clement, Bertil Folliot<br>
- Proc. of the Isolation and Integration in Embedded Systems (IIES'08), Glasgow, Scotland, Apr. 2008</li>
-</ol>
-
-</div>
-</body>
-</html>
Removed: vmkit/trunk/www/releases/index.html
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/releases/index.html?rev=180271&view=auto
==============================================================================
--- vmkit/trunk/www/releases/index.html (original)
+++ vmkit/trunk/www/releases/index.html (removed)
@@ -1,75 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<!-- Material used from: HTML 4.01 specs: http://www.w3.org/TR/html401/ -->
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>"vmkit" JVM and .Net runtimes for LLVM</title>
- <link type="text/css" rel="stylesheet" href="../menu.css" />
- <link type="text/css" rel="stylesheet" href="../content.css" />
-</head>
-<body>
-
-<!--#include virtual="../menu.html.incl"-->
-
-
-<div id="content">
- <!--*********************************************************************-->
- <h1>VMKit Releases</h1>
- <!--*********************************************************************-->
-
- <p>The VMKit project was publicly released in the time of LLVM 2.3. Since
- LLVM 2.4, VMKit follows each LLVM release. The first release of VMKit is
- version 0.24.</p>
-
- <!--=====================================================================-->
- <h2 id="dls">Downloads</h2>
- <!--=====================================================================-->
-
- <ul>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_032/www/releases/vmkit-0.32.tar.bz2?revision=170960">
- VMKit release 0.32 </a>
- </li>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_031/www/releases/vmkit-0.31.tar.bz2?revision=166887">
- VMKit release 0.31 </a>
- </li>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_030/www/releases/vmkit-0.30.tar.bz2?revision=145123">
- VMKit release 0.30 </a> (
- <a href="http://llvm.org/releases/3.0/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_029/www/releases/vmkit-0.29.tar.bz2?revision=129228">
- VMKit release 0.29 </a> (
- <a href="http://llvm.org/releases/2.9/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- <li><a href="http://llvm.org/viewvc/llvm-project/vmkit/branches/release_028/www/releases/vmkit-0.28.tar.bz2?revision=116299">
- VMKit release 0.28 </a> (
- <a href="http://llvm.org/releases/2.8/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- <li><a href="http://llvm.org/releases/2.7/vmkit-0.27.tar.bz2">
- VMKit release 0.27 </a> (
- <a href="http://llvm.org/releases/2.7/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- <li><a href="http://llvm.org/releases/2.6/vmkit-0.26.tar.bz2">
- VMKit release 0.26 </a> (
- <a href="http://llvm.org/releases/2.6/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- <li><a href="http://llvm.org/releases/2.5/vmkit-0.25.tar.bz2">
- VMKit release 0.25 </a> (
- <a href="http://llvm.org/releases/2.5/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- <li><a href="http://llvm.org/releases/2.4/vmkit-0.24.tar.bz2">
- VMKit release 0.24 </a> (
- <a href="http://llvm.org/releases/2.4/docs/ReleaseNotes.html#vmkit">
- Release notes </a>)
- </li>
- </ul>
-
-</div>
-</body>
-</html>
Added: vmkit/trunk/www/root.php
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/root.php?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/root.php (added)
+++ vmkit/trunk/www/root.php Thu Apr 25 11:44:13 2013
@@ -0,0 +1 @@
+<?php $ROOT="./" ?>
Copied: vmkit/trunk/www/start.php (from r180270, vmkit/trunk/www/get_started.html)
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/start.php?p2=vmkit/trunk/www/start.php&p1=vmkit/trunk/www/get_started.html&r1=180270&r2=180272&rev=180272&view=diff
==============================================================================
--- vmkit/trunk/www/get_started.html (original)
+++ vmkit/trunk/www/start.php Thu Apr 25 11:44:13 2013
@@ -1,39 +1,8 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
- "http://www.w3.org/TR/html4/strict.dtd">
-<html>
-<head>
- <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
- <title>VMKit - Getting Started</title>
- <link type="text/css" rel="stylesheet" href="menu.css" />
- <link type="text/css" rel="stylesheet" href="content.css" />
-</head>
-<body>
-
-<!--#include virtual="menu.html.incl"-->
-
-<div id="content">
-
-<h1>Getting Started: Building and Running VMKit</h1>
-
-
-<p>This page gives you the shortest path to checking out vmkit and demos a few
-options. This should get you up and running with the minimum of muss and fuss.
-If you like what you see, please consider <a href="get_involved.html">getting
-involved</a> with the vmkit community.</p>
-
-
-<h2>A word of warning</h2>
-
-<p>While this work aims to provide a fully functional JVM, it
-is <em>still early work</em> and is under heavy development.
-<p>Some of the common missing pieces in vmkit/llvm are:</p>
-
-<ol>
- <li> Mixed interpretation/compilation.</li>
- <li> Adaptive optimization.</li>
-</ol>
-
-<h2 id="build">Building vmkit / working with the code</h2>
+<?php
+include("root.php");
+include($ROOT."common.php");
+preambule("Get Started", "start");
+?>
<p>If you would like to check out and build the project, the current scheme
is:</p>
@@ -85,9 +54,9 @@ is:</p>
</ul>
</ul>
- <li>Checkout vmkit:</li>
+ <li>Checkout vmkit2:</li>
<ul>
- <li><tt>svn co http://llvm.org/svn/llvm-project/vmkit/trunk vmkit</tt></li>
+ <li><tt>git clone git://scm.gforge.inria.fr/vmkit2/vmkit2.git</tt></li>
</ul>
<li>Configure vmkit:</li>
@@ -131,6 +100,5 @@ is:</p>
</ul>
</ol>
-</div>
-</body>
-</html>
+
+<?php epilogue() ?>
Added: vmkit/trunk/www/stylesheet.css
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/stylesheet.css?rev=180272&view=auto
==============================================================================
--- vmkit/trunk/www/stylesheet.css (added)
+++ vmkit/trunk/www/stylesheet.css Thu Apr 25 11:44:13 2013
@@ -0,0 +1,144 @@
+
+body {
+ font-family: 'Times New Roman', serif
+}
+
+.tiny {
+ font-style: italic;
+ font-size:90%;
+}
+
+h1 {
+ background: Beige;
+ color: brown;
+ font-family: 'Times New Roman', serif
+ font-size: 130%;
+ font-variant: small-caps;
+ font-weight: 400;
+ line-height: 120%;
+ margin: 0px 0px 0px 0px;
+}
+
+h2 {
+ background: rgb(220,220,245);
+ color: black;
+ font-family: 'Times New Roman', serif
+ font-size: 110%;
+ font-weight: 700;
+ line-height: 100%;
+ margin: 18px 0px 0px 0px;
+}
+
+h3 {
+ background: rgb(240,240,240);
+ font-family: 'Times New Roman', serif
+ color: black;
+ font-size: 100%;
+ font-weight: 400;
+ line-height: 100%;
+}
+
+h1.name {
+ background: white;
+ font-family: 'Georgia', 'Times New Roman', serif;
+ font-size: 185%;
+ font-weight: 700;
+ font-variant: small-caps;
+}
+
+a.name {
+ color: Maroon;
+ text-decoration: none;
+}
+
+a.name:hover {
+ color: rgb(120,120,120);
+}
+
+table.contact {
+ font-family: arial, serif;
+}
+
+pre.mdoc {
+ border-style: groove;
+ border-width: 2px;
+ border-color: black;
+ background: rgb(245,245,220);
+ color: rgb(60,60,200);
+ padding: 2px 3px 2px 3px;
+}
+
+.cadre {
+ background: white;
+ font-family: 'Times New Roman', serif;
+ font-size: 100%;
+ font-weight: 400;
+ line-height: 100%;
+ text-decoration: none;
+}
+
+table.cadre {
+ border-collapse: collapse;
+}
+
+h3.cadre {
+ color: brown;
+ margin: 3px 0px 2px 0px;
+}
+
+h2.cadre {
+ background: Beige;
+ color: black;
+ font-family: 'Times New Roman', serif
+ font-size: 110%;
+ margin: 0px 0px 0px 0px;
+}
+
+tr.cadre {
+ border-bottom: 3px solid Beige;
+}
+
+td.cadre {
+ border-left: 3px solid Beige;
+}
+
+a.cadre {
+ color: rgb(120,120,120);
+ text-decoration: none;
+}
+
+a.cadre:hover {
+ color: brown;
+ text-decoration: none;
+}
+
+a.cadre-selected {
+ color: brown;
+ text-decoration: none;
+}
+
+.ls input {
+ color: brown;
+ background-color: white;
+ font-family: 'Times New Roman', serif
+ font-size: 100%;
+ font-variant: small-caps;
+ font-weight: normal;
+ line-height: 100%;
+ margin: 0px 0px 0px 0px;
+ text-decoration: none;
+ border: none;
+ font-variant: small-caps;
+}
+
+.ls input:hover {
+ color: rgb(120,120,120);
+}
+
+.ls a {
+ color: blue;
+}
+
+.ls a:hover {
+ color: brown;
+}
More information about the vmkit-commits
mailing list