agent/src/share/classes/sun/jvm/hotspot/HotSpotAgent.java

Print this page
rev 9494 : 8073139: PPC64: User-visible arch directory and os.arch value on ppc64le cause issues with Java tooling
Contributed-by: Andrew Hughes gnu.andrew@redhat.com


 573         // FIXME: add support for server mode
 574     }
 575 
 576     private void setupJVMLibNamesWin32() {
 577         jvmLibNames = new String[] { "jvm.dll" };
 578     }
 579 
 580     //
 581     // Linux
 582     //
 583 
 584     private void setupDebuggerLinux() {
 585         setupJVMLibNamesLinux();
 586 
 587         if (cpu.equals("x86")) {
 588             machDesc = new MachineDescriptionIntelX86();
 589         } else if (cpu.equals("ia64")) {
 590             machDesc = new MachineDescriptionIA64();
 591         } else if (cpu.equals("amd64")) {
 592             machDesc = new MachineDescriptionAMD64();
 593         } else if (cpu.equals("ppc64")) {
 594             machDesc = new MachineDescriptionPPC64();
 595         } else if (cpu.equals("aarch64")) {
 596             machDesc = new MachineDescriptionAArch64();
 597         } else if (cpu.equals("sparc")) {
 598             if (LinuxDebuggerLocal.getAddressSize()==8) {
 599                     machDesc = new MachineDescriptionSPARC64Bit();
 600             } else {
 601                     machDesc = new MachineDescriptionSPARC32Bit();
 602             }
 603         } else {
 604           try {
 605             machDesc = (MachineDescription)
 606               Class.forName("sun.jvm.hotspot.debugger.MachineDescription" +
 607                             cpu.toUpperCase()).newInstance();
 608           } catch (Exception e) {
 609             throw new DebuggerException("Linux not supported on machine type " + cpu);
 610           }
 611         }
 612 
 613         LinuxDebuggerLocal dbg =




 573         // FIXME: add support for server mode
 574     }
 575 
 576     private void setupJVMLibNamesWin32() {
 577         jvmLibNames = new String[] { "jvm.dll" };
 578     }
 579 
 580     //
 581     // Linux
 582     //
 583 
 584     private void setupDebuggerLinux() {
 585         setupJVMLibNamesLinux();
 586 
 587         if (cpu.equals("x86")) {
 588             machDesc = new MachineDescriptionIntelX86();
 589         } else if (cpu.equals("ia64")) {
 590             machDesc = new MachineDescriptionIA64();
 591         } else if (cpu.equals("amd64")) {
 592             machDesc = new MachineDescriptionAMD64();
 593         } else if (cpu.equals("ppc64") || cpu.equals("ppc64le")) {
 594             machDesc = new MachineDescriptionPPC64();
 595         } else if (cpu.equals("aarch64")) {
 596             machDesc = new MachineDescriptionAArch64();
 597         } else if (cpu.equals("sparc")) {
 598             if (LinuxDebuggerLocal.getAddressSize()==8) {
 599                     machDesc = new MachineDescriptionSPARC64Bit();
 600             } else {
 601                     machDesc = new MachineDescriptionSPARC32Bit();
 602             }
 603         } else {
 604           try {
 605             machDesc = (MachineDescription)
 606               Class.forName("sun.jvm.hotspot.debugger.MachineDescription" +
 607                             cpu.toUpperCase()).newInstance();
 608           } catch (Exception e) {
 609             throw new DebuggerException("Linux not supported on machine type " + cpu);
 610           }
 611         }
 612 
 613         LinuxDebuggerLocal dbg =