Fri, 16 May 2008 13:42:07 -0700
Merge
agent/src/share/classes/sun/jvm/hotspot/HSDB.java | file | annotate | diff | comparison | revisions | |
src/share/vm/runtime/vmStructs.cpp | file | annotate | diff | comparison | revisions |
1.1 --- a/.hgtags Thu May 15 22:43:11 2008 -0700 1.2 +++ b/.hgtags Fri May 16 13:42:07 2008 -0700 1.3 @@ -1,2 +1,3 @@ 1.4 a61af66fc99eb5ec9d50c05b0c599757b1289ceb jdk7-b24 1.5 7836be3e92d0a4f9ee7566f602c91f5609534e66 jdk7-b25 1.6 +ad0b851458ff9d1d490ed2d79bb84f75a9fdb753 jdk7-b26
2.1 --- a/agent/make/Makefile Thu May 15 22:43:11 2008 -0700 2.2 +++ b/agent/make/Makefile Fri May 16 13:42:07 2008 -0700 2.3 @@ -246,16 +246,16 @@ 2.4 all: filelist 2.5 @mkdir -p $(OUTPUT_DIR) 2.6 @echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES) 2.7 - @javac -source 1.4 -classpath $(CLASSPATH) -deprecation -sourcepath $(SRC_DIR) -g -d $(OUTPUT_DIR) @filelist 2.8 - @rmic -classpath $(OUTPUT_DIR) -d $(OUTPUT_DIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer 2.9 + @${JDK_HOME}/bin/javac -source 1.4 -classpath $(CLASSPATH) -deprecation -sourcepath $(SRC_DIR) -g -d $(OUTPUT_DIR) @filelist 2.10 + @${JDK_HOME}/bin/rmic -classpath $(OUTPUT_DIR) -d $(OUTPUT_DIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer 2.11 rm -f $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql/sa.js 2.12 cp $(SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql 2.13 2.14 allprof: filelist 2.15 @mkdir -p $(OUTPUT_DIR) 2.16 @echo "$(SA_BUILD_VERSION_PROP)" > $(SA_PROPERTIES) 2.17 - @javac -source 1.4 -J-Xprof -classpath $(CLASSPATH) -deprecation -sourcepath $(SRC_DIR) -g -d $(OUTPUT_DIR) @filelist 2.18 - @rmic -classpath $(OUTPUT_DIR) -d $(OUTPUT_DIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer 2.19 + @${JDK_HOME}/bin/javac -source 1.4 -J-Xprof -classpath $(CLASSPATH) -deprecation -sourcepath $(SRC_DIR) -g -d $(OUTPUT_DIR) @filelist 2.20 + @${JDK_HOME}/bin/rmic -classpath $(OUTPUT_DIR) -d $(OUTPUT_DIR) sun.jvm.hotspot.debugger.remote.RemoteDebuggerServer 2.21 rm -f $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql/sa.js 2.22 cp $(SRC_DIR)/sun/jvm/hotspot/utilities/soql/sa.js $(OUTPUT_DIR)/sun/jvm/hotspot/utilities/soql 2.23
3.1 --- a/agent/src/share/classes/sun/jvm/hotspot/HSDB.java Thu May 15 22:43:11 2008 -0700 3.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/HSDB.java Fri May 16 13:42:07 2008 -0700 3.3 @@ -398,7 +398,7 @@ 3.4 frame.getContentPane().add(desktop); 3.5 GraphicsUtilities.reshapeToAspectRatio(frame, 4.0f/3.0f, 0.75f, Toolkit.getDefaultToolkit().getScreenSize()); 3.6 GraphicsUtilities.centerInContainer(frame, Toolkit.getDefaultToolkit().getScreenSize()); 3.7 - frame.show(); 3.8 + frame.setVisible(true); 3.9 3.10 Runtime.getRuntime().addShutdownHook(new java.lang.Thread() { 3.11 public void run() {
4.1 --- a/agent/src/share/classes/sun/jvm/hotspot/SALauncherLoader.java Thu May 15 22:43:11 2008 -0700 4.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/SALauncherLoader.java Fri May 16 13:42:07 2008 -0700 4.3 @@ -148,7 +148,7 @@ 4.4 } 4.5 4.6 try { 4.7 - return file.toURL(); 4.8 + return file.toURI().toURL(); 4.9 } catch (MalformedURLException mue) { 4.10 throw new InternalError(mue.getMessage()); 4.11 }
5.1 --- a/agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java Thu May 15 22:43:11 2008 -0700 5.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/bugspot/Main.java Fri May 16 13:42:07 2008 -0700 5.3 @@ -47,6 +47,6 @@ 5.4 4.0f/3.0f, 0.85f, Toolkit.getDefaultToolkit().getScreenSize()); 5.5 GraphicsUtilities.centerInContainer(frame, 5.6 Toolkit.getDefaultToolkit().getScreenSize()); 5.7 - frame.show(); 5.8 + frame.setVisible(true); 5.9 } 5.10 }
6.1 --- a/agent/src/share/classes/sun/jvm/hotspot/jdi/SAJDIClassLoader.java Thu May 15 22:43:11 2008 -0700 6.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/jdi/SAJDIClassLoader.java Fri May 16 13:42:07 2008 -0700 6.3 @@ -78,7 +78,7 @@ 6.4 this(parent); 6.5 this.classPathSet = true; 6.6 try { 6.7 - addURL(new File(classPath).toURL()); 6.8 + addURL(new File(classPath).toURI().toURL()); 6.9 } catch(MalformedURLException mue) { 6.10 throw new RuntimeException(mue); 6.11 }
7.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 7.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/memory/BinaryTreeDictionary.java Fri May 16 13:42:07 2008 -0700 7.3 @@ -0,0 +1,59 @@ 7.4 +/* 7.5 + * @(#)BinaryTreeDictionary.java 7.6 + * Copyright 2000-2007 Sun Microsystems, Inc. All Rights Reserved. 7.7 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 7.8 + * 7.9 + * This code is free software; you can redistribute it and/or modify it 7.10 + * under the terms of the GNU General Public License version 2 only, as 7.11 + * published by the Free Software Foundation. 7.12 + * 7.13 + * This code is distributed in the hope that it will be useful, but WITHOUT 7.14 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 7.15 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 7.16 + * version 2 for more details (a copy is included in the LICENSE file that 7.17 + * accompanied this code). 7.18 + * 7.19 + * You should have received a copy of the GNU General Public License version 7.20 + * 2 along with this work; if not, write to the Free Software Foundation, 7.21 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 7.22 + * 7.23 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 7.24 + * CA 95054 USA or visit www.sun.com if you need additional information or 7.25 + * have any questions. 7.26 + * 7.27 + */ 7.28 + 7.29 +package sun.jvm.hotspot.memory; 7.30 + 7.31 +import java.util.*; 7.32 +import sun.jvm.hotspot.debugger.*; 7.33 +import sun.jvm.hotspot.types.*; 7.34 +import sun.jvm.hotspot.runtime.*; 7.35 + 7.36 +public class BinaryTreeDictionary extends VMObject { 7.37 + static { 7.38 + VM.registerVMInitializedObserver(new Observer() { 7.39 + public void update(Observable o, Object data) { 7.40 + initialize(VM.getVM().getTypeDataBase()); 7.41 + } 7.42 + }); 7.43 + } 7.44 + 7.45 + private static synchronized void initialize(TypeDataBase db) { 7.46 + Type type = db.lookupType("BinaryTreeDictionary"); 7.47 + totalSizeField = type.getCIntegerField("_totalSize"); 7.48 + } 7.49 + 7.50 + // Fields 7.51 + private static CIntegerField totalSizeField; 7.52 + 7.53 + // Accessors 7.54 + public long size() { 7.55 + return totalSizeField.getValue(addr); 7.56 + } 7.57 + 7.58 + // Constructor 7.59 + public BinaryTreeDictionary(Address addr) { 7.60 + super(addr); 7.61 + } 7.62 +}
8.1 --- a/agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java Thu May 15 22:43:11 2008 -0700 8.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/memory/CompactibleFreeListSpace.java Fri May 16 13:42:07 2008 -0700 8.3 @@ -35,6 +35,20 @@ 8.4 public class CompactibleFreeListSpace extends CompactibleSpace { 8.5 private static AddressField collectorField; 8.6 8.7 + // for free size, three fields 8.8 + // FreeBlockDictionary* _dictionary; // ptr to dictionary for large size blocks 8.9 + // FreeList _indexedFreeList[IndexSetSize]; // indexed array for small size blocks 8.10 + // LinearAllocBlock _smallLinearAllocBlock; // small linear alloc in TLAB 8.11 + private static AddressField indexedFreeListField; 8.12 + private static AddressField dictionaryField; 8.13 + private static long smallLinearAllocBlockFieldOffset; 8.14 + private static long indexedFreeListSizeOf; 8.15 + 8.16 + private int heapWordSize; // 4 for 32bit, 8 for 64 bits 8.17 + private int IndexSetStart; // for small indexed list 8.18 + private int IndexSetSize; 8.19 + private int IndexSetStride; 8.20 + 8.21 static { 8.22 VM.registerVMInitializedObserver(new Observer() { 8.23 public void update(Observable o, Object data) { 8.24 @@ -51,10 +65,26 @@ 8.25 8.26 Type type = db.lookupType("CompactibleFreeListSpace"); 8.27 collectorField = type.getAddressField("_collector"); 8.28 + collectorField = type.getAddressField("_collector"); 8.29 + dictionaryField = type.getAddressField("_dictionary"); 8.30 + indexedFreeListField = type.getAddressField("_indexedFreeList[0]"); 8.31 + smallLinearAllocBlockFieldOffset = type.getField("_smallLinearAllocBlock").getOffset(); 8.32 } 8.33 8.34 public CompactibleFreeListSpace(Address addr) { 8.35 super(addr); 8.36 + if ( VM.getVM().isLP64() ) { 8.37 + heapWordSize = 8; 8.38 + IndexSetStart = 1; 8.39 + IndexSetStride = 1; 8.40 + } 8.41 + else { 8.42 + heapWordSize = 4; 8.43 + IndexSetStart = 2; 8.44 + IndexSetStride = 2; 8.45 + } 8.46 + 8.47 + IndexSetSize = 257; 8.48 } 8.49 8.50 // Accessing block offset table 8.51 @@ -62,9 +92,17 @@ 8.52 return (CMSCollector) VMObjectFactory.newObject( 8.53 CMSCollector.class, 8.54 collectorField.getValue(addr)); 8.55 - } 8.56 + } 8.57 + 8.58 + public long free0() { 8.59 + return capacity() - used0(); 8.60 + } 8.61 8.62 public long used() { 8.63 + return capacity() - free(); 8.64 + } 8.65 + 8.66 + public long used0() { 8.67 List regions = getLiveRegions(); 8.68 long usedSize = 0L; 8.69 for (Iterator itr = regions.iterator(); itr.hasNext();) { 8.70 @@ -75,11 +113,41 @@ 8.71 } 8.72 8.73 public long free() { 8.74 - return capacity() - used(); 8.75 - } 8.76 + // small chunks 8.77 + long size = 0; 8.78 + Address cur = addr.addOffsetTo( indexedFreeListField.getOffset() ); 8.79 + cur = cur.addOffsetTo(IndexSetStart*FreeList.sizeOf()); 8.80 + for (int i=IndexSetStart; i<IndexSetSize; i += IndexSetStride) { 8.81 + FreeList freeList = (FreeList) VMObjectFactory.newObject(FreeList.class, cur); 8.82 + size += i*freeList.count(); 8.83 + cur= cur.addOffsetTo(IndexSetStride*FreeList.sizeOf()); 8.84 + } 8.85 + 8.86 + // large block 8.87 + BinaryTreeDictionary bfbd = (BinaryTreeDictionary) VMObjectFactory.newObject(BinaryTreeDictionary.class, 8.88 + dictionaryField.getValue(addr)); 8.89 + size += bfbd.size(); 8.90 + 8.91 + 8.92 + // linear block in TLAB 8.93 + LinearAllocBlock lab = (LinearAllocBlock) VMObjectFactory.newObject(LinearAllocBlock.class, 8.94 + addr.addOffsetTo(smallLinearAllocBlockFieldOffset)); 8.95 + size += lab.word_size(); 8.96 + 8.97 + return size*heapWordSize; 8.98 + } 8.99 8.100 public void printOn(PrintStream tty) { 8.101 tty.print("free-list-space"); 8.102 + tty.print("[ " + bottom() + " , " + end() + " ) "); 8.103 + long cap = capacity(); 8.104 + long used_size = used(); 8.105 + long free_size = free(); 8.106 + int used_perc = (int)((double)used_size/cap*100); 8.107 + tty.print("space capacity = " + cap + " used(" + used_perc + "%)= " + used_size + " "); 8.108 + tty.print("free= " + free_size ); 8.109 + tty.print("\n"); 8.110 + 8.111 } 8.112 8.113 public Address skipBlockSizeUsingPrintezisBits(Address pos) {
9.1 --- a/agent/src/share/classes/sun/jvm/hotspot/memory/DefNewGeneration.java Thu May 15 22:43:11 2008 -0700 9.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/memory/DefNewGeneration.java Fri May 16 13:42:07 2008 -0700 9.3 @@ -96,9 +96,9 @@ 9.4 public void printOn(PrintStream tty) { 9.5 tty.print(" eden"); 9.6 eden().printOn(tty); 9.7 - tty.print(" from"); 9.8 + tty.print("\n from"); 9.9 from().printOn(tty); 9.10 - tty.print(" to "); 9.11 + tty.print("\n to "); 9.12 to().printOn(tty); 9.13 } 9.14 }
10.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 10.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/memory/FreeList.java Fri May 16 13:42:07 2008 -0700 10.3 @@ -0,0 +1,72 @@ 10.4 +/* 10.5 + * @(#)FreeList.java 10.6 + * 10.7 + * Copyright 2000-2007 Sun Microsystems, Inc. All Rights Reserved. 10.8 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 10.9 + * 10.10 + * This code is free software; you can redistribute it and/or modify it 10.11 + * under the terms of the GNU General Public License version 2 only, as 10.12 + * published by the Free Software Foundation. 10.13 + * 10.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 10.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 10.17 + * version 2 for more details (a copy is included in the LICENSE file that 10.18 + * accompanied this code). 10.19 + * 10.20 + * You should have received a copy of the GNU General Public License version 10.21 + * 2 along with this work; if not, write to the Free Software Foundation, 10.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 10.23 + * 10.24 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 10.25 + * CA 95054 USA or visit www.sun.com if you need additional information or 10.26 + * have any questions. 10.27 + * 10.28 + */ 10.29 + 10.30 +package sun.jvm.hotspot.memory; 10.31 + 10.32 +import java.util.*; 10.33 +import sun.jvm.hotspot.debugger.*; 10.34 +import sun.jvm.hotspot.types.*; 10.35 +import sun.jvm.hotspot.runtime.*; 10.36 + 10.37 +public class FreeList extends VMObject { 10.38 + static { 10.39 + VM.registerVMInitializedObserver(new Observer() { 10.40 + public void update(Observable o, Object data) { 10.41 + initialize(VM.getVM().getTypeDataBase()); 10.42 + } 10.43 + }); 10.44 + } 10.45 + 10.46 + private static synchronized void initialize(TypeDataBase db) { 10.47 + Type type = db.lookupType("FreeList"); 10.48 + sizeField = type.getCIntegerField("_size"); 10.49 + countField = type.getCIntegerField("_count"); 10.50 + headerSize = type.getSize(); 10.51 + } 10.52 + 10.53 + // Fields 10.54 + private static CIntegerField sizeField; 10.55 + private static CIntegerField countField; 10.56 + private static long headerSize; 10.57 + 10.58 + //Constructor 10.59 + public FreeList(Address address) { 10.60 + super(address); 10.61 + } 10.62 + 10.63 + // Accessors 10.64 + public long size() { 10.65 + return sizeField.getValue(addr); 10.66 + } 10.67 + 10.68 + public long count() { 10.69 + return countField.getValue(addr); 10.70 + } 10.71 + 10.72 + public static long sizeOf() { 10.73 + return headerSize; 10.74 + } 10.75 +}
11.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 11.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/memory/LinearAllocBlock.java Fri May 16 13:42:07 2008 -0700 11.3 @@ -0,0 +1,59 @@ 11.4 +/* 11.5 + * @(#)BinaryTreeDictionary.java 11.6 + * Copyright 2000-2007 Sun Microsystems, Inc. All Rights Reserved. 11.7 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 11.8 + * 11.9 + * This code is free software; you can redistribute it and/or modify it 11.10 + * under the terms of the GNU General Public License version 2 only, as 11.11 + * published by the Free Software Foundation. 11.12 + * 11.13 + * This code is distributed in the hope that it will be useful, but WITHOUT 11.14 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11.15 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11.16 + * version 2 for more details (a copy is included in the LICENSE file that 11.17 + * accompanied this code). 11.18 + * 11.19 + * You should have received a copy of the GNU General Public License version 11.20 + * 2 along with this work; if not, write to the Free Software Foundation, 11.21 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 11.22 + * 11.23 + * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, 11.24 + * CA 95054 USA or visit www.sun.com if you need additional information or 11.25 + * have any questions. 11.26 + * 11.27 + */ 11.28 + 11.29 +package sun.jvm.hotspot.memory; 11.30 + 11.31 +import java.util.*; 11.32 +import sun.jvm.hotspot.debugger.*; 11.33 +import sun.jvm.hotspot.types.*; 11.34 +import sun.jvm.hotspot.runtime.*; 11.35 + 11.36 +public class LinearAllocBlock extends VMObject { 11.37 + static { 11.38 + VM.registerVMInitializedObserver(new Observer() { 11.39 + public void update(Observable o, Object data) { 11.40 + initialize(VM.getVM().getTypeDataBase()); 11.41 + } 11.42 + }); 11.43 + } 11.44 + 11.45 + private static synchronized void initialize(TypeDataBase db) { 11.46 + Type type = db.lookupType("LinearAllocBlock"); 11.47 + word_sizeField= type.getCIntegerField("_word_size"); 11.48 + } 11.49 + 11.50 + // Fields 11.51 + private static CIntegerField word_sizeField; 11.52 + 11.53 + // Accessors 11.54 + public long word_size() { 11.55 + return word_sizeField.getValue(addr); 11.56 + } 11.57 + 11.58 + // Constructor 11.59 + public LinearAllocBlock(Address addr) { 11.60 + super(addr); 11.61 + } 11.62 +}
12.1 --- a/agent/src/share/classes/sun/jvm/hotspot/ui/AnnotatedMemoryPanel.java Thu May 15 22:43:11 2008 -0700 12.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/ui/AnnotatedMemoryPanel.java Fri May 16 13:42:07 2008 -0700 12.3 @@ -648,6 +648,6 @@ 12.4 System.exit(0); 12.5 } 12.6 }); 12.7 - frame.show(); 12.8 + frame.setVisible(true); 12.9 } 12.10 }
13.1 --- a/agent/src/share/classes/sun/jvm/hotspot/ui/CommandProcessorPanel.java Thu May 15 22:43:11 2008 -0700 13.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/ui/CommandProcessorPanel.java Fri May 16 13:42:07 2008 -0700 13.3 @@ -220,7 +220,7 @@ 13.4 } 13.5 }); 13.6 frame.setSize(500, 500); 13.7 - frame.show(); 13.8 + frame.setVisible(true); 13.9 panel.requestFocus(); 13.10 } 13.11 }
14.1 --- a/agent/src/share/classes/sun/jvm/hotspot/ui/DebuggerConsolePanel.java Thu May 15 22:43:11 2008 -0700 14.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/ui/DebuggerConsolePanel.java Fri May 16 13:42:07 2008 -0700 14.3 @@ -226,7 +226,7 @@ 14.4 } 14.5 }); 14.6 frame.setSize(500, 500); 14.7 - frame.show(); 14.8 + frame.setVisible(true); 14.9 panel.requestFocus(); 14.10 } 14.11 }
15.1 --- a/agent/src/share/classes/sun/jvm/hotspot/ui/HighPrecisionJScrollBar.java Thu May 15 22:43:11 2008 -0700 15.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/ui/HighPrecisionJScrollBar.java Fri May 16 13:42:07 2008 -0700 15.3 @@ -424,7 +424,7 @@ 15.4 } 15.5 }); 15.6 frame.getContentPane().add(hpsb); 15.7 - frame.show(); 15.8 + frame.setVisible(true); 15.9 } 15.10 15.11 }
16.1 --- a/agent/src/share/classes/sun/jvm/hotspot/ui/JFrameWrapper.java Thu May 15 22:43:11 2008 -0700 16.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/ui/JFrameWrapper.java Fri May 16 13:42:07 2008 -0700 16.3 @@ -43,7 +43,7 @@ 16.4 public void setVisible(boolean visible) { frame.setVisible(visible); } 16.5 public void setSize(int x, int y) { frame.setSize(x, y); } 16.6 public void pack() { frame.pack(); } 16.7 - public void show() { frame.show(); } 16.8 + public void show() { frame.setVisible(true); } 16.9 public void dispose() { frame.dispose(); } 16.10 public void setBackground(Color color) { frame.setBackground(color); } 16.11 public void setResizable(boolean resizable) { frame.setResizable(resizable); }
17.1 --- a/agent/src/share/classes/sun/jvm/hotspot/ui/treetable/JTreeTable.java Thu May 15 22:43:11 2008 -0700 17.2 +++ b/agent/src/share/classes/sun/jvm/hotspot/ui/treetable/JTreeTable.java Fri May 16 13:42:07 2008 -0700 17.3 @@ -477,9 +477,9 @@ 17.4 static class TreeTableTextField extends JTextField { 17.5 public int offset; 17.6 17.7 - public void reshape(int x, int y, int w, int h) { 17.8 + public void setBounds(int x, int y, int w, int h) { 17.9 int newX = Math.max(x, offset); 17.10 - super.reshape(newX, y, w - (newX - x), h); 17.11 + super.setBounds(newX, y, w - (newX - x), h); 17.12 } 17.13 } 17.14
18.1 --- a/src/share/vm/gc_implementation/concurrentMarkSweep/binaryTreeDictionary.hpp Thu May 15 22:43:11 2008 -0700 18.2 +++ b/src/share/vm/gc_implementation/concurrentMarkSweep/binaryTreeDictionary.hpp Fri May 16 13:42:07 2008 -0700 18.3 @@ -130,6 +130,7 @@ 18.4 const size_t MIN_TREE_CHUNK_SIZE = sizeof(TreeChunk)/HeapWordSize; 18.5 18.6 class BinaryTreeDictionary: public FreeBlockDictionary { 18.7 + friend class VMStructs; 18.8 bool _splay; 18.9 size_t _totalSize; 18.10 size_t _totalFreeBlocks;
19.1 --- a/src/share/vm/gc_implementation/concurrentMarkSweep/freeList.hpp Thu May 15 22:43:11 2008 -0700 19.2 +++ b/src/share/vm/gc_implementation/concurrentMarkSweep/freeList.hpp Fri May 16 13:42:07 2008 -0700 19.3 @@ -38,6 +38,7 @@ 19.4 19.5 class FreeList VALUE_OBJ_CLASS_SPEC { 19.6 friend class CompactibleFreeListSpace; 19.7 + friend class VMStructs; 19.8 friend class printTreeCensusClosure; 19.9 FreeChunk* _head; // List of free chunks 19.10 FreeChunk* _tail; // Tail of list of free chunks
20.1 --- a/src/share/vm/gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp Thu May 15 22:43:11 2008 -0700 20.2 +++ b/src/share/vm/gc_implementation/concurrentMarkSweep/vmStructs_cms.hpp Fri May 16 13:42:07 2008 -0700 20.3 @@ -38,7 +38,15 @@ 20.4 static_field(ConcurrentMarkSweepThread, _collector, CMSCollector*) \ 20.5 nonstatic_field(FreeChunk, _next, FreeChunk*) \ 20.6 nonstatic_field(FreeChunk, _prev, FreeChunk*) \ 20.7 - nonstatic_field(FreeChunk, _size, size_t) 20.8 + nonstatic_field(FreeChunk, _size, size_t) \ 20.9 + nonstatic_field(LinearAllocBlock, _word_size, size_t) \ 20.10 + nonstatic_field(FreeList, _size, size_t) \ 20.11 + nonstatic_field(FreeList, _count, ssize_t) \ 20.12 + nonstatic_field(BinaryTreeDictionary, _totalSize, size_t) \ 20.13 + nonstatic_field(CompactibleFreeListSpace, _dictionary, FreeBlockDictionary*) \ 20.14 + nonstatic_field(CompactibleFreeListSpace, _indexedFreeList[0], FreeList) \ 20.15 + nonstatic_field(CompactibleFreeListSpace, _smallLinearAllocBlock, LinearAllocBlock) 20.16 + 20.17 20.18 #define VM_TYPES_CMS(declare_type, \ 20.19 declare_toplevel_type) \ 20.20 @@ -57,7 +65,14 @@ 20.21 declare_toplevel_type(SurrogateLockerThread*) \ 20.22 declare_toplevel_type(CompactibleFreeListSpace*) \ 20.23 declare_toplevel_type(CMSCollector*) \ 20.24 - declare_toplevel_type(FreeChunk*) 20.25 + declare_toplevel_type(FreeChunk*) \ 20.26 + declare_toplevel_type(BinaryTreeDictionary*) \ 20.27 + declare_toplevel_type(FreeBlockDictionary*) \ 20.28 + declare_toplevel_type(FreeList*) \ 20.29 + declare_toplevel_type(FreeList) \ 20.30 + declare_toplevel_type(LinearAllocBlock) \ 20.31 + declare_toplevel_type(FreeBlockDictionary) \ 20.32 + declare_type(BinaryTreeDictionary, FreeBlockDictionary) 20.33 20.34 #define VM_INT_CONSTANTS_CMS(declare_constant) \ 20.35 declare_constant(Generation::ConcurrentMarkSweep) \
21.1 --- a/src/share/vm/runtime/vmStructs.cpp Thu May 15 22:43:11 2008 -0700 21.2 +++ b/src/share/vm/runtime/vmStructs.cpp Fri May 16 13:42:07 2008 -0700 21.3 @@ -894,6 +894,7 @@ 21.4 /*******************************************************************/ \ 21.5 \ 21.6 declare_unsigned_integer_type(size_t) \ 21.7 + declare_integer_type(ssize_t) \ 21.8 declare_unsigned_integer_type(const size_t) \ 21.9 declare_integer_type(intx) \ 21.10 declare_integer_type(intptr_t) \