Hi Vladimir, Nils attached the patch to the email, but I've put the patch at http://cr.openjdk.java.net/~ctornqvi/webrev/vs.patch also
Thanks, Christian -----Original Message----- From: hotspot-dev-boun...@openjdk.java.net [mailto:hotspot-dev-boun...@openjdk.java.net] On Behalf Of Vladimir Kozlov Sent: den 1 maj 2013 17:22 To: Nils Eliasson Cc: build-dev@openjdk.java.net; hotspot-dev developers; Christian Thalinger Subject: Re: RFR (M): 8008772: remove gamma launcher Nils, I don't see attached patch or webrev link. thanks, Vladimir On 5/1/13 1:41 PM, Nils Eliasson wrote: > Hi, > > Here is a patch that fixes so that it still works to create vcprojs, > and also sets defaults for the debugger commands. > > I have verified with creating vcprojs and debugging hotspot in VS 2010. > Works great except for an annoying pop-up that warns that the launcher > doesn't have debug symbols (if the target jdk doesn't). > > It will still be some extra work for those using the commandlines > plugin. All saved command lines need the be prepended with > "-XXaltjvm=$(TargetDir) -Dsun.java.launcher=gamma" and the target JDK > set as executable to work. We should update the plugin to help with that. > > A big thank you to Christian Törnqvist for the proposal! > > //Nils > > > On 2013-04-23 20:33, Mikael Gerdin wrote: >> >> On 2013-04-23 20:28, Christian Thalinger wrote: >>> >>> On Apr 23, 2013, at 11:06 AM, Nils Eliasson >>> <nils.elias...@oracle.com> wrote: >>> >>>> As long as we fix it first and remove gamma after - I would love to >>>> have some redundant code removed. I would fix it myself, I just >>>> don't think I will have the time before I go on parental leave. >>> >>> First, I'm not removing it tomorrow. I expected a long discussion >>> :-) >>> >>> What exactly is the problem with Visual Studio? Why can't you just >>> run the java launcher instead? >>> >> >> I don't know if there actually is a problem, but I don't think >> anyone's actually tried to tell it to use the java launcher. >> The VS project is automatically setup to launch "hotspot.exe" from >> the IDE. "hotspot.exe" is equivalent to the old option LINK_INTO=AOUT >> (IIRC) which involves linking all the VM object files into the launcher. >> >> Nils, perhaps you can at least try this before you leave? >> >> /Mikael >> >>> -- Chris >>> >>>> >>>> //Nils >>>> >>>> On 2013-04-23 12:59, Mikael Gerdin wrote: >>>>> >>>>> >>>>> On 2013-04-23 11:09, Nils Eliasson wrote: >>>>>> The gamma launcher is used to run and debug hotspot from Visual >>>>>> Studio. >>>>>> So removing gamma effectively kills the working environment for a >>>>>> number of people that use it daily. So I am strongly against >>>>>> removing it. >>>>> >>>>> Maybe the visual studio project generator could be updated to >>>>> create a a "launch configuration" for launching java.exe from a >>>>> JDK and use the XXaltJVM flag on to select the correct jvm.dll? >>>>> >>>>> I agree that we shouldn't break the visual studio project but >>>>> currently there's nothing indicating that we can't fix it. >>>>> >>>>> >>>>> /Mikael >>>>> >>>>>> >>>>>> Most people working on Windows use Cygwin as the last resort >>>>>> since it makes a lot of thing excruciatingly slow. >>>>>> >>>>>> //Nils >>>>>> >>>>>> On 2013-04-22 22:55, Christian Thalinger wrote: >>>>>>> On Apr 22, 2013, at 1:36 PM, Daniel D. Daugherty >>>>>>> <daniel.daughe...@oracle.com> wrote: >>>>>>> >>>>>>>> Chris, >>>>>>>> >>>>>>>> Just an observation and not a review. >>>>>>>> >>>>>>>> Looks like you're removing launcher support on Windows, but it >>>>>>>> looks like the new hotspot.script doesn't support Windows... >>>>>>>> Am I missing something? >>>>>>> Almost certainly true. Since I'm not a Windows user (and nobody >>>>>>> near me is one) I have no idea how people are using the gamma >>>>>>> launcher on Windows (or the hotspot script for that matter). >>>>>>> >>>>>>> I presume most people doing debugging on the command line are >>>>>>> already in cygwin? But I might be wrong. >>>>>>> >>>>>>> -- Chris >>>>>>> >>>>>>>> Dan >>>>>>>> >>>>>>>> >>>>>>>> On 4/22/13 1:47 PM, Christian Thalinger wrote: >>>>>>>>> http://cr.openjdk.java.net/~twisti/8008772/ >>>>>>>>> >>>>>>>>> 8008772: remove gamma launcher >>>>>>>>> Reviewed-by: >>>>>>>>> >>>>>>>>> Remove linking the gamma launcher and it's associated source >>>>>>>>> files. >>>>>>>>> >>>>>>>>> make/Makefile >>>>>>>>> make/bsd/makefiles/launcher.make make/bsd/makefiles/vm.make >>>>>>>>> make/hotspot.script make/linux/makefiles/launcher.make >>>>>>>>> make/linux/makefiles/vm.make >>>>>>>>> make/solaris/makefiles/launcher.make >>>>>>>>> make/solaris/makefiles/vm.make >>>>>>>>> make/windows/makefiles/debug.make >>>>>>>>> make/windows/makefiles/fastdebug.make >>>>>>>>> make/windows/makefiles/launcher.make >>>>>>>>> make/windows/makefiles/product.make >>>>>>>>> make/windows/makefiles/projectcreator.make >>>>>>>>> make/windows/projectfiles/common/Makefile >>>>>>>>> src/os/posix/launcher/java_md.c >>>>>>>>> src/os/posix/launcher/java_md.h >>>>>>>>> src/os/posix/launcher/launcher.script >>>>>>>>> src/os/windows/launcher/java_md.c >>>>>>>>> src/os/windows/launcher/java_md.h >>>>>>>>> src/share/tools/launcher/java.c >>>>>>>>> src/share/tools/launcher/java.h >>>>>>>>> src/share/tools/launcher/jli_util.c >>>>>>>>> src/share/tools/launcher/jli_util.h >>>>>>>>> src/share/tools/launcher/wildcard.c >>>>>>>>> src/share/tools/launcher/wildcard.h >>>>>>>>> >>>>>>>>> This change removes the duplicated java launcher files (which >>>>>>>>> were subject to bit-rot) and modifies the hotspot script to >>>>>>>>> pick up the libjvm in the current build directory. >>>>>>>>> >>>>>>>>> The modified hotspot script works with GDB and DBX: >>>>>>>>> >>>>>>>>> cthal...@intelsdv03.us.oracle.com:/export/twisti/build/8008772 >>>>>>>>> /build/linux_i486_compiler2/debug$ >>>>>>>>> >>>>>>>>> ./hotspot -gdb -version >>>>>>>>> GNU gdb (GDB) Red Hat Enterprise Linux (7.1-29.el6) Copyright >>>>>>>>> (C) 2010 Free Software Foundation, Inc. >>>>>>>>> License GPLv3+: GNU GPL version 3 or later >>>>>>>>> <http://gnu.org/licenses/gpl.html> >>>>>>>>> This is free software: you are free to change and redistribute it. >>>>>>>>> There is NO WARRANTY, to the extent permitted by law. Type >>>>>>>>> "show copying" >>>>>>>>> and "show warranty" for details. >>>>>>>>> This GDB was configured as "x86_64-redhat-linux-gnu". >>>>>>>>> For bug reporting instructions, please see: >>>>>>>>> <http://www.gnu.org/software/gdb/bugs/>. >>>>>>>>> Missing separate debuginfo for >>>>>>>>> /net/scanas404.us.oracle.com/export/java-re/jdk/8/ea/b86/binar >>>>>>>>> ies/linux-i586/bin/java >>>>>>>>> >>>>>>>>> >>>>>>>>> Try: yum --disablerepo='*' --enablerepo='*-debuginfo' install >>>>>>>>> /usr/lib/debug/.build-id/5e/85e6dced3b388a7b0e50630242f4c7ee5e >>>>>>>>> 31a3.debug >>>>>>>>> >>>>>>>>> >>>>>>>>> Function "JNI_CreateJavaVM" not defined. >>>>>>>>> Breakpoint 1 (JNI_CreateJavaVM) pending. >>>>>>>>> [Thread debugging using libthread_db enabled] [New Thread >>>>>>>>> 0xf7fe4b70 (LWP 13459)] [Switching to Thread 0xf7fe4b70 (LWP >>>>>>>>> 13459)] >>>>>>>>> >>>>>>>>> Breakpoint 1, JNI_CreateJavaVM (vm=0xf7fe4378, >>>>>>>>> penv=0xf7fe4374, >>>>>>>>> args=0xf7fe4364) >>>>>>>>> at >>>>>>>>> /net/10.159.161.234/Users/cthaling/ws/8008772/src/share/vm/pri >>>>>>>>> ms/jni.cpp:5062 >>>>>>>>> >>>>>>>>> >>>>>>>>> 5062 jint result = JNI_ERR; >>>>>>>>> Missing separate debuginfos, use: debuginfo-install >>>>>>>>> glibc-2.12-1.7.el6.i686 >>>>>>>>> (gdb) break CompileBroker::compile_method Breakpoint 2 at >>>>>>>>> 0xaef852: file >>>>>>>>> /net/10.159.161.234/Users/cthaling/ws/8008772/src/share/vm/com >>>>>>>>> piler/compileBroker.cpp, >>>>>>>>> >>>>>>>>> line 1205. >>>>>>>>> (gdb) c >>>>>>>>> Continuing. >>>>>>>>> [New Thread 0xf7f93b70 (LWP 13460)] [New Thread 0xb4398b70 >>>>>>>>> (LWP 13461)] [New Thread 0xb41ffb70 (LWP 13462)] [New Thread >>>>>>>>> 0xb3effb70 (LWP 13463)] [New Thread 0xb3cffb70 (LWP 13464)] >>>>>>>>> [New Thread 0xb3affb70 (LWP 13465)] [New Thread 0xb38ffb70 >>>>>>>>> (LWP 13466)] [New Thread 0xb36ffb70 (LWP 13467)] [New Thread >>>>>>>>> 0xb34ffb70 (LWP 13468)] [New Thread 0xb32ffb70 (LWP 13469)] >>>>>>>>> [New Thread 0xb30ffb70 (LWP 13470)] [New Thread 0xb2effb70 >>>>>>>>> (LWP 13471)] [New Thread 0xb2cffb70 (LWP 13472)] [New Thread >>>>>>>>> 0xaf8e8b70 (LWP 13473)] [New Thread 0xb4156b70 (LWP 13474)] >>>>>>>>> [New Thread 0xb3c7eb70 (LWP 13475)] [New Thread 0xb3a7eb70 >>>>>>>>> (LWP 13476)] [New Thread 0xaeeffb70 (LWP 13477)] [New Thread >>>>>>>>> 0xaecffb70 (LWP 13478)] [New Thread 0xb387eb70 (LWP 13479)] >>>>>>>>> [New Thread 0xaeaffb70 (LWP 13480)] java version "1.8.0-ea" >>>>>>>>> Java(TM) SE Runtime Environment (build 1.8.0-ea-b86) Java >>>>>>>>> HotSpot(TM) Server VM (build 25.0-b29-internal-debug, mixed >>>>>>>>> mode) [Thread 0xaeaffb70 (LWP 13480) exited] [Thread >>>>>>>>> 0xb3a7eb70 (LWP 13476) exited] [Thread 0xaf8e8b70 (LWP 13473) >>>>>>>>> exited] [Thread 0xf7fe4b70 (LWP 13459) exited] [Thread >>>>>>>>> 0xb2cffb70 (LWP 13472) exited] [Thread 0xb2effb70 (LWP 13471) >>>>>>>>> exited] [Thread 0xaecffb70 (LWP 13478) exited] [Thread >>>>>>>>> 0xb387eb70 (LWP 13479) exited] [Thread 0xaeeffb70 (LWP 13477) >>>>>>>>> exited] [Thread 0xb3c7eb70 (LWP 13475) exited] [Thread >>>>>>>>> 0xb4156b70 (LWP 13474) exited] [Thread 0xb32ffb70 (LWP 13469) >>>>>>>>> exited] [Thread 0xb34ffb70 (LWP 13468) exited] [Thread >>>>>>>>> 0xb36ffb70 (LWP 13467) exited] [Thread 0xb38ffb70 (LWP 13466) >>>>>>>>> exited] [Thread 0xb3affb70 (LWP 13465) exited] [Thread >>>>>>>>> 0xb3cffb70 (LWP 13464) exited] [Thread 0xb3effb70 (LWP 13463) >>>>>>>>> exited] [Thread 0xb41ffb70 (LWP 13462) exited] [Thread >>>>>>>>> 0xb4398b70 (LWP 13461) exited] [Thread 0xf7f93b70 (LWP 13460) >>>>>>>>> exited] [Thread 0xb30ffb70 (LWP 13470) exited] >>>>>>>>> >>>>>>>>> Program exited normally. >>>>>>>>> (gdb) >>>>>>>>> >>>>>>>>> >>>>>>>>> cthaling@intelsdv01:/export/twisti/build/8008772/build/solaris >>>>>>>>> _i486_compiler2/debug$ >>>>>>>>> >>>>>>>>> /bin/bash ./hotspot -dbx -version >>>>>>>>> dbx: warning: using the alternate init file: >>>>>>>>> /home/cthaling/.dbxrc Reading java Reading ld.so.1 Reading >>>>>>>>> libjli.so Reading libthread.so.1 Reading libdl.so.1 Reading >>>>>>>>> libc.so.1 Reading libjvm.so Loaded loadobject: >>>>>>>>> /export/twisti/build/8008772/build/solaris_i486_compiler2/debu >>>>>>>>> g/libjvm.so >>>>>>>>> >>>>>>>>> >>>>>>>>> Running: java -Dsun.java.launcher=gamma >>>>>>>>> -XXaltjvm=/export/twisti/build/8008772/build/solaris_i486_comp >>>>>>>>> iler2/debug >>>>>>>>> >>>>>>>>> -version >>>>>>>>> (process id 29613) >>>>>>>>> Reading libsocket.so.1 >>>>>>>>> Reading libsched.so.1 >>>>>>>>> Reading libm.so.1 >>>>>>>>> Reading libCrun.so.1 >>>>>>>>> Reading libdoor.so.1 >>>>>>>>> Reading libdemangle.so.1 >>>>>>>>> Reading libnsl.so.1 >>>>>>>>> Reading libm.so.2 >>>>>>>>> Reading libscf.so.1 >>>>>>>>> Reading libuutil.so.1 >>>>>>>>> Reading libgen.so.1 >>>>>>>>> Reading libmd.so.1 >>>>>>>>> Reading libmp.so.2 >>>>>>>>> t@2 (l@2) stopped in JNI_CreateJavaVM at line 5062 in file >>>>>>>>> "jni.cpp" >>>>>>>>> 5062 jint result = JNI_ERR; >>>>>>>>> (dbx) stop in CompileBroker::compile_method >>>>>>>>> (2) stop in >>>>>>>>> CompileBroker::compile_method(methodHandle,int,int,methodHandl >>>>>>>>> e,int,const >>>>>>>>> >>>>>>>>> char*,Thread*) >>>>>>>>> (dbx) c >>>>>>>>> Reading libverify.so >>>>>>>>> Reading libjava.so >>>>>>>>> Reading libzip.so >>>>>>>>> java version "1.8.0-ea" >>>>>>>>> Java(TM) SE Runtime Environment (build 1.8.0-ea-b86) Java >>>>>>>>> HotSpot(TM) Server VM (build 25.0-b29-internal-debug, mixed >>>>>>>>> mode) >>>>>>>>> >>>>>>>>> execution completed, exit code is 0 >>>>>>>>> (dbx) >>>>>>>>> >>>>>> >>>> >>> >