This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA\JVMTI] Implement GetAllThreads


And here the right patch...


Marco Trudel wrote:
Kyle Galloway wrote:
Tom Tromey wrote:
"Kyle" == Kyle Galloway <kgallowa@redhat.com> writes:

Kyle> I have made a change here to avoid the security manager check by
Kyle> accessing the root thread group directly. I have also created a jar
Kyle> and header file for the test as requested.


Looks good, please check in.
Committed.

That breaks at least cross-compilation for host=Linux target=minGW:


/home/Marco/Desktop/compile-lin-win/gcc-build/./gcc/xgcc -shared-libgcc -B/home/Marco/Desktop/compile-lin-win/gcc-build/./gcc -nostdinc++ -L/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/libstdc++-v3/src -L/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/libstdc++-v3/src/.libs -L/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/winsup/mingw -L/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/winsup/w32api/lib -isystem /usr/local/src/gcc/winsup/mingw/include -isystem /usr/local/src/gcc/winsup/w32api/include -B/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/i686-pc-mingw32/bin/ -B/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/i686-pc-mingw32/lib/ -isystem /home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/i686-pc-mingw32/include -isystem /home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/i686-pc-mingw32/sys-include -DHAVE_CONFIG_H -I. -I/usr/local/src/gcc/libjava -I./include -I./gcj -I/usr/local/src/gcc/libjava -Iinclude -I/usr/local/src/gcc/libjava/include -I/usr/local/src/gcc/libjava/classpath/include -Iclasspath/include -I/usr/local/src/gcc/libjava/classpath/native/fdlibm -I/usr/local/src/gcc/libjava/../boehm-gc/include -I../boehm-gc/include -I/usr/local/src/gcc/libjava/libltdl -I/usr/local/src/gcc/libjava/libltdl -I/usr/local/src/gcc/libjava/.././libjava/../gcc -I/usr/local/src/gcc/libjava/../zlib -I/usr/local/src/gcc/libjava/../libffi/include -I../libffi/include -fno-rtti -fnon-call-exceptions -mthreads -fdollars-in-identifiers -Wswitch-enum -D_FILE_OFFSET_BITS=64 -ffloat-store -fomit-frame-pointer -fno-omit-frame-pointer -Wextra -Wall -D_GNU_SOURCE -DPREFIX=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win\" -DTOOLEXECLIBDIR=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/i686-pc-mingw32/lib\" -DJAVA_HOME=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win\" -DBOOT_CLASS_PATH=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/share/java/libgcj-4.3.0.jar\" -DJAVA_EXT_DIRS=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/share/java/ext\" -DGCJ_ENDORSED_DIRS=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/share/java/gcj-endorsed\" -DGCJ_VERSIONED_LIBDIR=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/lib/gcj-4.3.0\" -DPATH_SEPARATOR=\":\" -DLIBGCJ_DEFAULT_DATABASE=\"/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/lib/gcj-4.3.0/classmap.db\" -DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL=\"gcj-4.3.0/classmap.db\" -g -O2 --sysroot=/home/Marco/Desktop/compile-lin-win/gcc-XYZXYZ-win/sys-root -MT jvmti.lo -MD -MP -MF .deps/jvmti.Tpo -c /usr/local/src/gcc/libjava/jvmti.cc -o jvmti.o
/usr/local/src/gcc/libjava/jvmti.cc: In function 'jvmtiError _Jv_JVMTI_GetAllThreads(jvmtiEnv*, jint*, java::lang::Object***)':
/usr/local/src/gcc/libjava/jvmti.cc:210: warning: unused variable 'thr'
/usr/local/src/gcc/libjava/jvmti.cc: At global scope:
/usr/local/src/gcc/libjava/jvmti.cc:1563: error: invalid conversion from 'jvmtiError (*)(jvmtiEnv*, jint*, java::lang::Object***)' to 'jvmtiError (*)(jvmtiEnv*, jint*, java::lang::Object***)'
make[3]: *** [jvmti.lo] Error 1
make[3]: Leaving directory `/home/Marco/Desktop/compile-lin-win/gcc-build/i686-pc-mingw32/libjava'


I suggest to apply the attached patch.


Marco



------------------------------------------------------------------------


Index: Makefile.am
===================================================================
--- Makefile.am (revision 120638)
+++ Makefile.am (working copy)
@@ -670,7 +670,7 @@
ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) -Djava.class.path=$(ECJ_JAR)
else !ENABLE_SHARED
## Use ecj.jar at compile time.
-ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR) -fbootclasspath=$(BOOTCLASSPATH)
endif !ENABLE_SHARED
ecjx_LDADD = -L$(here)/.libs libgcj.la

Index: /usr/local/src/gcc/libjava/jvmti.cc
===================================================================
--- /usr/local/src/gcc/libjava/jvmti.cc	(revision 120828)
+++ /usr/local/src/gcc/libjava/jvmti.cc	(working copy)
@@ -198,7 +198,7 @@
   return JVMTI_ERROR_NONE;
 }
 
-jvmtiError
+static jvmtiError JNICALL
 _Jv_JVMTI_GetAllThreads(MAYBE_UNUSED jvmtiEnv *env, jint *thread_cnt,
                         jthread **threads)
 {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]