[vmkit-commits] [vmkit] r116307 - in /vmkit/trunk: ./ Makefile.rules autoconf/configure.ac configure include/mvm/VirtualMachine.h lib/J3/Classpath/ClasspathVMSystemProperties.inc lib/J3/VMCore/LinkJavaRuntime.h lib/Mvm/Runtime/Object.cpp mmtk/java/Makefile mmtk/java/build.xml.in
Nicolas Geoffray
nicolas.geoffray at lip6.fr
Tue Oct 12 08:34:50 PDT 2010
Author: geoffray
Date: Tue Oct 12 10:34:50 2010
New Revision: 116307
URL: http://llvm.org/viewvc/llvm-project?rev=116307&view=rev
Log:
Merge with release 0.28 changes.
Modified:
vmkit/trunk/ (props changed)
vmkit/trunk/Makefile.rules
vmkit/trunk/autoconf/configure.ac
vmkit/trunk/configure
vmkit/trunk/include/mvm/VirtualMachine.h
vmkit/trunk/lib/J3/Classpath/ClasspathVMSystemProperties.inc
vmkit/trunk/lib/J3/VMCore/LinkJavaRuntime.h
vmkit/trunk/lib/Mvm/Runtime/Object.cpp
vmkit/trunk/mmtk/java/Makefile
vmkit/trunk/mmtk/java/build.xml.in
Propchange: vmkit/trunk/
------------------------------------------------------------------------------
svn:mergeinfo = /vmkit/branches/release_028:115466-116298
Modified: vmkit/trunk/Makefile.rules
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.rules?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/Makefile.rules (original)
+++ vmkit/trunk/Makefile.rules Tue Oct 12 10:34:50 2010
@@ -131,10 +131,10 @@
ADDITIONAL_ARGS := -load-bc=$(LibDir)/MMTKRuntime.bc
all::
- $(Verb) $(ANT) -buildfile $(PROJ_SRC_ROOT)/mmtk/java/build.xml
+ $(Verb) $(ANT) -buildfile $(PROJ_OBJ_ROOT)/mmtk/java/build.xml
$(Echo) Building $(BuildMode) $(JARNAME).jar $(notdir $@)
$(Verb) $(LOPT) -load=$(LibDir)/JITGCPass$(SHLIBEXT) -std-compile-opts -JITGCPass -f $(LibDir)/MMTKAlloc.bc -o $(LibDir)/MMTKAlloc.bc
- $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_SRC_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy
+ $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_OBJ_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy
$(Verb) $(LOPT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -std-compile-opts -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc
$(Verb) $(LLVMLD) -r -o $(LibDir)/FinalMMTk.bc $(LibDir)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LibDir)/MMTKRuntime.bc
$(Verb) $(LOPT) -std-compile-opts $(LibDir)/FinalMMTk.bc -o $(LibDir)/FinalMMTk.bc
Modified: vmkit/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/autoconf/configure.ac?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/autoconf/configure.ac (original)
+++ vmkit/trunk/autoconf/configure.ac Tue Oct 12 10:34:50 2010
@@ -31,7 +31,7 @@
dnl===-----------------------------------------------------------------------===
dnl Initialize autoconf and define the package name, version number and
dnl email address for reporting bugs.
-AC_INIT([vmkit],[0.28svn],[nicolas.geoffray at gmail.com])
+AC_INIT([vmkit],[0.29svn],[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.
@@ -624,8 +624,6 @@
AC_CONFIG_FILES(Makefile.common)
AC_CONFIG_FILES(Makefile.config)
AC_CONFIG_FILES([lib/J3/Classpath/Classpath.h])
-AC_CONFIG_FILES([lib/N3/PNetLib/PNetPath.inc])
-AC_CONFIG_FILES([lib/N3/Mono/MonoPath.inc])
AC_CONFIG_FILES([tools/llcj/LinkPaths.h])
AC_CONFIG_FILES([mmtk/java/build.xml])
Modified: vmkit/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/configure?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/configure (original)
+++ vmkit/trunk/configure Tue Oct 12 10:34:50 2010
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.65 for vmkit 0.28svn.
+# Generated by GNU Autoconf 2.65 for vmkit 0.29svn.
#
# Report bugs to <nicolas.geoffray at gmail.com>.
#
@@ -554,8 +554,8 @@
# Identity of this package.
PACKAGE_NAME='vmkit'
PACKAGE_TARNAME='vmkit'
-PACKAGE_VERSION='0.28svn'
-PACKAGE_STRING='vmkit 0.28svn'
+PACKAGE_VERSION='0.29svn'
+PACKAGE_STRING='vmkit 0.29svn'
PACKAGE_BUGREPORT='nicolas.geoffray at gmail.com'
PACKAGE_URL=''
@@ -1289,7 +1289,7 @@
# 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.28svn to adapt to many kinds of systems.
+\`configure' configures vmkit 0.29svn to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1355,7 +1355,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of vmkit 0.28svn:";;
+ short | recursive ) echo "Configuration of vmkit 0.29svn:";;
esac
cat <<\_ACEOF
@@ -1470,7 +1470,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-vmkit configure 0.28svn
+vmkit configure 0.29svn
generated by GNU Autoconf 2.65
Copyright (C) 2009 Free Software Foundation, Inc.
@@ -1935,7 +1935,7 @@
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.28svn, which was
+It was created by vmkit $as_me 0.29svn, which was
generated by GNU Autoconf 2.65. Invocation command line was
$ $0 $@
@@ -6131,10 +6131,6 @@
ac_config_files="$ac_config_files lib/J3/Classpath/Classpath.h"
-ac_config_files="$ac_config_files lib/N3/PNetLib/PNetPath.inc"
-
-ac_config_files="$ac_config_files lib/N3/Mono/MonoPath.inc"
-
ac_config_files="$ac_config_files tools/llcj/LinkPaths.h"
ac_config_files="$ac_config_files mmtk/java/build.xml"
@@ -6653,7 +6649,7 @@
# 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.28svn, which was
+This file was extended by vmkit $as_me 0.29svn, which was
generated by GNU Autoconf 2.65. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -6719,7 +6715,7 @@
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.28svn
+vmkit config.status 0.29svn
configured by $0, generated by GNU Autoconf 2.65,
with options \\"\$ac_cs_config\\"
@@ -6845,8 +6841,6 @@
"Makefile.common") CONFIG_FILES="$CONFIG_FILES Makefile.common" ;;
"Makefile.config") CONFIG_FILES="$CONFIG_FILES Makefile.config" ;;
"lib/J3/Classpath/Classpath.h") CONFIG_FILES="$CONFIG_FILES lib/J3/Classpath/Classpath.h" ;;
- "lib/N3/PNetLib/PNetPath.inc") CONFIG_FILES="$CONFIG_FILES lib/N3/PNetLib/PNetPath.inc" ;;
- "lib/N3/Mono/MonoPath.inc") CONFIG_FILES="$CONFIG_FILES lib/N3/Mono/MonoPath.inc" ;;
"tools/llcj/LinkPaths.h") CONFIG_FILES="$CONFIG_FILES tools/llcj/LinkPaths.h" ;;
"mmtk/java/build.xml") CONFIG_FILES="$CONFIG_FILES mmtk/java/build.xml" ;;
"Makefile") CONFIG_COMMANDS="$CONFIG_COMMANDS Makefile" ;;
Modified: vmkit/trunk/include/mvm/VirtualMachine.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/VirtualMachine.h?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/include/mvm/VirtualMachine.h (original)
+++ vmkit/trunk/include/mvm/VirtualMachine.h Tue Oct 12 10:34:50 2010
@@ -400,14 +400,17 @@
ToEnqueue[ToEnqueueIndex++] = obj;
}
-protected:
+public:
/// invokeFinalizer - Invoke the finalizer of the object. This may involve
/// changing the environment, e.g. going to native to Java.
///
virtual void invokeFinalizer(gc*) {}
-
-
-public:
+
+ /// enqueueReference - Calls the enqueue method. Should be overriden
+ /// by the VM.
+ ///
+ virtual bool enqueueReference(gc*) { return false; }
+
/// finalizerStart - The start function of a finalizer. Will poll the
/// finalizationQueue.
///
@@ -505,12 +508,6 @@
/// by the VM.
virtual void setReferent(gc* reference, gc* referent) { }
- /// enqueueReference - Calls the enqueue method. Should be overriden
- /// by the VM.
- ///
- virtual bool enqueueReference(gc*) { return false; }
-
-
public:
/// scanner - Scanner of threads' stacks.
Modified: vmkit/trunk/lib/J3/Classpath/ClasspathVMSystemProperties.inc
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Classpath/ClasspathVMSystemProperties.inc?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/Classpath/ClasspathVMSystemProperties.inc (original)
+++ vmkit/trunk/lib/J3/Classpath/ClasspathVMSystemProperties.inc Tue Oct 12 10:34:50 2010
@@ -92,7 +92,7 @@
setProperty(vm, prop, "java.class.path", vm->classpath);
setProperty(vm, prop, "java.boot.class.path", JCL->bootClasspathEnv);
setProperty(vm, prop, "sun.boot.class.path", JCL->bootClasspathEnv);
- setProperty(vm, prop, "java.vm.version", "0.27");
+ setProperty(vm, prop, "java.vm.version", "0.28");
setProperty(vm, prop, "java.vm.vendor", "The VMKit Project");
setProperty(vm, prop, "java.vm.name", "J3");
setProperty(vm, prop, "java.specification.version", "1.5");
Modified: vmkit/trunk/lib/J3/VMCore/LinkJavaRuntime.h
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/LinkJavaRuntime.h?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/lib/J3/VMCore/LinkJavaRuntime.h (original)
+++ vmkit/trunk/lib/J3/VMCore/LinkJavaRuntime.h Tue Oct 12 10:34:50 2010
@@ -80,7 +80,7 @@
#endif
-namespace {
+namespace force_linker {
struct ForceRuntimeLinking {
ForceRuntimeLinking() {
// We must reference the passes in such a way that compilers will not
Modified: vmkit/trunk/lib/Mvm/Runtime/Object.cpp
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Runtime/Object.cpp?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/lib/Mvm/Runtime/Object.cpp (original)
+++ vmkit/trunk/lib/Mvm/Runtime/Object.cpp Tue Oct 12 10:34:50 2010
@@ -61,6 +61,21 @@
typedef void (*destructor_t)(void*);
+void invokeFinalize(mvm::Thread* th, gc* res) {
+ llvm_gcroot(res, 0);
+ TRY {
+ th->MyVM->invokeFinalizer(res);
+ } IGNORE;
+ th->clearException();
+}
+
+void invokeEnqueue(mvm::Thread* th, gc* res) {
+ llvm_gcroot(res, 0);
+ TRY {
+ th->MyVM->enqueueReference(res);
+ } IGNORE;
+ th->clearException();
+}
void VirtualMachine::finalizerStart(mvm::Thread* th) {
VirtualMachine* vm = th->MyVM;
@@ -83,17 +98,14 @@
vm->FinalizationQueueLock.release();
if (!res) break;
- TRY {
- VirtualTable* VT = res->getVirtualTable();
- if (VT->operatorDelete) {
- destructor_t dest = (destructor_t)VT->destructor;
- dest(res);
- } else {
- vm->invokeFinalizer(res);
- }
- } IGNORE;
+ VirtualTable* VT = res->getVirtualTable();
+ if (VT->operatorDelete) {
+ destructor_t dest = (destructor_t)VT->destructor;
+ dest(res);
+ } else {
+ invokeFinalize(th, res);
+ }
res = 0;
- th->clearException();
}
}
}
@@ -119,11 +131,8 @@
vm->ToEnqueueLock.release();
if (!res) break;
- TRY {
- vm->enqueueReference(res);
- } IGNORE;
+ invokeEnqueue(th, res);
res = 0;
- th->clearException();
}
}
}
Modified: vmkit/trunk/mmtk/java/Makefile
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/java/Makefile?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/mmtk/java/Makefile (original)
+++ vmkit/trunk/mmtk/java/Makefile Tue Oct 12 10:34:50 2010
@@ -12,6 +12,6 @@
RUN_ANT = 1
JARNAME = mmtk-vmkit
-EXTRA_DIST = vmkit.properties build.xml src
+EXTRA_DIST = vmkit.properties build.xml.in src
include $(LEVEL)/Makefile.common
Modified: vmkit/trunk/mmtk/java/build.xml.in
URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/java/build.xml.in?rev=116307&r1=116306&r2=116307&view=diff
==============================================================================
--- vmkit/trunk/mmtk/java/build.xml.in (original)
+++ vmkit/trunk/mmtk/java/build.xml.in Tue Oct 12 10:34:50 2010
@@ -1,7 +1,7 @@
<project name="MMTK-VMKit" default="main" basedir=".">
<target name="main">
<mkdir dir="classes"/>
- <javac srcdir="src:../config/@MMTK_PLAN@" destdir="classes" source="1.5"/>
+ <javac srcdir="@abs_top_srcdir@/mmtk/java/src:@abs_top_srcdir@/mmtk/config/@MMTK_PLAN@" destdir="classes" source="1.5"/>
<jar jarfile="mmtk-vmkit.jar">
<fileset dir="classes"/>
</jar>
More information about the vmkit-commits
mailing list