changeset 2037:d93c134e3357

Merge
author Andrew John Hughes <ahughes@redhat.com>
date Thu, 25 Feb 2010 18:50:04 +0000
parents 2d3e4673d9d4 (current diff) b50fed90f978 (diff)
children 0a32b3a23fcc
files ChangeLog Makefile.am pulseaudio/AUTHORS pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c tools-copy/tools-corba-copy-files.txt tools-copy/tools-jaxws-copy-files.txt tools-copy/tools-jdk-copy-files.txt tools-copy/tools-langtools-copy-files.txt
diffstat 60 files changed, 2596 insertions(+), 3508 deletions(-) [+]
line wrap: on
line diff
--- a/.hgignore	Thu Feb 25 18:48:18 2010 +0000
+++ b/.hgignore	Thu Feb 25 18:50:04 2010 +0000
@@ -1,7 +1,5 @@
 syntax: glob
 *~
-
-syntax: regexp
 configure
 missing
 aclocal.m4
@@ -41,426 +39,6 @@
 test/jtreg/classes
 test/jtreg-summary.log
 test/check-.*log
-rt/com/sun/jdi/AbsentInformationException.java
-rt/com/sun/jdi/Accessible.java
-rt/com/sun/jdi/ArrayReference.java
-rt/com/sun/jdi/ArrayType.java
-rt/com/sun/jdi/BooleanType.java
-rt/com/sun/jdi/BooleanValue.java
-rt/com/sun/jdi/Bootstrap.java
-rt/com/sun/jdi/ByteType.java
-rt/com/sun/jdi/ByteValue.java
-rt/com/sun/jdi/CharType.java
-rt/com/sun/jdi/CharValue.java
-rt/com/sun/jdi/ClassLoaderReference.java
-rt/com/sun/jdi/ClassNotLoadedException.java
-rt/com/sun/jdi/ClassNotPreparedException.java
-rt/com/sun/jdi/ClassObjectReference.java
-rt/com/sun/jdi/ClassType.java
-rt/com/sun/jdi/connect/AttachingConnector.java
-rt/com/sun/jdi/connect/Connector.java
-rt/com/sun/jdi/connect/IllegalConnectorArgumentsException.java
-rt/com/sun/jdi/connect/LaunchingConnector.java
-rt/com/sun/jdi/connect/ListeningConnector.java
-rt/com/sun/jdi/connect/spi/ClosedConnectionException.java
-rt/com/sun/jdi/connect/spi/Connection.java
-rt/com/sun/jdi/connect/spi/TransportService.java
-rt/com/sun/jdi/connect/Transport.java
-rt/com/sun/jdi/connect/TransportTimeoutException.java
-rt/com/sun/jdi/connect/VMStartException.java
-rt/com/sun/jdi/DoubleType.java
-rt/com/sun/jdi/DoubleValue.java
-rt/com/sun/jdi/event/AccessWatchpointEvent.java
-rt/com/sun/jdi/event/BreakpointEvent.java
-rt/com/sun/jdi/event/ClassPrepareEvent.java
-rt/com/sun/jdi/event/ClassUnloadEvent.java
-rt/com/sun/jdi/event/EventIterator.java
-rt/com/sun/jdi/event/Event.java
-rt/com/sun/jdi/event/EventQueue.java
-rt/com/sun/jdi/event/EventSet.java
-rt/com/sun/jdi/event/ExceptionEvent.java
-rt/com/sun/jdi/event/LocatableEvent.java
-rt/com/sun/jdi/event/MethodEntryEvent.java
-rt/com/sun/jdi/event/MethodExitEvent.java
-rt/com/sun/jdi/event/ModificationWatchpointEvent.java
-rt/com/sun/jdi/event/MonitorContendedEnteredEvent.java
-rt/com/sun/jdi/event/MonitorContendedEnterEvent.java
-rt/com/sun/jdi/event/MonitorWaitedEvent.java
-rt/com/sun/jdi/event/MonitorWaitEvent.java
-rt/com/sun/jdi/event/StepEvent.java
-rt/com/sun/jdi/event/ThreadDeathEvent.java
-rt/com/sun/jdi/event/ThreadStartEvent.java
-rt/com/sun/jdi/event/VMDeathEvent.java
-rt/com/sun/jdi/event/VMDisconnectEvent.java
-rt/com/sun/jdi/event/VMStartEvent.java
-rt/com/sun/jdi/event/WatchpointEvent.java
-rt/com/sun/jdi/Field.java
-rt/com/sun/jdi/FloatType.java
-rt/com/sun/jdi/FloatValue.java
-rt/com/sun/jdi/IncompatibleThreadStateException.java
-rt/com/sun/jdi/InconsistentDebugInfoException.java
-rt/com/sun/jdi/IntegerType.java
-rt/com/sun/jdi/IntegerValue.java
-rt/com/sun/jdi/InterfaceType.java
-rt/com/sun/jdi/InternalException.java
-rt/com/sun/jdi/InvalidCodeIndexException.java
-rt/com/sun/jdi/InvalidLineNumberException.java
-rt/com/sun/jdi/InvalidStackFrameException.java
-rt/com/sun/jdi/InvalidTypeException.java
-rt/com/sun/jdi/InvocationException.java
-rt/com/sun/jdi/JDIPermission.java
-rt/com/sun/jdi/LocalVariable.java
-rt/com/sun/jdi/Locatable.java
-rt/com/sun/jdi/Location.java
-rt/com/sun/jdi/LongType.java
-rt/com/sun/jdi/LongValue.java
-rt/com/sun/jdi/Method.java
-rt/com/sun/jdi/Mirror.java
-rt/com/sun/jdi/MonitorInfo.java
-rt/com/sun/jdi/NativeMethodException.java
-rt/com/sun/jdi/ObjectCollectedException.java
-rt/com/sun/jdi/ObjectReference.java
-rt/com/sun/jdi/PathSearchingVirtualMachine.java
-rt/com/sun/jdi/PrimitiveType.java
-rt/com/sun/jdi/PrimitiveValue.java
-rt/com/sun/jdi/ReferenceType.java
-rt/com/sun/jdi/request/AccessWatchpointRequest.java
-rt/com/sun/jdi/request/BreakpointRequest.java
-rt/com/sun/jdi/request/ClassPrepareRequest.java
-rt/com/sun/jdi/request/ClassUnloadRequest.java
-rt/com/sun/jdi/request/DuplicateRequestException.java
-rt/com/sun/jdi/request/EventRequest.java
-rt/com/sun/jdi/request/EventRequestManager.java
-rt/com/sun/jdi/request/ExceptionRequest.java
-rt/com/sun/jdi/request/InvalidRequestStateException.java
-rt/com/sun/jdi/request/MethodEntryRequest.java
-rt/com/sun/jdi/request/MethodExitRequest.java
-rt/com/sun/jdi/request/ModificationWatchpointRequest.java
-rt/com/sun/jdi/request/MonitorContendedEnteredRequest.java
-rt/com/sun/jdi/request/MonitorContendedEnterRequest.java
-rt/com/sun/jdi/request/MonitorWaitedRequest.java
-rt/com/sun/jdi/request/MonitorWaitRequest.java
-rt/com/sun/jdi/request/StepRequest.java
-rt/com/sun/jdi/request/ThreadDeathRequest.java
-rt/com/sun/jdi/request/ThreadStartRequest.java
-rt/com/sun/jdi/request/VMDeathRequest.java
-rt/com/sun/jdi/request/WatchpointRequest.java
-rt/com/sun/jdi/ShortType.java
-rt/com/sun/jdi/ShortValue.java
-rt/com/sun/jdi/StackFrame.java
-rt/com/sun/jdi/StringReference.java
-rt/com/sun/jdi/ThreadGroupReference.java
-rt/com/sun/jdi/ThreadReference.java
-rt/com/sun/jdi/TypeComponent.java
-rt/com/sun/jdi/Type.java
-rt/com/sun/jdi/Value.java
-rt/com/sun/jdi/VirtualMachine.java
-rt/com/sun/jdi/VirtualMachineManager.java
-rt/com/sun/jdi/VMCannotBeModifiedException.java
-rt/com/sun/jdi/VMDisconnectedException.java
-rt/com/sun/jdi/VMMismatchException.java
-rt/com/sun/jdi/VMOutOfMemoryException.java
-rt/com/sun/jdi/VoidType.java
-rt/com/sun/jdi/VoidValue.java
-rt/com/sun/jmx/snmp/agent/SnmpEntryOid.java
-rt/com/sun/jmx/snmp/agent/SnmpErrorHandlerAgent.java
-rt/com/sun/jmx/snmp/agent/SnmpGenericMetaServer.java
-rt/com/sun/jmx/snmp/agent/SnmpGenericObjectServer.java
-rt/com/sun/jmx/snmp/agent/SnmpIndex.java
-rt/com/sun/jmx/snmp/agent/SnmpMibAgent.java
-rt/com/sun/jmx/snmp/agent/SnmpMibAgentMBean.java
-rt/com/sun/jmx/snmp/agent/SnmpMibEntry.java
-rt/com/sun/jmx/snmp/agent/SnmpMibGroup.java
-rt/com/sun/jmx/snmp/agent/SnmpMibHandler.java
-rt/com/sun/jmx/snmp/agent/SnmpMib.java
-rt/com/sun/jmx/snmp/agent/SnmpMibNode.java
-rt/com/sun/jmx/snmp/agent/SnmpMibOid.java
-rt/com/sun/jmx/snmp/agent/SnmpMibRequestImpl.java
-rt/com/sun/jmx/snmp/agent/SnmpMibRequest.java
-rt/com/sun/jmx/snmp/agent/SnmpMibSubRequest.java
-rt/com/sun/jmx/snmp/agent/SnmpMibTable.java
-rt/com/sun/jmx/snmp/agent/SnmpRequestTree.java
-rt/com/sun/jmx/snmp/agent/SnmpStandardMetaServer.java
-rt/com/sun/jmx/snmp/agent/SnmpStandardObjectServer.java
-rt/com/sun/jmx/snmp/agent/SnmpTableCallbackHandler.java
-rt/com/sun/jmx/snmp/agent/SnmpTableEntryFactory.java
-rt/com/sun/jmx/snmp/agent/SnmpTableEntryNotification.java
-rt/com/sun/jmx/snmp/agent/SnmpTableSupport.java
-rt/com/sun/jmx/snmp/agent/SnmpUserDataFactory.java
-rt/com/sun/jmx/snmp/daemon/SnmpInformRequest.java
-rt/com/sun/jmx/snmp/daemon/SnmpSession.java
-rt/com/sun/jmx/snmp/SnmpDataTypeEnums.java
-rt/com/sun/jmx/snmp/SnmpDefinitions.java
-rt/com/sun/jmx/snmp/SnmpOid.java
-rt/com/sun/jmx/snmp/SnmpOidRecord.java
-rt/com/sun/jmx/snmp/SnmpOidTable.java
-rt/com/sun/jmx/snmp/SnmpOidTableSupport.java
-rt/com/sun/jmx/snmp/SnmpParameters.java
-rt/com/sun/jmx/snmp/SnmpPduPacket.java
-rt/com/sun/jmx/snmp/SnmpPeer.java
-rt/com/sun/jmx/snmp/SnmpSession.java
-rt/com/sun/jmx/snmp/SnmpTimeticks.java
-rt/com/sun/jmx/snmp/SnmpVarBind.java
-rt/com/sun/jmx/snmp/SnmpVarBindList.java
-rt/com/sun/tools/jdi/AbstractLauncher.java
-rt/com/sun/tools/jdi/ArrayReferenceImpl.java
-rt/com/sun/tools/jdi/ArrayTypeImpl.java
-rt/com/sun/tools/jdi/BaseLineInfo.java
-rt/com/sun/tools/jdi/BooleanTypeImpl.java
-rt/com/sun/tools/jdi/BooleanValueImpl.java
-rt/com/sun/tools/jdi/ByteTypeImpl.java
-rt/com/sun/tools/jdi/ByteValueImpl.java
-rt/com/sun/tools/jdi/CharTypeImpl.java
-rt/com/sun/tools/jdi/CharValueImpl.java
-rt/com/sun/tools/jdi/ClassLoaderReferenceImpl.java
-rt/com/sun/tools/jdi/ClassObjectReferenceImpl.java
-rt/com/sun/tools/jdi/ClassTypeImpl.java
-rt/com/sun/tools/jdi/CommandSender.java
-rt/com/sun/tools/jdi/ConcreteMethodImpl.java
-rt/com/sun/tools/jdi/ConnectorImpl.java
-rt/com/sun/tools/jdi/DoubleTypeImpl.java
-rt/com/sun/tools/jdi/DoubleValueImpl.java
-rt/com/sun/tools/jdi/EventQueueImpl.java
-rt/com/sun/tools/jdi/EventRequestManagerImpl.java
-rt/com/sun/tools/jdi/EventSetImpl.java
-rt/com/sun/tools/jdi/FieldImpl.java
-rt/com/sun/tools/jdi/FloatTypeImpl.java
-rt/com/sun/tools/jdi/FloatValueImpl.java
-rt/com/sun/tools/jdi/GenericAttachingConnector.java
-rt/com/sun/tools/jdi/GenericListeningConnector.java
-rt/com/sun/tools/jdi/IntegerTypeImpl.java
-rt/com/sun/tools/jdi/IntegerValueImpl.java
-rt/com/sun/tools/jdi/InterfaceTypeImpl.java
-rt/com/sun/tools/jdi/InternalEventHandler.java
-rt/com/sun/tools/jdi/JDWPException.java
-rt/com/sun/tools/jdi/JNITypeParser.java
-rt/com/sun/tools/jdi/LineInfo.java
-rt/com/sun/tools/jdi/LinkedHashMap.java
-rt/com/sun/tools/jdi/LocalVariableImpl.java
-rt/com/sun/tools/jdi/LocationImpl.java
-rt/com/sun/tools/jdi/LockObject.java
-rt/com/sun/tools/jdi/LongTypeImpl.java
-rt/com/sun/tools/jdi/LongValueImpl.java
-rt/com/sun/tools/jdi/MethodImpl.java
-rt/com/sun/tools/jdi/MirrorImpl.java
-rt/com/sun/tools/jdi/MonitorInfoImpl.java
-rt/com/sun/tools/jdi/NonConcreteMethodImpl.java
-rt/com/sun/tools/jdi/ObjectReferenceImpl.java
-rt/com/sun/tools/jdi/ObsoleteMethodImpl.java
-rt/com/sun/tools/jdi/Packet.java
-rt/com/sun/tools/jdi/PacketStream.java
-rt/com/sun/tools/jdi/PrimitiveTypeImpl.java
-rt/com/sun/tools/jdi/PrimitiveValueImpl.java
-rt/com/sun/tools/jdi/ProcessAttachingConnector.java
-rt/com/sun/tools/jdi/RawCommandLineLauncher.java
-rt/com/sun/tools/jdi/ReferenceTypeImpl.java
-rt/com/sun/tools/jdi/SDE.java
-rt/com/sun/tools/jdi/ShortTypeImpl.java
-rt/com/sun/tools/jdi/ShortValueImpl.java
-rt/com/sun/tools/jdi/SocketAttachingConnector.java
-rt/com/sun/tools/jdi/SocketListeningConnector.java
-rt/com/sun/tools/jdi/SocketTransportService.java
-rt/com/sun/tools/jdi/StackFrameImpl.java
-rt/com/sun/tools/jdi/StratumLineInfo.java
-rt/com/sun/tools/jdi/StringReferenceImpl.java
-rt/com/sun/tools/jdi/SunCommandLineLauncher.java
-rt/com/sun/tools/jdi/TargetVM.java
-rt/com/sun/tools/jdi/ThreadAction.java
-rt/com/sun/tools/jdi/ThreadGroupReferenceImpl.java
-rt/com/sun/tools/jdi/ThreadListener.java
-rt/com/sun/tools/jdi/ThreadReferenceImpl.java
-rt/com/sun/tools/jdi/TypeComponentImpl.java
-rt/com/sun/tools/jdi/TypeImpl.java
-rt/com/sun/tools/jdi/ValueContainer.java
-rt/com/sun/tools/jdi/ValueImpl.java
-rt/com/sun/tools/jdi/VirtualMachineImpl.java
-rt/com/sun/tools/jdi/VirtualMachineManagerImpl.java
-rt/com/sun/tools/jdi/VirtualMachineManagerService.java
-rt/com/sun/tools/jdi/VMAction.java
-rt/com/sun/tools/jdi/VMListener.java
-rt/com/sun/tools/jdi/VMModifiers.java
-rt/com/sun/tools/jdi/VMState.java
-rt/com/sun/tools/jdi/VoidTypeImpl.java
-rt/com/sun/tools/jdi/VoidValueImpl.java
-rt/java/util/AbstractCollection.java
-rt/java/util/AbstractList.java
-rt/java/util/AbstractMap.java
-rt/java/util/AbstractQueue.java
-rt/java/util/AbstractSequentialList.java
-rt/java/util/AbstractSet.java
-rt/java/util/ArrayDeque.java
-rt/java/util/ArrayList.java
-rt/java/util/Arrays.java
-rt/java/util/BitSet.java
-rt/java/util/Calendar.java
-rt/java/util/Collection.java
-rt/java/util/Collections.java
-rt/java/util/Comparator.java
-rt/java/util/ConcurrentModificationException.java
-rt/java/util/Currency.java
-rt/java/util/Date.java
-rt/java/util/Deque.java
-rt/java/util/Dictionary.java
-rt/java/util/DuplicateFormatFlagsException.java
-rt/java/util/EmptyStackException.java
-rt/java/util/Enumeration.java
-rt/java/util/EnumMap.java
-rt/java/util/EnumSet.java
-rt/java/util/EventListener.java
-rt/java/util/EventListenerProxy.java
-rt/java/util/EventObject.java
-rt/java/util/FormatFlagsConversionMismatchException.java
-rt/java/util/FormattableFlags.java
-rt/java/util/Formattable.java
-rt/java/util/FormatterClosedException.java
-rt/java/util/Formatter.java
-rt/java/util/GregorianCalendar.java
-rt/java/util/HashMap.java
-rt/java/util/HashSet.java
-rt/java/util/Hashtable.java
-rt/java/util/IdentityHashMap.java
-rt/java/util/IllegalFormatCodePointException.java
-rt/java/util/IllegalFormatConversionException.java
-rt/java/util/IllegalFormatException.java
-rt/java/util/IllegalFormatFlagsException.java
-rt/java/util/IllegalFormatPrecisionException.java
-rt/java/util/IllegalFormatWidthException.java
-rt/java/util/InputMismatchException.java
-rt/java/util/InvalidPropertiesFormatException.java
-rt/java/util/Iterator.java
-rt/java/util/JapaneseImperialCalendar.java
-rt/java/util/JumboEnumSet.java
-rt/java/util/LinkedHashMap.java
-rt/java/util/LinkedHashSet.java
-rt/java/util/LinkedList.java
-rt/java/util/ListIterator.java
-rt/java/util/List.java
-rt/java/util/ListResourceBundle.java
-rt/java/util/LocaleISOData.java
-rt/java/util/Locale.java
-rt/java/util/Map.java
-rt/java/util/MissingFormatArgumentException.java
-rt/java/util/MissingFormatWidthException.java
-rt/java/util/MissingResourceException.java
-rt/java/util/NavigableMap.java
-rt/java/util/NavigableSet.java
-rt/java/util/NoSuchElementException.java
-rt/java/util/Observable.java
-rt/java/util/Observer.java
-rt/java/util/PriorityQueue.java
-rt/java/util/Properties.java
-rt/java/util/PropertyPermission.java
-rt/java/util/PropertyResourceBundle.java
-rt/java/util/Queue.java
-rt/java/util/RandomAccess.java
-rt/java/util/Random.java
-rt/java/util/RegularEnumSet.java
-rt/java/util/ResourceBundle.java
-rt/java/util/Scanner.java
-rt/java/util/ServiceConfigurationError.java
-rt/java/util/ServiceLoader.java
-rt/java/util/Set.java
-rt/java/util/SimpleTimeZone.java
-rt/java/util/SortedMap.java
-rt/java/util/SortedSet.java
-rt/java/util/Stack.java
-rt/java/util/StringTokenizer.java
-rt/java/util/Timer.java
-rt/java/util/TimerTask.java
-rt/java/util/TimeZone.java
-rt/java/util/TooManyListenersException.java
-rt/java/util/TreeMap.java
-rt/java/util/TreeSet.java
-rt/java/util/UnknownFormatConversionException.java
-rt/java/util/UnknownFormatFlagsException.java
-rt/java/util/UUID.java
-rt/java/util/Vector.java
-rt/java/util/WeakHashMap.java
-rt/java/util/XMLUtils.java
-rt/java/rmi/AccessException.java
-rt/java/rmi/AlreadyBoundException.java
-rt/java/rmi/ConnectException.java
-rt/java/rmi/ConnectIOException.java
-rt/java/rmi/MarshalException.java
-rt/java/rmi/MarshalledObject.java
-rt/java/rmi/Naming.java
-rt/java/rmi/NoSuchObjectException.java
-rt/java/rmi/NotBoundException.java
-rt/java/rmi/RMISecurityException.java
-rt/java/rmi/RMISecurityManager.java
-rt/java/rmi/Remote.java
-rt/java/rmi/RemoteException.java
-rt/java/rmi/ServerError.java
-rt/java/rmi/ServerException.java
-rt/java/rmi/ServerRuntimeException.java
-rt/java/rmi/StubNotFoundException.java
-rt/java/rmi/UnexpectedException.java
-rt/java/rmi/UnknownHostException.java
-rt/java/rmi/UnmarshalException.java
-rt/sun/rmi/rmic/BatchEnvironment.java
-rt/sun/rmi/rmic/Constants.java
-rt/sun/rmi/rmic/Generator.java
-rt/sun/rmi/rmic/IndentingWriter.java
-rt/sun/rmi/rmic/Main.java
-rt/sun/rmi/rmic/Names.java
-rt/sun/rmi/rmic/RMIConstants.java
-rt/sun/rmi/rmic/RMIGenerator.java
-rt/sun/rmi/rmic/RemoteClass.java
-rt/sun/rmi/rmic/Util.java
-rt/javax/net/ssl/CertPathTrustManagerParameters.java
-rt/javax/net/ssl/HandshakeCompletedEvent.java
-rt/javax/net/ssl/HandshakeCompletedListener.java
-rt/javax/net/ssl/HostnameVerifier.java
-rt/javax/net/ssl/HttpsURLConnection.java
-rt/javax/net/ssl/KeyManager.java
-rt/javax/net/ssl/KeyManagerFactory.java
-rt/javax/net/ssl/KeyManagerFactorySpi.java
-rt/javax/net/ssl/KeyStoreBuilderParameters.java
-rt/javax/net/ssl/ManagerFactoryParameters.java
-rt/javax/net/ssl/SSLContext.java
-rt/javax/net/ssl/SSLContextSpi.java
-rt/javax/net/ssl/SSLEngine.java
-rt/javax/net/ssl/SSLEngineResult.java
-rt/javax/net/ssl/SSLException.java
-rt/javax/net/ssl/SSLHandshakeException.java
-rt/javax/net/ssl/SSLKeyException.java
-rt/javax/net/ssl/SSLParameters.java
-rt/javax/net/ssl/SSLPeerUnverifiedException.java
-rt/javax/net/ssl/SSLPermission.java
-rt/javax/net/ssl/SSLProtocolException.java
-rt/javax/net/ssl/SSLServerSocket.java
-rt/javax/net/ssl/SSLServerSocketFactory.java
-rt/javax/net/ssl/SSLSession.java
-rt/javax/net/ssl/SSLSessionBindingEvent.java
-rt/javax/net/ssl/SSLSessionBindingListener.java
-rt/javax/net/ssl/SSLSessionContext.java
-rt/javax/net/ssl/SSLSocket.java
-rt/javax/net/ssl/SSLSocketFactory.java
-rt/javax/net/ssl/TrustManager.java
-rt/javax/net/ssl/TrustManagerFactory.java
-rt/javax/net/ssl/TrustManagerFactorySpi.java
-rt/javax/net/ssl/X509ExtendedKeyManager.java
-rt/javax/net/ssl/X509KeyManager.java
-rt/javax/net/ssl/X509TrustManager.java
-rt/javax/script/AbstractScriptEngine.java
-rt/javax/script/Bindings.java
-rt/javax/script/Compilable.java
-rt/javax/script/CompiledScript.java
-rt/javax/script/Invocable.java
-rt/javax/script/ScriptContext.java
-rt/javax/script/ScriptEngine.java
-rt/javax/script/ScriptEngineFactory.java
-rt/javax/script/ScriptEngineManager.java
-rt/javax/script/ScriptException.java
-rt/javax/script/SimpleBindings.java
-rt/javax/script/SimpleScriptContext.java
-rt/java/io/
-rt/sun/awt
-rt/netscape/javascript/JSException.java
-rt/netscape/javascript/JSObject.java
-rt/netscape/javascript/JSProxy.java
-rt/netscape/javascript/JSRunnable.java
-rt/netscape/javascript/JSUtil.java
 generated/sun/awt/X11/generator/sizer.32.orig
 pulseaudio/bin
 pulseaudio/.*\.o
--- a/ChangeLog	Thu Feb 25 18:48:18 2010 +0000
+++ b/ChangeLog	Thu Feb 25 18:50:04 2010 +0000
@@ -26,6 +26,284 @@
 	* patches/zero.patch:
 	Moved from hotspot/hs16.
 
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am: Add PULSE_JAVA_CLEAN_TARGET
+	to handle optionally defined clean-pulse-java
+	target.
+
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am: Add THANKYOU to
+	EXTRA_DIST.
+	* pulseaudio/AUTHORS: Removed; duplicates
+	top-level file.
+
+2010-02-24  Deepak Bhole <dbhole@redhat.com>
+
+	* plugin/icedteanp/java/sun/applet/PluginMain.java: Add some javaplugin.*
+	properties that some applets expect.
+	* rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java: Implement
+	allowed property get/set based on specifications.
+
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* .hgignore: Severely trim the list
+	especially the use of regular expressions
+	which are matching unwanted files.
+
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am:
+	(rewrite-rhino.stamp): Use full path to
+	jar application to avoid relying on the one
+	on the path.
+
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am:
+	Add missing pulse-java alias and reorganise
+	existing aliases alphabetically.
+	($(PULSE_JAVA_NATIVE_BUILDDIR)/%.o): Add include
+	directive for build directory to pick up generated
+	headers.
+
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am:
+	(icedtea.stamp): Prefix libpulse-java.so with
+	build directory path.
+	(icedtea-debug.stamp): Likewise.
+	(clean-pulse-java): No need to delete libpulse-java.so
+	as no longer at top-level.
+
+2010-02-24 Andrew John Hughes  <ahughes@redhat.com>
+
+	* pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c:
+	Removed, never built and no corresponding
+	Java source file.
+	* Makefile.am:
+	(PULSE_JAVA_NATIVE_SRCS): List of PulseAudio source
+	files.
+	(PULSE_JAVA_NATIVE_OBJECTS): List of PulseAudio object
+	files.
+	(PULSE_JAVA_TARGET): Optional PulseAudio target.
+	(icedtea.stamp): Replace explicit pulse-java.stamp
+	with PULSE_JAVA_TARGET.
+	(icedtea-debug.stamp): Likewise.
+	(pulse-java.stamp): Depend on compiled library rather than
+	headers target.
+	($(PULSE_JAVA_NATIVE_BUILDDIR)/%.o): New target to compile
+	object files from source files using make substitution.
+	($(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so): New target
+	to build the shared library.
+	(pulse-java-jar.stamp): Make ENABLE_PULSE_JAVA conditional
+	encompass all PulseAudio targets.
+	(pulse-java-class.stamp): Likewise.
+	(clean-pulse-java): Likewise.
+	(pulse-java-headers.stamp): Likewise, and remove unneeded
+	BOOT_DIR conditional (pulse-java-class.stamp now depends on
+	the appropriate bootstrap target).
+
+2010-02-23  Gary Benson  <gbenson@redhat.com>
+
+	* ports/hotspot/make/linux/makefiles/shark.make: Whitespace fixes.
+	* ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp: Likewise.
+	* ports/hotspot/src/share/vm/includeDB_shark: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkBlock.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkBlock.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkBuilder.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkBuilder.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCompiler.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkContext.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkContext.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkFunction.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkFunction.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkInliner.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkInliner.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkInvariants.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkRuntime.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkRuntime.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStack.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStack.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkState.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkState.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkValue.hpp: Likewise.
+
+2010-02-23  Gary Benson  <gbenson@redhat.com>
+
+	* ports/hotspot/src/share/vm/shark/sharkBlock.cpp: Reformatted
+	with trailing opening braces to match upstream HotSpot.
+	* ports/hotspot/src/share/vm/shark/sharkBlock.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkBuilder.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkBuilder.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCompiler.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCompiler.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkConstant.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkConstant.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkContext.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkContext.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkEntry.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkFunction.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkFunction.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkInliner.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkInvariants.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkInvariants.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkRuntime.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkRuntime.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStack.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStack.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkState.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkState.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkType.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkValue.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkValue.hpp: Likewise.
+
+2010-02-23  Deepak Bhole <dbhole@redhat.com>
+
+	* Makefile.am: Provide JDK_UPDATE_VERSION when compiling the plugin
+	* plugin/icedteanp/IcedTeaNPPlugin.cc: Use JDK_UPDATE_VERSION to set the
+	jpi version.
+
+2010-02-23  Gary Benson  <gbenson@redhat.com>
+
+	* ports/hotspot/make/linux/makefiles/shark.make: Update copyright.
+	* ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkCompiler.cpp: Likewise.
+	* ports/hotspot/src/share/vm/shark/sharkContext.hpp: Likewise.
+
+2010-02-23  Gary Benson  <gbenson@redhat.com>
+
+	* ports/hotspot/make/linux/makefiles/shark.make: Comment fix.
+
+2010-02-22  Deepak Bhole <dbhole@redhat.com>
+
+	* plugin/icedteanp/java/sun/applet/PluginAppletViewer.java: Centralized
+	and increased timeouts to give slow-loading applets enough time to load.
+
+2010-02-21  Xerxes RÃ¥nby  <xerxes@zafena.se>
+
+	* ports/hotspot/src/share/vm/shark/sharkCompiler.cpp
+	(MCPU): Explicitly defined for use by LLVM command line parser.
+	(MAttrs): Likewise.
+	(SharkCompiler::SharkCompiler): Create the JIT using LLVM EngineBuilder
+	in order to explicitly set MCPU and MAttrs when using LLVM 2.7.
+	* ports/hotspot/src/share/vm/shark/llvmHeaders.hpp:
+	Include llvm/ExecutionEngine/JIT.h for LLVM 2.7 to make sure the
+	JIT are linked in.
+
+2010-02-21 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am:
+	(icedtea-debug.stamp): Add missing -debug on
+	end of $(BUILD_OUTPUT_DIR).
+
+2010-02-20  Matthias Klose  <doko@ubuntu.com>
+
+	* Makefile.am (stamps/icedtea.stamp, stamps/icedtea-debug.stamp):
+	Depend on stamps/plugin.stamp instead of $(ICEDTEAPLUGIN_TARGET)
+	and $(ICEDTEANPPLUGIN_TARGET).
+	(icedtea): Depend on stamps/add-zero.stamp and stamps/add-cacao.stamp
+	(icedtea-debug): Depend on stamps/add-cacao-debug.stamp and
+	stamps/add-zero-debug.stamp.
+
+2010-02-19  Matthias Klose  <doko@ubuntu.com>
+
+	* Makefile.am (ADD_ZERO_CONFIGURE_ARGS): Only pass
+	--with-hotspot-src-zip if configured for alternate hotspot.
+
+2010-02-19 Andrew John Hughes  <ahughes@redhat.com>
+
+	* patches/icedtea-cacao-ignore-jdi-tests.patch:
+	Updated for b18.
+
+2010-02-19 Andrew John Hughes  <ahughes@redhat.com>
+
+	* acinclude.m4:
+	(FIND_RHINO_JAR): Clear RHINO_JAR variable
+	if it still contains "no" at the end of the
+	macro.
+
+2010-02-19  Gary Benson  <gbenson@redhat.com>
+
+	* ports/hotspot/src/cpu/zero/vm/globals_zero.hpp:
+	Increase StackShadowPages from 3 to 5 on 32-bit platforms.
+	* ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp
+	(os::atomic_copy64): Added s390 specific implementation.
+
+2010-02-19 Andrew John Hughes  <ahughes@redhat.com>
+
+	* Makefile.am:
+	Add java/nio/StringCharBuffer.java to
+	OPENJDK_BOOTSTRAP_CLASSES.  Some versions
+	of ecj seem not to build it automatically.
+
+2010-02-18 Andrew John Hughes  <ahughes@redhat.com>
+
+	Drop hotspot-tools targets to simplify
+	bootstrapping OpenJDK.
+	* Makefile.am:
+	Add additional OPENJDK_BOOTSTRAP_DIRS
+	to compensate for the removal of the
+	hotspot-tools classes.  Add OPENJDK_TREE
+	variable as a pseudo-target for targets
+	that require a patched OpenJDK tree with
+	Zero, Shark and any overlays.  Remove hotspot-tools
+	aliases.  Remove tools-copy from EXTRA_DIST.
+	(distclean-local): No more need to remove hotspot-tools
+	and hotspot-tools-source-files.txt.
+	(extract-ecj.stamp): Depend on OPENJDK_TREE.
+	(bootstrap-directory-ecj.stamp): Always create
+	the ecj tools.jar as a symlink to rt.jar to
+	appease the HotSpot build.
+	(icedtea.stamp): Use OPENJDK_TREE in place of
+	patch, overlay and ports (it implies all three).
+	(icedtea-debug.stamp): Likewise.
+	(icedtea-ecj.stamp): Likewise.
+	(hotspot-helper): Drop hotspot-tools dependency.
+	(rewriter.stamp): Explicitly create destination
+	directory as Sun's javac doesn't.
+	(cacao.stamp): Depend on OPENJDK_TREE.
+	(hotspot-tools-copy-source-files.stamp): Removed.
+	(hotspot-tools-source-files.txt): Removed.
+	(hotspot-tools-class-files.stamp): Removed.
+	(clean-hotspot-tools): Removed.
+	(hotspot-tools.stamp): Removed.
+	(rt-source-files.txt): Depend on OPENJDK_TREE.
+	(rt.stamp): Simplify use of jar.
+	(bootstrap/jdk1.7.0/jre/lib/tools.jar): Create symlink
+	rather than a separate jar file.
+	(clean-tools-jar): Remove hotspot-tools stuff.
+	(plugs.stamp): Depend on tools.jar
+	* tools-copy/tools-corba-copy-files.txt,
+	* tools-copy/tools-jaxws-copy-files.txt,
+	* tools-copy/tools-jdk-copy-files.txt,
+	* tools-copy/tools-langtools-copy-files.txt:
+	Removed.
+
 2010-02-17 Andrew John Hughes  <ahughes@redhat.com>
 
 	* Makefile.am:
@@ -33,6 +311,13 @@
 
 2010-02-17 Andrew John Hughes  <ahughes@redhat.com>
 
+	* Makefile.am:
+	Remove dead JAXWS and JAXP sourcepaths.
+	Add sun.misc.Unsafe explicitly to ensure
+	it is compiled as a bootstrap class.
+
+2010-02-17 Andrew John Hughes  <ahughes@redhat.com>
+
 	* patches/icedtea-6761856-freetypescaler.patch:
 	Dropped; applied upstream.
 	* Makefile.am: Remove above patch.
@@ -752,7 +1037,7 @@
 	* Makefile.am:
 	Drop redundant (and broken in some cases)
 	symbolic link.
-	
+
 2009-12-27  Andrew John Hughes  <ahughes@redhat.com>
 
 	* patches/ecj/icedtea-jaxp-dependency.patch:
--- a/Makefile.am	Thu Feb 25 18:48:18 2010 +0000
+++ b/Makefile.am	Thu Feb 25 18:50:04 2010 +0000
@@ -66,7 +66,7 @@
 # FIXME (netx): NetX source directories go here
 
 OPENJDK_SOURCEPATH_DIRS = \
-        $(SHARE):$(SOLARIS):$(LANGTOOLS):$(JAXP):$(CORBA):$(JAXWS)
+        $(SHARE):$(SOLARIS):$(LANGTOOLS):$(CORBA)
 
 ABS_SOURCE_DIRS = $(abs_top_builddir)/generated:$(abs_top_builddir)/rt:$(abs_top_srcdir)/rt:$(LIVECONNECT_SRCS)
 
@@ -82,10 +82,18 @@
 	$(SHARE)/java/rmi \
 	$(SHARE)/sun/awt/ \
 	$(SHARE)/sun/nio/cs \
+	$(SHARE)/sun/rmi/rmic \
+	$(SHARE)/sun/tools/java \
 	$(SHARE)/javax/net/ssl \
 	$(SHARE)/javax/script \
 	$(SHARE)/javax/security/auth/kerberos \
-	$(SHARE)/javax/security/sasl
+	$(SHARE)/javax/security/sasl \
+	$(LANGTOOLS)/com/sun/mirror \
+	$(LANGTOOLS)/com/sun/tools/apt
+
+ICEDTEA_BOOTSTRAP_CLASSES = \
+	$(SHARE)/java/nio/StringCharBuffer.java \
+	$(SHARE)/sun/misc/Unsafe.java
 
 # FIXME (javac): Settings for javac go here
 
@@ -159,17 +167,15 @@
 # include the makefile in pulseaudio subdir
 PULSE_JAVA_DIR = $(abs_top_srcdir)/pulseaudio
 PULSE_JAVA_NATIVE_SRCDIR = $(PULSE_JAVA_DIR)/src/native
+PULSE_JAVA_NATIVE_SRCS = $(wildcard $(PULSE_JAVA_NATIVE_SRCDIR)/*.c)
 PULSE_JAVA_BUILDDIR = $(abs_top_builddir)/pulseaudio
 PULSE_JAVA_NATIVE_BUILDDIR = $(PULSE_JAVA_BUILDDIR)/native
+PULSE_JAVA_NATIVE_OBJECTS = \
+	$(subst $(PULSE_JAVA_NATIVE_SRCDIR),$(PULSE_JAVA_NATIVE_BUILDDIR),$(patsubst %.c,%.o,$(PULSE_JAVA_NATIVE_SRCS)))
 PULSE_JAVA_JAVA_SRCDIR = $(PULSE_JAVA_DIR)/src/java
 PULSE_JAVA_CLASS_DIR = $(PULSE_JAVA_BUILDDIR)/classes
-else 
-PULSE_JAVA_DIR =
-PULSE_JAVA_NATIVE_SRCDIR =
-PULSE_JAVA_BUILDDIR =
-PULSE_JAVA_NATIVE_BUILDDIR =
-PULSE_JAVA_JAVA_SRCDIR =
-PULSE_JAVA_CLASS_DIR =
+PULSE_JAVA_TARGET = stamps/pulse-java.stamp
+PULSE_JAVA_CLEAN_TARGET = clean-pulse-java
 endif
 
 # FIXME (HotSpot): no longer needed
@@ -205,6 +211,10 @@
   INITIAL_BOOTSTRAP_LINK_STAMP = stamps/bootstrap-directory-symlink-ecj.stamp
 endif
 
+# Target to ensure a patched OpenJDK tree containing Zero & Shark
+# and any overlays is available in $(abs_top_builddir)/openjdk
+OPENJDK_TREE = stamps/overlay.stamp
+
 # Sources list
 
 PLUGIN_TEST_SRCS = $(abs_top_srcdir)/plugin/tests/LiveConnect/*.java
@@ -563,7 +573,7 @@
 
 EXTRA_DIST = rt generated \
 	$(abs_top_srcdir)/patches/* \
-	tools-copy contrib ports \
+	contrib ports \
 	extra overlays \
 	javaws.png javaws.desktop visualvm.desktop \
 	jconsole.desktop policytool.desktop \
@@ -578,7 +588,8 @@
 	scripts/jni_create_stap.c \
 	scripts/jni_desc \
 	rewriter/agpl-3.0.txt \
-	$(REWRITER_SRCS)
+	$(REWRITER_SRCS) \
+	THANKYOU
 
 # Top-Level Targets
 # =================
@@ -588,17 +599,15 @@
 check-local: jtregcheck
 
 #FIXME (clean): Should become clean-local.
-distclean-local: clean-copy clean-jtreg clean-jtreg-reports clean-pulse-java 
+distclean-local: clean-copy clean-jtreg clean-jtreg-reports $(PULSE_JAVA_CLEAN_TARGET)
 	rm -rf stamps
 	rm -f rt-source-files.txt \
-	  hotspot-tools-source-files.txt \
 	  extra-source-files.txt
 	rm -rf bootstrap
 	rm -rf lib
 	rm -rf extra-lib
 	rm -rf openjdk-ecj
 	rm -rf openjdk
-	rm -rf hotspot-tools
 	rm -rf rt/netscape
 	rm -rf visualvm
 	rm -rf netbeans
@@ -629,7 +638,7 @@
 	clean-bootstrap-directory-symlink-ecj icedtea icedtea-debug \
 	clean-icedtea icedtea-against-icedtea clean-icedtea-ecj clean-plugs \
 	clean-tools-jar clean-visualvm clean-nbplatform \
-	clean-copy clean-hotspot-tools clean-rt $(ICEDTEAPLUGIN_CLEAN) \
+	clean-copy clean-rt $(ICEDTEAPLUGIN_CLEAN) \
 	$(ICEDTEANPPLUGIN_CLEAN) hotspot hotspot-helper clean-extra clean-jtreg \
 	clean-jtreg-reports 
 
@@ -1127,7 +1136,7 @@
 
 # Copy over OpenJDK sources for ecj.
 # FIXME (missing): Rename to clone-ecj.
-stamps/extract-ecj.stamp: stamps/overlay.stamp
+stamps/extract-ecj.stamp: $(OPENJDK_TREE)
 	if ! test -d openjdk-ecj ; then \
 	    cp -pPRl openjdk openjdk-ecj ; \
 	fi
@@ -1232,14 +1241,12 @@
 	  rm -f bootstrap/ecj/include/$$i; \
 	  ln -s $(SYSTEM_JDK_DIR)/include/$$i bootstrap/ecj/include/$$i; \
 	done; \
-	if test -f $(abs_top_builddir)/bootstrap/jdk1.7.0/jre/lib/tools.jar ; \
-	then \
-	  mkdir -p $(abs_top_builddir)/bootstrap/ecj/lib ; \
-	  ln -sf $(abs_top_builddir)/bootstrap/jdk1.7.0/jre/lib/tools.jar \
-	    $(abs_top_builddir)/bootstrap/ecj/lib/tools.jar ; \
-	fi
 	cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \
 	  $(abs_top_builddir)/bootstrap/ecj/jre/lib/rt.jar;
+# For HotSpot
+	mkdir -p $(abs_top_builddir)/bootstrap/ecj/lib ; \
+	ln -sf $(abs_top_builddir)/bootstrap/ecj/jre/lib/rt.jar \
+	  $(abs_top_builddir)/bootstrap/ecj/lib/tools.jar ; \
 	mkdir -p stamps
 	touch stamps/bootstrap-directory-ecj.stamp
 
@@ -1299,11 +1306,9 @@
 # If you change anything here in the icedtea target, please make sure
 # you change it in the icedtea-debug target as well.
 stamps/icedtea.stamp: stamps/bootstrap-directory-symlink.stamp \
-	stamps/hotspot-tools.stamp stamps/plugs.stamp \
-	stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \
-	$(ICEDTEAPLUGIN_TARGET) $(ICEDTEANPPLUGIN_TARGET) \
-	extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp \
-	stamps/pulse-java.stamp stamps/rewrite-rhino.stamp
+	stamps/plugs.stamp $(OPENJDK_TREE) stamps/plugin.stamp \
+	extra-lib/about.jar stamps/cacao.stamp \
+	stamps/visualvm.stamp $(PULSE_JAVA_TARGET) stamps/rewrite-rhino.stamp
 	$(ARCH_PREFIX) $(MAKE) \
 	  $(ICEDTEA_ENV) \
 	  -C openjdk \
@@ -1326,9 +1331,9 @@
 endif
 endif
 if ENABLE_PULSE_JAVA
-	cp -pPRf libpulse-java.so \
+	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
 	  $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
-	cp -pPRf libpulse-java.so \
+	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
 	  $(BUILD_OUTPUT_DIR)/j2re-image/lib/$(INSTALL_ARCH_DIR)
 	cp -pPRf pulse-java.jar \
 	  $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/ext
@@ -1402,11 +1407,9 @@
 	touch stamps/icedtea.stamp
 
 stamps/icedtea-debug.stamp: stamps/bootstrap-directory-symlink.stamp \
-	stamps/hotspot-tools.stamp stamps/plugs.stamp \
-	stamps/ports.stamp stamps/patch.stamp stamps/overlay.stamp \
-	$(ICEDTEAPLUGIN_TARGET) $(ICEDTEANPPLUGIN_TARGET) \
-	extra-lib/about.jar stamps/cacao.stamp stamps/visualvm.stamp \
-	stamps/pulse-java.stamp stamps/rewrite-rhino.stamp
+	stamps/plugs.stamp $(OPENJDK_TREE) stamps/plugin.stamp \
+	extra-lib/about.jar stamps/cacao.stamp \
+	stamps/visualvm.stamp $(PULSE_JAVA_TARGET) stamps/rewrite-rhino.stamp
 	$(ARCH_PREFIX) $(MAKE) \
 	  $(ICEDTEA_ENV) \
 	  -C openjdk \
@@ -1429,9 +1432,9 @@
 endif
 endif
 if ENABLE_PULSE_JAVA
-	cp -pPRf libpulse-java.so \
+	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
 	  $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/$(INSTALL_ARCH_DIR)
-	cp -pPRf libpulse-java.so \
+	cp -pPRf $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so \
 	  $(BUILD_OUTPUT_DIR)-debug/j2re-image/lib/$(INSTALL_ARCH_DIR)
 	cp -pPRf pulse-java.jar \
 	  $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/ext
@@ -1474,31 +1477,31 @@
 	printf -- '-cacao ALIASED_TO -server\n' >> $(BUILD_DEBUG_JRE_ARCH_DIR)/jvm.cfg
 endif
 if ENABLE_SYSTEMTAP
-	mkdir -p $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset ; \
+	mkdir -p $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/tapset ; \
 	grep "client IGNORE" $(BUILD_JRE_ARCH_DIR)/jvm.cfg; \
 	if test $$? -eq 0; then \
 	  sed -e '/\/client\/libjvm.so/d' \
 	    < $(abs_top_builddir)/tapset/hotspot.stp \
-	    > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
+	    > $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/tapset/hotspot.stp; \
 	  sed -e '/\/client\/libjvm.so/d' \
 	    < $(abs_top_builddir)/tapset/hotspot_jni.stp \
-	    > $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
+	    > $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/tapset/hotspot_jni.stp; \
 	else \
 	  cp $(abs_top_builddir)/tapset/hotspot.stp \
-	    $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot.stp; \
+	    $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/tapset/hotspot.stp; \
 	  cp $(abs_top_builddir)/tapset/hotspot_jni.stp \
-	    $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/hotspot_jni.stp; \
+	    $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/tapset/hotspot_jni.stp; \
 	fi; \
 	cp $(abs_top_builddir)/tapset/jstack.stp \
-	  $(BUILD_OUTPUT_DIR)/j2sdk-image/tapset/jstack.stp
+	  $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/tapset/jstack.stp
 endif
 if ENABLE_NSS
 	cp $(abs_top_builddir)/nss.cfg \
-	  $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib/security;
+	  $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib/security;
 endif
 if WITH_TZDATA_DIR
 	cp $(abs_top_builddir)/tz.properties \
-	  $(BUILD_OUTPUT_DIR)/j2sdk-image/jre/lib;
+	  $(BUILD_OUTPUT_DIR)-debug/j2sdk-image/jre/lib;
 endif
 	@echo "IcedTea (debug build) is served:" \
 	  $(BUILD_OUTPUT_DIR)-debug
@@ -1531,8 +1534,8 @@
 # ===================
 
 stamps/icedtea-ecj.stamp: stamps/bootstrap-directory-symlink-ecj.stamp \
-	stamps/hotspot-tools.stamp stamps/plugs.stamp \
-	stamps/patch-ecj.stamp stamps/cacao.stamp stamps/rewrite-rhino.stamp
+	stamps/plugs.stamp stamps/patch-ecj.stamp stamps/cacao.stamp \
+	stamps/rewrite-rhino.stamp
 	$(ARCH_PREFIX) $(MAKE) \
 	  $(ICEDTEA_ENV_ECJ) \
 	  -C openjdk-ecj/ \
@@ -1554,8 +1557,7 @@
 	@echo "Hotspot is served:" $(ECJ_BUILD_OUTPUT_DIR)/j2sdk-image
 
 hotspot-helper: stamps/bootstrap-directory-symlink-ecj.stamp \
-	stamps/hotspot-tools.stamp stamps/plugs.stamp \
-	stamps/patch-ecj.stamp
+	stamps/plugs.stamp stamps/patch-ecj.stamp
 	$(ARCH_PREFIX) $(MAKE) \
 	  $(ICEDTEA_ENV_ECJ) \
 	  -C openjdk-ecj/ hotspot
@@ -1594,6 +1596,7 @@
 	mkdir -p $(NPPLUGIN_DIR) && \
 	cd $(NPPLUGIN_DIR) && \
 	$(CXX) $(CXXFLAGS) \
+	  -DJDK_UPDATE_VERSION="\"$(JDK_UPDATE_VERSION)\"" \
 	  -DPLUGIN_VERSION="\"$(PLUGIN_VERSION)\"" \
 	  -DMOZILLA_VERSION_COLLAPSED="$(MOZILLA_VERSION_COLLAPSED)" \
 	  $(GLIB_CFLAGS) \
@@ -1691,21 +1694,20 @@
 
 #FIXME (meta): Need pulse-java meta target
 
-stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp stamps/pulse-java-headers.stamp
 if ENABLE_PULSE_JAVA
-	mkdir -p $(PULSE_JAVA_NATIVE_BUILDDIR)
-	$(CC) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include $(PULSE_JAVA_NATIVE_SRCDIR)/jni-common.c -o $(PULSE_JAVA_NATIVE_BUILDDIR)/jni-common.o
-	$(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include -I$(PULSE_JAVA_NATIVE_BUILDDIR) $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_EventLoop.c -o $(PULSE_JAVA_NATIVE_BUILDDIR)/org_classpath_icedtea_pulseaudio_EventLoop.o
-	$(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include -I$(PULSE_JAVA_NATIVE_BUILDDIR) $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Operation.c -o $(PULSE_JAVA_NATIVE_BUILDDIR)/org_classpath_icedtea_pulseaudio_Operation.o
-	$(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include -I$(PULSE_JAVA_NATIVE_BUILDDIR) $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_Stream.c -o $(PULSE_JAVA_NATIVE_BUILDDIR)/org_classpath_icedtea_pulseaudio_Stream.o
-	$(CC) $(LIBPULSE_CFLAGS) $(CFLAGS) -fPIC -c -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include -I$(PULSE_JAVA_NATIVE_BUILDDIR) $(PULSE_JAVA_NATIVE_SRCDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.c -o $(PULSE_JAVA_NATIVE_BUILDDIR)/org_classpath_icedtea_pulseaudio_PulseAudioTargetPort.o
-	$(CC) $(LDFLAGS) -shared $(PULSE_JAVA_NATIVE_BUILDDIR)/org_*pulseaudio*.o $(PULSE_JAVA_NATIVE_BUILDDIR)/jni-common.o $(LIBPULSE_LIBS) -o libpulse-java.so
-endif
+$(PULSE_JAVA_NATIVE_BUILDDIR)/%.o: $(PULSE_JAVA_NATIVE_SRCDIR)/%.c stamps/pulse-java-headers.stamp
+	$(CC) $(CFLAGS) -fPIC -I$(ICEDTEA_BOOT_DIR)/include/linux -I$(ICEDTEA_BOOT_DIR)/include \
+	 -I$(PULSE_JAVA_NATIVE_BUILDDIR) -o $@ -c $<
+
+$(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so: $(PULSE_JAVA_NATIVE_OBJECTS)
+	$(CC) $(LDFLAGS) -shared $(PULSE_JAVA_NATIVE_OBJECTS) $(LIBPULSE_LIBS) \
+	 -o $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so
+
+stamps/pulse-java.stamp: stamps/pulse-java-jar.stamp $(PULSE_JAVA_NATIVE_BUILDDIR)/libpulse-java.so
 	mkdir -p stamps
 	touch stamps/pulse-java.stamp
 
 stamps/pulse-java-jar.stamp: stamps/pulse-java-class.stamp
-if ENABLE_PULSE_JAVA
 	mkdir -p $(PULSE_JAVA_CLASS_DIR);
 	if ! test -d $(ICEDTEA_BOOT_DIR) ; \
 	then \
@@ -1713,53 +1715,41 @@
 	else \
 	  $(ICEDTEA_BOOT_DIR)/bin/jar cf pulse-java.jar -C $(PULSE_JAVA_CLASS_DIR) .; \
 	fi
-endif
 	mkdir -p stamps
 	touch stamps/pulse-java-jar.stamp
 
 stamps/pulse-java-class.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP)
-if ENABLE_PULSE_JAVA
 	mkdir -p $(PULSE_JAVA_CLASS_DIR)
 	(cd $(PULSE_JAVA_JAVA_SRCDIR); \
-	 $(ICEDTEA_BOOT_DIR)/bin/javac -g -d $(PULSE_JAVA_CLASS_DIR)\
+	 $(ICEDTEA_BOOT_DIR)/bin/javac -g -d $(PULSE_JAVA_CLASS_DIR) \
 	  -bootclasspath '$(ICEDTEA_BOOT_DIR)/jre/lib/rt.jar' \
-	  org/classpath/icedtea/pulseaudio/*.java\
+	  org/classpath/icedtea/pulseaudio/*.java \
 	)
 	cp -r $(PULSE_JAVA_JAVA_SRCDIR)/META-INF $(PULSE_JAVA_CLASS_DIR)
 	chmod -R ug+w $(PULSE_JAVA_CLASS_DIR)/META-INF
-endif
 	mkdir -p stamps
 	touch stamps/pulse-java-class.stamp
 
-
 stamps/pulse-java-headers.stamp: stamps/pulse-java-class.stamp
-if ENABLE_PULSE_JAVA
-	if ! test -d $(ICEDTEA_BOOT_DIR) ; \
-	then \
-	  $(JAVAH) -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \
-	  $(JAVAH) -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \
-	  $(JAVAH) -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \
-	  $(JAVAH) -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \
-	  $(JAVAH) -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \
-	else \
-	  $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.EventLoop ; \
-	  $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Stream ; \
-	  $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.Operation; \
-	  $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \
-	  $(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \
-	fi
-endif
+	mkdir -p $(PULSE_JAVA_NATIVE_BUILDDIR)
+	$(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
+	  org.classpath.icedtea.pulseaudio.EventLoop ; \
+	$(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
+	  org.classpath.icedtea.pulseaudio.Stream ; \
+	$(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
+	  org.classpath.icedtea.pulseaudio.Operation; \
+	$(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
+	  org.classpath.icedtea.pulseaudio.PulseAudioSourcePort ; \
+	$(ICEDTEA_BOOT_DIR)/bin/javah -d $(PULSE_JAVA_NATIVE_BUILDDIR) -classpath $(PULSE_JAVA_CLASS_DIR) \
+	  org.classpath.icedtea.pulseaudio.PulseAudioTargetPort ; \
 	mkdir -p stamps
 	touch stamps/pulse-java-headers.stamp
 
-
 clean-pulse-java:
-if ENABLE_PULSE_JAVA
 	[ -z "$(PULSE_JAVA_NATIVE_BUILDDIR)" ] || rm -rf $(PULSE_JAVA_NATIVE_BUILDDIR)
 	[ -z "$(PULSE_JAVA_CLASS_DIR)" ] || rm -rf $(PULSE_JAVA_CLASS_DIR)
 	rm -f stamps/pulse-java*.stamp
 	rm -f pulse-java.jar
-	rm -f libpulse-java.so
 endif
 
 # end of pulse-java
@@ -1768,6 +1758,7 @@
 
 stamps/rewriter.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP)
 if WITH_RHINO
+	mkdir -p $(abs_top_builddir)/rewriter
 	(cd $(abs_top_srcdir)/rewriter ; \
 	 $(ICEDTEA_BOOT_DIR)/bin/javac -g \
 	 -d $(abs_top_builddir)/rewriter $(REWRITER_SRCS) \
@@ -1792,7 +1783,8 @@
 	   sed -ie 's#org\.mozilla#sun.org.mozilla#g' $$new_file ; \
 	 done \
 	)
-	(cd rhino/rhino.new ; jar cfm ../rhino.jar META-INF/MANIFEST.MF sun )
+	(cd rhino/rhino.new ; \
+	$(ICEDTEA_BOOT_DIR)/bin/jar cfm ../rhino.jar META-INF/MANIFEST.MF sun )
 endif
 	mkdir -p stamps
 	touch stamps/rewrite-rhino.stamp
@@ -1851,7 +1843,7 @@
 
 # CACAO
 
-stamps/cacao.stamp: stamps/replace-hotspot.stamp stamps/rt-class-files.stamp
+stamps/cacao.stamp: $(OPENJDK_TREE) stamps/rt-class-files.stamp
 if BUILD_CACAO
 if !USE_SYSTEM_CACAO
 	cd cacao/cacao && \
@@ -1928,9 +1920,12 @@
 			'--with-openjdk '--with-openjdk=% , \
 		$(CONFIGURE_ARGS)) \
 	$(if $(findstring --with-openjdk-src-zip=, $(CONFIGURE_ARGS)),, \
-	  --with-openjdk-src-zip=$(abs_top_builddir)/$(OPENJDK_SRC_ZIP)) \
+	  --with-openjdk-src-zip=$(abs_top_builddir)/$(OPENJDK_SRC_ZIP))
+if WITH_ALT_HSBUILD
+ADD_ZERO_CONFIGURE_ARGS += \
 	$(if $(findstring --with-hotspot-src-zip=, $(CONFIGURE_ARGS)),, \
 	  --with-hotspot-src-zip=$(abs_top_builddir)/$(HOTSPOT_SRC_ZIP))
+endif
 
 ADD_ZERO_EXTRA_BUILD_ENV = \
 	BUILD_LANGTOOLS=false ALT_LANGTOOLS_DIST=$(ICEDTEA_BUILD_DIR)/langtools/dist \
@@ -2023,7 +2018,7 @@
 
 # jtreg
 
-stamps/jtreg.stamp: stamps/icedtea.stamp
+stamps/jtreg.stamp: stamps/icedtea.stamp stamps/add-zero.stamp stamps/add-cacao.stamp
 	rm -rf test/jtreg/classes
 	mkdir -p test/jtreg/classes
 	$(ICEDTEA_BOOT_DIR)/bin/javac -g -d test/jtreg/classes -source 1.5 \
@@ -2112,75 +2107,18 @@
 
 # Support classes for non-OpenJDK bootstraps
 
-# FIXME (plugs): Remove this
-# tools.jar class files.
-stamps/hotspot-tools-copy-source-files.stamp: stamps/overlay.stamp
-	for copy_dir in \
-	  `cat $(abs_top_srcdir)/tools-copy/tools-jdk-copy-files.txt` ; \
-	do \
-	  mkdir -p hotspot-tools/$$copy_dir ; \
-	  cp -pPRf openjdk/jdk/src/share/classes/$$copy_dir/* \
-	    hotspot-tools/$$copy_dir ; \
-	done
-
-	for copy_dir in \
-	  `cat $(abs_top_srcdir)/tools-copy/tools-langtools-copy-files.txt` ; \
-	do \
-	  mkdir -p hotspot-tools/$$copy_dir ; \
-	  cp -pPRf openjdk/langtools/src/share/classes/$$copy_dir/* \
-	    hotspot-tools/$$copy_dir ; \
-	done
-
-	for copy_dir in \
-	  `cat $(abs_top_srcdir)/tools-copy/tools-corba-copy-files.txt` ; \
-	do \
-	  mkdir -p hotspot-tools/$$copy_dir ; \
-	  cp -pPRf openjdk/corba/src/share/classes/$$copy_dir/* \
-	    hotspot-tools/$$copy_dir ; \
-	done
-
-	mkdir -p stamps
-	touch stamps/hotspot-tools-copy-source-files.stamp
-
-# FIXME (plugs): Remove this
-hotspot-tools-source-files.txt: stamps/replace-hotspot.stamp \
-	stamps/hotspot-tools-copy-source-files.stamp
-	find hotspot-tools -name '*.java' | sort > $@
-	mkdir -p lib/hotspot-tools
-
-# FIXME (plugs): Remove this
-stamps/hotspot-tools-class-files.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP) \
-  hotspot-tools-source-files.txt
-	$(ICEDTEA_BOOT_DIR)/bin/javac $(MEMORY_LIMIT) -g \
-	  -d lib/hotspot-tools \
-	  -source 1.5 \
-	  -sourcepath \
-	    'hotspot-tools:$(OPENJDK_SOURCEPATH_DIRS):$(ABS_SOURCE_DIRS)' \
-	  -classpath $(SYSTEM_JDK_DIR)/jre/lib/rt.jar \
-	  -bootclasspath \'\' @hotspot-tools-source-files.txt ;
-	mkdir -p stamps
-	touch stamps/hotspot-tools-class-files.stamp
-
-# FIXME (plugs): Remove this
-clean-hotspot-tools:
-	rm -rf lib/hotspot-tools
-	rm -f stamps/hotspot-tools-class-files.stamp
-	rm -f hotspot-tools-source-files.txt
-	rm -f stamps/hotspot-tools-copy-source-files.stamp
-
-# FIXME (plugs): Remove this
-stamps/hotspot-tools.stamp: bootstrap/jdk1.7.0/jre/lib/tools.jar
-	mkdir -p stamps
-	touch stamps/hotspot-tools.stamp
-
 # rt.jar additional class files.
-rt-source-files.txt: stamps/replace-hotspot.stamp 
+rt-source-files.txt: $(OPENJDK_TREE)
 	find $(abs_top_srcdir)/rt $(abs_top_builddir)/rt $(LIVECONNECT_SRCS) -name '*.java' \
 	  | sort -u > $@
 	for dir in $(ICEDTEA_BOOTSTRAP_DIRS) ; \
 	do \
 	  $(FIND) $(abs_top_builddir)/$$dir -name '*.java' >> $@; \
 	done
+	for files in $(ICEDTEA_BOOTSTRAP_CLASSES) ; \
+	do \
+	  echo $$files >> $@ ; \
+	done
 
 stamps/rt-class-files.stamp: $(INITIAL_BOOTSTRAP_LINK_STAMP) rt-source-files.txt
 	mkdir -p lib/rt
@@ -2201,13 +2139,19 @@
 	rm -f stamps/rt.stamp
 	rm -f rt-source-files.txt
 
+stamps/rt.stamp: stamps/rt-class-files.stamp \
+ stamps/bootstrap-directory-ecj.stamp
+	mkdir -p stamps
+if LACKS_SUN_AWT_TOOLKIT
+	$(ICEDTEA_BOOT_DIR)/bin/jar uf $(ICEDTEA_RT) -C lib/rt com -C lib/rt java \
+	  -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ;
+endif
+	touch stamps/rt.stamp
+
 # tools.jar
-bootstrap/jdk1.7.0/jre/lib/tools.jar: $(INITIAL_BOOTSTRAP_LINK_STAMP) \
-  stamps/hotspot-tools-class-files.stamp
+bootstrap/jdk1.7.0/jre/lib/tools.jar: 
 	mkdir -p bootstrap/jdk1.7.0/jre/lib/
-	$(ICEDTEA_BOOT_DIR)/bin/jar cf $@ -C lib/hotspot-tools com \
-	  -C lib/hotspot-tools sun \
-          -C lib/hotspot-tools org -C lib/hotspot-tools java ;
+	ln -sf $(ICEDTEA_RT) $(abs_top_builddir)/bootstrap/jdk1.7.0/jre/lib/tools.jar
 	if test -d bootstrap/ecj ; \
 	then \
 	  mkdir -p bootstrap/ecj/lib/; \
@@ -2215,28 +2159,14 @@
 	    $(abs_top_builddir)/bootstrap/ecj/lib/tools.jar; \
 	fi
 
-clean-tools-jar: clean-hotspot-tools
-	rm -f stamps/hotspot-tools.stamp
-	rm -rf tools/
+clean-tools-jar: 
 	rm -f bootstrap/jdk1.7.0/jre/lib/tools.jar
+	if test -d bootstrap/ecj/lib ; then \
+	  rm -f $(abs_top_builddir)/bootstrap/ecj/lib/tools.jar; \
+	fi
 
-stamps/rt.stamp: stamps/rt-class-files.stamp \
- stamps/bootstrap-directory-ecj.stamp
-	mkdir -p stamps
-if LACKS_SUN_AWT_TOOLKIT
-	if ! test -d $(ICEDTEA_BOOT_DIR) ; \
-	then \
-	  $(JAR) uf $(ICEDTEA_RT) -C lib/rt com -C lib/rt java \
-	    -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \
-	else \
-	  $(ICEDTEA_BOOT_DIR)/bin/jar uf $(ICEDTEA_RT) -C lib/rt com -C lib/rt java \
-	    -C lib/rt javax $(LIVECONNECT_DIR) -C lib/rt net -C lib/rt sun ; \
-	fi
-endif
-	touch stamps/rt.stamp
-
-stamps/plugs.stamp: stamps/rt.stamp
-	mkdir -p bootstrap/jdk1.7.0/jre/lib
+# rt-closed.jar
+stamps/plugs.stamp: stamps/rt.stamp bootstrap/jdk1.7.0/jre/lib/tools.jar
 	$(ICEDTEA_BOOT_DIR)/bin/jar cf $(ICEDTEA_PLUGS) \
 	  -C lib/rt com/sun/jmx/snmp $(LIVECONNECT_DIR) \
 	  -C lib/rt net -C lib/rt javax/jnlp ;
@@ -2261,7 +2191,7 @@
 
 cacao: stamps/cacao.stamp
 
-visualvm: stamps/visualvm.stamp
+clean: distclean-local
 
 nbplatform: stamps/nbplatform.stamp
 
@@ -2279,48 +2209,44 @@
 
 extract-ecj: stamps/extract-ecj.stamp
 
-icedtea: stamps/icedtea.stamp
+hotspot-ports: stamps/ports.stamp
+
+icedtea: stamps/icedtea.stamp stamps/add-cacao.stamp stamps/add-zero.stamp
 
 icedtea-against-ecj: stamps/icedtea-against-ecj.stamp
 
-icedtea-debug: stamps/icedtea-debug.stamp
+icedtea-debug: stamps/icedtea-debug.stamp stamps/add-cacao-debug.stamp stamps/add-zero-debug.stamp
 
 icedtea-ecj: stamps/icedtea-ecj.stamp
 
+jtreg: stamps/jtreg.stamp
+
 native-ecj: stamps/native-ecj.stamp
 
+overlay: stamps/overlay.stamp
+
+patch: stamps/patch.stamp
+
 patch-ecj: stamps/patch-ecj.stamp
 
-patch: stamps/patch.stamp
-
 patch-fsg: stamps/patch-fsg.stamp
 
-overlay: stamps/overlay.stamp
+plugin: stamps/plugin.stamp
+
+plugin-tests: stamps/plugin-tests.stamp
+
+plugs: stamps/plugs.stamp
+
+pulse-java: stamps/pulse-java.stamp
 
 rewriter: stamps/rewriter.stamp
 
 rewrite-rhino: stamps/rewrite-rhino.stamp
 
-plugs: stamps/plugs.stamp
+replace-hotspot: stamps/replace-hotspot.stamp
 
 rt-jar: stamps/rt.stamp
 
 rt-class-files: stamps/rt-class-files.stamp
 
-replace-hotspot: stamps/replace-hotspot.stamp
-
-hotspot-tools-class-files: stamps/hotspot-tools-class-files.stamp
-
-hotspot-tools-copy-source-files: stamps/hotspot-tools-copy-source-files.stamp
-
-hotspot-tools: stamps/hotspot-tools.stamp
-
-hotspot-ports: stamps/ports.stamp
-
-clean: distclean-local
-
-jtreg: stamps/jtreg.stamp
-
-plugin: stamps/plugin.stamp
-
-plugin-tests: stamps/plugin-tests.stamp
+visualvm: stamps/visualvm.stamp
--- a/acinclude.m4	Thu Feb 25 18:48:18 2010 +0000
+++ b/acinclude.m4	Thu Feb 25 18:50:04 2010 +0000
@@ -659,6 +659,10 @@
   fi
   AC_MSG_RESULT(${RHINO_JAR})
   AM_CONDITIONAL(WITH_RHINO, test x"${RHINO_JAR}" != "xno")
+dnl Clear RHINO_JAR if it doesn't contain a valid filename
+  if test x"${RHINO_JAR}" = "xno"; then
+    RHINO_JAR=
+  fi
   AC_SUBST(RHINO_JAR)
 ])
 
--- a/patches/icedtea-cacao-ignore-jdi-tests.patch	Thu Feb 25 18:48:18 2010 +0000
+++ b/patches/icedtea-cacao-ignore-jdi-tests.patch	Thu Feb 25 18:50:04 2010 +0000
@@ -1,323 +1,28 @@
---- openjdk/jdk/test/com/sun/jdi/TemplateTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/TemplateTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -26,6 +26,7 @@
- // TEMPLATE: delete TEMPLATE lines
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 0000000
-  *  @summary <SUMMARY>
-  *
---- openjdk/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 6394084
- #  @summary Redefine class can't handle addition of 64 bit constants in JDK1.5.0_05
- #
---- openjdk/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /**
-  *  @test/nodynamiccopyright/
-+ *  @ignore cacao nyi
-  *  @bug 4952629 4870514
-  *  @summary REGRESSION: javac generates a spurious line number entry on } else {
-  *
---- openjdk/jdk/test/com/sun/jdi/Redefine-g.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/Redefine-g.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4777868
- #  @summary Compile with java -g, do a RedefineClasses, and you don't get local vars
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/RedefineClasses.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineClasses.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4628760
- #  @summary RedefineClasses gets assertion: "Should be a method entry in cpcache!"
- #  @author jjh
---- openjdk/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 6431735
-  *  @summary Unexpected ClassCastException in ThreadReference.forceEarlyReturn
-  *  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/DebuggerThreadTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/DebuggerThreadTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/AcceptTimeout.java openjdk/jdk/test/com/sun/jdi/AcceptTimeout.java
+--- openjdk.orig/jdk/test/com/sun/jdi/AcceptTimeout.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/AcceptTimeout.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
  
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4513488
-  *  @summary Test for JDI: Internal JDI helper threads should setDaemon(true)
-  *
---- openjdk/jdk/test/com/sun/jdi/RedefineException.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineException.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4559100
- #  @summary The VM crashes when a method in a redefined class throws an exception.
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/LocationTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/LocationTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4419453
-  *  @summary Test that Method.location() returns the right values
-  *
---- openjdk/jdk/test/com/sun/jdi/LineNumberInfo.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/LineNumberInfo.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4238644 4238643 4238641 4944198
-  *  @summary Test javac regressions in the generation of line number info
-  *  @author Gordon Hirsch
---- openjdk/jdk/test/com/sun/jdi/GetSetLocalTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/GetSetLocalTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /** hard coded linenumbers in other tests - DO NOT CHANGE
-  *  @test/nodynamiccopyright/
-+ *  @ignore cacao nyi
-  *  @bug 4300412
-  *  @summary Test GetLocal* and SetLocal* functions
-  *
---- openjdk/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4507088
- #  @summary TTY: Add a comment delimiter to the jdb command set
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/WatchFramePop.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/WatchFramePop.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4546478
- #  @summary Enabling a watchpoint can kill following NotifyFramePops
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/FinalLocalsTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FinalLocalsTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4326648 4768329
-  *  @summary Test to verify that table entries are generated for all final
-  *           locals when a class is built for debug, even if they could be
---- openjdk/jdk/test/com/sun/jdi/ClassesByName.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ClassesByName.java	2008-10-19 15:21:54.000000000 +0000
+ /* @test
++ * @ignore cacao nyi
+  * @bug 6198277
+  * @summary Test that each ListeningConnector that supports a "timeout" argument will
+  *     timeout with TransportTimeoutException
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/AccessSpecifierTest.java openjdk/jdk/test/com/sun/jdi/AccessSpecifierTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/AccessSpecifierTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/AccessSpecifierTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4287992
-  *  @author Robert Field
-  *
---- openjdk/jdk/test/com/sun/jdi/DeoptimizeWalk.sh.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/DeoptimizeWalk.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4525714
- #  @summary jtreg test PopAsynchronousTest fails in build 85 with -Xcomp
- #  @author Jim Holmlund/Swamy Venkataramanappa
---- openjdk/jdk/test/com/sun/jdi/OptionTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/OptionTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /*
-  *   @test       OptionTest
-+ *   @ignore cacao nyi
-  *   @bug        5095072
-  *   @summary    Test for misc jdwp options, just that the option is parsed
-  *   @author     Kelly O'Hair (copied from Tim Bell's NoLaunchOptionTest)
---- openjdk/jdk/test/com/sun/jdi/VMDeathLastTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/VMDeathLastTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4420844 4449394
-  *  @summary Checks that no events are sent after VMDeath, and test vm.canBeModified
-  *
---- openjdk/jdk/test/com/sun/jdi/InstanceFilter.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/InstanceFilter.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4312961
-  *  @summary Verify that an instance filter on a MethodEntryRequest works
-  *   properly.
---- openjdk/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4448658
- #  @summary javac produces the inconsistent variable debug in while loops.
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/SuspendThreadTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/SuspendThreadTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 6485605
-  *  @summary com.sun.jdi.InternalException: Inconsistent suspend policy in internal event handler
-  *
---- openjdk/jdk/test/com/sun/jdi/UTF8Test.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/UTF8Test.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 5033550
-  *  @summary  JDWP back end uses modified UTF-8
+  *  @bug 4359628
+  *  @summary Test fix for JDI: methods Accessible.is...() lie about array types
   *
---- openjdk/jdk/test/com/sun/jdi/RedefineStep.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineStep.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4689395
- #  @summary "step over" after a class is redefined acts like "step out"
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4660756
- #  @summary TTY: Need to clear source cache after doing a redefine class
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/JdbMethodExitTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JdbMethodExitTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 6202891
- #  @summary TTY: Add support for method exit event return values to jdb
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 6270982
- #  @summary Redefine a class so that the order of external classes in
- #  the constant pool are changed.
---- openjdk/jdk/test/com/sun/jdi/ListenAddress.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ListenAddress.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 4932074
-  * @summary Test that startListening(Map) method of the com.sun.jdi.SocketListen
-  *          Connector returns an address that is usable for the address option on
---- openjdk/jdk/test/com/sun/jdi/ClassesByName2Test.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ClassesByName2Test.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4406439 4925740
-  *  @summary ClassesByName2 verifies that all the classes in the loaded class list can be found with classesByName..
-  *
---- openjdk/jdk/test/com/sun/jdi/UnpreparedByName.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/UnpreparedByName.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4368402
-  *  @summary UnpreparedByName verifies that unprepared classes
-  *  won't be returned by classesByName.
---- openjdk/jdk/test/com/sun/jdi/RedefineFinal.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineFinal.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4788344
- #  @summary RedefineClasses is an apparent no-op if instance method is final
- #
---- openjdk/jdk/test/com/sun/jdi/FramesTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FramesTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4434232
-  *  @summary Test ThreadReference.frames(int,int)
-  *
---- openjdk/jdk/test/com/sun/jdi/ArrayRangeTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ArrayRangeTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4439631
-  *  @bug 4448721
-  *  @bug 4448603
---- openjdk/jdk/test/com/sun/jdi/AfterThreadDeathTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/AfterThreadDeathTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/AfterThreadDeathTest.java openjdk/jdk/test/com/sun/jdi/AfterThreadDeathTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/AfterThreadDeathTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/AfterThreadDeathTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -326,18 +31,382 @@
   *  @bug 4364671
   *  @summary Creating a StepRequest on a nonexistant thread fails
   *
---- openjdk/jdk/test/com/sun/jdi/LaunchCommandLine.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/LaunchCommandLine.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/AllLineLocations.java openjdk/jdk/test/com/sun/jdi/AllLineLocations.java
+--- openjdk.orig/jdk/test/com/sun/jdi/AllLineLocations.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/AllLineLocations.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4248728
+  *  @summary Test ReferenceType.allLineLocations
+  *  @author Gordon Hirsch
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ArgumentValuesTest.java openjdk/jdk/test/com/sun/jdi/ArgumentValuesTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ArgumentValuesTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ArgumentValuesTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /** hard coded linenumbers in other tests - DO NOT CHANGE
+  *  @test/nodynamiccopyright/
++ *  @ignore cacao nyi
+  *  @bug 4490824
+  *  @summary JDI: provide arguments when no debug attributes present
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh openjdk/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4422141 4695338
+ #  @summary TTY: .length field for arrays in print statements in jdb not recognized
+ #           TTY: dump <ArrayReference> command not implemented.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ArrayRangeTest.java openjdk/jdk/test/com/sun/jdi/ArrayRangeTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ArrayRangeTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ArrayRangeTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4439631
+  *  @bug 4448721
+  *  @bug 4448603
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/BacktraceFieldTest.java openjdk/jdk/test/com/sun/jdi/BacktraceFieldTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/BacktraceFieldTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/BacktraceFieldTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4446677
+  *  @summary debuggee crashes when debugging under jbuilder
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/BadHandshakeTest.java openjdk/jdk/test/com/sun/jdi/BadHandshakeTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/BadHandshakeTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/BadHandshakeTest.java	2010-02-19 15:01:46.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 6306165 6432567
+  * @summary Check that a bad handshake doesn't cause a debuggee to abort
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/BreakpointTest.java openjdk/jdk/test/com/sun/jdi/BreakpointTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/BreakpointTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/BreakpointTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 6496524
+  *  @summary Setting breakpoint in jdb crashes Hotspot JVM
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CatchAllTest.sh openjdk/jdk/test/com/sun/jdi/CatchAllTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/CatchAllTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CatchAllTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4749692
+ #  @summary REGRESSION: jdb rejects the syntax catch java.lang.IndexOutOfBoundsException
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CatchCaughtTest.sh openjdk/jdk/test/com/sun/jdi/CatchCaughtTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/CatchCaughtTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CatchCaughtTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4788864
+ #  @summary TTY: 'catch caught' with no class pattern throws NullPointerException
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CatchPatternTest.sh openjdk/jdk/test/com/sun/jdi/CatchPatternTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/CatchPatternTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CatchPatternTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4671838
+ #  @summary TTY: surprising ExceptionSpec.resolveEventRequest() wildcard results
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ClassesByName2Test.java openjdk/jdk/test/com/sun/jdi/ClassesByName2Test.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ClassesByName2Test.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ClassesByName2Test.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4406439 4925740
+  *  @summary ClassesByName2 verifies that all the classes in the loaded class list can be found with classesByName..
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ClassesByName.java openjdk/jdk/test/com/sun/jdi/ClassesByName.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ClassesByName.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ClassesByName.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4287992
+  *  @author Robert Field
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java openjdk/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4245011
-  *  @summary Test launcher command line construction
-  *  @author Gordon Hirsch
---- openjdk/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4450091
+  *  @summary Test ClassLoaderReference.visibleClasses() which is
+  *  a direct pass-through of the JVMDI function GetClassLoaderClasses
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh openjdk/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CommandCommentDelimiter.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4507088
+ #  @summary TTY: Add a comment delimiter to the jdb command set
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CompatibleConnectors.java openjdk/jdk/test/com/sun/jdi/CompatibleConnectors.java
+--- openjdk.orig/jdk/test/com/sun/jdi/CompatibleConnectors.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CompatibleConnectors.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 4287596
+  * @summary Unit test for "Pluggable Connectors and Transports" feature.
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java openjdk/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java
+--- openjdk.orig/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 4287596
+  * @summary Unit test for "Pluggable Connectors and Transports" feature.
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java openjdk/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java
+--- openjdk.orig/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 4287596
+  * @summary Unit test for "Pluggable Connectors and Transports" feature.
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh openjdk/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+ #
+ 
+ # @test
++# @ignore cacao nyi
+ # @bug 5055681
+ # @summary Test loading JDI classes via custom class loader
+ 
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ConnectedVMs.java openjdk/jdk/test/com/sun/jdi/ConnectedVMs.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ConnectedVMs.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ConnectedVMs.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4329140
+  *  @author Robert Field
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ConstantPoolInfo.java openjdk/jdk/test/com/sun/jdi/ConstantPoolInfo.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ConstantPoolInfo.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ConstantPoolInfo.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 5024104
+  *  @summary Test ReferenceType.majorVersion(), minorVersion, constantPoolCount and ConstantPool apis.
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CountEvent.java openjdk/jdk/test/com/sun/jdi/CountEvent.java
+--- openjdk.orig/jdk/test/com/sun/jdi/CountEvent.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CountEvent.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4315352
+  *  @summary disabling EventRequest expired with addCountFilter() throws
+  *   InternalException.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/CountFilterTest.java openjdk/jdk/test/com/sun/jdi/CountFilterTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/CountFilterTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/CountFilterTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4321339
+  *  @summary Check correct processing of filters after a count filter
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/DebuggerThreadTest.java openjdk/jdk/test/com/sun/jdi/DebuggerThreadTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/DebuggerThreadTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/DebuggerThreadTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4513488
+  *  @summary Test for JDI: Internal JDI helper threads should setDaemon(true)
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java openjdk/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4528948
+  *  @summary Unable to finish a debugging in NetBeans IDE
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java openjdk/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4331872
+  *  @summary erm.deleteEventRequests(erm.breakpointRequests()) throws exception
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/DeoptimizeWalk.sh openjdk/jdk/test/com/sun/jdi/DeoptimizeWalk.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/DeoptimizeWalk.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/DeoptimizeWalk.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4525714
+ #  @summary jtreg test PopAsynchronousTest fails in build 85 with -Xcomp
+ #  @author Jim Holmlund/Swamy Venkataramanappa
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/DoubleAgentTest.java openjdk/jdk/test/com/sun/jdi/DoubleAgentTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/DoubleAgentTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/DoubleAgentTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 6354345
+  * @summary Check that a double agent request fails
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java openjdk/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/EarlyReturnNegativeTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 6431735
+  *  @summary Unexpected ClassCastException in ThreadReference.forceEarlyReturn
+  *  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/EarlyReturnTest.java openjdk/jdk/test/com/sun/jdi/EarlyReturnTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/EarlyReturnTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/EarlyReturnTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /*
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 6175634
+  *  @summary Allow early return from methods
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/EnumTest.java openjdk/jdk/test/com/sun/jdi/EnumTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/EnumTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/EnumTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4728816
+  *  @summary JPDA: Add support for enums
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/EvalArgs.sh openjdk/jdk/test/com/sun/jdi/EvalArgs.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/EvalArgs.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/EvalArgs.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4663146
+ #  @summary Arguments match no method error 
+ #  @author Jim Holmlund/Suvasis
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java openjdk/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4425852
+  *  @author Robert Field
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ExceptionEvents.java openjdk/jdk/test/com/sun/jdi/ExceptionEvents.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ExceptionEvents.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ExceptionEvents.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4407397
+  *  @summary Test the requesting of exception events
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ExclusiveBind.java openjdk/jdk/test/com/sun/jdi/ExclusiveBind.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ExclusiveBind.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ExclusiveBind.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 4531526
+  * @summary Test that more than one debuggee cannot bind to same port
+  *          at the same time.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java openjdk/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ExpiredRequestDeletionTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -346,48 +415,203 @@
   *  @bug 4453310
   *  @summary Test the deletion of event requests that are expired
   *     by virtue of addCountFilter.
---- openjdk/jdk/test/com/sun/jdi/SDENullTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/SDENullTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FetchLocals.java openjdk/jdk/test/com/sun/jdi/FetchLocals.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FetchLocals.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FetchLocals.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /** hard coded linenumbers in test - DO NOT CHANGE
+  *  @test/nodynamiccopyright/
++ *  @ignore cacao nyi
+  *  @bug 4386002 4429245
+  *  @summary Test fix for: Incorrect values reported for some locals of type long
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FieldWatchpoints.java openjdk/jdk/test/com/sun/jdi/FieldWatchpoints.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FieldWatchpoints.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FieldWatchpoints.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4408582
+  *  @summary Test fix for: JDWP: WatchpointEvents outside of class filtered out
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FilterMatch.java openjdk/jdk/test/com/sun/jdi/FilterMatch.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FilterMatch.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FilterMatch.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4331522
+  *  @summary addClassFilter("Foo") acts like "Foo*"
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FilterNoMatch.java openjdk/jdk/test/com/sun/jdi/FilterNoMatch.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FilterNoMatch.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FilterNoMatch.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4331522
+  *  @summary addClassFilter("Foo") acts like "Foo*"
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FinalizerTest.java openjdk/jdk/test/com/sun/jdi/FinalizerTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FinalizerTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FinalizerTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4272800 4274208 4392010
+  *  @summary Test debugger operations in finalize() methods
+  *  @author Gordon Hirsch  (modified for HotSpot by tbell & rfield)
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FinalLocalsTest.java openjdk/jdk/test/com/sun/jdi/FinalLocalsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FinalLocalsTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FinalLocalsTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4326648 4768329
+  *  @summary Test to verify that table entries are generated for all final
+  *           locals when a class is built for debug, even if they could be
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/FramesTest.java openjdk/jdk/test/com/sun/jdi/FramesTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/FramesTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/FramesTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4434232
+  *  @summary Test ThreadReference.frames(int,int)
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/GenericsTest.java openjdk/jdk/test/com/sun/jdi/GenericsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/GenericsTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/GenericsTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4421040
+  *  @summary  JPDA: Add support for JSR-014 Generics
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables2Test.java openjdk/jdk/test/com/sun/jdi/GetLocalVariables2Test.java
+--- openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables2Test.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables2Test.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4621289
-  *  @summary vm.setDefaultStratum(null) causes a Null Ptr exception
+  *  @bug 4349534 4690242 4695338
+  *  @summary regression - bad LocalVariableTable attribute when no initialization needed
   *
---- openjdk/jdk/test/com/sun/jdi/RedefineAnnotation.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineAnnotation.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh openjdk/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables3Test.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
  #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4448658
+ #  @summary javac produces the inconsistent variable debug in while loops.
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh openjdk/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
  
+ #
  #  @test
 +#  @ignore cacao nyi
- #  @bug 5002251 6407335 6412391
- #  @summary Redefine a class that has an annotation and verify that the
- #    new annotation is returned.
---- openjdk/jdk/test/com/sun/jdi/VMDeathRequestTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/VMDeathRequestTest.java	2008-10-19 15:21:54.000000000 +0000
+ #  @bug 4070747 4486859
+ #  @summary Compiler fails to generate local var tbl entry for exception passed to catch
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables.java openjdk/jdk/test/com/sun/jdi/GetLocalVariables.java
+--- openjdk.orig/jdk/test/com/sun/jdi/GetLocalVariables.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /** hard coded linenumbers in this test - DO NOT CHANGE
+  *  @test/nodynamiccopyright/
++ *  @ignore cacao nyi
+  *  @bug 4359312 4450091
+  *  @summary Test PTR 1421 JVM exceptions making a call to LocalVariable.type().name()
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/GetSetLocalTest.java openjdk/jdk/test/com/sun/jdi/GetSetLocalTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/GetSetLocalTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/GetSetLocalTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /** hard coded linenumbers in other tests - DO NOT CHANGE
+  *  @test/nodynamiccopyright/
++ *  @ignore cacao nyi
+  *  @bug 4300412
+  *  @summary Test GetLocal* and SetLocal* functions
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/HomeTest.java openjdk/jdk/test/com/sun/jdi/HomeTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/HomeTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/HomeTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4419314
-  *  @author Robert Field
+  *  @bug 4446294
+  *  @summary JDI spec/impl: default "home" for CommandLineLaunch isn't java.home
   *
---- openjdk/jdk/test/com/sun/jdi/PopAsynchronousTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/PopAsynchronousTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ImmutableResourceTest.sh openjdk/jdk/test/com/sun/jdi/ImmutableResourceTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/ImmutableResourceTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ImmutableResourceTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+ #
+ 
+ #   @test
++#   @ignore cacao nyi
+ #   @bug        6287579
+ #   @summary    SubClasses of ListResourceBundle should fix getContents()
+ #   @author     Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/InstanceFilter.java openjdk/jdk/test/com/sun/jdi/InstanceFilter.java
+--- openjdk.orig/jdk/test/com/sun/jdi/InstanceFilter.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/InstanceFilter.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4467564
-  *  @summary Test the popping of frames in an asynchronous context
-  *           (that is, when suspended by the debugger at random points)
---- openjdk/jdk/test/com/sun/jdi/InvokeHangTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/InvokeHangTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4312961
+  *  @summary Verify that an instance filter on a MethodEntryRequest works
+  *   properly.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/InstancesTest.java openjdk/jdk/test/com/sun/jdi/InstancesTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/InstancesTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/InstancesTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 5024119
+  *  @summary Add ReferenceType.getAllInstances () method to JDI.
+  *  @author jjh
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/InterruptHangTest.java openjdk/jdk/test/com/sun/jdi/InterruptHangTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/InterruptHangTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/InterruptHangTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 6459476
+  *  @summary Debuggee is blocked,  looks like running
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/InvokeHangTest.java openjdk/jdk/test/com/sun/jdi/InvokeHangTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/InvokeHangTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/InvokeHangTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -396,87 +620,31 @@
   *  @bug 6293795
   *  @summary  Backend hangs when invokeMethod is called from a JDI eventHandler
   *
---- openjdk/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/EventQueueDisconnectTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/InvokeTest.java openjdk/jdk/test/com/sun/jdi/InvokeTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/InvokeTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/InvokeTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4425852
-  *  @author Robert Field
-  *
---- openjdk/jdk/test/com/sun/jdi/EarlyReturnTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/EarlyReturnTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /*
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 6175634
-  *  @summary Allow early return from methods
-  *
---- openjdk/jdk/test/com/sun/jdi/ArgumentValuesTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ArgumentValuesTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /** hard coded linenumbers in other tests - DO NOT CHANGE
-  *  @test/nodynamiccopyright/
-+ *  @ignore cacao nyi
-  *  @bug 4490824
-  *  @summary JDI: provide arguments when no debug attributes present
+  *  @bug 4451941 4527072
+  *  @summary Test argument types for invoke
   *
---- openjdk/jdk/test/com/sun/jdi/ImmutableResourceTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ImmutableResourceTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
- #
- 
- #   @test
-+#   @ignore cacao nyi
- #   @bug        6287579
- #   @summary    SubClasses of ListResourceBundle should fix getContents()
- #   @author     Tim Bell
---- openjdk/jdk/test/com/sun/jdi/ProcessAttachTest.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ProcessAttachTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- 
- # @test
-+# @ignore cacao nyi
- # @bug 4527279
- # @summary Unit test for ProcessAttachingConnector
- #
---- openjdk/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/Java_gTest.java openjdk/jdk/test/com/sun/jdi/Java_gTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/Java_gTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/Java_gTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4195445 6204179
-  *  @summary JDWP, JDI: Add return value to Method Exit Event
-  *  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/PopAndStepTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/PopAndStepTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -2,6 +2,7 @@
- //    THIS TEST IS LINE NUMBER SENSITIVE
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4530424
-  *  @summary Hin says that doing a step over after a popframe acts like a resume.
+  *  @bug 4500906 4433599 4740097
+  *  @summary vmexec= debug java fails for SunCommandLineLauncher
   *
---- openjdk/jdk/test/com/sun/jdi/PopAndInvokeTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/PopAndInvokeTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 6517249
-  *  @summary JDWP: Cannot do an invokeMethod after a popFrames operation
-  *
---- openjdk/jdk/test/com/sun/jdi/JdbArgTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JdbArgTest.sh	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JdbArgTest.sh openjdk/jdk/test/com/sun/jdi/JdbArgTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JdbArgTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JdbArgTest.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -24,6 +24,7 @@
  #
  
@@ -485,68 +653,162 @@
  #  @bug 4684386
  #  @summary TTY: jdb throws IllegalArumentException on cmd line args
  #  @author Jim/suvasis
---- openjdk/jdk/test/com/sun/jdi/PrivateTransportTest.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/PrivateTransportTest.sh	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JdbLockTest.sh openjdk/jdk/test/com/sun/jdi/JdbLockTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JdbLockTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JdbLockTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4847812
+ #  @summary TTY: jdb lock command displays incorrect data
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JdbMethodExitTest.sh openjdk/jdk/test/com/sun/jdi/JdbMethodExitTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JdbMethodExitTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JdbMethodExitTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 6202891
+ #  @summary TTY: Add support for method exit event return values to jdb
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JdbMissStep.sh openjdk/jdk/test/com/sun/jdi/JdbMissStep.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JdbMissStep.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JdbMissStep.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4762765
+ #  @summary REGRESSION: jdb / jdi not stopping at some breakpoints and steps in j2sdk1.4.
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JdbReadTwiceTest.sh openjdk/jdk/test/com/sun/jdi/JdbReadTwiceTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JdbReadTwiceTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JdbReadTwiceTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #  
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4981536
+ #  @summary TTY: .jdbrc is read twice if jdb is run in the user's home dir
+ #  @author jjh
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JdbVarargsTest.sh openjdk/jdk/test/com/sun/jdi/JdbVarargsTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JdbVarargsTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JdbVarargsTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4870984
+ #  @summary  JPDA: Add support for RFE 4856541 - varargs
+ #
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/JITDebug.sh openjdk/jdk/test/com/sun/jdi/JITDebug.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/JITDebug.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/JITDebug.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -25,6 +25,7 @@
  
  #
- #   @test       PrivateTransportTest.sh
+ #   @test       JITDebug.sh 1.7 03/09/05
 +#   @ignore cacao nyi
- #   @bug        6225664 6220618
- #   @summary    Test for when private transport library outside jdk
- #   @author     Kelly O'Hair
---- openjdk/jdk/test/com/sun/jdi/CountFilterTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CountFilterTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4321339
-  *  @summary Check correct processing of filters after a count filter
-  *
---- openjdk/jdk/test/com/sun/jdi/TwoThreadsTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/TwoThreadsTest.java	2008-10-19 15:21:54.000000000 +0000
+ #   @bug        4291701 4376819 4422312 4522770 4913748
+ #   @summary    Test JIT debugging - assure that launching on
+ #               uncaught exception works
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/LaunchCommandLine.java openjdk/jdk/test/com/sun/jdi/LaunchCommandLine.java
+--- openjdk.orig/jdk/test/com/sun/jdi/LaunchCommandLine.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/LaunchCommandLine.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 6296125
-  *  @summary  JDI: Disabling an EventRequest can cause a multi-threaded debuggee to hang
-  *
---- openjdk/jdk/test/com/sun/jdi/ThreadGroupTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ThreadGroupTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4245011
+  *  @summary Test launcher command line construction
+  *  @author Gordon Hirsch
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/LineNumberInfo.java openjdk/jdk/test/com/sun/jdi/LineNumberInfo.java
+--- openjdk.orig/jdk/test/com/sun/jdi/LineNumberInfo.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/LineNumberInfo.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4893530
-  *  @summary If JDI is initially started from a thread group that is subsequently
-  *           destroyed this should not impact subsequent thread creation by
---- openjdk/jdk/test/com/sun/jdi/InvokeTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/InvokeTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4238644 4238643 4238641 4944198
+  *  @summary Test javac regressions in the generation of line number info
+  *  @author Gordon Hirsch
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java openjdk/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/LineNumberOnBraceTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test/nodynamiccopyright/
++ *  @ignore cacao nyi
+  *  @bug 4952629 4870514
+  *  @summary REGRESSION: javac generates a spurious line number entry on } else {
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ListenAddress.java openjdk/jdk/test/com/sun/jdi/ListenAddress.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ListenAddress.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ListenAddress.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 4932074
+  * @summary Test that startListening(Map) method of the com.sun.jdi.SocketListen
+  *          Connector returns an address that is usable for the address option on
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/LocalVariableEqual.java openjdk/jdk/test/com/sun/jdi/LocalVariableEqual.java
+--- openjdk.orig/jdk/test/com/sun/jdi/LocalVariableEqual.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/LocalVariableEqual.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4451941 4527072
-  *  @summary Test argument types for invoke
+  *  @bug 4916263
+  *  @summary Test
   *
---- openjdk/jdk/test/com/sun/jdi/NewInstanceTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/NewInstanceTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/LocationTest.java openjdk/jdk/test/com/sun/jdi/LocationTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/LocationTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/LocationTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4419450
-  *  @summary Test newInstance() for arrays - currently covers
-  *  only reference type arrays (see bug #4450091).
---- openjdk/jdk/test/com/sun/jdi/MixedSuspendTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/MixedSuspendTest.sh	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4419453
+  *  @summary Test that Method.location() returns the right values
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/MethodEntryExitEvents.java openjdk/jdk/test/com/sun/jdi/MethodEntryExitEvents.java
+--- openjdk.orig/jdk/test/com/sun/jdi/MethodEntryExitEvents.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/MethodEntryExitEvents.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4409241 4432820
+  *  @summary Test the bug fix for: MethodExitEvents disappear when Object-Methods are called from main
+  *  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java openjdk/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/MethodExitReturnValuesTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4195445 6204179
+  *  @summary JDWP, JDI: Add return value to Method Exit Event
+  *  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/MixedSuspendTest.sh openjdk/jdk/test/com/sun/jdi/MixedSuspendTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/MixedSuspendTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/MixedSuspendTest.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -24,6 +24,7 @@
  #
  
@@ -555,17 +817,20 @@
  #  @bug 6224859
  #  @summary JDWP: Mixing application suspends and debugger suspends can cause hangs
  # 
---- openjdk/jdk/test/com/sun/jdi/InterruptHangTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/InterruptHangTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ModificationWatchpoints.java openjdk/jdk/test/com/sun/jdi/ModificationWatchpoints.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ModificationWatchpoints.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ModificationWatchpoints.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 6459476
-  *  @summary Debuggee is blocked,  looks like running
+  *  @bug 4409582
+  *  @summary Test all info returned by modification watchpoints
   *
---- openjdk/jdk/test/com/sun/jdi/MonitorEventTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/MonitorEventTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/MonitorEventTest.java openjdk/jdk/test/com/sun/jdi/MonitorEventTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/MonitorEventTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/MonitorEventTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -574,98 +839,20 @@
   *  @bug 4401399
   *  @summary Simple basic test of jdi Monitor request and event.
   *
---- openjdk/jdk/test/com/sun/jdi/AcceptTimeout.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/AcceptTimeout.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 6198277
-  * @summary Test that each ListeningConnector that supports a "timeout" argument will
-  *     timeout with TransportTimeoutException
---- openjdk/jdk/test/com/sun/jdi/ZZZcleanup.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ZZZcleanup.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 1234567
- #  @summary no bug
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/ConstantPoolInfo.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ConstantPoolInfo.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/MonitorFrameInfo.java openjdk/jdk/test/com/sun/jdi/MonitorFrameInfo.java
+--- openjdk.orig/jdk/test/com/sun/jdi/MonitorFrameInfo.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/MonitorFrameInfo.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 5024104
-  *  @summary Test ReferenceType.majorVersion(), minorVersion, constantPoolCount and ConstantPool apis.
-  *
---- openjdk/jdk/test/com/sun/jdi/CatchCaughtTest.sh.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CatchCaughtTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4788864
- #  @summary TTY: 'catch caught' with no class pattern throws NullPointerException
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/JdbMissStep.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JdbMissStep.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4762765
- #  @summary REGRESSION: jdb / jdi not stopping at some breakpoints and steps in j2sdk1.4.
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/Vars.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/Vars.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @summary Test Method.variables() and the like.
-  *
-  *  @author Robert Field
---- openjdk/jdk/test/com/sun/jdi/UnpreparedClasses.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/UnpreparedClasses.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4368402
-  *  @summary UnpreparedClasses verifies that all the classes in the
-  *  loaded class list are prepared classes.
---- openjdk/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/DeleteEventRequestsTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4331872
-  *  @summary erm.deleteEventRequests(erm.breakpointRequests()) throws exception
-  *
---- openjdk/jdk/test/com/sun/jdi/PopSynchronousTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/PopSynchronousTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4467564
-  *  @summary Test the popping of frames in synchronous context
-  *           (that is, when stopped at an event)
---- openjdk/jdk/test/com/sun/jdi/MultiBreakpointsTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/MultiBreakpointsTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 6230699
+  *  @summary Test ThreadReference.ownedMonitorsAndFrames()
+  *  @bug 6701700
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/MultiBreakpointsTest.java openjdk/jdk/test/com/sun/jdi/MultiBreakpointsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/MultiBreakpointsTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/MultiBreakpointsTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -24,6 +24,7 @@
  
  /**
@@ -674,128 +861,31 @@
   *  @bug 4359247
   *  @summary Breakpoints on multiple threads have problems.
   *
---- openjdk/jdk/test/com/sun/jdi/RedefineCrossStart.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineCrossStart.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4628726
-  *  @summary Test class redefinition at start only (they use breakpoint
-  *  or resumeTo()) cross tested with other tests.
---- openjdk/jdk/test/com/sun/jdi/SourceNameFilterTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/SourceNameFilterTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4836939
-  *  @summary JDI add addSourceNameFilter to ClassPrepareRequest
-  *
---- openjdk/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ArrayLengthDumpTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4422141 4695338
- #  @summary TTY: .length field for arrays in print statements in jdb not recognized
- #           TTY: dump <ArrayReference> command not implemented.
---- openjdk/jdk/test/com/sun/jdi/CatchAllTest.sh.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CatchAllTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4749692
- #  @summary REGRESSION: jdb rejects the syntax catch java.lang.IndexOutOfBoundsException
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/JdbLockTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JdbLockTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4847812
- #  @summary TTY: jdb lock command displays incorrect data
- #  @author Jim Holmlund
---- openjdk/jdk/test/com/sun/jdi/CountEvent.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CountEvent.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/NewInstanceTest.java openjdk/jdk/test/com/sun/jdi/NewInstanceTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/NewInstanceTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/NewInstanceTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4315352
-  *  @summary disabling EventRequest expired with addCountFilter() throws
-  *   InternalException.
---- openjdk/jdk/test/com/sun/jdi/StringConvertTest.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/StringConvertTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4511950 4843082
- #  @summary 1. jdb's expression evaluation doesn't perform string conversion properly
- #           2. TTY: run on expression evaluation
---- openjdk/jdk/test/com/sun/jdi/EnumTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/EnumTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4728816
-  *  @summary JPDA: Add support for enums
-  *
---- openjdk/jdk/test/com/sun/jdi/redefine/RedefineTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/redefine/RedefineTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4419450
+  *  @summary Test newInstance() for arrays - currently covers
+  *  only reference type arrays (see bug #4450091).
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/NoLaunchOptionTest.java openjdk/jdk/test/com/sun/jdi/NoLaunchOptionTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/NoLaunchOptionTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/NoLaunchOptionTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4287595
-  *  @bug 4462989
-  *  @bug 4531511
---- openjdk/jdk/test/com/sun/jdi/RedefineMulti.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineMulti.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4724076
- #  @summary Redefine does not work in for/while loop
- #  @author Jim Holmlund/Swamy Venkataramanappa
---- openjdk/jdk/test/com/sun/jdi/FinalizerTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FinalizerTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4272800 4274208 4392010
-  *  @summary Test debugger operations in finalize() methods
-  *  @author Gordon Hirsch  (modified for HotSpot by tbell & rfield)
---- openjdk/jdk/test/com/sun/jdi/RedefineCrossEvent.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineCrossEvent.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4628726
-  *  @summary Test class redefinition at each event cross tested with other tests
-  *
---- openjdk/jdk/test/com/sun/jdi/NoLocInfoTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/NoLocInfoTest.java	2008-10-19 15:21:54.000000000 +0000
+ /*
+  *   @test       NoLaunchOptionTest.java
++ *   @ignore cacao nyi
+  *   @bug        4554734 4724714
+  *   @summary    Test for -Xrunjdwp:[onthrow,onuncaught] suboptions require launch suboption
+  *   @author     Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/NoLocInfoTest.java openjdk/jdk/test/com/sun/jdi/NoLocInfoTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/NoLocInfoTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/NoLocInfoTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -804,138 +894,317 @@
   *  @bug 4642611
   *  @summary Test that method.allLineLocations() should
   *           throw AbsentInformationException exception
---- openjdk/jdk/test/com/sun/jdi/MethodEntryExitEvents.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/MethodEntryExitEvents.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/NotAField.sh openjdk/jdk/test/com/sun/jdi/NotAField.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/NotAField.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/NotAField.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4467887 4913748
+ #  @summary TTY: NullPointerException at
+ #           com.sun.tools.jdi.MirrorImpl.validateMirrors
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/NullLocalVariable.sh openjdk/jdk/test/com/sun/jdi/NullLocalVariable.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/NullLocalVariable.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/NullLocalVariable.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4690242 4695338
+ #  @summary TTY: jdb throws NullPointerException when printing local variables
+ #  @author Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/OnThrowTest.java openjdk/jdk/test/com/sun/jdi/OnThrowTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/OnThrowTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/OnThrowTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4409241 4432820
-  *  @summary Test the bug fix for: MethodExitEvents disappear when Object-Methods are called from main
-  *  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/GetLocalVariables2Test.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables2Test.java	2008-10-19 15:21:54.000000000 +0000
+ /*
+  *   @test       OnThrowTest.java
++ *   @ignore cacao nyi
+  *   @bug        6263814
+  *   @summary    Test for -agentlib::[onthrow,launch]
+  *   @author     Kelly O'Hair
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/OptionTest.java openjdk/jdk/test/com/sun/jdi/OptionTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/OptionTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/OptionTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /*
+  *   @test       OptionTest
++ *   @ignore cacao nyi
+  *   @bug        5095072
+  *   @summary    Test for misc jdwp options, just that the option is parsed
+  *   @author     Kelly O'Hair (copied from Tim Bell's NoLaunchOptionTest)
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/PopAndInvokeTest.java openjdk/jdk/test/com/sun/jdi/PopAndInvokeTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/PopAndInvokeTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/PopAndInvokeTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4349534 4690242 4695338
-  *  @summary regression - bad LocalVariableTable attribute when no initialization needed
+  *  @bug 6517249
+  *  @summary JDWP: Cannot do an invokeMethod after a popFrames operation
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/PopAndStepTest.java openjdk/jdk/test/com/sun/jdi/PopAndStepTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/PopAndStepTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/PopAndStepTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -2,6 +2,7 @@
+ //    THIS TEST IS LINE NUMBER SENSITIVE
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4530424
+  *  @summary Hin says that doing a step over after a popframe acts like a resume.
   *
---- openjdk/jdk/test/com/sun/jdi/AccessSpecifierTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/AccessSpecifierTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/PopAsynchronousTest.java openjdk/jdk/test/com/sun/jdi/PopAsynchronousTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/PopAsynchronousTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/PopAsynchronousTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4467564
+  *  @summary Test the popping of frames in an asynchronous context
+  *           (that is, when suspended by the debugger at random points)
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/PopSynchronousTest.java openjdk/jdk/test/com/sun/jdi/PopSynchronousTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/PopSynchronousTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/PopSynchronousTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4359628
-  *  @summary Test fix for JDI: methods Accessible.is...() lie about array types
-  *
---- openjdk/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ClassLoaderClassesTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4467564
+  *  @summary Test the popping of frames in synchronous context
+  *           (that is, when stopped at an event)
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/PrivateTransportTest.sh openjdk/jdk/test/com/sun/jdi/PrivateTransportTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/PrivateTransportTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/PrivateTransportTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #   @test       PrivateTransportTest.sh
++#   @ignore cacao nyi
+ #   @bug        6225664 6220618
+ #   @summary    Test for when private transport library outside jdk
+ #   @author     Kelly O'Hair
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ProcessAttachTest.sh openjdk/jdk/test/com/sun/jdi/ProcessAttachTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/ProcessAttachTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ProcessAttachTest.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ 
+ # @test
++# @ignore cacao nyi
+ # @bug 4527279
+ # @summary Unit test for ProcessAttachingConnector
+ #
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/redefine/RedefineTest.java openjdk/jdk/test/com/sun/jdi/redefine/RedefineTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/redefine/RedefineTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/redefine/RedefineTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4450091
-  *  @summary Test ClassLoaderReference.visibleClasses() which is
-  *  a direct pass-through of the JVMDI function GetClassLoaderClasses
---- openjdk/jdk/test/com/sun/jdi/DoubleAgentTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/DoubleAgentTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
+  *  @bug 4287595
+  *  @bug 4462989
+  *  @bug 4531511
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineAnnotation.sh openjdk/jdk/test/com/sun/jdi/RedefineAnnotation.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineAnnotation.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineAnnotation.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
  
- /* @test
-+ * @ignore cacao nyi
-  * @bug 6354345
-  * @summary Check that a double agent request fails
-  *
---- openjdk/jdk/test/com/sun/jdi/JdbVarargsTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JdbVarargsTest.sh	2008-10-19 15:21:54.000000000 +0000
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 5002251 6407335 6412391
+ #  @summary Redefine a class that has an annotation and verify that the
+ #    new annotation is returned.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh openjdk/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineChangeClassOrder.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 6270982
+ #  @summary Redefine a class so that the order of external classes in
+ #  the constant pool are changed.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineClasses.sh openjdk/jdk/test/com/sun/jdi/RedefineClasses.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineClasses.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineClasses.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -24,6 +24,7 @@
  #
  
  #  @test
 +#  @ignore cacao nyi
- #  @bug 4870984
- #  @summary  JPDA: Add support for RFE 4856541 - varargs
+ #  @bug 4628760
+ #  @summary RedefineClasses gets assertion: "Should be a method entry in cpcache!"
+ #  @author jjh
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineClearBreakpoint.sh openjdk/jdk/test/com/sun/jdi/RedefineClearBreakpoint.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineClearBreakpoint.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineClearBreakpoint.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
  #
---- openjdk/jdk/test/com/sun/jdi/FilterNoMatch.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FilterNoMatch.java	2008-10-19 15:21:54.000000000 +0000
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4705330
+ #  @summary Netbeans Fix and Continue crashes JVM
+ #  @author Jim Holmlund/Swamy Venkataramanappa
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineCrossEvent.java openjdk/jdk/test/com/sun/jdi/RedefineCrossEvent.java
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineCrossEvent.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineCrossEvent.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4331522
-  *  @summary addClassFilter("Foo") acts like "Foo*"
+  *  @bug 4628726
+  *  @summary Test class redefinition at each event cross tested with other tests
   *
---- openjdk/jdk/test/com/sun/jdi/ExceptionEvents.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ExceptionEvents.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4407397
-  *  @summary Test the requesting of exception events
-  *
---- openjdk/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/DeleteAllBkptsTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineCrossStart.java openjdk/jdk/test/com/sun/jdi/RedefineCrossStart.java
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineCrossStart.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineCrossStart.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4528948
-  *  @summary Unable to finish a debugging in NetBeans IDE
-  *
---- openjdk/jdk/test/com/sun/jdi/CompatibleConnectors.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CompatibleConnectors.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
+  *  @bug 4628726
+  *  @summary Test class redefinition at start only (they use breakpoint
+  *  or resumeTo()) cross tested with other tests.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineException.sh openjdk/jdk/test/com/sun/jdi/RedefineException.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineException.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineException.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4559100
+ #  @summary The VM crashes when a method in a redefined class throws an exception.
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineFinal.sh openjdk/jdk/test/com/sun/jdi/RedefineFinal.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineFinal.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineFinal.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
  
- /* @test
-+ * @ignore cacao nyi
-  * @bug 4287596
-  * @summary Unit test for "Pluggable Connectors and Transports" feature.
-  *
---- openjdk/jdk/test/com/sun/jdi/EvalArgs.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/EvalArgs.sh	2008-10-19 15:21:54.000000000 +0000
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4788344
+ #  @summary RedefineClasses is an apparent no-op if instance method is final
+ #
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/Redefine-g.sh openjdk/jdk/test/com/sun/jdi/Redefine-g.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/Redefine-g.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/Redefine-g.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4777868
+ #  @summary Compile with java -g, do a RedefineClasses, and you don't get local vars
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineImplementor.sh openjdk/jdk/test/com/sun/jdi/RedefineImplementor.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineImplementor.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineImplementor.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 6173560
+ #  @summary Redefine a class that implements an interface
+ #    and verify that a subclass calls the right method.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh openjdk/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineIntConstantToLong.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -24,6 +24,7 @@
  #
  
  #  @test
 +#  @ignore cacao nyi
- #  @bug 4663146
- #  @summary Arguments match no method error 
- #  @author Jim Holmlund/Suvasis
---- openjdk/jdk/test/com/sun/jdi/BadHandshakeTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/BadHandshakeTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 6306165
-  * @summary Check that a bad handshake doesn't cause a debuggee to abort
-  *
---- openjdk/jdk/test/com/sun/jdi/ConnectedVMs.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ConnectedVMs.java	2008-10-19 15:21:54.000000000 +0000
+ #  @bug 6394084
+ #  @summary Redefine class can't handle addition of 64 bit constants in JDK1.5.0_05
+ #
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java openjdk/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4329140
-  *  @author Robert Field
+  *  @bug 4628726
+  *  @summary Test class redefinition - method data line numbers and local vars,
   *
---- openjdk/jdk/test/com/sun/jdi/RepStep.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RepStep.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineMulti.sh openjdk/jdk/test/com/sun/jdi/RedefineMulti.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineMulti.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineMulti.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4724076
+ #  @summary Redefine does not work in for/while loop
+ #  @author Jim Holmlund/Swamy Venkataramanappa
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefinePop.sh openjdk/jdk/test/com/sun/jdi/RedefinePop.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefinePop.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefinePop.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4622663
+ #  @summary redefine and pop top frame from jdb gets assertion failure
+ #  @author Jim Holmlund/Swamy Venkataramanappa
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineStep.sh openjdk/jdk/test/com/sun/jdi/RedefineStep.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineStep.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineStep.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4689395
+ #  @summary "step over" after a class is redefined acts like "step out"
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh openjdk/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RedefineTTYLineNumber.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test
++#  @ignore cacao nyi
+ #  @bug 4660756
+ #  @summary TTY: Need to clear source cache after doing a redefine class
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ReferrersTest.java openjdk/jdk/test/com/sun/jdi/ReferrersTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ReferrersTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ReferrersTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 5089849
+  *  @summary Add support for backtracking reference graph.
+  *  @author jjh
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RepStep.java openjdk/jdk/test/com/sun/jdi/RepStep.java
+--- openjdk.orig/jdk/test/com/sun/jdi/RepStep.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RepStep.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -944,38 +1213,136 @@
   *  @bug 4334008
   *  @author Robert Field
   *
---- openjdk/jdk/test/com/sun/jdi/RedefineImplementor.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineImplementor.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 6173560
- #  @summary Redefine a class that implements an interface
- #    and verify that a subclass calls the right method.
---- openjdk/jdk/test/com/sun/jdi/NullLocalVariable.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/NullLocalVariable.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4690242 4695338
- #  @summary TTY: jdb throws NullPointerException when printing local variables
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/BacktraceFieldTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/BacktraceFieldTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RequestReflectionTest.java openjdk/jdk/test/com/sun/jdi/RequestReflectionTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/RequestReflectionTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RequestReflectionTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4446677
-  *  @summary debuggee crashes when debugging under jbuilder
+  *  @bug 4425840
+  *  @author Robert Field
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/RunToExit.java openjdk/jdk/test/com/sun/jdi/RunToExit.java
+--- openjdk.orig/jdk/test/com/sun/jdi/RunToExit.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/RunToExit.java	2010-02-19 14:59:03.000000000 +0000
+@@ -22,6 +22,7 @@
+  */
+ 
+ /* @test
++ * @ignore cacao nyi
+  * @bug 4997445
+  * @summary Test that with server=y, when VM runs to System.exit() no error happens
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/sde/FilterMangleTest.java openjdk/jdk/test/com/sun/jdi/sde/FilterMangleTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/sde/FilterMangleTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/sde/FilterMangleTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4836939
+  *  @summary JDI add addSourceNameFilter to ClassPrepareRequest
   *
---- openjdk/jdk/test/com/sun/jdi/SuspendNoFlagTest.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/SuspendNoFlagTest.sh	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/sde/MangleStepTest.java openjdk/jdk/test/com/sun/jdi/sde/MangleStepTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/sde/MangleStepTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/sde/MangleStepTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4390869
+  *  @bug 4460328
+  *  @summary Test Stepping in the new SourceDebugExtension facility
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/sde/MangleTest.java openjdk/jdk/test/com/sun/jdi/sde/MangleTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/sde/MangleTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/sde/MangleTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4390869
+  *  @bug 4460328
+  *  @summary Test the new SourceDebugExtension facility
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java openjdk/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4390869
+  *  @bug 4460328
+  *  @summary Test the new SourceDebugExtension facility
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java openjdk/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -1,5 +1,6 @@
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4390869
+  *  @bug 4460328
+  *  @summary Test the new SourceDebugExtension facility
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/SDENullTest.java openjdk/jdk/test/com/sun/jdi/SDENullTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/SDENullTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/SDENullTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4621289
+  *  @summary vm.setDefaultStratum(null) causes a Null Ptr exception
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/Solaris32AndSolaris64Test.sh openjdk/jdk/test/com/sun/jdi/Solaris32AndSolaris64Test.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/Solaris32AndSolaris64Test.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/Solaris32AndSolaris64Test.sh	2010-02-19 14:59:53.000000000 +0000
+@@ -25,6 +25,7 @@
+ 
+ #
+ #   @test       Solaris32AndSolaris64Test.sh
++#   @ignore cacao nyi
+ #   @bug        4478312 4780570 4913748 6730273
+ #   @summary    Test debugging with mixed 32/64bit VMs.
+ #   @author     Tim Bell
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/SourceNameFilterTest.java openjdk/jdk/test/com/sun/jdi/SourceNameFilterTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/SourceNameFilterTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/SourceNameFilterTest.java	2010-02-19 15:02:00.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4836939 6646613
+  *  @summary JDI add addSourceNameFilter to ClassPrepareRequest
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/StepTest.java openjdk/jdk/test/com/sun/jdi/StepTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/StepTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/StepTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4270488 4787861
+  *  @author Gordon Hirsch
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/StringConvertTest.sh openjdk/jdk/test/com/sun/jdi/StringConvertTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/StringConvertTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/StringConvertTest.sh	2010-02-19 15:01:32.000000000 +0000
+@@ -24,6 +24,7 @@
+ #
+ 
+ #  @test @(#)StringConvertTest.sh	1.6 03/04/09
++#  @ignore cacao nyi
+ #  @bug 4511950 4843082
+ #  @summary 1. jdb's expression evaluation doesn't perform string conversion properly
+ #           2. TTY: run on expression evaluation
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/SuspendNoFlagTest.sh openjdk/jdk/test/com/sun/jdi/SuspendNoFlagTest.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/SuspendNoFlagTest.sh	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/SuspendNoFlagTest.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -25,6 +25,7 @@
  
  #
@@ -984,18 +1351,86 @@
  #   @bug        4914611
  #   @summary    Test for JDWP: -agentlib:jdwp=suspend=n hanging
  #   @author     Kelly O'Hair
---- openjdk/jdk/test/com/sun/jdi/StepTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/StepTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/SuspendThreadTest.java openjdk/jdk/test/com/sun/jdi/SuspendThreadTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/SuspendThreadTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/SuspendThreadTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 6485605
+  *  @summary com.sun.jdi.InternalException: Inconsistent suspend policy in internal event handler
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/TemplateTest.java openjdk/jdk/test/com/sun/jdi/TemplateTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/TemplateTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/TemplateTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -26,6 +26,7 @@
+ // TEMPLATE: delete TEMPLATE lines
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 0000000
+  *  @summary <SUMMARY>
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ThreadGroupTest.java openjdk/jdk/test/com/sun/jdi/ThreadGroupTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/ThreadGroupTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ThreadGroupTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4270488 4787861
-  *  @author Gordon Hirsch
+  *  @bug 4893530
+  *  @summary If JDI is initially started from a thread group that is subsequently
+  *           destroyed this should not impact subsequent thread creation by
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/TwoThreadsTest.java openjdk/jdk/test/com/sun/jdi/TwoThreadsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/TwoThreadsTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/TwoThreadsTest.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 6296125
+  *  @summary  JDI: Disabling an EventRequest can cause a multi-threaded debuggee to hang
   *
---- openjdk/jdk/test/com/sun/jdi/VarargsTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/VarargsTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/UnpreparedByName.java openjdk/jdk/test/com/sun/jdi/UnpreparedByName.java
+--- openjdk.orig/jdk/test/com/sun/jdi/UnpreparedByName.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/UnpreparedByName.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4368402
+  *  @summary UnpreparedByName verifies that unprepared classes
+  *  won't be returned by classesByName.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/UnpreparedClasses.java openjdk/jdk/test/com/sun/jdi/UnpreparedClasses.java
+--- openjdk.orig/jdk/test/com/sun/jdi/UnpreparedClasses.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/UnpreparedClasses.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 4368402
+  *  @summary UnpreparedClasses verifies that all the classes in the
+  *  loaded class list are prepared classes.
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/UTF8Test.java openjdk/jdk/test/com/sun/jdi/UTF8Test.java
+--- openjdk.orig/jdk/test/com/sun/jdi/UTF8Test.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/UTF8Test.java	2010-02-19 14:59:03.000000000 +0000
+@@ -23,6 +23,7 @@
+ 
+ /**
+  *  @test
++ *  @ignore cacao nyi
+  *  @bug 5033550
+  *  @summary  JDWP back end uses modified UTF-8
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/VarargsTest.java openjdk/jdk/test/com/sun/jdi/VarargsTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/VarargsTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/VarargsTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
@@ -1004,356 +1439,58 @@
   *  @bug 4870984
   *  @summary  JPDA: Add support for RFE 4856541 - varargs
   *
---- openjdk/jdk/test/com/sun/jdi/FilterMatch.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FilterMatch.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4331522
-  *  @summary addClassFilter("Foo") acts like "Foo*"
-  *
---- openjdk/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/redefineMethod/RedefineTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4628726
-  *  @summary Test class redefinition - method data line numbers and local vars,
-  *
---- openjdk/jdk/test/com/sun/jdi/NotAField.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/NotAField.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4467887 4913748
- #  @summary TTY: NullPointerException at
- #           com.sun.tools.jdi.MirrorImpl.validateMirrors
---- openjdk/jdk/test/com/sun/jdi/MonitorFrameInfo.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/MonitorFrameInfo.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 6230699
-  *  @summary Test ThreadReference.ownedMonitorsAndFrames()
-  *
---- openjdk/jdk/test/com/sun/jdi/NoLaunchOptionTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/NoLaunchOptionTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /*
-  *   @test       NoLaunchOptionTest.java
-+ *   @ignore cacao nyi
-  *   @bug        4554734 4724714
-  *   @summary    Test for -Xrunjdwp:[onthrow,onuncaught] suboptions require launch suboption
-  *   @author     Tim Bell
---- openjdk/jdk/test/com/sun/jdi/AllLineLocations.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/AllLineLocations.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4248728
-  *  @summary Test ReferenceType.allLineLocations
-  *  @author Gordon Hirsch
---- openjdk/jdk/test/com/sun/jdi/FieldWatchpoints.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FieldWatchpoints.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/Vars.java openjdk/jdk/test/com/sun/jdi/Vars.java
+--- openjdk.orig/jdk/test/com/sun/jdi/Vars.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/Vars.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4408582
-  *  @summary Test fix for: JDWP: WatchpointEvents outside of class filtered out
+  *  @summary Test Method.variables() and the like.
   *
---- openjdk/jdk/test/com/sun/jdi/RedefineClearBreakpoint.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefineClearBreakpoint.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4705330
- #  @summary Netbeans Fix and Continue crashes JVM
- #  @author Jim Holmlund/Swamy Venkataramanappa
---- openjdk/jdk/test/com/sun/jdi/CatchPatternTest.sh.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/CatchPatternTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -24,6 +24,7 @@
- #
- 
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4671838
- #  @summary TTY: surprising ExceptionSpec.resolveEventRequest() wildcard results
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/Solaris32AndSolaris64Test.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/Solaris32AndSolaris64Test.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #   @test       Solaris32AndSolaris64Test.sh
-+#   @ignore cacao nyi
- #   @bug        4478312 4780570 4913748
- #   @summary    Test debugging with mixed 32/64bit VMs.
- #   @author     Tim Bell
---- openjdk/jdk/test/com/sun/jdi/GenericsTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/GenericsTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4421040
-  *  @summary  JPDA: Add support for JSR-014 Generics
-  *
---- openjdk/jdk/test/com/sun/jdi/BreakpointTest.java.orig	2008-08-28 08:19:45.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/BreakpointTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 6496524
-  *  @summary Setting breakpoint in jdb crashes Hotspot JVM
-  *
---- openjdk/jdk/test/com/sun/jdi/OnThrowTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/OnThrowTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /*
-  *   @test       OnThrowTest.java
-+ *   @ignore cacao nyi
-  *   @bug        6263814
-  *   @summary    Test for -agentlib::[onthrow,launch]
-  *   @author     Kelly O'Hair
---- openjdk/jdk/test/com/sun/jdi/GetLocalVariables.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /** hard coded linenumbers in this test - DO NOT CHANGE
-  *  @test/nodynamiccopyright/
-+ *  @ignore cacao nyi
-  *  @bug 4359312 4450091
-  *  @summary Test PTR 1421 JVM exceptions making a call to LocalVariable.type().name()
-  *
---- openjdk/jdk/test/com/sun/jdi/LocalVariableEqual.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/LocalVariableEqual.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4916263
-  *  @summary Test
-  *
---- openjdk/jdk/test/com/sun/jdi/Java_gTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/Java_gTest.java	2008-10-19 15:21:54.000000000 +0000
+  *  @author Robert Field
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/VMDeathLastTest.java openjdk/jdk/test/com/sun/jdi/VMDeathLastTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/VMDeathLastTest.java	2010-02-17 03:14:50.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/VMDeathLastTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 4500906 4433599 4740097
-  *  @summary vmexec= debug java fails for SunCommandLineLauncher
+  *  @bug 4420844 4449394
+  *  @summary Checks that no events are sent after VMDeath, and test vm.canBeModified
   *
---- openjdk/jdk/test/com/sun/jdi/ExclusiveBind.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ExclusiveBind.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 4531526
-  * @summary Test that more than one debuggee cannot bind to same port
-  *          at the same time.
---- openjdk/jdk/test/com/sun/jdi/sde/MangleStepTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/sde/MangleStepTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4390869
-  *  @bug 4460328
-  *  @summary Test Stepping in the new SourceDebugExtension facility
---- openjdk/jdk/test/com/sun/jdi/sde/MangleTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/sde/MangleTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4390869
-  *  @bug 4460328
-  *  @summary Test the new SourceDebugExtension facility
---- openjdk/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/sde/SourceDebugExtensionTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4390869
-  *  @bug 4460328
-  *  @summary Test the new SourceDebugExtension facility
---- openjdk/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/sde/TemperatureTableTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4390869
-  *  @bug 4460328
-  *  @summary Test the new SourceDebugExtension facility
---- openjdk/jdk/test/com/sun/jdi/sde/FilterMangleTest.java.orig	2008-08-28 08:19:48.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/sde/FilterMangleTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4836939
-  *  @summary JDI add addSourceNameFilter to ClassPrepareRequest
-  *
---- openjdk/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/connect/spi/JdiLoadedByCustomLoader.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
- #
- 
- # @test
-+# @ignore cacao nyi
- # @bug 5055681
- # @summary Test loading JDI classes via custom class loader
- 
---- openjdk/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/connect/spi/DebugUsingCustomConnector.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 4287596
-  * @summary Unit test for "Pluggable Connectors and Transports" feature.
-  *
---- openjdk/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/connect/spi/GeneratedConnectors.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 4287596
-  * @summary Unit test for "Pluggable Connectors and Transports" feature.
-  *
---- openjdk/jdk/test/com/sun/jdi/ReferrersTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ReferrersTest.java	2008-10-19 15:21:54.000000000 +0000
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/VMDeathRequestTest.java openjdk/jdk/test/com/sun/jdi/VMDeathRequestTest.java
+--- openjdk.orig/jdk/test/com/sun/jdi/VMDeathRequestTest.java	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/VMDeathRequestTest.java	2010-02-19 14:59:03.000000000 +0000
 @@ -23,6 +23,7 @@
  
  /**
   *  @test
 + *  @ignore cacao nyi
-  *  @bug 5089849
-  *  @summary Add support for backtracking reference graph.
-  *  @author jjh
---- openjdk/jdk/test/com/sun/jdi/RedefinePop.sh.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RedefinePop.sh	2008-10-19 15:21:54.000000000 +0000
+  *  @bug 4419314
+  *  @author Robert Field
+  *
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/WatchFramePop.sh openjdk/jdk/test/com/sun/jdi/WatchFramePop.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/WatchFramePop.sh	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/WatchFramePop.sh	2010-02-19 14:59:03.000000000 +0000
 @@ -24,6 +24,7 @@
  #
  
  #  @test
 +#  @ignore cacao nyi
- #  @bug 4622663
- #  @summary redefine and pop top frame from jdb gets assertion failure
- #  @author Jim Holmlund/Swamy Venkataramanappa
---- openjdk/jdk/test/com/sun/jdi/JITDebug.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JITDebug.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
+ #  @bug 4546478
+ #  @summary Enabling a watchpoint can kill following NotifyFramePops
+ #  @author Jim Holmlund
+diff -Nru openjdk.orig/jdk/test/com/sun/jdi/ZZZcleanup.sh openjdk/jdk/test/com/sun/jdi/ZZZcleanup.sh
+--- openjdk.orig/jdk/test/com/sun/jdi/ZZZcleanup.sh	2010-02-17 03:14:51.000000000 +0000
++++ openjdk/jdk/test/com/sun/jdi/ZZZcleanup.sh	2010-02-19 14:59:03.000000000 +0000
+@@ -24,6 +24,7 @@
  #
- #   @test       JITDebug.sh 1.7 03/09/05
-+#   @ignore cacao nyi
- #   @bug        4291701 4376819 4422312 4522770 4913748
- #   @summary    Test JIT debugging - assure that launching on
- #               uncaught exception works
---- openjdk/jdk/test/com/sun/jdi/ModificationWatchpoints.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/ModificationWatchpoints.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
  
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4409582
-  *  @summary Test all info returned by modification watchpoints
-  *
---- openjdk/jdk/test/com/sun/jdi/FetchLocals.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/FetchLocals.java	2008-10-19 15:21:54.000000000 +0000
-@@ -1,5 +1,6 @@
- /** hard coded linenumbers in test - DO NOT CHANGE
-  *  @test/nodynamiccopyright/
-+ *  @ignore cacao nyi
-  *  @bug 4386002 4429245
-  *  @summary Test fix for: Incorrect values reported for some locals of type long
-  *
---- openjdk/jdk/test/com/sun/jdi/JdbReadTwiceTest.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/JdbReadTwiceTest.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #  
  #  @test
 +#  @ignore cacao nyi
- #  @bug 4981536
- #  @summary TTY: .jdbrc is read twice if jdb is run in the user's home dir
- #  @author jjh
---- openjdk/jdk/test/com/sun/jdi/HomeTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/HomeTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4446294
-  *  @summary JDI spec/impl: default "home" for CommandLineLaunch isn't java.home
-  *
---- openjdk/jdk/test/com/sun/jdi/RequestReflectionTest.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RequestReflectionTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 4425840
-  *  @author Robert Field
-  *
---- openjdk/jdk/test/com/sun/jdi/RunToExit.java.orig	2008-08-28 08:19:47.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/RunToExit.java	2008-10-19 15:21:54.000000000 +0000
-@@ -22,6 +22,7 @@
-  */
- 
- /* @test
-+ * @ignore cacao nyi
-  * @bug 4997445
-  * @summary Test that with server=y, when VM runs to System.exit() no error happens
-  *
---- openjdk/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/GetLocalVariables4Test.sh	2008-10-19 15:21:54.000000000 +0000
-@@ -25,6 +25,7 @@
- 
- #
- #  @test
-+#  @ignore cacao nyi
- #  @bug 4070747 4486859
- #  @summary Compiler fails to generate local var tbl entry for exception passed to catch
- #  @author Tim Bell
---- openjdk/jdk/test/com/sun/jdi/InstancesTest.java.orig	2008-08-28 08:19:46.000000000 +0000
-+++ openjdk/jdk/test/com/sun/jdi/InstancesTest.java	2008-10-19 15:21:54.000000000 +0000
-@@ -23,6 +23,7 @@
- 
- /**
-  *  @test
-+ *  @ignore cacao nyi
-  *  @bug 5024119
-  *  @summary Add ReferenceType.getAllInstances () method to JDI.
-  *  @author jjh
+ #  @bug 1234567
+ #  @summary no bug
+ #  @author Jim Holmlund
--- a/plugin/icedteanp/IcedTeaNPPlugin.cc	Thu Feb 25 18:48:18 2010 +0000
+++ b/plugin/icedteanp/IcedTeaNPPlugin.cc	Thu Feb 25 18:50:04 2010 +0000
@@ -107,7 +107,7 @@
   "application/x-java-applet;version=1.4.2:class,jar:IcedTea;"         \
   "application/x-java-applet;version=1.5:class,jar:IcedTea;"           \
   "application/x-java-applet;version=1.6:class,jar:IcedTea;"           \
-  "application/x-java-applet;jpi-version=1.6.0_00:class,jar:IcedTea;"  \
+  "application/x-java-applet;jpi-version=1.6.0_" JDK_UPDATE_VERSION ":class,jar:IcedTea;"  \
   "application/x-java-bean:class,jar:IcedTea;"                         \
   "application/x-java-bean;version=1.1:class,jar:IcedTea;"             \
   "application/x-java-bean;version=1.1.1:class,jar:IcedTea;"           \
@@ -123,7 +123,7 @@
   "application/x-java-bean;version=1.4.2:class,jar:IcedTea;"           \
   "application/x-java-bean;version=1.5:class,jar:IcedTea;"             \
   "application/x-java-bean;version=1.6:class,jar:IcedTea;"             \
-  "application/x-java-bean;jpi-version=1.6.0_00:class,jar:IcedTea;"    \
+  "application/x-java-bean;jpi-version=1.6.0_" JDK_UPDATE_VERSION ":class,jar:IcedTea;"    \
   "application/x-java-vm-npruntime::IcedTea;"
 
 #define PLUGIN_URL NS_INLINE_PLUGIN_CONTRACTID_PREFIX NS_JVM_MIME_TYPE
--- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java	Thu Feb 25 18:48:18 2010 +0000
+++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java	Thu Feb 25 18:50:04 2010 +0000
@@ -177,7 +177,7 @@
          Applet a;
          
          // Wait for panel to come alive
-         int maxWait = 5000; // wait 5 seconds max for panel to come alive
+         int maxWait = PluginAppletViewer.APPLET_TIMEOUT; // wait for panel to come alive
          int wait = 0;
          while ((panel == null) || (!((NetxPanel) panel).isAlive() && wait < maxWait)) {
               try {
@@ -368,6 +368,8 @@
      private long handle = 0;
      private WindowListener windowEventListener = null;
      private AppletEventListener appletEventListener = null;
+     
+     public static final int APPLET_TIMEOUT = 60000;
 
      /**
       * Null constructor to allow instantiation via newInstance()
@@ -616,7 +618,7 @@
                  if (message.startsWith("handle")) {
 
                      PluginDebug.debug("handle command waiting for applet to complete loading.");
-                     int maxWait = 10000; // wait 10 seconds max for applet to fully load
+                     int maxWait = APPLET_TIMEOUT; // wait for applet to fully load
                      int wait = 0;
                      while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) &&
                              (wait < maxWait)) {
@@ -663,7 +665,7 @@
          if (message.startsWith("width")) {
 
              // Wait for panel to come alive
-             int maxWait = 5000; // wait 5 seconds max for panel to come alive
+             int maxWait = APPLET_TIMEOUT; // wait for panel to come alive
              int wait = 0;
              while (!status.get(identifier).equals(PAV_INIT_STATUS.INIT_COMPLETE) && wait < maxWait) {
                   try {
@@ -724,7 +726,7 @@
              Object o;
 
              // Wait for panel to come alive
-             int maxWait = 5000; // wait 5 seconds max for panel to come alive
+             int maxWait = APPLET_TIMEOUT; // wait for panel to come alive
              int wait = 0;
              while ((panel == null) || (!((NetxPanel) panel).isAlive() && wait < maxWait)) {
                   try {
--- a/plugin/icedteanp/java/sun/applet/PluginMain.java	Thu Feb 25 18:48:18 2010 +0000
+++ b/plugin/icedteanp/java/sun/applet/PluginMain.java	Thu Feb 25 18:50:04 2010 +0000
@@ -189,6 +189,10 @@
 		avProps.put("file.separator.applet", "true");
 		avProps.put("path.separator.applet", "true");
 		avProps.put("line.separator.applet", "true");
+		
+		avProps.put("javaplugin.nodotversion", "160_17");
+		avProps.put("javaplugin.version", "1.6.0_17");
+		avProps.put("javaplugin.vm.options", "");
 
 		// Read in the System properties.  If something is going to be
 		// over-written, warn about it.
--- a/ports/hotspot/make/linux/makefiles/shark.make	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/make/linux/makefiles/shark.make	Thu Feb 25 18:50:04 2010 +0000
@@ -1,6 +1,6 @@
 #
 # Copyright 1999-2005 Sun Microsystems, Inc.  All Rights Reserved.
-# Copyright 2008 Red Hat, Inc.
+# Copyright 2008, 2010 Red Hat, Inc.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
@@ -20,10 +20,10 @@
 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
 # CA 95054 USA or visit www.sun.com if you need additional information or
 # have any questions.
-#  
+#
 #
 
-# Sets make macros for making shark version of VM
+# Sets make macros for making Shark version of VM
 
 TYPE = SHARK
 
--- a/ports/hotspot/src/cpu/zero/vm/globals_zero.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/cpu/zero/vm/globals_zero.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -1,6 +1,6 @@
 /*
  * Copyright 2000-2006 Sun Microsystems, Inc.  All Rights Reserved.
- * Copyright 2007, 2008, 2009 Red Hat, Inc.
+ * Copyright 2007, 2008, 2009, 2010 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -50,7 +50,7 @@
 
 define_pd_global(intx,  StackYellowPages,     2);
 define_pd_global(intx,  StackRedPages,        1);
-define_pd_global(intx,  StackShadowPages,     3 LP64_ONLY(+3) DEBUG_ONLY(+3));
+define_pd_global(intx,  StackShadowPages,     5 LP64_ONLY(+1) DEBUG_ONLY(+3));
 
 define_pd_global(bool,  RewriteBytecodes,     true);
 define_pd_global(bool,  RewriteFrequentPairs, true);
--- a/ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/cpu/zero/vm/shark_globals_zero.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -1,6 +1,6 @@
 /*
  * Copyright 2000-2007 Sun Microsystems, Inc.  All Rights Reserved.
- * Copyright 2008 Red Hat, Inc.
+ * Copyright 2008, 2009, 2010 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -20,13 +20,11 @@
  * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  * CA 95054 USA or visit www.sun.com if you need additional information or
  * have any questions.
- *  
+ *
  */
 
-//
-// Sets the default values for platform dependent flags used by the
-// Shark compiler.
-//
+// Set the default values for platform dependent flags used by the
+// Shark compiler.  See globals.hpp for details of what they do.
 
 define_pd_global(bool,  BackgroundCompilation,        true );
 define_pd_global(bool,  UseTLAB,                      true );
@@ -52,7 +50,7 @@
 define_pd_global(intx,  NewRatio,                     12   );
 define_pd_global(intx,  NewSizeThreadIncrease,        4*K  );
 define_pd_global(intx,  InitialCodeCacheSize,         160*K);
-define_pd_global(intx,  ReservedCodeCacheSize,        32*M ); 
+define_pd_global(intx,  ReservedCodeCacheSize,        32*M );
 define_pd_global(bool,  ProfileInterpreter,           false);
 define_pd_global(intx,  CodeCacheExpansionSize,       32*K );
 define_pd_global(uintx, CodeCacheMinBlockLength,      1    );
--- a/ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -1,6 +1,6 @@
 /*
  * Copyright 2003-2004 Sun Microsystems, Inc.  All Rights Reserved.
- * Copyright 2007, 2008 Red Hat, Inc.
+ * Copyright 2007, 2008, 2010 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -39,7 +39,13 @@
                   "stfd %0, 0(%2)\n"
                   : "=f"(tmp)
                   : "b"(src), "b"(dst));
+#elif defined(S390) && !defined(_LP64)
+    double tmp;
+    asm volatile ("ld  %0, 0(%1)\n"
+                  "std %0, 0(%2)\n"
+                  : "=r"(tmp)
+                  : "a"(src), "a"(dst));
 #else
     *(jlong *) dst = *(jlong *) src;
-#endif // PPC && !_LP64
+#endif
   }
--- a/ports/hotspot/src/share/vm/includeDB_shark	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/includeDB_shark	Thu Feb 25 18:50:04 2010 +0000
@@ -20,7 +20,7 @@
 // Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
 // CA 95054 USA or visit www.sun.com if you need additional information or
 // have any questions.
-//  
+//
 //
 
 // NOTE: DO NOT CHANGE THIS COPYRIGHT TO NEW STYLE - IT WILL BREAK makeDeps!
--- a/ports/hotspot/src/share/vm/shark/llvmHeaders.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/llvmHeaders.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -44,6 +44,7 @@
 #include <llvm/ExecutionEngine/JITMemoryManager.h>
 #include <llvm/Support/CommandLine.h>
 #if SHARK_LLVM_VERSION >= 27
+#include <llvm/ExecutionEngine/JIT.h>
 #include <llvm/ADT/StringMap.h>
 #include <llvm/Support/Debug.h>
 #include <llvm/System/Host.h>
--- a/ports/hotspot/src/share/vm/shark/sharkBlock.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkBlock.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkBlock::parse_bytecode(int start, int limit)
-{
+void SharkBlock::parse_bytecode(int start, int limit) {
   SharkValue *a, *b, *c, *d;
   int i;
 
@@ -45,7 +44,7 @@
 
     if (SharkTraceBytecodes)
       tty->print_cr("%4d: %s", bci(), Bytecodes::name(bc()));
-    
+
     if (has_trap() && trap_bci() == bci()) {
       do_trap(trap_request());
       return;
@@ -96,7 +95,7 @@
           }
         }
         break;
-      }  
+      }
     }
 
     switch (bc()) {
@@ -295,25 +294,25 @@
       xpop();
       xpop();
       break;
-    case Bytecodes::_swap: 
+    case Bytecodes::_swap:
       a = xpop();
       b = xpop();
       xpush(a);
       xpush(b);
-      break;  
+      break;
     case Bytecodes::_dup:
       a = xpop();
       xpush(a);
       xpush(a);
       break;
-    case Bytecodes::_dup_x1: 
+    case Bytecodes::_dup_x1:
       a = xpop();
       b = xpop();
       xpush(a);
       xpush(b);
       xpush(a);
       break;
-    case Bytecodes::_dup_x2: 
+    case Bytecodes::_dup_x2:
       a = xpop();
       b = xpop();
       c = xpop();
@@ -322,7 +321,7 @@
       xpush(b);
       xpush(a);
       break;
-    case Bytecodes::_dup2: 
+    case Bytecodes::_dup2:
       a = xpop();
       b = xpop();
       xpush(b);
@@ -395,7 +394,7 @@
       do_irem();
       break;
     case Bytecodes::_ineg:
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jint(
         builder()->CreateNeg(a->jint_value()), a->zero_checked()));
       break;
@@ -471,7 +470,7 @@
       do_lrem();
       break;
     case Bytecodes::_lneg:
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jlong(
         builder()->CreateNeg(a->jlong_value()), a->zero_checked()));
       break;
@@ -548,18 +547,18 @@
       break;
     case Bytecodes::_fdiv:
       b = pop();
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jfloat(
         builder()->CreateFDiv(a->jfloat_value(), b->jfloat_value())));
       break;
     case Bytecodes::_frem:
       b = pop();
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jfloat(
         builder()->CreateFRem(a->jfloat_value(), b->jfloat_value())));
       break;
     case Bytecodes::_fneg:
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jfloat(
         builder()->CreateFNeg(a->jfloat_value())));
       break;
@@ -584,18 +583,18 @@
       break;
     case Bytecodes::_ddiv:
       b = pop();
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jdouble(
         builder()->CreateFDiv(a->jdouble_value(), b->jdouble_value())));
       break;
     case Bytecodes::_drem:
       b = pop();
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jdouble(
         builder()->CreateFRem(a->jdouble_value(), b->jdouble_value())));
       break;
     case Bytecodes::_dneg:
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jdouble(
         builder()->CreateFNeg(a->jdouble_value())));
       break;
@@ -628,7 +627,7 @@
       break;
 
     case Bytecodes::_i2l:
-      a = pop();      
+      a = pop();
       push(SharkValue::create_jlong(
         builder()->CreateIntCast(
           a->jint_value(), SharkType::jlong_type(), true), a->zero_checked()));
@@ -890,18 +889,15 @@
   }
 }
 
-SharkState* SharkBlock::initial_current_state()
-{
+SharkState* SharkBlock::initial_current_state() {
   return entry_state()->copy();
 }
 
-int SharkBlock::switch_default_dest()
-{
+int SharkBlock::switch_default_dest() {
   return iter()->get_dest_table(0);
 }
 
-int SharkBlock::switch_table_length()
-{
+int SharkBlock::switch_table_length() {
   switch(bc()) {
   case Bytecodes::_tableswitch:
     return iter()->get_int_table(2) - iter()->get_int_table(1) + 1;
@@ -911,11 +907,10 @@
 
   default:
     ShouldNotReachHere();
-  } 
+  }
 }
 
-int SharkBlock::switch_key(int i)
-{
+int SharkBlock::switch_key(int i) {
   switch(bc()) {
   case Bytecodes::_tableswitch:
     return iter()->get_int_table(1) + i;
@@ -925,11 +920,10 @@
 
   default:
     ShouldNotReachHere();
-  } 
+  }
 }
 
-int SharkBlock::switch_dest(int i)
-{
+int SharkBlock::switch_dest(int i) {
   switch(bc()) {
   case Bytecodes::_tableswitch:
     return iter()->get_dest_table(i + 3);
@@ -939,11 +933,10 @@
 
   default:
     ShouldNotReachHere();
-  } 
+  }
 }
 
-void SharkBlock::do_div_or_rem(bool is_long, bool is_rem)
-{
+void SharkBlock::do_div_or_rem(bool is_long, bool is_rem) {
   SharkValue *sb = pop();
   SharkValue *sa = pop();
 
@@ -973,7 +966,7 @@
       builder()->CreateICmpEQ(a, p),
       builder()->CreateICmpEQ(b, q)),
     special_case, general_case);
-  
+
   builder()->SetInsertPoint(special_case);
   Value *special_result;
   if (is_rem) {
@@ -1010,8 +1003,7 @@
     push(SharkValue::create_jint(result, false));
 }
 
-void SharkBlock::do_field_access(bool is_get, bool is_field)
-{
+void SharkBlock::do_field_access(bool is_get, bool is_field) {
   bool will_link;
   ciField *field = iter()->get_field(will_link);
   assert(will_link, "typeflow responsibility");
@@ -1041,12 +1033,12 @@
     BasicType   basic_type = field->type()->basic_type();
     const Type *stack_type = SharkType::to_stackType(basic_type);
     const Type *field_type = SharkType::to_arrayType(basic_type);
-    
+
     Value *addr = builder()->CreateAddressOfStructEntry(
       object, in_ByteSize(field->offset_in_bytes()),
       PointerType::getUnqual(field_type),
       "addr");
-  
+
     // Do the access
     if (is_get) {
       Value *field_value = builder()->CreateLoad(addr);
@@ -1065,7 +1057,7 @@
           field_value, field_type, basic_type != T_CHAR);
 
       builder()->CreateStore(field_value, addr);
-      
+
       if (!field->type()->is_primitive_type())
         builder()->CreateUpdateBarrierSet(oopDesc::bs(), addr);
 
@@ -1079,8 +1071,7 @@
     push(value);
 }
 
-void SharkBlock::do_lcmp()
-{
+void SharkBlock::do_lcmp() {
   Value *b = pop()->jlong_value();
   Value *a = pop()->jlong_value();
 
@@ -1111,8 +1102,7 @@
   push(SharkValue::create_jint(result, false));
 }
 
-void SharkBlock::do_fcmp(bool is_double, bool unordered_is_greater)
-{
+void SharkBlock::do_fcmp(bool is_double, bool unordered_is_greater) {
   Value *a, *b;
   if (is_double) {
     b = pop()->jdouble_value();
@@ -1159,137 +1149,110 @@
   push(SharkValue::create_jint(result, false));
 }
 
-void SharkBlock::emit_IR()
-{
+void SharkBlock::emit_IR() {
   ShouldNotCallThis();
 }
 
-SharkState* SharkBlock::entry_state()
-{
+SharkState* SharkBlock::entry_state() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_zero_check(SharkValue* value)
-{
+void SharkBlock::do_zero_check(SharkValue* value) {
   ShouldNotCallThis();
 }
 
-void SharkBlock::maybe_add_backedge_safepoint()
-{
+void SharkBlock::maybe_add_backedge_safepoint() {
   ShouldNotCallThis();
 }
 
-bool SharkBlock::has_trap()
-{
+bool SharkBlock::has_trap() {
   return false;
 }
 
-int SharkBlock::trap_request()
-{
+int SharkBlock::trap_request() {
   ShouldNotCallThis();
 }
 
-int SharkBlock::trap_bci()
-{
+int SharkBlock::trap_bci() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_trap(int trap_request)
-{
+void SharkBlock::do_trap(int trap_request) {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_arraylength()
-{
+void SharkBlock::do_arraylength() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_aload(BasicType basic_type)
-{
+void SharkBlock::do_aload(BasicType basic_type) {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_astore(BasicType basic_type)
-{
+void SharkBlock::do_astore(BasicType basic_type) {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_return(BasicType type)
-{
+void SharkBlock::do_return(BasicType type) {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_athrow()
-{
+void SharkBlock::do_athrow() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_goto()
-{
+void SharkBlock::do_goto() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_jsr()
-{
+void SharkBlock::do_jsr() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_ret()
-{
+void SharkBlock::do_ret() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_if(ICmpInst::Predicate p, SharkValue* b, SharkValue* a)
-{
+void SharkBlock::do_if(ICmpInst::Predicate p, SharkValue* b, SharkValue* a) {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_switch()
-{
+void SharkBlock::do_switch() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_call()
-{
+void SharkBlock::do_call() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_instance_check()
-{
+void SharkBlock::do_instance_check() {
   ShouldNotCallThis();
 }
 
-bool SharkBlock::maybe_do_instanceof_if()
-{
+bool SharkBlock::maybe_do_instanceof_if() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_new()
-{
+void SharkBlock::do_new() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_newarray()
-{
+void SharkBlock::do_newarray() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_anewarray()
-{
+void SharkBlock::do_anewarray() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_multianewarray()
-{
+void SharkBlock::do_multianewarray() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_monitorenter()
-{
+void SharkBlock::do_monitorenter() {
   ShouldNotCallThis();
 }
 
-void SharkBlock::do_monitorexit()
-{
+void SharkBlock::do_monitorexit() {
   ShouldNotCallThis();
 }
--- a/ports/hotspot/src/share/vm/shark/sharkBlock.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkBlock.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -42,45 +42,39 @@
   SharkState*      _current_state;
 
  public:
-  ciBytecodeStream* iter()
-  {
+  ciBytecodeStream* iter() {
     return &_iter;
   }
-  Bytecodes::Code bc()
-  {
+  Bytecodes::Code bc() {
     return iter()->cur_bc();
   }
-  int bci()
-  {
+  int bci() {
     return iter()->cur_bci();
   }
 
   // Entry state
  protected:
   virtual SharkState* entry_state();
-  
+
   // Current state
  private:
   SharkState* initial_current_state();
-  
+
  public:
-  SharkState* current_state()
-  {
+  SharkState* current_state() {
     if (_current_state == NULL)
       set_current_state(initial_current_state());
     return _current_state;
   }
 
  protected:
-  void set_current_state(SharkState* current_state)
-  {
+  void set_current_state(SharkState* current_state) {
     _current_state = current_state;
   }
 
-  // Local variables  
+  // Local variables
  protected:
-  SharkValue* local(int index)
-  {
+  SharkValue* local(int index) {
     SharkValue *value = current_state()->local(index);
     assert(value != NULL, "shouldn't be");
     assert(value->is_one_word() ||
@@ -88,8 +82,7 @@
             current_state()->local(index + 1) == NULL), "should be");
     return value;
   }
-  void set_local(int index, SharkValue* value)
-  {
+  void set_local(int index, SharkValue* value) {
     assert(value != NULL, "shouldn't be");
     current_state()->set_local(index, value);
     if (value->is_two_word())
@@ -98,16 +91,13 @@
 
   // Expression stack (raw)
  protected:
-  void xpush(SharkValue* value)
-  {
+  void xpush(SharkValue* value) {
     current_state()->push(value);
   }
-  SharkValue* xpop()
-  {
+  SharkValue* xpop() {
     return current_state()->pop();
   }
-  SharkValue* xstack(int slot)
-  {
+  SharkValue* xstack(int slot) {
     SharkValue *value = current_state()->stack(slot);
     assert(value != NULL, "shouldn't be");
     assert(value->is_one_word() ||
@@ -115,22 +105,19 @@
             current_state()->stack(slot - 1) == NULL), "should be");
     return value;
   }
-  int xstack_depth()
-  {
+  int xstack_depth() {
     return current_state()->stack_depth();
   }
 
   // Expression stack (cooked)
  protected:
-  void push(SharkValue* value)
-  {
+  void push(SharkValue* value) {
     assert(value != NULL, "shouldn't be");
     xpush(value);
     if (value->is_two_word())
       xpush(NULL);
   }
-  SharkValue* pop()
-  {
+  SharkValue* pop() {
     int size = current_state()->stack(0) == NULL ? 2 : 1;
     if (size == 2)
       xpop();
@@ -138,8 +125,7 @@
     assert(value && value->size() == size, "should be");
     return value;
   }
-  SharkValue* pop_result(BasicType type)
-  {
+  SharkValue* pop_result(BasicType type) {
     SharkValue *result = pop();
 
 #ifdef ASSERT
@@ -176,17 +162,14 @@
 
   // Zero checking
  protected:
-  void check_null(SharkValue* object)
-  {
+  void check_null(SharkValue* object) {
     zero_check(object);
   }
-  void check_divide_by_zero(SharkValue* value)
-  {
+  void check_divide_by_zero(SharkValue* value) {
     zero_check(value);
   }
  private:
-  void zero_check(SharkValue* value)
-  {
+  void zero_check(SharkValue* value) {
     if (!value->zero_checked())
       do_zero_check(value);
   }
@@ -213,40 +196,32 @@
 
   // *div and *rem
  private:
-  void do_idiv()
-  {
+  void do_idiv() {
     do_div_or_rem(false, false);
   }
-  void do_irem()
-  {
+  void do_irem() {
     do_div_or_rem(false, true);
   }
-  void do_ldiv()
-  {
+  void do_ldiv() {
     do_div_or_rem(true, false);
   }
-  void do_lrem()
-  {
+  void do_lrem() {
     do_div_or_rem(true, true);
   }
-  void do_div_or_rem(bool is_long, bool is_rem);  
+  void do_div_or_rem(bool is_long, bool is_rem);
 
   // get* and put*
  private:
-  void do_getstatic()
-  {
+  void do_getstatic() {
     do_field_access(true, false);
   }
-  void do_getfield()
-  {
+  void do_getfield() {
     do_field_access(true, true);
   }
-  void do_putstatic()
-  {
+  void do_putstatic() {
     do_field_access(false, false);
   }
-  void do_putfield()
-  {
+  void do_putfield() {
     do_field_access(false, true);
   }
   void do_field_access(bool is_get, bool is_field);
@@ -282,7 +257,7 @@
   int switch_dest(int i);
 
   virtual void do_switch();
-  
+
   // invoke*
  protected:
   virtual void do_call();
--- a/ports/hotspot/src/share/vm/shark/sharkBuilder.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkBuilder.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -30,24 +30,21 @@
 
 SharkBuilder::SharkBuilder(SharkCodeBuffer* code_buffer)
   : IRBuilder<>(SharkContext::current()),
-    _code_buffer(code_buffer)
-{
+    _code_buffer(code_buffer) {
 }
 
 // Helpers for accessing structures
 Value* SharkBuilder::CreateAddressOfStructEntry(Value*      base,
                                                 ByteSize    offset,
                                                 const Type* type,
-                                                const char* name)
-{
+                                                const char* name) {
   return CreateBitCast(CreateStructGEP(base, in_bytes(offset)), type, name);
 }
 
 LoadInst* SharkBuilder::CreateValueOfStructEntry(Value*      base,
                                                  ByteSize    offset,
                                                  const Type* type,
-                                                 const char* name)
-{
+                                                 const char* name) {
   return CreateLoad(
     CreateAddressOfStructEntry(
       base, offset, PointerType::getUnqual(type)),
@@ -56,8 +53,7 @@
 
 // Helpers for accessing arrays
 
-LoadInst* SharkBuilder::CreateArrayLength(Value* arrayoop)
-{
+LoadInst* SharkBuilder::CreateArrayLength(Value* arrayoop) {
   return CreateValueOfStructEntry(
     arrayoop, in_ByteSize(arrayOopDesc::length_offset_in_bytes()),
     SharkType::jint_type(), "length");
@@ -68,8 +64,7 @@
                                         int         element_bytes,
                                         ByteSize    base_offset,
                                         Value*      index,
-                                        const char* name)
-{
+                                        const char* name) {
   Value* offset = CreateIntCast(index, SharkType::intptr_type(), false);
   if (element_bytes != 1)
     offset = CreateShl(
@@ -88,8 +83,7 @@
                                         BasicType   basic_type,
                                         ByteSize    base_offset,
                                         Value*      index,
-                                        const char* name)
-{
+                                        const char* name) {
   return CreateArrayAddress(
     arrayoop,
     SharkType::to_arrayType(basic_type),
@@ -100,8 +94,7 @@
 Value* SharkBuilder::CreateArrayAddress(Value*      arrayoop,
                                         BasicType   basic_type,
                                         Value*      index,
-                                        const char* name)
-{
+                                        const char* name) {
   return CreateArrayAddress(
     arrayoop, basic_type,
     in_ByteSize(arrayOopDesc::base_offset_in_bytes(basic_type)),
@@ -110,8 +103,7 @@
 
 // Helpers for creating intrinsics and external functions.
 
-const Type* SharkBuilder::make_type(char type, bool void_ok)
-{
+const Type* SharkBuilder::make_type(char type, bool void_ok) {
   switch (type) {
     // Primitive types
   case 'c':
@@ -135,7 +127,7 @@
   case 'F':
   case 'D':
     return PointerType::getUnqual(make_type(tolower(type), false));
-    
+
     // VM objects
   case 'T':
     return SharkType::thread_type();
@@ -157,8 +149,7 @@
 }
 
 const FunctionType* SharkBuilder::make_ftype(const char* params,
-                                             const char* ret)
-{
+                                             const char* ret) {
   std::vector<const Type*> param_types;
   for (const char* c = params; *c; c++)
     param_types.push_back(make_type(*c, false));
@@ -178,8 +169,7 @@
 // obscure them were they visible.
 Value* SharkBuilder::make_function(const char* name,
                                    const char* params,
-                                   const char* ret)
-{
+                                   const char* ret) {
   return SharkContext::current().get_external(name, make_ftype(params, ret));
 }
 
@@ -189,8 +179,7 @@
 // __kernel_dmb on ARM which is accessed via an absolute address.
 Value* SharkBuilder::make_function(address     func,
                                    const char* params,
-                                   const char* ret)
-{
+                                   const char* ret) {
   return CreateIntToPtr(
     LLVMValue::intptr_constant((intptr_t) func),
     PointerType::getUnqual(make_ftype(params, ret)));
@@ -198,168 +187,137 @@
 
 // VM calls
 
-Value* SharkBuilder::find_exception_handler()
-{
+Value* SharkBuilder::find_exception_handler() {
   return make_function(
     (address) SharkRuntime::find_exception_handler, "TIi", "i");
 }
 
-Value* SharkBuilder::monitorenter()
-{
+Value* SharkBuilder::monitorenter() {
   return make_function((address) SharkRuntime::monitorenter, "TM", "v");
 }
 
-Value* SharkBuilder::monitorexit()
-{
+Value* SharkBuilder::monitorexit() {
   return make_function((address) SharkRuntime::monitorexit, "TM", "v");
 }
 
-Value* SharkBuilder::new_instance()
-{
+Value* SharkBuilder::new_instance() {
   return make_function((address) SharkRuntime::new_instance, "Ti", "v");
 }
 
-Value* SharkBuilder::newarray()
-{
+Value* SharkBuilder::newarray() {
   return make_function((address) SharkRuntime::newarray, "Tii", "v");
 }
 
-Value* SharkBuilder::anewarray()
-{
+Value* SharkBuilder::anewarray() {
   return make_function((address) SharkRuntime::anewarray, "Tii", "v");
 }
 
-Value* SharkBuilder::multianewarray()
-{
+Value* SharkBuilder::multianewarray() {
   return make_function((address) SharkRuntime::multianewarray, "TiiI", "v");
 }
 
-Value* SharkBuilder::register_finalizer()
-{
+Value* SharkBuilder::register_finalizer() {
   return make_function((address) SharkRuntime::register_finalizer, "TO", "v");
 }
 
-Value* SharkBuilder::safepoint()
-{
+Value* SharkBuilder::safepoint() {
   return make_function((address) SafepointSynchronize::block, "T", "v");
 }
 
-Value* SharkBuilder::throw_ArrayIndexOutOfBoundsException()
-{
+Value* SharkBuilder::throw_ArrayIndexOutOfBoundsException() {
   return make_function(
     (address) SharkRuntime::throw_ArrayIndexOutOfBoundsException, "TCii", "v");
 }
 
-Value* SharkBuilder::throw_NullPointerException()
-{
+Value* SharkBuilder::throw_NullPointerException() {
   return make_function(
     (address) SharkRuntime::throw_NullPointerException, "TCi", "v");
 }
 
 // High-level non-VM calls
 
-Value* SharkBuilder::f2i()
-{
+Value* SharkBuilder::f2i() {
   return make_function((address) SharedRuntime::f2i, "f", "i");
 }
 
-Value* SharkBuilder::f2l()
-{
+Value* SharkBuilder::f2l() {
   return make_function((address) SharedRuntime::f2l, "f", "l");
 }
 
-Value* SharkBuilder::d2i()
-{
+Value* SharkBuilder::d2i() {
   return make_function((address) SharedRuntime::d2i, "d", "i");
 }
 
-Value* SharkBuilder::d2l()
-{
+Value* SharkBuilder::d2l() {
   return make_function((address) SharedRuntime::d2l, "d", "l");
 }
 
-Value* SharkBuilder::is_subtype_of()
-{
+Value* SharkBuilder::is_subtype_of() {
   return make_function((address) SharkRuntime::is_subtype_of, "OO", "c");
 }
 
-Value* SharkBuilder::current_time_millis()
-{
+Value* SharkBuilder::current_time_millis() {
   return make_function((address) os::javaTimeMillis, "", "l");
 }
 
-Value* SharkBuilder::sin()
-{
+Value* SharkBuilder::sin() {
   return make_function("llvm.sin.f64", "d", "d");
 }
 
-Value* SharkBuilder::cos()
-{
+Value* SharkBuilder::cos() {
   return make_function("llvm.cos.f64", "d", "d");
 }
 
-Value* SharkBuilder::tan()
-{
+Value* SharkBuilder::tan() {
   return make_function((address) ::tan, "d", "d");
 }
 
-Value* SharkBuilder::atan2()
-{
+Value* SharkBuilder::atan2() {
   return make_function((address) ::atan2, "dd", "d");
 }
 
-Value* SharkBuilder::sqrt()
-{
+Value* SharkBuilder::sqrt() {
   return make_function("llvm.sqrt.f64", "d", "d");
 }
 
-Value* SharkBuilder::log()
-{
+Value* SharkBuilder::log() {
   return make_function("llvm.log.f64", "d", "d");
 }
 
-Value* SharkBuilder::log10()
-{
+Value* SharkBuilder::log10() {
   return make_function("llvm.log10.f64", "d", "d");
 }
 
-Value* SharkBuilder::pow()
-{
+Value* SharkBuilder::pow() {
   return make_function("llvm.pow.f64", "dd", "d");
 }
 
-Value* SharkBuilder::exp()
-{
+Value* SharkBuilder::exp() {
   return make_function("llvm.exp.f64", "d", "d");
 }
 
-Value* SharkBuilder::fabs()
-{
+Value* SharkBuilder::fabs() {
   return make_function((address) ::fabs, "d", "d");
 }
 
-Value* SharkBuilder::unsafe_field_offset_to_byte_offset()
-{
+Value* SharkBuilder::unsafe_field_offset_to_byte_offset() {
   extern jlong Unsafe_field_offset_to_byte_offset(jlong field_offset);
   return make_function((address) Unsafe_field_offset_to_byte_offset, "l", "l");
 }
 
-Value* SharkBuilder::osr_migration_end()
-{
+Value* SharkBuilder::osr_migration_end() {
   return make_function((address) SharedRuntime::OSR_migration_end, "C", "v");
 }
 
 // Uncommon trap
 
-Value* SharkBuilder::uncommon_trap()
-{
+Value* SharkBuilder::uncommon_trap() {
   return make_function((address) SharkRuntime::uncommon_trap, "Ti", "v");
 }
 
 // Native-Java transition.
 
-Value* SharkBuilder::check_special_condition_for_native_trans()
-{
+Value* SharkBuilder::check_special_condition_for_native_trans() {
   return make_function(
     (address) JavaThread::check_special_condition_for_native_trans,
     "T", "v");
@@ -383,14 +341,12 @@
 // perform these operations without delegating to a function.
 
 #ifdef ARM
-static jint zero_cmpxchg_int(volatile jint *ptr, jint oldval, jint newval)
-{
+static jint zero_cmpxchg_int(volatile jint *ptr, jint oldval, jint newval) {
   return Atomic::cmpxchg(newval, ptr, oldval);
 }
 #endif // ARM
 
-Value* SharkBuilder::cmpxchg_int()
-{
+Value* SharkBuilder::cmpxchg_int() {
   return make_function(
 #ifdef ARM
     (address) zero_cmpxchg_int,
@@ -403,14 +359,12 @@
 #ifdef ARM
 static intptr_t zero_cmpxchg_ptr(volatile intptr_t* ptr,
                                  intptr_t           oldval,
-                                 intptr_t           newval)
-{
+                                 intptr_t           newval) {
   return Atomic::cmpxchg_ptr(newval, ptr, oldval);
 }
 #endif // ARM
 
-Value* SharkBuilder::cmpxchg_ptr()
-{
+Value* SharkBuilder::cmpxchg_ptr() {
   return make_function(
 #ifdef ARM
     (address) zero_cmpxchg_ptr,
@@ -420,8 +374,7 @@
     "Xxx", "x");
 }
 
-Value* SharkBuilder::memory_barrier()
-{
+Value* SharkBuilder::memory_barrier() {
   return make_function(
 #ifdef ARM
     (address) 0xffff0fa0, // __kernel_dmb
@@ -431,23 +384,19 @@
     "11111", "v");
 }
 
-Value* SharkBuilder::memset()
-{
+Value* SharkBuilder::memset() {
   return make_function("llvm.memset.i32", "Ccii", "v");
 }
 
-Value* SharkBuilder::unimplemented()
-{
+Value* SharkBuilder::unimplemented() {
   return make_function((address) report_unimplemented, "Ci", "v");
 }
 
-Value* SharkBuilder::should_not_reach_here()
-{
+Value* SharkBuilder::should_not_reach_here() {
   return make_function((address) report_should_not_reach_here, "Ci", "v");
 }
 
-Value* SharkBuilder::dump()
-{
+Value* SharkBuilder::dump() {
   return make_function((address) SharkRuntime::dump, "Cx", "v");
 }
 
@@ -455,20 +404,17 @@
 
 CallInst* SharkBuilder::CreateCmpxchgInt(Value* exchange_value,
                                          Value* dst,
-                                         Value* compare_value)
-{
+                                         Value* compare_value) {
   return CreateCall3(cmpxchg_int(), dst, compare_value, exchange_value);
 }
 
 CallInst* SharkBuilder::CreateCmpxchgPtr(Value* exchange_value,
                                          Value* dst,
-                                         Value* compare_value)
-{
+                                         Value* compare_value) {
   return CreateCall3(cmpxchg_ptr(), dst, compare_value, exchange_value);
 }
 
-CallInst *SharkBuilder::CreateMemoryBarrier(int flags)
-{
+CallInst *SharkBuilder::CreateMemoryBarrier(int flags) {
   Value *args[] = {
     LLVMValue::bit_constant((flags & BARRIER_LOADLOAD) ? 1 : 0),
     LLVMValue::bit_constant((flags & BARRIER_LOADSTORE) ? 1 : 0),
@@ -482,13 +428,11 @@
 CallInst* SharkBuilder::CreateMemset(Value* dst,
                                      Value* value,
                                      Value* len,
-                                     Value* align)
-{
+                                     Value* align) {
   return CreateCall4(memset(), dst, value, len, align);
 }
 
-CallInst* SharkBuilder::CreateUnimplemented(const char* file, int line)
-{
+CallInst* SharkBuilder::CreateUnimplemented(const char* file, int line) {
   return CreateCall2(
     unimplemented(),
     CreateIntToPtr(
@@ -497,8 +441,7 @@
     LLVMValue::jint_constant(line));
 }
 
-CallInst* SharkBuilder::CreateShouldNotReachHere(const char* file, int line)
-{
+CallInst* SharkBuilder::CreateShouldNotReachHere(const char* file, int line) {
   return CreateCall2(
     should_not_reach_here(),
     CreateIntToPtr(
@@ -508,8 +451,7 @@
 }
 
 #ifndef PRODUCT
-CallInst* SharkBuilder::CreateDump(Value* value)
-{
+CallInst* SharkBuilder::CreateDump(Value* value) {
   const char *name;
   if (value->hasName())
     // XXX this leaks, but it's only debug code
@@ -535,8 +477,7 @@
 
 // HotSpot memory barriers
 
-void SharkBuilder::CreateUpdateBarrierSet(BarrierSet* bs, Value* field)
-{
+void SharkBuilder::CreateUpdateBarrierSet(BarrierSet* bs, Value* field) {
   if (bs->kind() != BarrierSet::CardTableModRef)
     Unimplemented();
 
@@ -554,15 +495,13 @@
 
 // Helpers for accessing the code buffer
 
-Value* SharkBuilder::code_buffer_address(int offset)
-{
+Value* SharkBuilder::code_buffer_address(int offset) {
   return CreateAdd(
     code_buffer()->base_pc(),
     LLVMValue::intptr_constant(offset));
 }
 
-Value* SharkBuilder::CreateInlineOop(jobject object, const char* name)
-{
+Value* SharkBuilder::CreateInlineOop(jobject object, const char* name) {
   return CreateLoad(
     CreateIntToPtr(
       code_buffer_address(code_buffer()->inline_oop(object)),
@@ -572,8 +511,7 @@
 
 // Helpers for creating basic blocks.
 
-BasicBlock* SharkBuilder::GetBlockInsertionPoint() const
-{
+BasicBlock* SharkBuilder::GetBlockInsertionPoint() const {
   BasicBlock *cur = GetInsertBlock();
 
   // BasicBlock::Create takes an insertBefore argument, so
@@ -594,8 +532,7 @@
     return iter;
 }
 
-BasicBlock* SharkBuilder::CreateBlock(BasicBlock* ip, const char* name) const
-{
+BasicBlock* SharkBuilder::CreateBlock(BasicBlock* ip, const char* name) const {
   return BasicBlock::Create(
     SharkContext::current(), name, GetInsertBlock()->getParent(), ip);
-}  
+}
--- a/ports/hotspot/src/share/vm/shark/sharkBuilder.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkBuilder.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -34,8 +34,7 @@
   SharkCodeBuffer* _code_buffer;
 
  protected:
-  SharkCodeBuffer* code_buffer() const
-  {
+  SharkCodeBuffer* code_buffer() const {
     return _code_buffer;
   }
 
@@ -150,7 +149,7 @@
   llvm::Value* memset();
   llvm::Value* unimplemented();
   llvm::Value* should_not_reach_here();
-  llvm::Value* dump();  
+  llvm::Value* dump();
 
   // Public interface to low-level non-VM calls.
  public:
@@ -165,10 +164,10 @@
                                llvm::Value* value,
                                llvm::Value* len,
                                llvm::Value* align);
-  llvm::CallInst* CreateUnimplemented(const char* file, int line);  
-  llvm::CallInst* CreateShouldNotReachHere(const char* file, int line);  
+  llvm::CallInst* CreateUnimplemented(const char* file, int line);
+  llvm::CallInst* CreateShouldNotReachHere(const char* file, int line);
   NOT_PRODUCT(llvm::CallInst* CreateDump(llvm::Value* value));
-  
+
   // Flags for CreateMemoryBarrier.
  public:
   enum BarrierFlags {
@@ -186,8 +185,7 @@
  public:
   llvm::Value* code_buffer_address(int offset);
   llvm::Value* CreateInlineOop(jobject object, const char* name = "");
-  llvm::Value* CreateInlineOop(ciObject* object, const char* name = "")
-  {
+  llvm::Value* CreateInlineOop(ciObject* object, const char* name = "") {
     return CreateInlineOop(object->encoding(), name);
   }
 
--- a/ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkCacheDecache.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkDecacher::start_frame()
-{
+void SharkDecacher::start_frame() {
   // Start recording the debug information
   _pc_offset = code_buffer()->create_unique_offset();
   _oopmap = new OopMap(
@@ -38,8 +37,7 @@
   debug_info()->add_safepoint(pc_offset(), oopmap());
 }
 
-void SharkDecacher::start_stack(int stack_depth)
-{
+void SharkDecacher::start_stack(int stack_depth) {
   // Create the array we'll record our stack slots in
   _exparray = new GrowableArray<ScopeValue*>(stack_depth);
 
@@ -53,8 +51,7 @@
 
 void SharkDecacher::process_stack_slot(int          index,
                                        SharkValue** addr,
-                                       int          offset)
-{
+                                       int          offset) {
   SharkValue *value = *addr;
 
   // Write the value to the frame if necessary
@@ -76,14 +73,12 @@
   }
 }
 
-void SharkDecacher::start_monitors(int num_monitors)
-{
+void SharkDecacher::start_monitors(int num_monitors) {
   // Create the array we'll record our monitors in
   _monarray = new GrowableArray<MonitorValue*>(num_monitors);
 }
 
-void SharkDecacher::process_monitor(int index, int box_offset, int obj_offset)
-{
+void SharkDecacher::process_monitor(int index, int box_offset, int obj_offset) {
   oopmap()->set_oop(slot2reg(obj_offset));
 
   monarray()->append(new MonitorValue(
@@ -91,8 +86,7 @@
     slot2loc(box_offset, Location::normal)));
 }
 
-void SharkDecacher::process_oop_tmp_slot(Value** value, int offset)
-{
+void SharkDecacher::process_oop_tmp_slot(Value** value, int offset) {
   // Decache the temporary oop slot
   if (*value) {
     write_value_to_frame(
@@ -104,34 +98,30 @@
   }
 }
 
-void SharkDecacher::process_method_slot(Value** value, int offset)
-{
+void SharkDecacher::process_method_slot(Value** value, int offset) {
   // Decache the method pointer
   write_value_to_frame(
     SharkType::methodOop_type(),
     *value,
     offset);
 
-  oopmap()->set_oop(slot2reg(offset));  
+  oopmap()->set_oop(slot2reg(offset));
 }
 
-void SharkDecacher::process_pc_slot(int offset)
-{
+void SharkDecacher::process_pc_slot(int offset) {
   // Record the PC
   builder()->CreateStore(
     builder()->code_buffer_address(pc_offset()),
     stack()->slot_addr(offset));
 }
-  
-void SharkDecacher::start_locals()
-{
+
+void SharkDecacher::start_locals() {
   // Create the array we'll record our local variables in
   _locarray = new GrowableArray<ScopeValue*>(max_locals());}
 
 void SharkDecacher::process_local_slot(int          index,
                                        SharkValue** addr,
-                                       int          offset)
-{
+                                       int          offset) {
   SharkValue *value = *addr;
 
   // Write the value to the frame if necessary
@@ -153,8 +143,7 @@
   }
 }
 
-void SharkDecacher::end_frame()
-{
+void SharkDecacher::end_frame() {
   // Record the scope
   debug_info()->describe_scope(
     pc_offset(),
@@ -170,8 +159,7 @@
 
 void SharkCacher::process_stack_slot(int          index,
                                      SharkValue** addr,
-                                     int          offset)
-{
+                                     int          offset) {
   SharkValue *value = *addr;
 
   // Read the value from the frame if necessary
@@ -187,8 +175,7 @@
 
 void SharkOSREntryCacher::process_monitor(int index,
                                           int box_offset,
-                                          int obj_offset)
-{
+                                          int obj_offset) {
   // Copy the monitor from the OSR buffer to the frame
   int src_offset = max_locals() + index * 2;
   builder()->CreateStore(
@@ -201,29 +188,25 @@
     stack()->slot_addr(obj_offset, SharkType::oop_type()));
 }
 
-void SharkCacher::process_oop_tmp_slot(Value** value, int offset)
-{
+void SharkCacher::process_oop_tmp_slot(Value** value, int offset) {
   // Cache the temporary oop
   if (*value)
     *value = read_value_from_frame(SharkType::oop_type(), offset);
 }
 
-void SharkCacher::process_method_slot(Value** value, int offset)
-{
+void SharkCacher::process_method_slot(Value** value, int offset) {
   // Cache the method pointer
   *value = read_value_from_frame(SharkType::methodOop_type(), offset);
 }
 
-void SharkFunctionEntryCacher::process_method_slot(Value** value, int offset)
-{
+void SharkFunctionEntryCacher::process_method_slot(Value** value, int offset) {
   // "Cache" the method pointer
   *value = method();
 }
 
 void SharkCacher::process_local_slot(int          index,
                                      SharkValue** addr,
-                                     int          offset)
-{
+                                     int          offset) {
   SharkValue *value = *addr;
 
   // Read the value from the frame if necessary
@@ -238,8 +221,7 @@
 }
 
 Value* SharkOSREntryCacher::CreateAddressOfOSRBufEntry(int         offset,
-                                                       const Type* type)
-{
+                                                       const Type* type) {
   Value *result = builder()->CreateStructGEP(osr_buf(), offset);
   if (type != SharkType::intptr_type())
     result = builder()->CreateBitCast(result, PointerType::getUnqual(type));
@@ -248,8 +230,7 @@
 
 void SharkOSREntryCacher::process_local_slot(int          index,
                                              SharkValue** addr,
-                                             int          offset)
-{
+                                             int          offset) {
   SharkValue *value = *addr;
 
   // Read the value from the OSR buffer if necessary
@@ -266,12 +247,10 @@
 
 void SharkDecacher::write_value_to_frame(const Type* type,
                                          Value*      value,
-                                         int         offset)
-{
+                                         int         offset) {
   builder()->CreateStore(value, stack()->slot_addr(offset, type));
 }
 
-Value* SharkCacher::read_value_from_frame(const Type* type, int offset)
-{
+Value* SharkCacher::read_value_from_frame(const Type* type, int offset) {
   return builder()->CreateLoad(stack()->slot_addr(offset, type));
 }
--- a/ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkCacheDecache.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -44,8 +44,7 @@
 
   // Helper
  protected:
-  static int adjusted_offset(SharkValue* value, int offset)
-  {
+  static int adjusted_offset(SharkValue* value, int offset) {
     if (value->is_two_word())
       offset--;
     return offset;
@@ -59,10 +58,9 @@
 
  private:
   int _bci;
-  
+
  protected:
-  int bci() const
-  {
+  int bci() const {
     return _bci;
   }
 
@@ -74,24 +72,19 @@
   GrowableArray<ScopeValue*>*   _locarray;
 
  private:
-  int pc_offset() const
-  {
+  int pc_offset() const {
     return _pc_offset;
   }
-  OopMap* oopmap() const
-  {
+  OopMap* oopmap() const {
     return _oopmap;
   }
-  GrowableArray<ScopeValue*>* exparray() const
-  {
+  GrowableArray<ScopeValue*>* exparray() const {
     return _exparray;
   }
-  GrowableArray<MonitorValue*>* monarray() const
-  {
+  GrowableArray<MonitorValue*>* monarray() const {
     return _monarray;
   }
-  GrowableArray<ScopeValue*>* locarray() const
-  {
+  GrowableArray<ScopeValue*>* locarray() const {
     return _locarray;
   }
 
@@ -108,7 +101,7 @@
   void process_oop_tmp_slot(llvm::Value** value, int offset);
   void process_method_slot(llvm::Value** value, int offset);
   void process_pc_slot(int offset);
-  
+
   void start_locals();
   void process_local_slot(int index, SharkValue** value, int offset);
 
@@ -116,24 +109,19 @@
 
   // oopmap and debuginfo helpers
  private:
-  static int oopmap_slot_munge(int offset)
-  {
+  static int oopmap_slot_munge(int offset) {
     return SharkStack::oopmap_slot_munge(offset);
   }
-  static VMReg slot2reg(int offset)
-  {
+  static VMReg slot2reg(int offset) {
     return SharkStack::slot2reg(offset);
   }
-  static Location slot2loc(int offset, Location::Type type)
-  {
+  static Location slot2loc(int offset, Location::Type type) {
     return Location::new_stk_loc(type, offset * wordSize);
   }
-  static LocationValue* slot2lv(int offset, Location::Type type)
-  {
+  static LocationValue* slot2lv(int offset, Location::Type type) {
     return new LocationValue(slot2loc(offset, type));
   }
-  static Location::Type location_type(SharkValue** addr, bool maybe_two_word)
-  {
+  static Location::Type location_type(SharkValue** addr, bool maybe_two_word) {
     // low addresses this end
     //                           Type       32-bit    64-bit
     //   ----------------------------------------------------
@@ -143,7 +131,7 @@
     //   stack[3]    local[0]    jint       normal    normal
     //
     // high addresses this end
-    
+
     SharkValue *value = *addr;
     if (value) {
       if (value->is_jobject())
@@ -179,8 +167,7 @@
   virtual bool stack_slot_needs_oopmap(int index, SharkValue* value) = 0;
   virtual bool stack_slot_needs_debuginfo(int index, SharkValue* value) = 0;
 
-  static Location::Type stack_location_type(int index, SharkValue** addr)
-  {
+  static Location::Type stack_location_type(int index, SharkValue** addr) {
     return location_type(addr, *addr == NULL);
   }
 
@@ -190,8 +177,7 @@
   virtual bool local_slot_needs_oopmap(int index, SharkValue* value) = 0;
   virtual bool local_slot_needs_debuginfo(int index, SharkValue* value) = 0;
 
-  static Location::Type local_location_type(int index, SharkValue** addr)
-  {
+  static Location::Type local_location_type(int index, SharkValue** addr) {
     return location_type(addr, index > 0);
   }
 
@@ -211,38 +197,31 @@
   ciMethod* _callee;
 
  protected:
-  ciMethod* callee() const
-  {
+  ciMethod* callee() const {
     return _callee;
   }
 
   // Stack slot helpers
  protected:
-  bool stack_slot_needs_write(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_write(int index, SharkValue* value) {
     return value && (index < callee()->arg_size() || value->is_jobject());
   }
-  bool stack_slot_needs_oopmap(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_oopmap(int index, SharkValue* value) {
     return value && value->is_jobject() && index >= callee()->arg_size();
   }
-  bool stack_slot_needs_debuginfo(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_debuginfo(int index, SharkValue* value) {
     return index >= callee()->arg_size();
   }
 
   // Local slot helpers
  protected:
-  bool local_slot_needs_write(int index, SharkValue* value)
-  {
+  bool local_slot_needs_write(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool local_slot_needs_oopmap(int index, SharkValue* value)
-  {
+  bool local_slot_needs_oopmap(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool local_slot_needs_debuginfo(int index, SharkValue* value)
-  {
+  bool local_slot_needs_debuginfo(int index, SharkValue* value) {
     return true;
   }
 };
@@ -254,31 +233,25 @@
 
   // Stack slot helpers
  protected:
-  bool stack_slot_needs_write(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_write(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool stack_slot_needs_oopmap(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_oopmap(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool stack_slot_needs_debuginfo(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_debuginfo(int index, SharkValue* value) {
     return true;
   }
 
   // Local slot helpers
  protected:
-  bool local_slot_needs_write(int index, SharkValue* value)
-  {
+  bool local_slot_needs_write(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool local_slot_needs_oopmap(int index, SharkValue* value)
-  {
+  bool local_slot_needs_oopmap(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool local_slot_needs_debuginfo(int index, SharkValue* value)
-  {
+  bool local_slot_needs_debuginfo(int index, SharkValue* value) {
     return true;
   }
 };
@@ -290,31 +263,25 @@
 
   // Stack slot helpers
  protected:
-  bool stack_slot_needs_write(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_write(int index, SharkValue* value) {
     return value != NULL;
   }
-  bool stack_slot_needs_oopmap(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_oopmap(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool stack_slot_needs_debuginfo(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_debuginfo(int index, SharkValue* value) {
     return true;
   }
 
   // Local slot helpers
  protected:
-  bool local_slot_needs_write(int index, SharkValue* value)
-  {
+  bool local_slot_needs_write(int index, SharkValue* value) {
     return value != NULL;
   }
-  bool local_slot_needs_oopmap(int index, SharkValue* value)
-  {
+  bool local_slot_needs_oopmap(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
-  bool local_slot_needs_debuginfo(int index, SharkValue* value)
-  {
+  bool local_slot_needs_debuginfo(int index, SharkValue* value) {
     return true;
   }
 };
@@ -339,8 +306,7 @@
 
   // Local slot helper
  protected:
-  virtual bool local_slot_needs_read(int index, SharkValue* value)
-  {
+  virtual bool local_slot_needs_read(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
 
@@ -358,15 +324,13 @@
   ciMethod* _callee;
 
  protected:
-  ciMethod* callee() const
-  {
+  ciMethod* callee() const {
     return _callee;
   }
 
   // Stack slot helper
  protected:
-  bool stack_slot_needs_read(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_read(int index, SharkValue* value) {
     return value && (index < callee()->return_type()->size() ||
                      value->is_jobject());
   }
@@ -379,8 +343,7 @@
 
   // Stack slot helper
  protected:
-  bool stack_slot_needs_read(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_read(int index, SharkValue* value) {
     return value && value->is_jobject();
   }
 };
@@ -394,8 +357,7 @@
   llvm::Value* _method;
 
  private:
-  llvm::Value* method() const
-  {
+  llvm::Value* method() const {
     return _method;
   }
 
@@ -405,15 +367,13 @@
 
   // Stack slot helper
  protected:
-  bool stack_slot_needs_read(int index, SharkValue* value)
-  {
+  bool stack_slot_needs_read(int index, SharkValue* value) {
     ShouldNotReachHere(); // entry block shouldn't have stack
   }
 
   // Local slot helper
  protected:
-  bool local_slot_needs_read(int index, SharkValue* value)
-  {
+  bool local_slot_needs_read(int index, SharkValue* value) {
     return value != NULL;
   }
 };
@@ -442,8 +402,7 @@
   llvm::Value* _osr_buf;
 
  private:
-  llvm::Value* osr_buf() const
-  {
+  llvm::Value* osr_buf() const {
     return _osr_buf;
   }
 
--- a/ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkCodeBuffer.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -33,18 +33,15 @@
   llvm::Value*    _base_pc;
 
  private:
-  MacroAssembler* masm() const
-  {
+  MacroAssembler* masm() const {
     return _masm;
   }
 
  public:
-  llvm::Value* base_pc() const
-  {
+  llvm::Value* base_pc() const {
     return _base_pc;
   }
-  void set_base_pc(llvm::Value* base_pc)
-  {
+  void set_base_pc(llvm::Value* base_pc) {
     assert(_base_pc == NULL, "only do this once");
     _base_pc = base_pc;
   }
@@ -53,8 +50,7 @@
   // This buffer will have been relocated by the time the method
   // is installed, so you can't inline the result in code.
  public:
-  void* malloc(size_t size) const
-  {
+  void* malloc(size_t size) const {
     masm()->align(BytesPerWord);
     void *result = masm()->pc();
     masm()->advance(size);
@@ -63,8 +59,7 @@
 
   // Create a unique offset in the buffer.
  public:
-  int create_unique_offset() const
-  {
+  int create_unique_offset() const {
     int offset = masm()->offset();
     masm()->advance(1);
     return offset;
@@ -72,8 +67,7 @@
 
   // Inline an oop into the buffer and return its offset.
  public:
-  int inline_oop(jobject object) const
-  {
+  int inline_oop(jobject object) const {
     masm()->align(BytesPerWord);
     int offset = masm()->offset();
     masm()->store_oop(object);
--- a/ports/hotspot/src/share/vm/shark/sharkCompiler.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkCompiler.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -1,6 +1,6 @@
 /*
  * Copyright 1999-2007 Sun Microsystems, Inc.  All Rights Reserved.
- * Copyright 2008, 2009 Red Hat, Inc.
+ * Copyright 2008, 2009, 2010 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -30,15 +30,25 @@
 
 using namespace llvm;
 
+#if SHARK_LLVM_VERSION >= 27
+namespace {
+  cl::opt<std::string>
+  MCPU("mcpu");
+
+  cl::list<std::string>
+  MAttrs("mattr",
+         cl::CommaSeparated);
+}
+#endif
+
 SharkCompiler::SharkCompiler()
-  : AbstractCompiler()
-{
+  : AbstractCompiler() {
   // Create the lock to protect the memory manager and execution engine
   _execution_engine_lock = new Monitor(Mutex::leaf, "SharkExecutionEngineLock");
   MutexLocker locker(execution_engine_lock());
 
   // Make LLVM safe for multithreading
-  if (!llvm_start_multithreaded()) 
+  if (!llvm_start_multithreaded())
     fatal("llvm_start_multithreaded() failed");
 
   // Initialize the native target
@@ -77,9 +87,24 @@
   cl::ParseCommandLineOptions(args.size() - 1, (char **) &args[0]);
 
   // Create the JIT
-  _execution_engine = ExecutionEngine::createJIT(
-    _normal_context->module(),
-    NULL, memory_manager(), CodeGenOpt::Default);
+  std::string ErrorMsg;
+
+  EngineBuilder builder(_normal_context->module());
+  builder.setMCPU(MCPU);
+  builder.setMAttrs(MAttrs);
+  builder.setJITMemoryManager(memory_manager());
+  builder.setEngineKind(EngineKind::JIT);
+  builder.setErrorStr(&ErrorMsg);
+  _execution_engine = builder.create();
+
+  if (!execution_engine()) {
+    if (!ErrorMsg.empty())
+      printf("Error while creating Shark JIT: %s\n",ErrorMsg.c_str());
+    else
+      printf("Unknown error while creating Shark JIT\n");
+    exit(1);
+  }
+
   execution_engine()->addModule(
     _native_context->module());
 #else
@@ -94,13 +119,13 @@
   mark_initialized();
 }
 
-void SharkCompiler::initialize()
-{
+void SharkCompiler::initialize() {
   ShouldNotCallThis();
 }
 
-void SharkCompiler::compile_method(ciEnv* env, ciMethod* target, int entry_bci)
-{
+void SharkCompiler::compile_method(ciEnv*    env,
+                                   ciMethod* target,
+                                   int       entry_bci) {
   assert(is_initialized(), "should be");
   ResourceMark rm;
   const char *name = methodname(
@@ -136,7 +161,7 @@
 
   // Emit the entry point
   SharkEntry *entry = (SharkEntry *) cb.malloc(sizeof(SharkEntry));
-  
+
   // Build the LLVM IR for the method
   Function *function = SharkFunction::build(env, &builder, flow, name);
 
@@ -157,7 +182,7 @@
 
   ExceptionHandlerTable handler_table;
   ImplicitExceptionTable inc_table;
-  
+
   env->register_method(target,
                        entry_bci,
                        &offsets,
@@ -176,8 +201,7 @@
 nmethod* SharkCompiler::generate_native_wrapper(MacroAssembler* masm,
                                                 methodHandle    target,
                                                 BasicType*      arg_types,
-                                                BasicType       return_type)
-{
+                                                BasicType       return_type) {
   assert(is_initialized(), "should be");
   ResourceMark rm;
   const char *name = methodname(
@@ -210,8 +234,7 @@
 
 void SharkCompiler::generate_native_code(SharkEntry* entry,
                                          Function*   function,
-                                         const char* name)
-{
+                                         const char* name) {
   // Print the LLVM bitcode, if requested
   if (SharkPrintBitcodeOf != NULL) {
     if (!fnmatch(SharkPrintBitcodeOf, name, 0))
@@ -232,7 +255,7 @@
         llvm::DebugFlag = true;
       }
       else {
-        llvm::SetCurrentDebugType(""); 
+        llvm::SetCurrentDebugType("");
         llvm::DebugFlag = false;
       }
 #else
@@ -268,8 +291,7 @@
   }
 }
 
-void SharkCompiler::free_compiled_method(address code)
-{
+void SharkCompiler::free_compiled_method(address code) {
   // This method may only be called when the VM is at a safepoint.
   // All _thread_in_vm threads will be waiting for the safepoint to
   // finish with the exception of the VM thread, so we can consider
@@ -282,8 +304,7 @@
   entry->context()->push_to_free_queue(entry->function());
 }
 
-void SharkCompiler::free_queued_methods()
-{
+void SharkCompiler::free_queued_methods() {
   // The free queue is protected by the execution engine lock
   assert(execution_engine_lock()->owned_by_self(), "should be");
 
@@ -293,12 +314,11 @@
       break;
 
     execution_engine()->freeMachineCodeForFunction(function);
-    function->eraseFromParent();  
+    function->eraseFromParent();
   }
 }
 
-const char* SharkCompiler::methodname(const char* klass, const char* method)
-{
+const char* SharkCompiler::methodname(const char* klass, const char* method) {
   char *buf = NEW_RESOURCE_ARRAY(char, strlen(klass) + 2 + strlen(method) + 1);
 
   char *dst = buf;
--- a/ports/hotspot/src/share/vm/shark/sharkCompiler.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkCompiler.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -67,8 +67,7 @@
   SharkContext* _native_context;
 
  public:
-  SharkContext* context() const
-  {
+  SharkContext* context() const {
     if (JavaThread::current()->is_Compiler_thread()) {
       return _normal_context;
     }
@@ -89,25 +88,21 @@
   llvm::ExecutionEngine* _execution_engine;
 
  private:
-  Monitor* execution_engine_lock() const
-  {
+  Monitor* execution_engine_lock() const {
     return _execution_engine_lock;
   }
-  SharkMemoryManager* memory_manager() const
-  {
+  SharkMemoryManager* memory_manager() const {
     assert(execution_engine_lock()->owned_by_self(), "should be");
     return _memory_manager;
   }
-  llvm::ExecutionEngine* execution_engine() const
-  {
+  llvm::ExecutionEngine* execution_engine() const {
     assert(execution_engine_lock()->owned_by_self(), "should be");
     return _execution_engine;
   }
 
   // Global access
  public:
-  static SharkCompiler* compiler()
-  {
+  static SharkCompiler* compiler() {
     AbstractCompiler *compiler =
       CompileBroker::compiler(CompLevel_fast_compile);
     assert(compiler->is_shark() && compiler->is_initialized(), "should be");
--- a/ports/hotspot/src/share/vm/shark/sharkConstant.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkConstant.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-SharkConstant* SharkConstant::for_ldc(ciBytecodeStream *iter)
-{
+SharkConstant* SharkConstant::for_ldc(ciBytecodeStream *iter) {
   ciConstant constant = iter->get_constant();
   ciType *type = NULL;
   if (constant.basic_type() == T_OBJECT) {
@@ -42,8 +41,7 @@
   return new SharkConstant(constant, type);
 }
 
-SharkConstant* SharkConstant::for_field(ciBytecodeStream *iter)
-{
+SharkConstant* SharkConstant::for_field(ciBytecodeStream *iter) {
   bool will_link;
   ciField *field = iter->get_field(will_link);
   assert(will_link, "typeflow responsibility");
@@ -51,8 +49,7 @@
   return new SharkConstant(field->constant_value(), field->type());
 }
 
-SharkConstant::SharkConstant(ciConstant constant, ciType *type)
-{
+SharkConstant::SharkConstant(ciConstant constant, ciType *type) {
   SharkValue *value = NULL;
 
   switch (constant.basic_type()) {
--- a/ports/hotspot/src/share/vm/shark/sharkConstant.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkConstant.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -40,24 +40,20 @@
   bool        _is_two_word;
 
  public:
-  bool is_loaded() const
-  {
+  bool is_loaded() const {
     return _is_loaded;
   }
-  bool is_nonzero() const
-  {
+  bool is_nonzero() const {
     assert(is_loaded(), "should be");
     return _is_nonzero;
   }
-  bool is_two_word() const
-  {
+  bool is_two_word() const {
     assert(is_loaded(), "should be");
     return _is_two_word;
   }
 
  public:
-  SharkValue* value(SharkBuilder* builder)
-  {
+  SharkValue* value(SharkBuilder* builder) {
     assert(is_loaded(), "should be");
     if (_value == NULL) {
       _value = SharkValue::create_generic(
--- a/ports/hotspot/src/share/vm/shark/sharkContext.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkContext.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -30,8 +30,7 @@
 
 SharkContext::SharkContext(const char* name)
   : LLVMContext(),
-    _free_queue(NULL)
-{
+    _free_queue(NULL) {
   // Create a module to build our functions into
   _module = new Module(name, *this);
 
@@ -93,7 +92,7 @@
       _to_stackType[i] = jint_type();
       _to_arrayType[i] = jbyte_type();
       break;
-      
+
     case T_BYTE:
       _to_stackType[i] = jint_type();
       _to_arrayType[i] = jbyte_type();
@@ -157,23 +156,19 @@
   SharkFreeQueueItem* _next;
 
  public:
-  llvm::Function* function() const
-  {
+  llvm::Function* function() const {
     return _function;
   }
-  SharkFreeQueueItem* next() const
-  {
+  SharkFreeQueueItem* next() const {
     return _next;
   }
 };
 
-void SharkContext::push_to_free_queue(Function* function)
-{
+void SharkContext::push_to_free_queue(Function* function) {
   _free_queue = new SharkFreeQueueItem(function, _free_queue);
 }
 
-Function* SharkContext::pop_from_free_queue()
-{
+Function* SharkContext::pop_from_free_queue() {
   if (_free_queue == NULL)
     return NULL;
 
--- a/ports/hotspot/src/share/vm/shark/sharkContext.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkContext.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -1,6 +1,6 @@
 /*
  * Copyright 1999-2007 Sun Microsystems, Inc.  All Rights Reserved.
- * Copyright 2009 Red Hat, Inc.
+ * Copyright 2009, 2010 Red Hat, Inc.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -41,32 +41,28 @@
 #else
  private:
 #endif
-  llvm::Module* module() const
-  {
+  llvm::Module* module() const {
     return _module;
   }
 
   // Get this thread's SharkContext
  public:
-  static SharkContext& current()
-  {
+  static SharkContext& current() {
     return *SharkCompiler::compiler()->context();
   }
 
   // Module accessors
  public:
 #if SHARK_LLVM_VERSION < 27
-  llvm::ModuleProvider* module_provider() const
-  {
+  llvm::ModuleProvider* module_provider() const {
     return new llvm::ExistingModuleProvider(module());
   }
 #endif
-  void add_function(llvm::Function* function) const
-  {
+  void add_function(llvm::Function* function) const {
     module()->getFunctionList().push_back(function);
   }
-  llvm::Constant* get_external(const char* name, const llvm::FunctionType* sig)
-  {
+  llvm::Constant* get_external(const char*               name,
+                               const llvm::FunctionType* sig) {
     return module()->getOrInsertFunction(name, sig);
   }
 
@@ -82,40 +78,31 @@
   const llvm::Type*        _jdouble_type;
 
  public:
-  const llvm::Type* void_type() const
-  {
+  const llvm::Type* void_type() const {
     return _void_type;
   }
-  const llvm::IntegerType* bit_type() const
-  {
+  const llvm::IntegerType* bit_type() const {
     return _bit_type;
   }
-  const llvm::IntegerType* jbyte_type() const
-  {
+  const llvm::IntegerType* jbyte_type() const {
     return _jbyte_type;
   }
-  const llvm::IntegerType* jshort_type() const
-  {
+  const llvm::IntegerType* jshort_type() const {
     return _jshort_type;
   }
-  const llvm::IntegerType* jint_type() const
-  {
+  const llvm::IntegerType* jint_type() const {
     return _jint_type;
   }
-  const llvm::IntegerType* jlong_type() const
-  {
+  const llvm::IntegerType* jlong_type() const {
     return _jlong_type;
   }
-  const llvm::Type* jfloat_type() const
-  {
+  const llvm::Type* jfloat_type() const {
     return _jfloat_type;
   }
-  const llvm::Type* jdouble_type() const
-  {
+  const llvm::Type* jdouble_type() const {
     return _jdouble_type;
   }
-  const llvm::IntegerType* intptr_type() const
-  {
+  const llvm::IntegerType* intptr_type() const {
     return LP64_ONLY(jlong_type()) NOT_LP64(jint_type());
   }
 
@@ -134,48 +121,37 @@
   const llvm::FunctionType* _osr_entry_point_type;
 
  public:
-  const llvm::PointerType* itableOffsetEntry_type() const
-  {
+  const llvm::PointerType* itableOffsetEntry_type() const {
     return _itableOffsetEntry_type;
   }
-  const llvm::PointerType* jniEnv_type() const
-  {
+  const llvm::PointerType* jniEnv_type() const {
     return _jniEnv_type;
   }
-  const llvm::PointerType* jniHandleBlock_type() const
-  {
+  const llvm::PointerType* jniHandleBlock_type() const {
     return _jniHandleBlock_type;
   }
-  const llvm::PointerType* klass_type() const
-  {
+  const llvm::PointerType* klass_type() const {
     return _klass_type;
   }
-  const llvm::PointerType* methodOop_type() const
-  {
+  const llvm::PointerType* methodOop_type() const {
     return _methodOop_type;
   }
-  const llvm::ArrayType* monitor_type() const
-  {
+  const llvm::ArrayType* monitor_type() const {
     return _monitor_type;
   }
-  const llvm::PointerType* oop_type() const
-  {
+  const llvm::PointerType* oop_type() const {
     return _oop_type;
   }
-  const llvm::PointerType* thread_type() const
-  {
+  const llvm::PointerType* thread_type() const {
     return _thread_type;
   }
-  const llvm::PointerType* zeroStack_type() const
-  {
+  const llvm::PointerType* zeroStack_type() const {
     return _zeroStack_type;
   }
-  const llvm::FunctionType* entry_point_type() const
-  {
+  const llvm::FunctionType* entry_point_type() const {
     return _entry_point_type;
   }
-  const llvm::FunctionType* osr_entry_point_type() const
-  {
+  const llvm::FunctionType* osr_entry_point_type() const {
     return _osr_entry_point_type;
   }
 
@@ -186,21 +162,18 @@
 
  private:
   const llvm::Type* map_type(const llvm::Type* const* table,
-                             BasicType                type) const
-  {
+                             BasicType                type) const {
     assert(type >= 0 && type < T_CONFLICT, "unhandled type");
     const llvm::Type* result = table[type];
     assert(type != NULL, "unhandled type");
     return result;
   }
-  
+
  public:
-  const llvm::Type* to_stackType(BasicType type) const
-  {
+  const llvm::Type* to_stackType(BasicType type) const {
     return map_type(_to_stackType, type);
   }
-  const llvm::Type* to_arrayType(BasicType type) const
-  {
+  const llvm::Type* to_arrayType(BasicType type) const {
     return map_type(_to_arrayType, type);
   }
 
--- a/ports/hotspot/src/share/vm/shark/sharkEntry.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkEntry.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -32,34 +32,27 @@
   llvm::Function* _function;
 
  public:
-  address code_start() const
-  {
+  address code_start() const {
     return entry_point();
   }
-  address code_limit() const
-  {
+  address code_limit() const {
     return _code_limit;
   }
-  SharkContext* context() const
-  {
+  SharkContext* context() const {
     return _context;
   }
-  llvm::Function* function() const
-  {
+  llvm::Function* function() const {
     return _function;
   }
 
  public:
-  void set_code_limit(address code_limit)
-  {
+  void set_code_limit(address code_limit) {
     _code_limit = code_limit;
   }
-  void set_context(SharkContext* context)
-  {
+  void set_context(SharkContext* context) {
     _context = context;
   }
-  void set_function(llvm::Function* function)
-  {
+  void set_function(llvm::Function* function) {
     _function = function;
   }
 };
--- a/ports/hotspot/src/share/vm/shark/sharkFunction.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkFunction.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkFunction::initialize(const char *name)
-{
+void SharkFunction::initialize(const char *name) {
   // Create the function
   _function = Function::Create(
     entry_point_type(),
@@ -98,10 +97,10 @@
       SharkTopLevelBlock *locker =
         new SharkTopLevelBlock(this, start_block->ciblock());
       locker->add_incoming(entry_state);
-    
+
       set_block_insertion_point(start_block->entry_block());
       locker->acquire_method_lock();
-    
+
       entry_state = locker->current_state();
     }
   }
@@ -134,8 +133,7 @@
       _bci(block->bci()),
       _state(block->current_state()->copy()),
       _check_block(builder()->GetInsertBlock()),
-      _continue_block(function()->CreateBlock("not_zero"))
-  {
+      _continue_block(function()->CreateBlock("not_zero")) {
     builder()->SetInsertPoint(continue_block());
   }
 
@@ -146,55 +144,45 @@
   SharkState*         _state;
   BasicBlock*         _check_block;
   BasicBlock*         _continue_block;
-  
+
  public:
-  SharkTopLevelBlock* block() const
-  {
+  SharkTopLevelBlock* block() const {
     return _block;
   }
-  SharkValue* value() const
-  {
+  SharkValue* value() const {
     return _value;
   }
-  int bci() const
-  {
+  int bci() const {
     return _bci;
-  } 
-  SharkState* state() const
-  {
+  }
+  SharkState* state() const {
     return _state;
-  } 
-  BasicBlock* check_block() const
-  {
+  }
+  BasicBlock* check_block() const {
     return _check_block;
   }
-  BasicBlock* continue_block() const
-  {
+  BasicBlock* continue_block() const {
     return _continue_block;
   }
 
  public:
-  SharkFunction* function() const
-  {
+  SharkFunction* function() const {
     return block()->function();
   }
 
  public:
-  void process() const
-  {
+  void process() const {
     builder()->SetInsertPoint(check_block());
     block()->do_deferred_zero_check(value(), bci(), state(), continue_block());
   }
 };
 
 void SharkFunction::add_deferred_zero_check(SharkTopLevelBlock* block,
-                                            SharkValue*         value)
-{
+                                            SharkValue*         value) {
   deferred_zero_checks()->append(new DeferredZeroCheck(block, value));
 }
 
-void SharkFunction::do_deferred_zero_checks()
-{
+void SharkFunction::do_deferred_zero_checks() {
   for (int i = 0; i < deferred_zero_checks()->length(); i++)
     deferred_zero_checks()->at(i)->process();
 }
--- a/ports/hotspot/src/share/vm/shark/sharkFunction.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkFunction.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,13 +28,12 @@
 
 class SharkFunction : public SharkTargetInvariants {
  friend class SharkStackWithNormalFrame;
-  
+
  public:
   static llvm::Function* build(ciEnv*        env,
                                SharkBuilder* builder,
                                ciTypeFlow*   flow,
-                               const char*   name)
-  {
+                               const char*   name) {
     SharkFunction function(env, builder, flow, name);
     return function.function();
   }
@@ -56,38 +55,31 @@
   SharkStack*                       _stack;
 
  public:
-  llvm::Function* function() const
-  {
+  llvm::Function* function() const {
     return _function;
   }
-  int block_count() const
-  {
+  int block_count() const {
     return flow()->block_count();
   }
-  SharkTopLevelBlock* block(int i) const
-  {
+  SharkTopLevelBlock* block(int i) const {
     assert(i < block_count(), "should be");
     return _blocks[i];
   }
-  GrowableArray<DeferredZeroCheck*>* deferred_zero_checks()
-  {
+  GrowableArray<DeferredZeroCheck*>* deferred_zero_checks() {
     return &_deferred_zero_checks;
   }
-  SharkStack* stack() const
-  {
+  SharkStack* stack() const {
     return _stack;
   }
 
   // On-stack replacement
  private:
-  bool is_osr() const
-  {
+  bool is_osr() const {
     return flow()->is_osr_flow();
   }
-  const llvm::FunctionType* entry_point_type() const
-  {
+  const llvm::FunctionType* entry_point_type() const {
     if (is_osr())
-      return SharkType::osr_entry_point_type();      
+      return SharkType::osr_entry_point_type();
     else
       return SharkType::entry_point_type();
   }
@@ -96,18 +88,15 @@
  private:
   llvm::BasicBlock* _block_insertion_point;
 
-  void set_block_insertion_point(llvm::BasicBlock* block_insertion_point)
-  {
+  void set_block_insertion_point(llvm::BasicBlock* block_insertion_point) {
     _block_insertion_point = block_insertion_point;
   }
-  llvm::BasicBlock* block_insertion_point() const
-  {
+  llvm::BasicBlock* block_insertion_point() const {
     return _block_insertion_point;
   }
 
  public:
-  llvm::BasicBlock* CreateBlock(const char* name = "") const
-  {
+  llvm::BasicBlock* CreateBlock(const char* name = "") const {
     return llvm::BasicBlock::Create(
       SharkContext::current(), name, function(), block_insertion_point());
   }
--- a/ports/hotspot/src/share/vm/shark/sharkInliner.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkInliner.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -33,8 +33,7 @@
   SharkInlineBlock(ciMethod* target, SharkState* state)
     : SharkBlock(state, target),
       _outer_state(state),
-      _entry_state(new SharkState(this))
-  {
+      _entry_state(new SharkState(this)) {
     for (int i = target->max_locals() - 1; i >= 0; i--) {
       SharkValue *value = NULL;
       if (i < target->arg_size())
@@ -48,24 +47,20 @@
   SharkState* _entry_state;
 
  private:
-  SharkState* outer_state()
-  {
+  SharkState* outer_state() {
     return _outer_state;
   }
-  SharkState* entry_state()
-  {
+  SharkState* entry_state() {
     return _entry_state;
   }
 
  public:
-  void emit_IR()
-  {
+  void emit_IR() {
     parse_bytecode(0, target()->code_size());
   }
 
  private:
-  void do_return(BasicType type)
-  {
+  void do_return(BasicType type) {
     if (type != T_VOID) {
       SharkValue *result = pop_result(type);
       outer_state()->push(result);
@@ -86,35 +81,29 @@
   ciBytecodeStream _iter;
   SharkState*      _entry_state;
   ciMethod*        _target;
-  
+
  public:
-  ciBytecodeStream* iter()
-  {
+  ciBytecodeStream* iter() {
     return &_iter;
   }
-  SharkState* entry_state() const
-  {
+  SharkState* entry_state() const {
     return _entry_state;
   }
-  ciMethod* target() const
-  {
+  ciMethod* target() const {
     return _target;
   }
 
  public:
-  Bytecodes::Code bc()
-  {
+  Bytecodes::Code bc() {
     return iter()->cur_bc();
   }
-  int max_locals() const
-  {
+  int max_locals() const {
     return target()->max_locals();
   }
-  int max_stack() const
-  {
+  int max_stack() const {
     return target()->max_stack();
   }
-  
+
   // Inlinability check
  public:
   bool is_inlinable();
@@ -122,16 +111,13 @@
  private:
   void initialize_for_check();
 
-  bool do_getstatic()
-  {
+  bool do_getstatic() {
     return do_field_access(true, false);
   }
-  bool do_getfield()
-  {
+  bool do_getfield() {
     return do_field_access(true, true);
   }
-  bool do_putfield()
-  {
+  bool do_putfield() {
     return do_field_access(false, true);
   }
   bool do_field_access(bool is_get, bool is_field);
@@ -141,17 +127,14 @@
   bool* _locals;
 
  public:
-  bool* local_addr(int index) const
-  {
+  bool* local_addr(int index) const {
     assert(index >= 0 && index < max_locals(), "bad local variable index");
     return &_locals[index];
   }
-  bool local(int index) const
-  {
+  bool local(int index) const {
     return *local_addr(index);
   }
-  void set_local(int index, bool value)
-  {
+  void set_local(int index, bool value) {
     *local_addr(index) = value;
   }
 
@@ -161,50 +144,42 @@
   bool* _sp;
 
  public:
-  int stack_depth() const
-  {
+  int stack_depth() const {
     return _sp - _stack;
   }
-  bool* stack_addr(int slot) const
-  {
+  bool* stack_addr(int slot) const {
     assert(slot >= 0 && slot < stack_depth(), "bad stack slot");
     return &_sp[-(slot + 1)];
   }
-  void push(bool value)
-  {
+  void push(bool value) {
     assert(stack_depth() < max_stack(), "stack overrun");
     *(_sp++) = value;
   }
-  bool pop()
-  {
+  bool pop() {
     assert(stack_depth() > 0, "stack underrun");
     return *(--_sp);
   }
 
   // Methods for two-word locals
  public:
-  void push_pair_local(int index)
-  {
+  void push_pair_local(int index) {
     push(local(index));
     push(local(index + 1));
   }
-  void pop_pair_local(int index)
-  {
+  void pop_pair_local(int index) {
     set_local(index + 1, pop());
     set_local(index, pop());
   }
 
   // Code generation
  public:
-  void do_inline()
-  {
+  void do_inline() {
     (new SharkInlineBlock(target(), entry_state()))->emit_IR();
   }
 };
 
 // Quick checks so we can bail out before doing too much
-bool SharkInliner::may_be_inlinable(ciMethod *target)
-{
+bool SharkInliner::may_be_inlinable(ciMethod *target) {
   // We can't inline native methods
   if (target->is_native())
     return false;
@@ -252,8 +227,7 @@
 // check eliminator to strip the checks.  To do that, we need to
 // walk through the method, tracking which values are and are not
 // zero-checked.
-bool SharkInlinerHelper::is_inlinable()
-{
+bool SharkInlinerHelper::is_inlinable() {
   ResourceMark rm;
   initialize_for_check();
 
@@ -285,7 +259,7 @@
     case Bytecodes::_lconst_0:
       push(false);
       push(false);
-      break;      
+      break;
     case Bytecodes::_lconst_1:
       push(true);
       push(false);
@@ -428,25 +402,25 @@
       pop();
       pop();
       break;
-    case Bytecodes::_swap: 
+    case Bytecodes::_swap:
       a = pop();
       b = pop();
       push(a);
       push(b);
-      break;  
+      break;
     case Bytecodes::_dup:
       a = pop();
       push(a);
       push(a);
       break;
-    case Bytecodes::_dup_x1: 
+    case Bytecodes::_dup_x1:
       a = pop();
       b = pop();
       push(a);
       push(b);
       push(a);
       break;
-    case Bytecodes::_dup_x2: 
+    case Bytecodes::_dup_x2:
       a = pop();
       b = pop();
       c = pop();
@@ -455,7 +429,7 @@
       push(b);
       push(a);
       break;
-    case Bytecodes::_dup2: 
+    case Bytecodes::_dup2:
       a = pop();
       b = pop();
       push(b);
@@ -525,7 +499,7 @@
       break;
     case Bytecodes::_ineg:
       break;
-      
+
     case Bytecodes::_ladd:
     case Bytecodes::_lsub:
     case Bytecodes::_lmul:
@@ -610,7 +584,7 @@
       pop();
       push(false);
       break;
-      
+
     case Bytecodes::_dcmpl:
     case Bytecodes::_dcmpg:
       pop();
@@ -693,8 +667,7 @@
   return true;
 }
 
-void SharkInlinerHelper::initialize_for_check()
-{
+void SharkInlinerHelper::initialize_for_check() {
   _locals = NEW_RESOURCE_ARRAY(bool, max_locals());
   _stack = NEW_RESOURCE_ARRAY(bool, max_stack());
 
@@ -708,8 +681,7 @@
   _sp = _stack;
 }
 
-bool SharkInlinerHelper::do_field_access(bool is_get, bool is_field)
-{
+bool SharkInlinerHelper::do_field_access(bool is_get, bool is_field) {
   assert(is_get || is_field, "can't inline putstatic");
 
   // If the holder isn't linked then there isn't a lot we can do
@@ -760,8 +732,7 @@
   return true;
 }
 
-bool SharkInliner::attempt_inline(ciMethod *target, SharkState *state)
-{
+bool SharkInliner::attempt_inline(ciMethod *target, SharkState *state) {
   if (SharkIntrinsics::is_intrinsic(target)) {
     SharkIntrinsics::inline_intrinsic(target, state);
     return true;
--- a/ports/hotspot/src/share/vm/shark/sharkInliner.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkInliner.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -26,7 +26,7 @@
 class SharkInliner : public AllStatic {
  public:
   static bool attempt_inline(ciMethod* target, SharkState* state);
-                      
+
  private:
   static bool may_be_inlinable(ciMethod* target);
 };
--- a/ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkIntrinsics.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-bool SharkIntrinsics::is_intrinsic(ciMethod *target)
-{
+bool SharkIntrinsics::is_intrinsic(ciMethod *target) {
   switch (target->intrinsic_id()) {
   case vmIntrinsics::_none:
     return false;
@@ -75,14 +74,12 @@
   return false;
 }
 
-void SharkIntrinsics::inline_intrinsic(ciMethod *target, SharkState *state)
-{
+void SharkIntrinsics::inline_intrinsic(ciMethod *target, SharkState *state) {
   SharkIntrinsics intrinsic(state, target);
   intrinsic.do_intrinsic();
 }
 
-void SharkIntrinsics::do_intrinsic()
-{
+void SharkIntrinsics::do_intrinsic() {
   switch (target()->intrinsic_id()) {
     // java.lang.Math
   case vmIntrinsics::_min:
@@ -136,7 +133,7 @@
   case vmIntrinsics::_currentThread:
     do_Thread_currentThread();
     break;
-    
+
     // sun.misc.Unsafe
   case vmIntrinsics::_compareAndSwapInt:
     do_Unsafe_compareAndSwapInt();
@@ -147,13 +144,12 @@
   }
 }
 
-void SharkIntrinsics::do_Math_minmax(ICmpInst::Predicate p)
-{
+void SharkIntrinsics::do_Math_minmax(ICmpInst::Predicate p) {
   // Pop the arguments
   SharkValue *sb = state()->pop();
   SharkValue *sa = state()->pop();
   Value *a = sa->jint_value();
-  Value *b = sb->jint_value();  
+  Value *b = sb->jint_value();
 
   // Perform the test
   BasicBlock *ip       = builder()->GetBlockInsertionPoint();
@@ -181,8 +177,7 @@
       sa->zero_checked() && sb->zero_checked()));
 }
 
-void SharkIntrinsics::do_Math_1to1(Value *function)
-{
+void SharkIntrinsics::do_Math_1to1(Value *function) {
   SharkValue *empty = state()->pop();
   assert(empty == NULL, "should be");
   state()->push(
@@ -192,8 +187,7 @@
   state()->push(NULL);
 }
 
-void SharkIntrinsics::do_Math_2to1(Value *function)
-{
+void SharkIntrinsics::do_Math_2to1(Value *function) {
   SharkValue *empty = state()->pop();
   assert(empty == NULL, "should be");
   Value *y = state()->pop()->jdouble_value();
@@ -207,8 +201,7 @@
   state()->push(NULL);
 }
 
-void SharkIntrinsics::do_Object_getClass()
-{
+void SharkIntrinsics::do_Object_getClass() {
   Value *klass = builder()->CreateValueOfStructEntry(
     state()->pop()->jobject_value(),
     in_ByteSize(oopDesc::klass_offset_in_bytes()),
@@ -231,8 +224,7 @@
       true));
 }
 
-void SharkIntrinsics::do_System_currentTimeMillis()
-{
+void SharkIntrinsics::do_System_currentTimeMillis() {
   state()->push(
     SharkValue::create_jlong(
       builder()->CreateCall(builder()->current_time_millis()),
@@ -240,8 +232,7 @@
   state()->push(NULL);
 }
 
-void SharkIntrinsics::do_Thread_currentThread()
-{
+void SharkIntrinsics::do_Thread_currentThread() {
   state()->push(
     SharkValue::create_jobject(
       builder()->CreateValueOfStructEntry(
@@ -251,8 +242,7 @@
       true));
 }
 
-void SharkIntrinsics::do_Unsafe_compareAndSwapInt()
-{
+void SharkIntrinsics::do_Unsafe_compareAndSwapInt() {
   // Pop the arguments
   Value *x      = state()->pop()->jint_value();
   Value *e      = state()->pop()->jint_value();
--- a/ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkIntrinsics.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -36,8 +36,7 @@
   SharkState* _state;
 
  private:
-  SharkState* state() const
-  {
+  SharkState* state() const {
     return _state;
   }
 
--- a/ports/hotspot/src/share/vm/shark/sharkInvariants.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkInvariants.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -26,8 +26,7 @@
 #include "incls/_precompiled.incl"
 #include "incls/_sharkInvariants.cpp.incl"
 
-int SharkTargetInvariants::count_monitors()
-{
+int SharkTargetInvariants::count_monitors() {
   int result = 0;
   if (is_synchronized() || target()->has_monitor_bytecodes()) {
     for (int i = 0; i < flow()->block_count(); i++) {
--- a/ports/hotspot/src/share/vm/shark/sharkInvariants.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkInvariants.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -56,16 +56,14 @@
   // Accessing this directly is kind of ugly, so it's private.  Add
   // new accessors below if you need something from it.
  private:
-  ciEnv* env() const
-  {
+  ciEnv* env() const {
     assert(_env != NULL, "env not available");
     return _env;
   }
 
   // The SharkBuilder that is used to build LLVM IR.
  protected:
-  SharkBuilder* builder() const
-  {
+  SharkBuilder* builder() const {
     return _builder;
   }
 
@@ -74,36 +72,30 @@
   // so a setter is required.  Assertions are used to enforce
   // invariance.
  protected:
-  llvm::Value* thread() const
-  {
+  llvm::Value* thread() const {
     assert(_thread != NULL, "thread not available");
     return _thread;
   }
-  void set_thread(llvm::Value* thread)
-  {
+  void set_thread(llvm::Value* thread) {
     assert(_thread == NULL, "thread already set");
     _thread = thread;
   }
-  
+
   // Objects that handle various aspects of the compilation.
  protected:
-  DebugInformationRecorder* debug_info() const
-  {
+  DebugInformationRecorder* debug_info() const {
     return env()->debug_info();
   }
-  Dependencies* dependencies() const
-  {
+  Dependencies* dependencies() const {
     return env()->dependencies();
   }
-  SharkCodeBuffer* code_buffer() const
-  {
+  SharkCodeBuffer* code_buffer() const {
     return builder()->code_buffer();
   }
 
   // That well-known class...
  protected:
-  ciInstanceKlass* java_lang_Object_klass() const
-  {
+  ciInstanceKlass* java_lang_Object_klass() const {
     return env()->Object_klass();
   }
 };
@@ -138,43 +130,35 @@
 
   // The method being compiled.
  protected:
-  ciMethod* target() const
-  {
+  ciMethod* target() const {
     return _target;
   }
 
   // Typeflow analysis of the method being compiled.
  protected:
-  ciTypeFlow* flow() const
-  {
+  ciTypeFlow* flow() const {
     assert(_flow != NULL, "typeflow not available");
     return _flow;
   }
 
   // Properties of the method.
  protected:
-  int max_locals() const
-  {
+  int max_locals() const {
     return target()->max_locals();
   }
-  int max_stack() const
-  {
+  int max_stack() const {
     return target()->max_stack();
   }
-  int max_monitors() const
-  {
+  int max_monitors() const {
     return _max_monitors;
   }
-  int arg_size() const
-  {
+  int arg_size() const {
     return target()->arg_size();
   }
-  bool is_static() const
-  {
+  bool is_static() const {
     return target()->is_static();
   }
-  bool is_synchronized() const
-  {
+  bool is_synchronized() const {
     return target()->is_synchronized();
   }
 };
--- a/ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkMemoryManager.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,33 +28,28 @@
 
 using namespace llvm;
 
-void SharkMemoryManager::AllocateGOT()
-{
+void SharkMemoryManager::AllocateGOT() {
   mm()->AllocateGOT();
 }
 
-unsigned char* SharkMemoryManager::getGOTBase() const
-{
+unsigned char* SharkMemoryManager::getGOTBase() const {
   return mm()->getGOTBase();
 }
 
 unsigned char* SharkMemoryManager::allocateStub(const GlobalValue* F,
                                                 unsigned StubSize,
-                                                unsigned Alignment)
-{
+                                                unsigned Alignment) {
   return mm()->allocateStub(F, StubSize, Alignment);
 }
 
 unsigned char* SharkMemoryManager::startFunctionBody(const Function* F,
-                                                     uintptr_t& ActualSize)
-{
+                                                     uintptr_t& ActualSize) {
   return mm()->startFunctionBody(F, ActualSize);
 }
 
 void SharkMemoryManager::endFunctionBody(const Function* F,
                                          unsigned char* FunctionStart,
-                                         unsigned char* FunctionEnd)
-{
+                                         unsigned char* FunctionEnd) {
   mm()->endFunctionBody(F, FunctionStart, FunctionEnd);
 
   SharkEntry *entry = get_entry_for_function(F);
@@ -63,71 +58,59 @@
 }
 
 unsigned char* SharkMemoryManager::startExceptionTable(const Function* F,
-                                                       uintptr_t& ActualSize)
-{
+                                                       uintptr_t& ActualSize) {
   return mm()->startExceptionTable(F, ActualSize);
 }
 
 void SharkMemoryManager::endExceptionTable(const Function* F,
                                            unsigned char* TableStart,
                                            unsigned char* TableEnd,
-                                           unsigned char* FrameRegister)
-{
+                                           unsigned char* FrameRegister) {
   mm()->endExceptionTable(F, TableStart, TableEnd, FrameRegister);
 }
 
-void SharkMemoryManager::setMemoryWritable()
-{
+void SharkMemoryManager::setMemoryWritable() {
   mm()->setMemoryWritable();
 }
 
-void SharkMemoryManager::setMemoryExecutable()
-{
+void SharkMemoryManager::setMemoryExecutable() {
   mm()->setMemoryExecutable();
 }
 
 #if SHARK_LLVM_VERSION >= 27
-void SharkMemoryManager::deallocateExceptionTable(void *ptr)
-{
+void SharkMemoryManager::deallocateExceptionTable(void *ptr) {
   mm()->deallocateExceptionTable(ptr);
 }
 
-void SharkMemoryManager::deallocateFunctionBody(void *ptr)
-{
+void SharkMemoryManager::deallocateFunctionBody(void *ptr) {
   mm()->deallocateFunctionBody(ptr);
 }
 #else
-void SharkMemoryManager::deallocateMemForFunction(const Function* F)
-{
+void SharkMemoryManager::deallocateMemForFunction(const Function* F) {
   return mm()->deallocateMemForFunction(F);
 }
 #endif
 
 uint8_t* SharkMemoryManager::allocateGlobal(uintptr_t Size,
-                                            unsigned int Alignment)
-{
+                                            unsigned int Alignment) {
   return mm()->allocateGlobal(Size, Alignment);
 }
 
 #if SHARK_LLVM_VERSION < 27
-void* SharkMemoryManager::getDlsymTable() const
-{
+void* SharkMemoryManager::getDlsymTable() const {
   return mm()->getDlsymTable();
 }
 
-void SharkMemoryManager::SetDlsymTable(void *ptr)
-{
+void SharkMemoryManager::SetDlsymTable(void *ptr) {
   mm()->SetDlsymTable(ptr);
 }
 #endif
 
-void SharkMemoryManager::setPoisonMemory(bool poison)
-{
+void SharkMemoryManager::setPoisonMemory(bool poison) {
   mm()->setPoisonMemory(poison);
 }
 
 unsigned char *SharkMemoryManager::allocateSpace(intptr_t Size,
-                                                 unsigned int Alignment)
-{
+                                                 unsigned int Alignment) {
   return mm()->allocateSpace(Size, Alignment);
 }
--- a/ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkMemoryManager.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -36,8 +36,7 @@
   llvm::JITMemoryManager* _mm;
 
  private:
-  llvm::JITMemoryManager* mm() const
-  {
+  llvm::JITMemoryManager* mm() const {
     return _mm;
   }
 
@@ -45,12 +44,11 @@
   std::map<const llvm::Function*, SharkEntry*> _entry_map;
 
  public:
-  void set_entry_for_function(const llvm::Function* function, SharkEntry* entry)
-  {
+  void set_entry_for_function(const llvm::Function* function,
+                              SharkEntry*           entry) {
     _entry_map[function] = entry;
   }
-  SharkEntry* get_entry_for_function(const llvm::Function* function)
-  {
+  SharkEntry* get_entry_for_function(const llvm::Function* function) {
     return _entry_map[function];
   }
 
@@ -86,5 +84,5 @@
   void deallocateMemForFunction(const llvm::Function* F);
 #endif
   unsigned char *allocateSpace(intptr_t Size,
-			       unsigned int Alignment);
+                               unsigned int Alignment);
 };
--- a/ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkNativeWrapper.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkNativeWrapper::initialize(const char *name)
-{
+void SharkNativeWrapper::initialize(const char *name) {
   // Create the function
   _function = Function::Create(
     SharkType::entry_point_type(),
@@ -144,8 +143,8 @@
       builder()->CreateBr(merge);
 
       builder()->SetInsertPoint(not_null);
-      builder()->CreateBr(merge);      
-      
+      builder()->CreateBr(merge);
+
       builder()->SetInsertPoint(merge);
       phi = builder()->CreatePHI(box_type, "boxed_object");
       phi->addIncoming(ConstantPointerNull::get(box_type), null);
@@ -173,7 +172,7 @@
       param_types.push_back(param_type);
       param_values.push_back(
         builder()->CreateLoad(stack()->slot_addr(adjusted_offset, param_type)));
-    }                     
+    }
   }
 
   // The oopmap is now complete, and everything is written
@@ -255,7 +254,7 @@
       thread_state,
       LLVMValue::jint_constant(0)),
     do_safepoint, safepointed);
- 
+
   builder()->SetInsertPoint(do_safepoint);
   builder()->CreateCall(
     builder()->check_special_condition_for_native_trans(), thread);
@@ -312,7 +311,7 @@
   // Reset handle block
   CreateResetHandleBlock();
 
-  // Unlock if necessary.  
+  // Unlock if necessary.
   if (is_synchronized())
     Unimplemented();
 
@@ -330,7 +329,7 @@
     case T_BYTE:
       needs_cast = true;
       break;
-      
+
     case T_CHAR:
     case T_SHORT:
       needs_cast = true;
@@ -343,7 +342,7 @@
     }
 
     builder()->CreateStore(
-      result,              
+      result,
       builder()->CreateIntToPtr(
         result_addr,
         PointerType::getUnqual(SharkType::to_stackType(result_type))));
--- a/ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkNativeWrapper.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -25,14 +25,13 @@
 
 class SharkNativeWrapper : public SharkCompileInvariants {
   friend class SharkStackWithNativeFrame;
-  
+
  public:
   static SharkNativeWrapper* build(SharkBuilder* builder,
                                    methodHandle  target,
                                    const char*   name,
                                    BasicType*    arg_types,
-                                   BasicType     return_type)
-  {
+                                   BasicType     return_type) {
     return new SharkNativeWrapper(builder,
                                   target,
                                   name,
@@ -68,106 +67,87 @@
 
   // The method being compiled.
  protected:
-  methodHandle target() const
-  {
+  methodHandle target() const {
     return _target;
   }
 
   // Properties of the method.
  protected:
-  int arg_size() const
-  {
+  int arg_size() const {
     return target()->size_of_parameters();
   }
-  BasicType arg_type(int i) const
-  {
+  BasicType arg_type(int i) const {
     return _arg_types[i];
   }
-  BasicType return_type() const
-  {
+  BasicType return_type() const {
     return _return_type;
   }
-  bool is_static() const
-  {
+  bool is_static() const {
     return target()->is_static();
   }
-  bool is_synchronized() const
-  {
+  bool is_synchronized() const {
     return target()->is_synchronized();
   }
-  bool is_returning_oop() const
-  {
+  bool is_returning_oop() const {
     return target()->is_returning_oop();
   }
 
   // The LLVM function we are building.
  public:
-  llvm::Function* function() const
-  {
+  llvm::Function* function() const {
     return _function;
   }
 
   // The Zero stack and our frame on it.
  protected:
-  SharkStack* stack() const
-  {
+  SharkStack* stack() const {
     return _stack;
   }
 
   // Temporary oop storage.
  protected:
-  llvm::Value* oop_tmp_slot() const
-  {
+  llvm::Value* oop_tmp_slot() const {
     assert(is_static() || is_returning_oop(), "should be");
     return _oop_tmp_slot;
   }
 
   // Information required by nmethod::new_native_nmethod().
  public:
-  int frame_size() const
-  {
+  int frame_size() const {
     return stack()->oopmap_frame_size();
   }
-  ByteSize receiver_offset() const
-  {
+  ByteSize receiver_offset() const {
     return in_ByteSize(_receiver_slot_offset * wordSize);
   }
-  ByteSize lock_offset() const
-  {
+  ByteSize lock_offset() const {
     return in_ByteSize(_lock_slot_offset * wordSize);
   }
-  OopMapSet* oop_maps() const
-  {
+  OopMapSet* oop_maps() const {
     return _oop_maps;
   }
 
   // Helpers.
  private:
-  llvm::BasicBlock* CreateBlock(const char* name = "") const
-  {
+  llvm::BasicBlock* CreateBlock(const char* name = "") const {
     return llvm::BasicBlock::Create(SharkContext::current(), name, function());
   }
-  llvm::Value* thread_state_address() const
-  {
+  llvm::Value* thread_state_address() const {
     return builder()->CreateAddressOfStructEntry(
       thread(), JavaThread::thread_state_offset(),
       llvm::PointerType::getUnqual(SharkType::jint_type()),
       "thread_state_address");
   }
-  llvm::Value* pending_exception_address() const
-  {
+  llvm::Value* pending_exception_address() const {
     return builder()->CreateAddressOfStructEntry(
       thread(), Thread::pending_exception_offset(),
       llvm::PointerType::getUnqual(SharkType::oop_type()),
       "pending_exception_address");
   }
-  void CreateSetThreadState(JavaThreadState state) const
-  {
+  void CreateSetThreadState(JavaThreadState state) const {
     builder()->CreateStore(
       LLVMValue::jint_constant(state), thread_state_address());
   }
-  void CreateWriteMemorySerializePage() const
-  {
+  void CreateWriteMemorySerializePage() const {
     builder()->CreateStore(
       LLVMValue::jint_constant(1),
       builder()->CreateIntToPtr(
@@ -181,8 +161,7 @@
             LLVMValue::intptr_constant(os::get_serialize_page_mask()))),
         llvm::PointerType::getUnqual(SharkType::jint_type())));
   }
-  void CreateResetHandleBlock() const
-  {
+  void CreateResetHandleBlock() const {
     llvm::Value *active_handles = builder()->CreateValueOfStructEntry(
       thread(),
       JavaThread::active_handles_offset(),
@@ -196,8 +175,7 @@
         llvm::PointerType::getUnqual(SharkType::intptr_type()),
         "top"));
   }
-  llvm::LoadInst* CreateLoadPendingException() const
-  {
+  llvm::LoadInst* CreateLoadPendingException() const {
     return builder()->CreateLoad(
       pending_exception_address(), "pending_exception");
   }
--- a/ports/hotspot/src/share/vm/shark/sharkRuntime.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkRuntime.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -31,7 +31,6 @@
 JRT_ENTRY(int, SharkRuntime::find_exception_handler(JavaThread* thread,
                                                     int*        indexes,
                                                     int         num_indexes))
-{
   constantPoolHandle pool(thread, method(thread)->constants());
   KlassHandle exc_klass(thread, ((oop) tos_at(thread, 0))->klass());
 
@@ -47,16 +46,14 @@
   }
 
   return -1;
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::monitorenter(JavaThread*      thread,
                                            BasicObjectLock* lock))
-{
   if (PrintBiasedLockingStatistics)
     Atomic::inc(BiasedLocking::slow_path_entry_count_addr());
 
-  Handle object(thread, lock->obj());  
+  Handle object(thread, lock->obj());
   assert(Universe::heap()->is_in_reserved_or_null(object()), "should be");
   if (UseBiasedLocking) {
     // Retry fast entry if bias is revoked to avoid unnecessary inflation
@@ -65,31 +62,27 @@
     ObjectSynchronizer::slow_enter(object, lock->lock(), CHECK);
   }
   assert(Universe::heap()->is_in_reserved_or_null(lock->obj()), "should be");
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::monitorexit(JavaThread*      thread,
                                           BasicObjectLock* lock))
-{
-  Handle object(thread, lock->obj());  
+  Handle object(thread, lock->obj());
   assert(Universe::heap()->is_in_reserved_or_null(object()), "should be");
   if (lock == NULL || object()->is_unlocked()) {
     THROW(vmSymbols::java_lang_IllegalMonitorStateException());
   }
   ObjectSynchronizer::slow_exit(object(), lock->lock(), thread);
-}
 JRT_END
-  
+
 JRT_ENTRY(void, SharkRuntime::new_instance(JavaThread* thread, int index))
-{
   klassOop k_oop = method(thread)->constants()->klass_at(index, CHECK);
   instanceKlassHandle klass(THREAD, k_oop);
-  
+
   // Make sure we are not instantiating an abstract klass
   klass->check_valid_for_instantiation(true, CHECK);
 
   // Make sure klass is initialized
-  klass->initialize(CHECK);    
+  klass->initialize(CHECK);
 
   // At this point the class may not be fully initialized
   // because of recursive initialization. If it is fully
@@ -106,47 +99,38 @@
   //       If we have a breakpoint, then we don't rewrite
   //       because the _breakpoint bytecode would be lost.
   oop obj = klass->allocate_instance(CHECK);
-  thread->set_vm_result(obj);  
-}
+  thread->set_vm_result(obj);
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::newarray(JavaThread* thread,
                                        BasicType   type,
                                        int         size))
-{
   oop obj = oopFactory::new_typeArray(type, size, CHECK);
   thread->set_vm_result(obj);
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::anewarray(JavaThread* thread,
                                         int         index,
                                         int         size))
-{
   klassOop klass = method(thread)->constants()->klass_at(index, CHECK);
   objArrayOop obj = oopFactory::new_objArray(klass, size, CHECK);
   thread->set_vm_result(obj);
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::multianewarray(JavaThread* thread,
                                              int         index,
                                              int         ndims,
                                              int*        dims))
-{
   klassOop klass = method(thread)->constants()->klass_at(index, CHECK);
   oop obj = arrayKlass::cast(klass)->multi_allocate(ndims, dims, CHECK);
   thread->set_vm_result(obj);
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::register_finalizer(JavaThread* thread,
                                                  oop         object))
-{
   assert(object->is_oop(), "should be");
   assert(object->klass()->klass_part()->has_finalizer(), "should have");
   instanceKlass::register_finalizer(instanceOop(object), CHECK);
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::throw_ArrayIndexOutOfBoundsException(
@@ -154,32 +138,27 @@
                                                      const char* file,
                                                      int         line,
                                                      int         index))
-{
   char msg[jintAsStringSize];
   snprintf(msg, sizeof(msg), "%d", index);
   Exceptions::_throw_msg(
-    thread, file, line, 
+    thread, file, line,
     vmSymbols::java_lang_ArrayIndexOutOfBoundsException(),
     msg);
-}
 JRT_END
 
 JRT_ENTRY(void, SharkRuntime::throw_NullPointerException(JavaThread* thread,
                                                          const char* file,
                                                          int         line))
-{
   Exceptions::_throw_msg(
-    thread, file, line, 
+    thread, file, line,
     vmSymbols::java_lang_NullPointerException(),
     "");
-}
 JRT_END
 
 // Non-VM calls
 // Nothing in these must ever GC!
 
-void SharkRuntime::dump(const char *name, intptr_t value)
-{
+void SharkRuntime::dump(const char *name, intptr_t value) {
   oop valueOop = (oop) value;
   tty->print("%s = ", name);
   if (valueOop->is_oop(true))
@@ -191,13 +170,11 @@
   tty->print_cr("");
 }
 
-bool SharkRuntime::is_subtype_of(klassOop check_klass, klassOop object_klass)
-{
+bool SharkRuntime::is_subtype_of(klassOop check_klass, klassOop object_klass) {
   return object_klass->klass_part()->is_subtype_of(check_klass);
 }
 
-void SharkRuntime::uncommon_trap(JavaThread* thread, int trap_request)
-{
+void SharkRuntime::uncommon_trap(JavaThread* thread, int trap_request) {
   // In C2, uncommon_trap_blob creates a frame, so all the various
   // deoptimization functions expect to find the frame of the method
   // being deopted one frame down on the stack.  Create a dummy frame
@@ -224,7 +201,7 @@
 
   // Push another dummy frame
   thread->push_zero_frame(FakeStubFrame::build(stack));
-  
+
   // Fill in the skeleton frames
   thread->set_last_Java_frame();
   Deoptimization::unpack_frames(thread, Deoptimization::Unpack_uncommon_trap);
@@ -233,7 +210,7 @@
   // Pop our dummy frame
   thread->pop_zero_frame();
 
-  // Jump into the interpreter  
+  // Jump into the interpreter
 #ifdef CC_INTERP
   CppInterpreter::main_loop(number_of_frames - 1, thread);
 #else
@@ -241,8 +218,7 @@
 #endif // CC_INTERP
 }
 
-FakeStubFrame* FakeStubFrame::build(ZeroStack* stack)
-{
+FakeStubFrame* FakeStubFrame::build(ZeroStack* stack) {
   if (header_words > stack->available_words()) {
     Unimplemented();
   }
--- a/ports/hotspot/src/share/vm/shark/sharkRuntime.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkRuntime.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -53,30 +53,25 @@
 
   // Helpers for VM calls
  private:
-  static const SharkFrame* last_frame(JavaThread *thread)
-  {
+  static const SharkFrame* last_frame(JavaThread *thread) {
     return thread->last_frame().zero_sharkframe();
   }
-  static methodOop method(JavaThread *thread)
-  {
+  static methodOop method(JavaThread *thread) {
     return last_frame(thread)->method();
   }
-  static address bcp(JavaThread *thread, int bci)
-  {
+  static address bcp(JavaThread *thread, int bci) {
     return method(thread)->code_base() + bci;
   }
-  static int two_byte_index(JavaThread *thread, int bci)
-  {
+  static int two_byte_index(JavaThread *thread, int bci) {
     return Bytes::get_Java_u2(bcp(thread, bci) + 1);
   }
-  static intptr_t tos_at(JavaThread *thread, int offset)
-  {
+  static intptr_t tos_at(JavaThread *thread, int offset) {
     return *(thread->zero_stack()->sp() + offset);
-  }  
+  }
 
   // Non-VM calls
  public:
   static void dump(const char *name, intptr_t value);
-  static bool is_subtype_of(klassOop check_klass, klassOop object_klass); 
+  static bool is_subtype_of(klassOop check_klass, klassOop object_klass);
   static void uncommon_trap(JavaThread* thread, int trap_request);
 };
--- a/ports/hotspot/src/share/vm/shark/sharkStack.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkStack.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkStack::initialize(Value* method)
-{
+void SharkStack::initialize(Value* method) {
   bool setup_sp_and_method = (method != NULL);
 
   int locals_words  = max_locals();
@@ -62,7 +61,7 @@
   offset += stack_words;
 
   // Monitors
-  _monitors_slots_offset = offset; 
+  _monitors_slots_offset = offset;
   offset += monitor_words;
 
   // Temporary oop slot
@@ -87,7 +86,7 @@
   Value *fp = slot_addr(offset++);
 
   // Local variables
-  _locals_slots_offset = offset;  
+  _locals_slots_offset = offset;
   offset += locals_words;
 
   // Push the frame
@@ -104,11 +103,10 @@
 // update.  Overflows here are problematic as we haven't yet
 // created a frame, so it's not clear how to report the error.
 // http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=249
-void SharkStack::CreateHardStackOverflowCheck(Value* sp)
-{
+void SharkStack::CreateHardStackOverflowCheck(Value* sp) {
   BasicBlock *overflow = CreateBlock("stack_overflow");
   BasicBlock *no_overflow = CreateBlock("no_overflow");
-  
+
   builder()->CreateCondBr(
     builder()->CreateICmpULT(sp, stack_base()),
     overflow, no_overflow);
@@ -117,19 +115,17 @@
   builder()->CreateUnimplemented(__FILE__, __LINE__);
   builder()->CreateUnreachable();
 
-  builder()->SetInsertPoint(no_overflow);  
+  builder()->SetInsertPoint(no_overflow);
 }
 
 // Check that a stack overflow is not imminent, throwing a
 // StackOverflowError if it is while we still have the stack
 // in which to do so.
-void SharkStack::CreateSoftStackOverflowCheck(Value* sp)
-{
+void SharkStack::CreateSoftStackOverflowCheck(Value* sp) {
   // XXX see CppInterpreter::stack_overflow_imminent
 }
 
-Value* SharkStack::CreatePopFrame(int result_slots)
-{
+Value* SharkStack::CreatePopFrame(int result_slots) {
   assert(result_slots >= 0 && result_slots <= 2, "should be");
   int locals_to_pop = max_locals() - result_slots;
 
@@ -149,8 +145,7 @@
 
 Value* SharkStack::slot_addr(int         offset,
                              const Type* type,
-                             const char* name) const
-{
+                             const char* name) const {
   bool needs_cast = type && type != SharkType::intptr_type();
 
   Value* result = builder()->CreateStructGEP(
@@ -166,20 +161,17 @@
 // The bits that differentiate stacks with normal and native frames on top
 
 SharkStack* SharkStack::CreateBuildAndPushFrame(SharkFunction* function,
-                                                Value*         method)
-{
+                                                Value*         method) {
   return new SharkStackWithNormalFrame(function, method);
 }
 SharkStack* SharkStack::CreateBuildAndPushFrame(SharkNativeWrapper* wrapper,
-                                                Value*              method)
-{
+                                                Value*              method) {
   return new SharkStackWithNativeFrame(wrapper, method);
 }
 
 SharkStackWithNormalFrame::SharkStackWithNormalFrame(SharkFunction* function,
                                                      Value*         method)
-  : SharkStack(function), _function(function)
-{
+  : SharkStack(function), _function(function) {
   // For normal frames, the stack pointer and the method slot will
   // be set during each decache, so it is not necessary to do them
   // at the time the frame is created.  However, we set them for
@@ -188,52 +180,41 @@
 }
 SharkStackWithNativeFrame::SharkStackWithNativeFrame(SharkNativeWrapper* wrp,
                                                      Value*              method)
-  : SharkStack(wrp), _wrapper(wrp)
-{
+  : SharkStack(wrp), _wrapper(wrp) {
   initialize(method);
 }
 
-int SharkStackWithNormalFrame::arg_size() const
-{
+int SharkStackWithNormalFrame::arg_size() const {
   return function()->arg_size();
 }
-int SharkStackWithNativeFrame::arg_size() const
-{
+int SharkStackWithNativeFrame::arg_size() const {
   return wrapper()->arg_size();
 }
 
-int SharkStackWithNormalFrame::max_locals() const
-{
+int SharkStackWithNormalFrame::max_locals() const {
   return function()->max_locals();
 }
-int SharkStackWithNativeFrame::max_locals() const
-{
+int SharkStackWithNativeFrame::max_locals() const {
   return wrapper()->arg_size();
 }
 
-int SharkStackWithNormalFrame::max_stack() const
-{
+int SharkStackWithNormalFrame::max_stack() const {
   return function()->max_stack();
 }
-int SharkStackWithNativeFrame::max_stack() const
-{
+int SharkStackWithNativeFrame::max_stack() const {
   return 0;
 }
 
-int SharkStackWithNormalFrame::max_monitors() const
-{
+int SharkStackWithNormalFrame::max_monitors() const {
   return function()->max_monitors();
 }
-int SharkStackWithNativeFrame::max_monitors() const
-{
+int SharkStackWithNativeFrame::max_monitors() const {
   return wrapper()->is_synchronized() ? 1 : 0;
 }
 
-BasicBlock* SharkStackWithNormalFrame::CreateBlock(const char* name) const
-{
+BasicBlock* SharkStackWithNormalFrame::CreateBlock(const char* name) const {
   return function()->CreateBlock(name);
 }
-BasicBlock* SharkStackWithNativeFrame::CreateBlock(const char* name) const
-{
+BasicBlock* SharkStackWithNativeFrame::CreateBlock(const char* name) const {
   return wrapper()->CreateBlock(name);
 }
--- a/ports/hotspot/src/share/vm/shark/sharkStack.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkStack.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -56,35 +56,31 @@
   // BasicBlock creation
  protected:
   virtual llvm::BasicBlock* CreateBlock(const char* name = "") const = 0;
-  
+
   // Interface with the Zero stack
  private:
-  llvm::Value* zero_stack() const
-  {
+  llvm::Value* zero_stack() const {
     return builder()->CreateAddressOfStructEntry(
       thread(),
       JavaThread::zero_stack_offset(),
       SharkType::zeroStack_type(),
       "zero_stack");
   }
-  llvm::Value* stack_base() const
-  {
+  llvm::Value* stack_base() const {
     return builder()->CreateValueOfStructEntry(
       zero_stack(),
       ZeroStack::base_offset(),
       SharkType::intptr_type(),
       "stack_base");
   }
-  llvm::Value* stack_pointer_addr() const
-  {
+  llvm::Value* stack_pointer_addr() const {
     return builder()->CreateAddressOfStructEntry(
       zero_stack(),
       ZeroStack::sp_offset(),
       llvm::PointerType::getUnqual(SharkType::intptr_type()),
       "stack_pointer_addr");
   }
-  llvm::Value* frame_pointer_addr() const
-  {
+  llvm::Value* frame_pointer_addr() const {
     return builder()->CreateAddressOfStructEntry(
       thread(),
       JavaThread::top_zero_frame_offset(),
@@ -93,28 +89,23 @@
   }
 
  public:
-  llvm::LoadInst* CreateLoadStackPointer(const char *name = "")
-  {
+  llvm::LoadInst* CreateLoadStackPointer(const char *name = "") {
     return builder()->CreateLoad(stack_pointer_addr(), name);
   }
-  llvm::StoreInst* CreateStoreStackPointer(llvm::Value* value)
-  {
+  llvm::StoreInst* CreateStoreStackPointer(llvm::Value* value) {
     return builder()->CreateStore(value, stack_pointer_addr());
   }
-  llvm::LoadInst* CreateLoadFramePointer(const char *name = "")
-  {
+  llvm::LoadInst* CreateLoadFramePointer(const char *name = "") {
     return builder()->CreateLoad(frame_pointer_addr(), name);
   }
-  llvm::StoreInst* CreateStoreFramePointer(llvm::Value* value)
-  {
+  llvm::StoreInst* CreateStoreFramePointer(llvm::Value* value) {
     return builder()->CreateStore(value, frame_pointer_addr());
   }
-  llvm::Value* CreatePopFrame(int result_slots); 
+  llvm::Value* CreatePopFrame(int result_slots);
 
   // Interface with the frame anchor
  private:
-  llvm::Value* frame_anchor_addr() const
-  {
+  llvm::Value* frame_anchor_addr() const {
     return builder()->CreateAddressOfStructEntry(
       thread(),
       JavaThread::last_Java_sp_offset(),
@@ -123,13 +114,11 @@
   }
 
  public:
-  llvm::StoreInst* CreateSetLastJavaFrame()
-  {
+  llvm::StoreInst* CreateSetLastJavaFrame() {
     return builder()->CreateStore(
       CreateLoadFramePointer(), frame_anchor_addr());
   }
-  llvm::StoreInst* CreateResetLastJavaFrame()
-  {
+  llvm::StoreInst* CreateResetLastJavaFrame() {
     return builder()->CreateStore(
       LLVMValue::intptr_constant(0), frame_anchor_addr());
   }
@@ -141,12 +130,10 @@
   int          _stack_slots_offset;
 
  public:
-  int extended_frame_size() const
-  {
+  int extended_frame_size() const {
     return _extended_frame_size;
   }
-  int oopmap_frame_size() const
-  {
+  int oopmap_frame_size() const {
     return extended_frame_size() - arg_size();
   }
 
@@ -159,39 +146,31 @@
   int _locals_slots_offset;
 
  public:
-  int stack_slots_offset() const
-  {
+  int stack_slots_offset() const {
     return _stack_slots_offset;
   }
-  int oop_tmp_slot_offset() const
-  {
+  int oop_tmp_slot_offset() const {
     return _oop_tmp_slot_offset;
   }
-  int method_slot_offset() const
-  {
+  int method_slot_offset() const {
     return _method_slot_offset;
   }
-  int pc_slot_offset() const
-  {
+  int pc_slot_offset() const {
     return _pc_slot_offset;
   }
-  int locals_slots_offset() const
-  {
+  int locals_slots_offset() const {
     return _locals_slots_offset;
   }
-  int monitor_offset(int index) const
-  {
+  int monitor_offset(int index) const {
     assert(index >= 0 && index < max_monitors(), "invalid monitor index");
     return _monitors_slots_offset +
       (max_monitors() - 1 - index) * frame::interpreter_frame_monitor_size();
   }
-  int monitor_object_offset(int index) const
-  {
+  int monitor_object_offset(int index) const {
     return monitor_offset(index) +
       (BasicObjectLock::obj_offset_in_bytes() >> LogBytesPerWord);
   }
-  int monitor_header_offset(int index) const
-  {
+  int monitor_header_offset(int index) const {
     return monitor_offset(index) +
       ((BasicObjectLock::lock_offset_in_bytes() +
         BasicLock::displaced_header_offset_in_bytes()) >> LogBytesPerWord);
@@ -202,37 +181,32 @@
   llvm::Value* slot_addr(int               offset,
                          const llvm::Type* type = NULL,
                          const char*       name = "") const;
-  
-  llvm::Value* monitor_addr(int index) const
-  {
+
+  llvm::Value* monitor_addr(int index) const {
     return slot_addr(
       monitor_offset(index),
       SharkType::monitor_type(),
       "monitor");
   }
-  llvm::Value* monitor_object_addr(int index) const
-  {
+  llvm::Value* monitor_object_addr(int index) const {
     return slot_addr(
       monitor_object_offset(index),
       SharkType::oop_type(),
       "object_addr");
   }
-  llvm::Value* monitor_header_addr(int index) const
-  {
+  llvm::Value* monitor_header_addr(int index) const {
     return slot_addr(
       monitor_header_offset(index),
       SharkType::intptr_type(),
       "displaced_header_addr");
-  }  
+  }
 
   // oopmap helpers
  public:
-  static int oopmap_slot_munge(int offset)
-  {
+  static int oopmap_slot_munge(int offset) {
     return offset << (LogBytesPerWord - LogBytesPerInt);
   }
-  static VMReg slot2reg(int offset)
-  {
+  static VMReg slot2reg(int offset) {
     return VMRegImpl::stack2reg(oopmap_slot_munge(offset));
   }
 };
@@ -247,8 +221,7 @@
   SharkFunction* _function;
 
  private:
-  SharkFunction* function() const
-  {
+  SharkFunction* function() const {
     return _function;
   }
 
@@ -274,8 +247,7 @@
   SharkNativeWrapper* _wrapper;
 
  private:
-  SharkNativeWrapper* wrapper() const
-  {
+  SharkNativeWrapper* wrapper() const {
     return _wrapper;
   }
 
--- a/ports/hotspot/src/share/vm/shark/sharkState.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkState.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkState::initialize(const SharkState *state)
-{
+void SharkState::initialize(const SharkState *state) {
   _locals = NEW_RESOURCE_ARRAY(SharkValue*, max_locals());
   _stack  = NEW_RESOURCE_ARRAY(SharkValue*, max_stack());
 
@@ -51,13 +50,12 @@
         value = value->clone();
       push(value);
     }
-  } 
+  }
 
   set_num_monitors(state ? state->num_monitors() : 0);
 }
 
-bool SharkState::equal_to(SharkState *other)
-{
+bool SharkState::equal_to(SharkState *other) {
   if (target() != other->target())
     return false;
 
@@ -120,8 +118,7 @@
 
 void SharkState::merge(SharkState* other,
                        BasicBlock* other_block,
-                       BasicBlock* this_block)
-{
+                       BasicBlock* this_block) {
   // Method
   Value *this_method = this->method();
   Value *other_method = other->method();
@@ -178,8 +175,7 @@
   set_has_safepointed(this->has_safepointed() && other->has_safepointed());
 }
 
-void SharkState::replace_all(SharkValue* old_value, SharkValue* new_value)
-{
+void SharkState::replace_all(SharkValue* old_value, SharkValue* new_value) {
   // Local variables
   for (int i = 0; i < max_locals(); i++) {
     if (local(i) == old_value)
@@ -195,8 +191,7 @@
 
 SharkNormalEntryState::SharkNormalEntryState(SharkTopLevelBlock* block,
                                              Value*              method)
-  : SharkState(block)
-{
+  : SharkState(block) {
   assert(!block->stack_depth_at_entry(), "entry block shouldn't have stack");
 
   // Local variables
@@ -216,11 +211,11 @@
       }
       value = SharkValue::create_generic(type, NULL, i == 0 && !is_static());
       break;
-    
+
     case ciTypeFlow::StateVector::T_NULL:
       value = SharkValue::null();
       break;
-      
+
     case ciTypeFlow::StateVector::T_BOTTOM:
       break;
 
@@ -233,14 +228,13 @@
     }
     set_local(i, value);
   }
-  SharkNormalEntryCacher(block->function(), method).scan(this);  
+  SharkNormalEntryCacher(block->function(), method).scan(this);
 }
 
 SharkOSREntryState::SharkOSREntryState(SharkTopLevelBlock* block,
                                        Value*              method,
                                        Value*              osr_buf)
-  : SharkState(block)
-{
+  : SharkState(block) {
   assert(!block->stack_depth_at_entry(), "entry block shouldn't have stack");
   set_num_monitors(block->ciblock()->monitor_count());
 
@@ -258,7 +252,7 @@
     case T_ARRAY:
       value = SharkValue::create_generic(type, NULL, false);
       break;
-    
+
     case ciTypeFlow::StateVector::T_NULL:
       value = SharkValue::null();
       break;
@@ -279,8 +273,7 @@
 }
 
 SharkPHIState::SharkPHIState(SharkTopLevelBlock* block)
-  : SharkState(block), _block(block)
-{
+  : SharkState(block), _block(block) {
   BasicBlock *saved_insert_point = builder()->GetInsertBlock();
   builder()->SetInsertPoint(block->entry_block());
   char name[18];
@@ -364,13 +357,12 @@
   // Monitors
   set_num_monitors(block->ciblock()->monitor_count());
 
-  builder()->SetInsertPoint(saved_insert_point);    
+  builder()->SetInsertPoint(saved_insert_point);
 }
 
-void SharkPHIState::add_incoming(SharkState* incoming_state)
-{
+void SharkPHIState::add_incoming(SharkState* incoming_state) {
   BasicBlock *predecessor = builder()->GetInsertBlock();
-    
+
   // Method
   ((PHINode *) method())->addIncoming(incoming_state->method(), predecessor);
 
@@ -387,11 +379,11 @@
     assert((stack(i) == NULL) == (incoming_state->stack(i) == NULL), "oops");
     if (stack(i))
       stack(i)->addIncoming(incoming_state->stack(i), predecessor);
-  }    
+  }
 
   // Monitors
   assert(num_monitors() == incoming_state->num_monitors(), "should be");
 
   // Temporary oop slot
-  assert(oop_tmp() == incoming_state->oop_tmp(), "should be");  
+  assert(oop_tmp() == incoming_state->oop_tmp(), "should be");
 }
--- a/ports/hotspot/src/share/vm/shark/sharkState.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkState.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -51,102 +51,83 @@
 
   // Method
  public:
-  llvm::Value** method_addr()
-  {
+  llvm::Value** method_addr() {
     return &_method;
   }
-  llvm::Value* method() const
-  {
+  llvm::Value* method() const {
     return _method;
   }
  protected:
-  void set_method(llvm::Value* method)
-  {
+  void set_method(llvm::Value* method) {
     _method = method;
   }
 
   // Local variables
  public:
-  SharkValue** local_addr(int index) const
-  {
+  SharkValue** local_addr(int index) const {
     assert(index >= 0 && index < max_locals(), "bad local variable index");
     return &_locals[index];
   }
-  SharkValue* local(int index) const
-  {
+  SharkValue* local(int index) const {
     return *local_addr(index);
   }
-  void set_local(int index, SharkValue* value)
-  {
+  void set_local(int index, SharkValue* value) {
     *local_addr(index) = value;
   }
 
   // Expression stack
  public:
-  SharkValue** stack_addr(int slot) const
-  {
+  SharkValue** stack_addr(int slot) const {
     assert(slot >= 0 && slot < stack_depth(), "bad stack slot");
     return &_sp[-(slot + 1)];
   }
-  SharkValue* stack(int slot) const
-  {
+  SharkValue* stack(int slot) const {
     return *stack_addr(slot);
   }
  protected:
-  void set_stack(int slot, SharkValue* value)
-  {
+  void set_stack(int slot, SharkValue* value) {
     *stack_addr(slot) = value;
   }
  public:
-  int stack_depth() const
-  {
+  int stack_depth() const {
     return _sp - _stack;
   }
-  void push(SharkValue* value)
-  {
+  void push(SharkValue* value) {
     assert(stack_depth() < max_stack(), "stack overrun");
     *(_sp++) = value;
   }
-  SharkValue* pop()
-  {
+  SharkValue* pop() {
     assert(stack_depth() > 0, "stack underrun");
     return *(--_sp);
   }
 
   // Monitors
  public:
-  int num_monitors() const
-  {
+  int num_monitors() const {
     return _num_monitors;
   }
-  void set_num_monitors(int num_monitors)
-  {
+  void set_num_monitors(int num_monitors) {
     _num_monitors = num_monitors;
   }
 
   // Temporary oop slot
  public:
-  llvm::Value** oop_tmp_addr()
-  {
+  llvm::Value** oop_tmp_addr() {
     return &_oop_tmp;
   }
-  llvm::Value* oop_tmp() const
-  {
+  llvm::Value* oop_tmp() const {
     return _oop_tmp;
   }
-  void set_oop_tmp(llvm::Value* oop_tmp)
-  {
+  void set_oop_tmp(llvm::Value* oop_tmp) {
     _oop_tmp = oop_tmp;
   }
 
   // Safepointed status
  public:
-  bool has_safepointed() const
-  {
+  bool has_safepointed() const {
     return _has_safepointed;
   }
-  void set_has_safepointed(bool has_safepointed)
-  {
+  void set_has_safepointed(bool has_safepointed) {
     _has_safepointed = has_safepointed;
   }
 
@@ -156,8 +137,7 @@
 
   // Copy and merge
  public:
-  SharkState* copy() const
-  {
+  SharkState* copy() const {
     return new SharkState(this);
   }
   void merge(SharkState*       other,
@@ -199,11 +179,10 @@
   SharkTopLevelBlock* _block;
 
  private:
-  SharkTopLevelBlock* block() const
-  {
+  SharkTopLevelBlock* block() const {
     return _block;
   }
 
  public:
-  void add_incoming(SharkState* incoming_state); 
+  void add_incoming(SharkState* incoming_state);
 };
--- a/ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkStateScanner.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkStateScanner::scan(SharkState* state)
-{
+void SharkStateScanner::scan(SharkState* state) {
   start_frame();
 
   // Expression stack
@@ -77,8 +76,7 @@
 }
 
 #ifndef PRODUCT
-void SharkStateScanner::stack_integrity_checks(SharkState* state)
-{
+void SharkStateScanner::stack_integrity_checks(SharkState* state) {
   for (int i = 0; i < state->stack_depth(); i++) {
     if (state->stack(i)) {
       if (state->stack(i)->is_two_word())
@@ -89,14 +87,13 @@
     }
   }
 }
-  
-void SharkStateScanner::locals_integrity_checks(SharkState* state)
-{
+
+void SharkStateScanner::locals_integrity_checks(SharkState* state) {
   for (int i = 0; i < max_locals(); i++) {
     if (state->local(i)) {
       if (state->local(i)->is_two_word())
         assert(state->local(i + 1) == NULL, "should be");
     }
-  } 
+  }
 }
 #endif // !PRODUCT
--- a/ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkStateScanner.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -34,8 +34,7 @@
   SharkStack* _stack;
 
  protected:
-  SharkStack* stack() const
-  {
+  SharkStack* stack() const {
     return _stack;
   }
 
@@ -62,7 +61,7 @@
   virtual void process_method_slot(llvm::Value** value, int offset)          {}
   virtual void process_pc_slot(int offset)                                   {}
   virtual void end_frame_header()                                            {}
-  
+
   virtual void start_locals()                                                {}
   virtual void process_local_slot(int index, SharkValue** value, int offset) {}
   virtual void end_locals()                                                  {}
--- a/ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -28,8 +28,7 @@
 
 using namespace llvm;
 
-void SharkTopLevelBlock::scan_for_traps()
-{
+void SharkTopLevelBlock::scan_for_traps() {
   // If typeflow found a trap then don't scan past it
   int limit_bci = ciblock()->has_trap() ? ciblock()->trap_bci() : limit();
 
@@ -55,7 +54,7 @@
         return;
       }
       break;
-      
+
     case Bytecodes::_getfield:
     case Bytecodes::_getstatic:
     case Bytecodes::_putfield:
@@ -116,7 +115,7 @@
       break;
     }
   }
-  
+
   // Trap if typeflow trapped (and we didn't before)
   if (ciblock()->has_trap()) {
     set_trap(
@@ -128,8 +127,7 @@
   }
 }
 
-SharkState* SharkTopLevelBlock::entry_state()
-{
+SharkState* SharkTopLevelBlock::entry_state() {
   if (_entry_state == NULL) {
     assert(needs_phis(), "should do");
     _entry_state = new SharkPHIState(this);
@@ -137,8 +135,7 @@
   return _entry_state;
 }
 
-void SharkTopLevelBlock::add_incoming(SharkState* incoming_state)
-{
+void SharkTopLevelBlock::add_incoming(SharkState* incoming_state) {
   if (needs_phis()) {
     ((SharkPHIState *) entry_state())->add_incoming(incoming_state);
   }
@@ -151,8 +148,7 @@
 }
 
 void SharkTopLevelBlock::enter(SharkTopLevelBlock* predecessor,
-                               bool is_exception)
-{
+                               bool is_exception) {
   // This block requires phis:
   //  - if it is entered more than once
   //  - if it is an exception handler, because in which
@@ -181,9 +177,8 @@
     }
   }
 }
-  
-void SharkTopLevelBlock::initialize()
-{
+
+void SharkTopLevelBlock::initialize() {
   char name[28];
   snprintf(name, sizeof(name),
            "bci_%d%s",
@@ -191,15 +186,13 @@
   _entry_block = function()->CreateBlock(name);
 }
 
-void SharkTopLevelBlock::decache_for_Java_call(ciMethod *callee)
-{
+void SharkTopLevelBlock::decache_for_Java_call(ciMethod *callee) {
   SharkJavaCallDecacher(function(), bci(), callee).scan(current_state());
   for (int i = 0; i < callee->arg_size(); i++)
     xpop();
 }
 
-void SharkTopLevelBlock::cache_after_Java_call(ciMethod *callee)
-{
+void SharkTopLevelBlock::cache_after_Java_call(ciMethod *callee) {
   if (callee->return_type()->size()) {
     ciType *type;
     switch (callee->return_type()->basic_type()) {
@@ -219,23 +212,19 @@
   SharkJavaCallCacher(function(), callee).scan(current_state());
 }
 
-void SharkTopLevelBlock::decache_for_VM_call()
-{
+void SharkTopLevelBlock::decache_for_VM_call() {
   SharkVMCallDecacher(function(), bci()).scan(current_state());
 }
 
-void SharkTopLevelBlock::cache_after_VM_call()
-{
+void SharkTopLevelBlock::cache_after_VM_call() {
   SharkVMCallCacher(function()).scan(current_state());
 }
 
-void SharkTopLevelBlock::decache_for_trap()
-{
+void SharkTopLevelBlock::decache_for_trap() {
   SharkTrapDecacher(function(), bci()).scan(current_state());
 }
 
-void SharkTopLevelBlock::emit_IR()
-{
+void SharkTopLevelBlock::emit_IR() {
   builder()->SetInsertPoint(entry_block());
 
   // Parse the bytecode
@@ -247,8 +236,7 @@
     do_branch(ciTypeFlow::FALL_THROUGH);
 }
 
-SharkTopLevelBlock* SharkTopLevelBlock::bci_successor(int bci) const
-{
+SharkTopLevelBlock* SharkTopLevelBlock::bci_successor(int bci) const {
   // XXX now with Linear Search Technology (tm)
   for (int i = 0; i < num_successors(); i++) {
     ciTypeFlow::Block *successor = ciblock()->successors()->at(i);
@@ -258,8 +246,7 @@
   ShouldNotReachHere();
 }
 
-void SharkTopLevelBlock::do_zero_check(SharkValue *value)
-{
+void SharkTopLevelBlock::do_zero_check(SharkValue *value) {
   if (value->is_phi() && value->as_phi()->all_incomers_zero_checked()) {
     function()->add_deferred_zero_check(this, value);
   }
@@ -278,21 +265,19 @@
 void SharkTopLevelBlock::do_deferred_zero_check(SharkValue* value,
                                                 int         bci,
                                                 SharkState* saved_state,
-                                                BasicBlock* continue_block)
-{
+                                                BasicBlock* continue_block) {
   if (value->as_phi()->all_incomers_zero_checked()) {
     builder()->CreateBr(continue_block);
   }
   else {
     iter()->force_bci(start());
-    set_current_state(saved_state);  
+    set_current_state(saved_state);
     zero_check_value(value, continue_block);
   }
 }
 
 void SharkTopLevelBlock::zero_check_value(SharkValue* value,
-                                          BasicBlock* continue_block)
-{
+                                          BasicBlock* continue_block) {
   BasicBlock *zero_block = builder()->CreateBlock(continue_block, "zero");
 
   Value *a, *b;
@@ -333,15 +318,14 @@
   }
   else {
     builder()->CreateUnimplemented(__FILE__, __LINE__);
-  } 
+  }
 
   Value *pending_exception = get_pending_exception();
   clear_pending_exception();
   handle_exception(pending_exception, EX_CHECK_FULL);
 }
 
-void SharkTopLevelBlock::check_bounds(SharkValue* array, SharkValue* index)
-{
+void SharkTopLevelBlock::check_bounds(SharkValue* array, SharkValue* index) {
   BasicBlock *out_of_bounds = function()->CreateBlock("out_of_bounds");
   BasicBlock *in_bounds     = function()->CreateBlock("in_bounds");
 
@@ -367,13 +351,12 @@
   clear_pending_exception();
   handle_exception(pending_exception, EX_CHECK_FULL);
 
-  set_current_state(saved_state);  
+  set_current_state(saved_state);
 
   builder()->SetInsertPoint(in_bounds);
 }
 
-void SharkTopLevelBlock::check_pending_exception(int action)
-{
+void SharkTopLevelBlock::check_pending_exception(int action) {
   assert(action & EAM_CHECK, "should be");
 
   BasicBlock *exception    = function()->CreateBlock("exception");
@@ -394,14 +377,13 @@
     action ^= EAM_MONITOR_FUDGE;
   }
   clear_pending_exception();
-  handle_exception(pending_exception, action); 
+  handle_exception(pending_exception, action);
   set_current_state(saved_state);
 
   builder()->SetInsertPoint(no_exception);
 }
 
-void SharkTopLevelBlock::handle_exception(Value* exception, int action)
-{
+void SharkTopLevelBlock::handle_exception(Value* exception, int action) {
   if (action & EAM_HANDLE && num_exceptions() != 0) {
     // Clear the stack and push the exception onto it.
     // We do this now to protect it across the VM call
@@ -479,8 +461,7 @@
   handle_return(T_VOID, exception);
 }
 
-void SharkTopLevelBlock::maybe_add_safepoint()
-{
+void SharkTopLevelBlock::maybe_add_safepoint() {
   if (current_state()->has_safepointed())
     return;
 
@@ -505,7 +486,7 @@
 
   builder()->SetInsertPoint(do_safepoint);
   call_vm(builder()->safepoint(), EX_CHECK_FULL);
-  BasicBlock *safepointed_block = builder()->GetInsertBlock();  
+  BasicBlock *safepointed_block = builder()->GetInsertBlock();
   builder()->CreateBr(safepointed);
 
   builder()->SetInsertPoint(safepointed);
@@ -514,8 +495,7 @@
   current_state()->set_has_safepointed(true);
 }
 
-void SharkTopLevelBlock::maybe_add_backedge_safepoint()
-{
+void SharkTopLevelBlock::maybe_add_backedge_safepoint() {
   if (current_state()->has_safepointed())
     return;
 
@@ -527,23 +507,21 @@
   }
 }
 
-bool SharkTopLevelBlock::can_reach(SharkTopLevelBlock* other)
-{
+bool SharkTopLevelBlock::can_reach(SharkTopLevelBlock* other) {
   for (int i = 0; i < function()->block_count(); i++)
     function()->block(i)->_can_reach_visited = false;
 
   return can_reach_helper(other);
 }
 
-bool SharkTopLevelBlock::can_reach_helper(SharkTopLevelBlock* other)
-{
+bool SharkTopLevelBlock::can_reach_helper(SharkTopLevelBlock* other) {
   if (this == other)
     return true;
 
   if (_can_reach_visited)
     return false;
   _can_reach_visited = true;
-  
+
   if (!has_trap()) {
     for (int i = 0; i < num_successors(); i++) {
       if (successor(i)->can_reach_helper(other))
@@ -559,8 +537,7 @@
   return false;
 }
 
-void SharkTopLevelBlock::do_trap(int trap_request)
-{
+void SharkTopLevelBlock::do_trap(int trap_request) {
   decache_for_trap();
   builder()->CreateCall2(
     builder()->uncommon_trap(),
@@ -569,8 +546,7 @@
   builder()->CreateRetVoid();
 }
 
-void SharkTopLevelBlock::call_register_finalizer(Value *receiver)
-{
+void SharkTopLevelBlock::call_register_finalizer(Value *receiver) {
   BasicBlock *orig_block = builder()->GetInsertBlock();
   SharkState *orig_state = current_state()->copy();
 
@@ -582,7 +558,7 @@
     in_ByteSize(oopDesc::klass_offset_in_bytes()),
     SharkType::oop_type(),
     "klass");
-  
+
   Value *klass_part = builder()->CreateAddressOfStructEntry(
     klass,
     in_ByteSize(klassOopDesc::klass_part_offset_in_bytes()),
@@ -605,15 +581,14 @@
 
   builder()->SetInsertPoint(do_call);
   call_vm(builder()->register_finalizer(), receiver, EX_CHECK_FULL);
-  BasicBlock *branch_block = builder()->GetInsertBlock();  
+  BasicBlock *branch_block = builder()->GetInsertBlock();
   builder()->CreateBr(done);
 
   builder()->SetInsertPoint(done);
   current_state()->merge(orig_state, orig_block, branch_block);
 }
 
-void SharkTopLevelBlock::handle_return(BasicType type, Value* exception)
-{
+void SharkTopLevelBlock::handle_return(BasicType type, Value* exception) {
   assert (exception == NULL || type == T_VOID, "exception OR result, please");
 
   if (num_monitors()) {
@@ -650,16 +625,14 @@
   builder()->CreateRetVoid();
 }
 
-void SharkTopLevelBlock::do_arraylength()
-{
+void SharkTopLevelBlock::do_arraylength() {
   SharkValue *array = pop();
   check_null(array);
   Value *length = builder()->CreateArrayLength(array->jarray_value());
   push(SharkValue::create_jint(length, false));
 }
 
-void SharkTopLevelBlock::do_aload(BasicType basic_type)
-{
+void SharkTopLevelBlock::do_aload(BasicType basic_type) {
   SharkValue *index = pop();
   SharkValue *array = pop();
 
@@ -699,7 +672,7 @@
   case T_DOUBLE:
     push(SharkValue::create_jdouble(value));
     break;
-    
+
   case T_OBJECT:
     push(SharkValue::create_generic(element_type, value, false));
     break;
@@ -710,8 +683,7 @@
   }
 }
 
-void SharkTopLevelBlock::do_astore(BasicType basic_type)
-{
+void SharkTopLevelBlock::do_astore(BasicType basic_type) {
   SharkValue *svalue = pop();
   SharkValue *index  = pop();
   SharkValue *array  = pop();
@@ -769,34 +741,29 @@
     builder()->CreateUpdateBarrierSet(oopDesc::bs(), addr);
 }
 
-void SharkTopLevelBlock::do_return(BasicType type)
-{
+void SharkTopLevelBlock::do_return(BasicType type) {
   if (target()->intrinsic_id() == vmIntrinsics::_Object_init)
     call_register_finalizer(local(0)->jobject_value());
   maybe_add_safepoint();
   handle_return(type, NULL);
 }
 
-void SharkTopLevelBlock::do_athrow()
-{
+void SharkTopLevelBlock::do_athrow() {
   SharkValue *exception = pop();
   check_null(exception);
   handle_exception(exception->jobject_value(), EX_CHECK_FULL);
 }
 
-void SharkTopLevelBlock::do_goto()
-{
+void SharkTopLevelBlock::do_goto() {
   do_branch(ciTypeFlow::GOTO_TARGET);
 }
 
-void SharkTopLevelBlock::do_jsr()
-{
+void SharkTopLevelBlock::do_jsr() {
   push(SharkValue::address_constant(iter()->next_bci()));
   do_branch(ciTypeFlow::GOTO_TARGET);
 }
 
-void SharkTopLevelBlock::do_ret()
-{
+void SharkTopLevelBlock::do_ret() {
   assert(local(iter()->get_index())->address_value() ==
          successor(ciTypeFlow::GOTO_TARGET)->start(), "should be");
   do_branch(ciTypeFlow::GOTO_TARGET);
@@ -809,8 +776,7 @@
 //   do_switch
 //   handle_exception
 
-void SharkTopLevelBlock::do_branch(int successor_index)
-{
+void SharkTopLevelBlock::do_branch(int successor_index) {
   SharkTopLevelBlock *dest = successor(successor_index);
   builder()->CreateBr(dest->entry_block());
   dest->add_incoming(current_state());
@@ -818,8 +784,7 @@
 
 void SharkTopLevelBlock::do_if(ICmpInst::Predicate p,
                                SharkValue*         b,
-                               SharkValue*         a)
-{
+                               SharkValue*         a) {
   Value *llvm_a, *llvm_b;
   if (a->is_jobject()) {
     llvm_a = a->intptr_value(builder());
@@ -836,8 +801,7 @@
                                       Value*              b,
                                       Value*              a,
                                       SharkState*         if_taken_state,
-                                      SharkState*         not_taken_state)
-{
+                                      SharkState*         not_taken_state) {
   SharkTopLevelBlock *if_taken  = successor(ciTypeFlow::IF_TAKEN);
   SharkTopLevelBlock *not_taken = successor(ciTypeFlow::IF_NOT_TAKEN);
 
@@ -849,8 +813,7 @@
   not_taken->add_incoming(not_taken_state);
 }
 
-void SharkTopLevelBlock::do_switch()
-{
+void SharkTopLevelBlock::do_switch() {
   int len = switch_table_length();
 
   SharkTopLevelBlock *dest_block = successor(ciTypeFlow::SWITCH_DEFAULT);
@@ -865,7 +828,7 @@
       switchinst->addCase(
         LLVMValue::jint_constant(switch_key(i)),
         dest_block->entry_block());
-      dest_block->add_incoming(current_state());      
+      dest_block->add_incoming(current_state());
     }
   }
 }
@@ -873,8 +836,7 @@
 ciMethod* SharkTopLevelBlock::improve_virtual_call(ciMethod*   caller,
                                               ciInstanceKlass* klass,
                                               ciMethod*        dest_method,
-                                              ciType*          receiver_type)
-{
+                                              ciType*          receiver_type) {
   // If the method is obviously final then we are already done
   if (dest_method->can_be_statically_bound())
     return dest_method;
@@ -899,7 +861,7 @@
   }
 
   // Attempt to find a monomorphic target for this call using
-  // class heirachy analysis.  
+  // class heirachy analysis.
   ciInstanceKlass *calling_klass = caller->holder();
   ciMethod* monomorphic_target =
     dest_method->find_monomorphic_target(calling_klass, klass, actual_receiver);
@@ -942,8 +904,7 @@
   return NULL;
 }
 
-Value *SharkTopLevelBlock::get_direct_callee(ciMethod* method)
-{
+Value *SharkTopLevelBlock::get_direct_callee(ciMethod* method) {
   return builder()->CreateBitCast(
     builder()->CreateInlineOop(method),
     SharkType::methodOop_type(),
@@ -951,8 +912,7 @@
 }
 
 Value *SharkTopLevelBlock::get_virtual_callee(SharkValue* receiver,
-                                              int vtable_index)
-{
+                                              int vtable_index) {
   Value *klass = builder()->CreateValueOfStructEntry(
     receiver->jobject_value(),
     in_ByteSize(oopDesc::klass_offset_in_bytes()),
@@ -970,8 +930,7 @@
 }
 
 Value* SharkTopLevelBlock::get_interface_callee(SharkValue *receiver,
-                                                ciMethod*   method)
-{
+                                                ciMethod*   method) {
   BasicBlock *loop       = function()->CreateBlock("loop");
   BasicBlock *got_null   = function()->CreateBlock("got_null");
   BasicBlock *not_null   = function()->CreateBlock("not_null");
@@ -1041,7 +1000,7 @@
   builder()->SetInsertPoint(got_null);
   builder()->CreateUnimplemented(__FILE__, __LINE__);
   builder()->CreateUnreachable();
-                          
+
   builder()->SetInsertPoint(not_null);
   builder()->CreateCondBr(
     builder()->CreateICmpEQ(itable_iklass, iklass),
@@ -1078,10 +1037,9 @@
           itableMethodEntry::method_offset_in_bytes())),
       PointerType::getUnqual(SharkType::methodOop_type())),
     "callee");
-} 
+}
 
-void SharkTopLevelBlock::do_call()
-{
+void SharkTopLevelBlock::do_call() {
   // Set frequently used booleans
   bool is_static = bc() == Bytecodes::_invokestatic;
   bool is_virtual = bc() == Bytecodes::_invokevirtual;
@@ -1184,8 +1142,7 @@
 }
 
 bool SharkTopLevelBlock::static_subtype_check(ciKlass* check_klass,
-                                              ciKlass* object_klass)
-{
+                                              ciKlass* object_klass) {
   // If the class we're checking against is java.lang.Object
   // then this is a no brainer.  Apparently this can happen
   // in reflective code...
@@ -1208,9 +1165,8 @@
 
   return false;
 }
-  
-void SharkTopLevelBlock::do_instance_check()
-{
+
+void SharkTopLevelBlock::do_instance_check() {
   // Get the class we're checking against
   bool will_link;
   ciKlass *check_klass = iter()->get_klass(will_link);
@@ -1233,9 +1189,8 @@
   else
     do_trapping_instance_check(check_klass);
 }
-                
-bool SharkTopLevelBlock::maybe_do_instanceof_if()
-{
+
+bool SharkTopLevelBlock::maybe_do_instanceof_if() {
   // Get the class we're checking against
   bool will_link;
   ciKlass *check_klass = iter()->get_klass(will_link);
@@ -1247,7 +1202,7 @@
 
   // Keep a copy of the object we're checking
   SharkValue *old_object = xstack(0);
-  
+
   // Get the class of the object we're checking
   ciKlass *object_klass = old_object->type()->as_klass();
 
@@ -1297,8 +1252,7 @@
   return true;
 }
 
-void SharkTopLevelBlock::do_full_instance_check(ciKlass* klass)
-{ 
+void SharkTopLevelBlock::do_full_instance_check(ciKlass* klass) {
   BasicBlock *not_null      = function()->CreateBlock("not_null");
   BasicBlock *subtype_check = function()->CreateBlock("subtype_check");
   BasicBlock *is_instance   = function()->CreateBlock("is_instance");
@@ -1314,7 +1268,7 @@
 
   // Pop the object off the stack
   Value *object = pop()->jobject_value();
-  
+
   // Null objects aren't instances of anything
   builder()->CreateCondBr(
     builder()->CreateICmpEQ(object, LLVMValue::null()),
@@ -1360,7 +1314,7 @@
     LLVMValue::jint_constant(IC_NOT_INSTANCE), not_instance);
   BasicBlock *nonnull_block = builder()->GetInsertBlock();
   builder()->CreateBr(merge2);
-  
+
   // Second merge
   builder()->SetInsertPoint(merge2);
   PHINode *result = builder()->CreatePHI(
@@ -1395,8 +1349,7 @@
   }
 }
 
-void SharkTopLevelBlock::do_trapping_instance_check(ciKlass* klass)
-{
+void SharkTopLevelBlock::do_trapping_instance_check(ciKlass* klass) {
   BasicBlock *not_null = function()->CreateBlock("not_null");
   BasicBlock *is_null  = function()->CreateBlock("null");
 
@@ -1418,7 +1371,7 @@
   builder()->SetInsertPoint(is_null);
   set_current_state(saved_state);
   if (bc() == Bytecodes::_checkcast) {
-    push(SharkValue::create_generic(klass, pop()->jobject_value(), false));    
+    push(SharkValue::create_generic(klass, pop()->jobject_value(), false));
   }
   else {
     pop();
@@ -1426,8 +1379,7 @@
   }
 }
 
-void SharkTopLevelBlock::do_new()
-{
+void SharkTopLevelBlock::do_new() {
   bool will_link;
   ciInstanceKlass* klass = iter()->get_klass(will_link)->as_instance_klass();
   assert(will_link, "typeflow responsibility");
@@ -1443,7 +1395,7 @@
   BasicBlock *push_object         = NULL;
 
   SharkState *fast_state = NULL;
-  
+
   Value *tlab_object = NULL;
   Value *heap_object = NULL;
   Value *fast_object = NULL;
@@ -1496,7 +1448,7 @@
 
     // Heap allocation
     Value *top_addr = builder()->CreateIntToPtr(
-	LLVMValue::intptr_constant((intptr_t) Universe::heap()->top_addr()),
+        LLVMValue::intptr_constant((intptr_t) Universe::heap()->top_addr()),
       PointerType::getUnqual(SharkType::intptr_type()),
       "top_addr");
 
@@ -1603,8 +1555,7 @@
   push(SharkValue::create_jobject(object, true));
 }
 
-void SharkTopLevelBlock::do_newarray()
-{
+void SharkTopLevelBlock::do_newarray() {
   BasicType type = (BasicType) iter()->get_index();
 
   call_vm(
@@ -1617,8 +1568,7 @@
   push(SharkValue::create_generic(array_klass, get_vm_result(), true));
 }
 
-void SharkTopLevelBlock::do_anewarray()
-{
+void SharkTopLevelBlock::do_anewarray() {
   bool will_link;
   ciKlass *klass = iter()->get_klass(will_link);
   assert(will_link, "typeflow responsibility");
@@ -1637,8 +1587,7 @@
   push(SharkValue::create_generic(array_klass, get_vm_result(), true));
 }
 
-void SharkTopLevelBlock::do_multianewarray()
-{
+void SharkTopLevelBlock::do_multianewarray() {
   bool will_link;
   ciArrayKlass *array_klass = iter()->get_klass(will_link)->as_array_klass();
   assert(will_link, "typeflow responsibility");
@@ -1673,8 +1622,7 @@
   push(SharkValue::create_generic(array_klass, get_vm_result(), true));
 }
 
-void SharkTopLevelBlock::acquire_method_lock()
-{
+void SharkTopLevelBlock::acquire_method_lock() {
   Value *lockee;
   if (target()->is_static())
     lockee = builder()->CreateInlineOop(target()->holder()->java_mirror());
@@ -1685,21 +1633,18 @@
   acquire_lock(lockee, EX_CHECK_NO_CATCH);
 }
 
-void SharkTopLevelBlock::do_monitorenter()
-{
+void SharkTopLevelBlock::do_monitorenter() {
   SharkValue *lockee = pop();
   check_null(lockee);
   acquire_lock(lockee->jobject_value(), EX_CHECK_FULL);
 }
 
-void SharkTopLevelBlock::do_monitorexit()
-{
+void SharkTopLevelBlock::do_monitorexit() {
   pop(); // don't need this (monitors are block structured)
   release_lock(EX_CHECK_FULL);
 }
 
-void SharkTopLevelBlock::acquire_lock(Value *lockee, int exception_action)
-{
+void SharkTopLevelBlock::acquire_lock(Value *lockee, int exception_action) {
   BasicBlock *try_recursive = function()->CreateBlock("try_recursive");
   BasicBlock *got_recursive = function()->CreateBlock("got_recursive");
   BasicBlock *not_recursive = function()->CreateBlock("not_recursive");
@@ -1776,15 +1721,14 @@
     builder()->monitorenter(), monitor_addr,
     exception_action | EAM_MONITOR_FUDGE);
   BasicBlock *acquired_slow = builder()->GetInsertBlock();
-  builder()->CreateBr(lock_acquired);  
+  builder()->CreateBr(lock_acquired);
 
   // All done
   builder()->SetInsertPoint(lock_acquired);
   current_state()->merge(fast_state, acquired_fast, acquired_slow);
 }
 
-void SharkTopLevelBlock::release_lock(int exception_action)
-{
+void SharkTopLevelBlock::release_lock(int exception_action) {
   BasicBlock *not_recursive = function()->CreateBlock("not_recursive");
   BasicBlock *released_fast = function()->CreateBlock("released_fast");
   BasicBlock *slow_path     = function()->CreateBlock("slow_path");
@@ -1822,13 +1766,13 @@
   // Create an edge for the state merge
   builder()->SetInsertPoint(released_fast);
   SharkState *fast_state = current_state()->copy();
-  builder()->CreateBr(lock_released);  
+  builder()->CreateBr(lock_released);
 
   // Need to drop into the runtime to release this one
   builder()->SetInsertPoint(slow_path);
   call_vm(builder()->monitorexit(), monitor_addr, exception_action);
   BasicBlock *released_slow = builder()->GetInsertBlock();
-  builder()->CreateBr(lock_released);  
+  builder()->CreateBr(lock_released);
 
   // All done
   builder()->SetInsertPoint(lock_released);
--- a/ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -40,70 +40,55 @@
   ciTypeFlow::Block* _ciblock;
 
  public:
-  SharkFunction* function() const
-  {
+  SharkFunction* function() const {
     return _function;
   }
-  ciTypeFlow::Block* ciblock() const
-  {
+  ciTypeFlow::Block* ciblock() const {
     return _ciblock;
   }
 
   // Function properties
  public:
-  SharkStack* stack() const
-  {
+  SharkStack* stack() const {
     return function()->stack();
   }
-  
+
   // Typeflow properties
  public:
-  int index() const
-  {
+  int index() const {
     return ciblock()->pre_order();
   }
-  bool is_backedge_copy() const
-  {
+  bool is_backedge_copy() const {
     return ciblock()->is_backedge_copy();
   }
-  int stack_depth_at_entry() const
-  {
+  int stack_depth_at_entry() const {
     return ciblock()->stack_size();
   }
-  ciType* local_type_at_entry(int index) const
-  {
+  ciType* local_type_at_entry(int index) const {
     return ciblock()->local_type_at(index);
   }
-  ciType* stack_type_at_entry(int slot) const
-  {
+  ciType* stack_type_at_entry(int slot) const {
     return ciblock()->stack_type_at(slot);
-  }  
-  int start() const
-  {
+  }
+  int start() const {
     return ciblock()->start();
   }
-  int limit() const
-  {
+  int limit() const {
     return ciblock()->limit();
   }
-  bool falls_through() const
-  {
+  bool falls_through() const {
     return ciblock()->control() == ciBlock::fall_through_bci;
   }
-  int num_exceptions() const
-  {
+  int num_exceptions() const {
     return ciblock()->exceptions()->length();
   }
-  SharkTopLevelBlock* exception(int index) const
-  {
+  SharkTopLevelBlock* exception(int index) const {
     return function()->block(ciblock()->exceptions()->at(index)->pre_order());
   }
-  int num_successors() const
-  {
+  int num_successors() const {
     return ciblock()->successors()->length();
   }
-  SharkTopLevelBlock* successor(int index) const
-  {
+  SharkTopLevelBlock* successor(int index) const {
     return function()->block(ciblock()->successors()->at(index)->pre_order());
   }
   SharkTopLevelBlock* bci_successor(int bci) const;
@@ -114,8 +99,7 @@
   int  _trap_request;
   int  _trap_bci;
 
-  void set_trap(int trap_request, int trap_bci)
-  {
+  void set_trap(int trap_request, int trap_bci) {
     assert(!has_trap(), "shouldn't have");
     _has_trap     = true;
     _trap_request = trap_request;
@@ -123,17 +107,14 @@
   }
 
  private:
-  bool has_trap()
-  {
+  bool has_trap() {
     return _has_trap;
   }
-  int trap_request()
-  {
+  int trap_request() {
     assert(has_trap(), "should have");
     return _trap_request;
   }
-  int trap_bci()
-  {
+  int trap_bci() {
     assert(has_trap(), "should have");
     return _trap_bci;
   }
@@ -147,12 +128,10 @@
   bool _needs_phis;
 
  public:
-  bool entered() const
-  {
+  bool entered() const {
     return _entered;
   }
-  bool needs_phis() const
-  {
+  bool needs_phis() const {
     return _needs_phis;
   }
 
@@ -160,8 +139,7 @@
   void enter(SharkTopLevelBlock* predecessor, bool is_exception);
 
  public:
-  void enter()
-  {
+  void enter() {
     enter(NULL, false);
   }
 
@@ -175,8 +153,7 @@
   llvm::BasicBlock* _entry_block;
 
  public:
-  llvm::BasicBlock* entry_block() const
-  {
+  llvm::BasicBlock* entry_block() const {
     return _entry_block;
   }
 
@@ -188,21 +165,18 @@
 
   // Method
  public:
-  llvm::Value* method()
-  {
+  llvm::Value* method() {
     return current_state()->method();
   }
 
   // Temporary oop storage
  public:
-  void set_oop_tmp(llvm::Value* value)
-  {
+  void set_oop_tmp(llvm::Value* value) {
     assert(value, "value must be non-NULL (will be reset by get_oop_tmp)");
     assert(!current_state()->oop_tmp(), "oop_tmp gets and sets must match");
     current_state()->set_oop_tmp(value);
   }
-  llvm::Value* get_oop_tmp()
-  {
+  llvm::Value* get_oop_tmp() {
     llvm::Value* value = current_state()->oop_tmp();
     assert(value, "oop_tmp gets and sets must match");
     current_state()->set_oop_tmp(NULL);
@@ -219,12 +193,10 @@
 
   // Monitors
  private:
-  int num_monitors()
-  {
+  int num_monitors() {
     return current_state()->num_monitors();
   }
-  int set_num_monitors(int num_monitors)
-  {
+  int set_num_monitors(int num_monitors) {
     current_state()->set_num_monitors(num_monitors);
   }
 
@@ -248,20 +220,17 @@
                               llvm::BasicBlock* continue_block);
   // Exceptions
  private:
-  llvm::Value* pending_exception_address() const
-  {
+  llvm::Value* pending_exception_address() const {
     return builder()->CreateAddressOfStructEntry(
       thread(), Thread::pending_exception_offset(),
       llvm::PointerType::getUnqual(SharkType::oop_type()),
       "pending_exception_addr");
   }
-  llvm::LoadInst* get_pending_exception() const
-  {
+  llvm::LoadInst* get_pending_exception() const {
     return builder()->CreateLoad(
       pending_exception_address(), "pending_exception");
   }
-  void clear_pending_exception() const
-  {
+  void clear_pending_exception() const {
     builder()->CreateStore(LLVMValue::null(), pending_exception_address());
   }
  public:
@@ -284,8 +253,7 @@
   llvm::CallInst* call_vm(llvm::Value*  callee,
                           llvm::Value** args_start,
                           llvm::Value** args_end,
-                          int           exception_action)
-  {
+                          int           exception_action) {
     decache_for_VM_call();
     stack()->CreateSetLastJavaFrame();
     llvm::CallInst *res = builder()->CreateCall(callee, args_start, args_end);
@@ -300,23 +268,20 @@
 
  public:
   llvm::CallInst* call_vm(llvm::Value* callee,
-                          int          exception_action)
-  {
+                          int          exception_action) {
     llvm::Value *args[] = {thread()};
     return call_vm(callee, args, args + 1, exception_action);
   }
   llvm::CallInst* call_vm(llvm::Value* callee,
                           llvm::Value* arg1,
-                          int          exception_action)
-  {
+                          int          exception_action) {
     llvm::Value *args[] = {thread(), arg1};
     return call_vm(callee, args, args + 2, exception_action);
   }
   llvm::CallInst* call_vm(llvm::Value* callee,
                           llvm::Value* arg1,
                           llvm::Value* arg2,
-                          int          exception_action)
-  {
+                          int          exception_action) {
     llvm::Value *args[] = {thread(), arg1, arg2};
     return call_vm(callee, args, args + 3, exception_action);
   }
@@ -324,16 +289,14 @@
                           llvm::Value* arg1,
                           llvm::Value* arg2,
                           llvm::Value* arg3,
-                          int          exception_action)
-  {
+                          int          exception_action) {
     llvm::Value *args[] = {thread(), arg1, arg2, arg3};
     return call_vm(callee, args, args + 4, exception_action);
   }
 
   // VM call oop return handling
  private:
-  llvm::LoadInst* get_vm_result() const
-  {
+  llvm::LoadInst* get_vm_result() const {
     llvm::Value *addr = builder()->CreateAddressOfStructEntry(
       thread(), JavaThread::vm_result_offset(),
       llvm::PointerType::getUnqual(SharkType::oop_type()),
--- a/ports/hotspot/src/share/vm/shark/sharkType.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkType.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -25,113 +25,88 @@
 
 class SharkType : public AllStatic {
  private:
-  static SharkContext& context()
-  {
+  static SharkContext& context() {
     return SharkContext::current();
   }
 
   // Basic types
  public:
-  static const llvm::Type* void_type()
-  {
+  static const llvm::Type* void_type() {
     return context().void_type();
   }
-  static const llvm::IntegerType* bit_type()
-  {
+  static const llvm::IntegerType* bit_type() {
     return context().bit_type();
   }
-  static const llvm::IntegerType* jbyte_type()
-  {
+  static const llvm::IntegerType* jbyte_type() {
     return context().jbyte_type();
   }
-  static const llvm::IntegerType* jshort_type()
-  {
+  static const llvm::IntegerType* jshort_type() {
     return context().jshort_type();
   }
-  static const llvm::IntegerType* jint_type()
-  {
+  static const llvm::IntegerType* jint_type() {
     return context().jint_type();
   }
-  static const llvm::IntegerType* jlong_type()
-  {
+  static const llvm::IntegerType* jlong_type() {
     return context().jlong_type();
   }
-  static const llvm::Type* jfloat_type()
-  {
+  static const llvm::Type* jfloat_type() {
     return context().jfloat_type();
   }
-  static const llvm::Type* jdouble_type()
-  {
+  static const llvm::Type* jdouble_type() {
     return context().jdouble_type();
   }
-  static const llvm::IntegerType* intptr_type()
-  {
+  static const llvm::IntegerType* intptr_type() {
     return context().intptr_type();
   }
 
   // Compound types
  public:
-  static const llvm::PointerType* itableOffsetEntry_type()
-  {
+  static const llvm::PointerType* itableOffsetEntry_type() {
     return context().itableOffsetEntry_type();
   }
-  static const llvm::PointerType* jniEnv_type()
-  {
+  static const llvm::PointerType* jniEnv_type() {
     return context().jniEnv_type();
   }
-  static const llvm::PointerType* jniHandleBlock_type()
-  {
+  static const llvm::PointerType* jniHandleBlock_type() {
     return context().jniHandleBlock_type();
   }
-  static const llvm::PointerType* klass_type()
-  {
+  static const llvm::PointerType* klass_type() {
     return context().klass_type();
   }
-  static const llvm::PointerType* methodOop_type()
-  {
+  static const llvm::PointerType* methodOop_type() {
     return context().methodOop_type();
   }
-  static const llvm::ArrayType* monitor_type()
-  {
+  static const llvm::ArrayType* monitor_type() {
     return context().monitor_type();
   }
-  static const llvm::PointerType* oop_type()
-  {
+  static const llvm::PointerType* oop_type() {
     return context().oop_type();
   }
-  static const llvm::PointerType* thread_type()
-  {
+  static const llvm::PointerType* thread_type() {
     return context().thread_type();
   }
-  static const llvm::PointerType* zeroStack_type()
-  {
+  static const llvm::PointerType* zeroStack_type() {
     return context().zeroStack_type();
   }
-  static const llvm::FunctionType* entry_point_type()
-  {
+  static const llvm::FunctionType* entry_point_type() {
     return context().entry_point_type();
   }
-  static const llvm::FunctionType* osr_entry_point_type()
-  {
+  static const llvm::FunctionType* osr_entry_point_type() {
     return context().osr_entry_point_type();
   }
 
   // Mappings
  public:
-  static const llvm::Type* to_stackType(BasicType type)
-  {
+  static const llvm::Type* to_stackType(BasicType type) {
     return context().to_stackType(type);
   }
-  static const llvm::Type* to_stackType(ciType* type)
-  {
+  static const llvm::Type* to_stackType(ciType* type) {
     return to_stackType(type->basic_type());
   }
-  static const llvm::Type* to_arrayType(BasicType type)
-  {
+  static const llvm::Type* to_arrayType(BasicType type) {
     return context().to_arrayType(type);
   }
-  static const llvm::Type* to_arrayType(ciType* type)
-  {
+  static const llvm::Type* to_arrayType(ciType* type) {
     return to_arrayType(type->basic_type());
   }
 };
--- a/ports/hotspot/src/share/vm/shark/sharkValue.cpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkValue.cpp	Thu Feb 25 18:50:04 2010 +0000
@@ -30,242 +30,192 @@
 
 // Cloning
 
-SharkValue* SharkNormalValue::clone() const
-{
+SharkValue* SharkNormalValue::clone() const {
   return SharkValue::create_generic(type(), generic_value(), zero_checked());
 }
-SharkValue* SharkPHIValue::clone() const
-{
+SharkValue* SharkPHIValue::clone() const {
   return SharkValue::create_phi(type(), (PHINode *) generic_value(), this);
 }
-SharkValue* SharkAddressValue::clone() const
-{
+SharkValue* SharkAddressValue::clone() const {
   return SharkValue::address_constant(address_value());
 }
 
 // Casting
 
-bool SharkValue::is_phi() const
-{
+bool SharkValue::is_phi() const {
   return false;
 }
-bool SharkPHIValue::is_phi() const
-{
+bool SharkPHIValue::is_phi() const {
   return true;
 }
-SharkPHIValue* SharkValue::as_phi()
-{
+SharkPHIValue* SharkValue::as_phi() {
   ShouldNotCallThis();
 }
-SharkPHIValue* SharkPHIValue::as_phi()
-{
+SharkPHIValue* SharkPHIValue::as_phi() {
   return this;
 }
 
 // Comparison
 
-bool SharkNormalValue::equal_to(SharkValue *other) const
-{
+bool SharkNormalValue::equal_to(SharkValue *other) const {
   return (this->type()          == other->type() &&
           this->generic_value() == other->generic_value() &&
           this->zero_checked()  == other->zero_checked());
 }
-bool SharkAddressValue::equal_to(SharkValue *other) const
-{
+bool SharkAddressValue::equal_to(SharkValue *other) const {
   return (this->address_value() == other->address_value());
 }
 
 // Type access
 
-ciType* SharkValue::type() const
-{
+ciType* SharkValue::type() const {
   ShouldNotCallThis();
 }
-ciType* SharkNormalValue::type() const
-{
+ciType* SharkNormalValue::type() const {
   return _type;
 }
 
-BasicType SharkNormalValue::basic_type() const
-{
+BasicType SharkNormalValue::basic_type() const {
   return type()->basic_type();
 }
-BasicType SharkAddressValue::basic_type() const
-{
+BasicType SharkAddressValue::basic_type() const {
   return T_ADDRESS;
 }
 
-int SharkNormalValue::size() const
-{
+int SharkNormalValue::size() const {
   return type()->size();
 }
-int SharkAddressValue::size() const
-{
+int SharkAddressValue::size() const {
   return 1;
 }
 
-bool SharkValue::is_jint() const
-{
+bool SharkValue::is_jint() const {
   return false;
 }
-bool SharkValue::is_jlong() const
-{
+bool SharkValue::is_jlong() const {
   return false;
 }
-bool SharkValue::is_jfloat() const
-{
+bool SharkValue::is_jfloat() const {
   return false;
 }
-bool SharkValue::is_jdouble() const
-{
+bool SharkValue::is_jdouble() const {
   return false;
 }
-bool SharkValue::is_jobject() const
-{
+bool SharkValue::is_jobject() const {
   return false;
 }
-bool SharkValue::is_jarray() const
-{
+bool SharkValue::is_jarray() const {
   return false;
 }
-bool SharkValue::is_address() const
-{
+bool SharkValue::is_address() const {
   return false;
 }
 
-bool SharkNormalValue::is_jint() const
-{
+bool SharkNormalValue::is_jint() const {
   return llvm_value()->getType() == SharkType::jint_type();
 }
-bool SharkNormalValue::is_jlong() const
-{
+bool SharkNormalValue::is_jlong() const {
   return llvm_value()->getType() == SharkType::jlong_type();
 }
-bool SharkNormalValue::is_jfloat() const
-{
+bool SharkNormalValue::is_jfloat() const {
   return llvm_value()->getType() == SharkType::jfloat_type();
 }
-bool SharkNormalValue::is_jdouble() const
-{
+bool SharkNormalValue::is_jdouble() const {
   return llvm_value()->getType() == SharkType::jdouble_type();
 }
-bool SharkNormalValue::is_jobject() const
-{
+bool SharkNormalValue::is_jobject() const {
   return llvm_value()->getType() == SharkType::oop_type();
 }
-bool SharkNormalValue::is_jarray() const
-{
+bool SharkNormalValue::is_jarray() const {
   return basic_type() == T_ARRAY;
 }
-bool SharkAddressValue::is_address() const
-{
+bool SharkAddressValue::is_address() const {
   return true;
 }
 
 // Typed conversions from SharkValues
 
-Value* SharkValue::jint_value() const
-{
+Value* SharkValue::jint_value() const {
   ShouldNotCallThis();
 }
-Value* SharkValue::jlong_value() const
-{
+Value* SharkValue::jlong_value() const {
   ShouldNotCallThis();
 }
-Value* SharkValue::jfloat_value() const
-{
+Value* SharkValue::jfloat_value() const {
   ShouldNotCallThis();
 }
-Value* SharkValue::jdouble_value() const
-{
+Value* SharkValue::jdouble_value() const {
   ShouldNotCallThis();
 }
-Value* SharkValue::jobject_value() const
-{
+Value* SharkValue::jobject_value() const {
   ShouldNotCallThis();
 }
-Value* SharkValue::jarray_value() const
-{
+Value* SharkValue::jarray_value() const {
   ShouldNotCallThis();
 }
-int SharkValue::address_value() const
-{
+int SharkValue::address_value() const {
   ShouldNotCallThis();
 }
 
-Value* SharkNormalValue::jint_value() const
-{
+Value* SharkNormalValue::jint_value() const {
   assert(is_jint(), "should be");
   return llvm_value();
 }
-Value* SharkNormalValue::jlong_value() const
-{
+Value* SharkNormalValue::jlong_value() const {
   assert(is_jlong(), "should be");
   return llvm_value();
 }
-Value* SharkNormalValue::jfloat_value() const
-{
+Value* SharkNormalValue::jfloat_value() const {
   assert(is_jfloat(), "should be");
   return llvm_value();
 }
-Value* SharkNormalValue::jdouble_value() const
-{
+Value* SharkNormalValue::jdouble_value() const {
   assert(is_jdouble(), "should be");
   return llvm_value();
 }
-Value* SharkNormalValue::jobject_value() const
-{
+Value* SharkNormalValue::jobject_value() const {
   assert(is_jobject(), "should be");
   return llvm_value();
 }
-Value* SharkNormalValue::jarray_value() const
-{
+Value* SharkNormalValue::jarray_value() const {
   // XXX assert(is_jarray(), "should be");
   // XXX http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=324
   assert(is_jobject(), "should be");
   return llvm_value();
 }
-int SharkAddressValue::address_value() const
-{
+int SharkAddressValue::address_value() const {
   return _bci;
 }
 
 // Type-losing conversions -- use with care!
 
-Value* SharkNormalValue::generic_value() const
-{
+Value* SharkNormalValue::generic_value() const {
   return llvm_value();
 }
-Value* SharkAddressValue::generic_value() const
-{
+Value* SharkAddressValue::generic_value() const {
   return LLVMValue::intptr_constant(address_value());
 }
 
-Value* SharkValue::intptr_value(SharkBuilder* builder) const
-{
+Value* SharkValue::intptr_value(SharkBuilder* builder) const {
   ShouldNotCallThis();
 }
-Value* SharkNormalValue::intptr_value(SharkBuilder* builder) const
-{
+Value* SharkNormalValue::intptr_value(SharkBuilder* builder) const {
   return builder->CreatePtrToInt(jobject_value(), SharkType::intptr_type());
 }
 
 // Phi-style stuff for SharkPHIState::add_incoming
 
-void SharkValue::addIncoming(SharkValue *value, BasicBlock* block)
-{
+void SharkValue::addIncoming(SharkValue *value, BasicBlock* block) {
   ShouldNotCallThis();
 }
-void SharkPHIValue::addIncoming(SharkValue *value, BasicBlock* block)
-{
+void SharkPHIValue::addIncoming(SharkValue *value, BasicBlock* block) {
   assert(!is_clone(), "shouldn't be");
   ((llvm::PHINode *) generic_value())->addIncoming(
       value->generic_value(), block);
   if (!value->zero_checked())
     _all_incomers_zero_checked = false;
 }
-void SharkAddressValue::addIncoming(SharkValue *value, BasicBlock* block)
-{
+void SharkAddressValue::addIncoming(SharkValue *value, BasicBlock* block) {
   assert(this->equal_to(value), "should be");
 }
 
@@ -275,8 +225,7 @@
                                     SharkValue*   other,
                                     BasicBlock*   other_block,
                                     BasicBlock*   this_block,
-                                    const char*   name)
-{
+                                    const char*   name) {
   assert(type() == other->type(), "should be");
   assert(zero_checked() == other->zero_checked(), "should be");
 
@@ -289,28 +238,23 @@
                                      SharkValue*   other,
                                      BasicBlock*   other_block,
                                      BasicBlock*   this_block,
-                                     const char*   name)
-{
+                                     const char*   name) {
   assert(this->equal_to(other), "should be");
   return this;
 }
 
 // Repeated null and divide-by-zero check removal
 
-bool SharkValue::zero_checked() const
-{
+bool SharkValue::zero_checked() const {
   ShouldNotCallThis();
 }
-void SharkValue::set_zero_checked(bool zero_checked) 
-{
+void SharkValue::set_zero_checked(bool zero_checked) {
   ShouldNotCallThis();
 }
 
-bool SharkNormalValue::zero_checked() const
-{
+bool SharkNormalValue::zero_checked() const {
   return _zero_checked;
 }
-void SharkNormalValue::set_zero_checked(bool zero_checked)
-{
+void SharkNormalValue::set_zero_checked(bool zero_checked) {
   _zero_checked = zero_checked;
 }
--- a/ports/hotspot/src/share/vm/shark/sharkValue.hpp	Thu Feb 25 18:48:18 2010 +0000
+++ b/ports/hotspot/src/share/vm/shark/sharkValue.hpp	Thu Feb 25 18:50:04 2010 +0000
@@ -25,7 +25,7 @@
 
 // Items on the stack and in local variables are tracked using
 // SharkValue objects.
-// 
+//
 // All SharkValues are one of two core types, SharkNormalValue
 // and SharkAddressValue, but no code outside this file should
 // ever refer to those directly.  The split is because of the
@@ -34,7 +34,7 @@
 // popped by ret only exist at compile time.  Having separate
 // classes for these allows us to check that our jsr handling
 // is correct, via assertions.
-// 
+//
 // There is one more type, SharkPHIValue, which is a subclass
 // of SharkNormalValue with a couple of extra methods.  Use of
 // SharkPHIValue outside of this file is acceptable, so long
@@ -75,12 +75,10 @@
 
   virtual int size() const = 0;
 
-  bool is_one_word() const
-  {
+  bool is_one_word() const {
     return size() == 1;
   }
-  bool is_two_word() const
-  {
+  bool is_two_word() const {
     return size() == 2;
   }
 
@@ -96,52 +94,42 @@
 
   // Typed conversion to SharkValues
  public:
-  static SharkValue* create_jint(llvm::Value* value, bool zero_checked)
-  {
+  static SharkValue* create_jint(llvm::Value* value, bool zero_checked) {
     assert(value->getType() == SharkType::jint_type(), "should be");
     return create_generic(ciType::make(T_INT), value, zero_checked);
   }
-  static SharkValue* create_jlong(llvm::Value* value, bool zero_checked)
-  {
+  static SharkValue* create_jlong(llvm::Value* value, bool zero_checked) {
     assert(value->getType() == SharkType::jlong_type(), "should be");
     return create_generic(ciType::make(T_LONG), value, zero_checked);
   }
-  static SharkValue* create_jfloat(llvm::Value* value)
-  {
+  static SharkValue* create_jfloat(llvm::Value* value) {
     assert(value->getType() == SharkType::jfloat_type(), "should be");
     return create_generic(ciType::make(T_FLOAT), value, false);
   }
-  static SharkValue* create_jdouble(llvm::Value* value)
-  {
+  static SharkValue* create_jdouble(llvm::Value* value) {
     assert(value->getType() == SharkType::jdouble_type(), "should be");
     return create_generic(ciType::make(T_DOUBLE), value, false);
   }
-  static SharkValue* create_jobject(llvm::Value* value, bool zero_checked)
-  {
+  static SharkValue* create_jobject(llvm::Value* value, bool zero_checked) {
     assert(value->getType() == SharkType::oop_type(), "should be");
     return create_generic(ciType::make(T_OBJECT), value, zero_checked);
   }
 
   // Typed conversion from constants of various types
  public:
-  static SharkValue* jint_constant(jint value)
-  {
+  static SharkValue* jint_constant(jint value) {
     return create_jint(LLVMValue::jint_constant(value), value != 0);
   }
-  static SharkValue* jlong_constant(jlong value)
-  {
+  static SharkValue* jlong_constant(jlong value) {
     return create_jlong(LLVMValue::jlong_constant(value), value != 0);
   }
-  static SharkValue* jfloat_constant(jfloat value)
-  {
+  static SharkValue* jfloat_constant(jfloat value) {
     return create_jfloat(LLVMValue::jfloat_constant(value));
   }
-  static SharkValue* jdouble_constant(jdouble value)
-  {
+  static SharkValue* jdouble_constant(jdouble value) {
     return create_jdouble(LLVMValue::jdouble_constant(value));
   }
-  static SharkValue* null()
-  {
+  static SharkValue* null() {
     return create_jobject(LLVMValue::null(), false);
   }
   static inline SharkValue* address_constant(int bci);
@@ -175,7 +163,7 @@
 
 class SharkNormalValue : public SharkValue {
   friend class SharkValue;
-  
+
  protected:
   SharkNormalValue(ciType* type, llvm::Value* value, bool zero_checked)
     : _type(type), _llvm_value(value), _zero_checked(zero_checked) {}
@@ -186,8 +174,7 @@
   bool         _zero_checked;
 
  private:
-  llvm::Value* llvm_value() const
-  {
+  llvm::Value* llvm_value() const {
     return _llvm_value;
   }
 
@@ -255,18 +242,15 @@
   bool                 _all_incomers_zero_checked;
 
  private:
-  const SharkPHIValue* parent() const
-  {
+  const SharkPHIValue* parent() const {
     return _parent;
   }
-  bool is_clone() const
-  {
+  bool is_clone() const {
     return parent() != NULL;
   }
 
  public:
-  bool all_incomers_zero_checked() const
-  {
+  bool all_incomers_zero_checked() const {
     if (is_clone())
       return parent()->all_incomers_zero_checked();
 
@@ -306,7 +290,7 @@
   bool equal_to(SharkValue* other) const;
 
   // Type access
- public:  
+ public:
   BasicType basic_type() const;
   int       size()       const;
   bool      is_address() const;
@@ -333,19 +317,16 @@
 
 inline SharkValue* SharkValue::create_generic(ciType*      type,
                                               llvm::Value* value,
-                                              bool         zero_checked)
-{
+                                              bool         zero_checked) {
   return new SharkNormalValue(type, value, zero_checked);
 }
 
 inline SharkValue* SharkValue::create_phi(ciType*              type,
                                           llvm::PHINode*       phi,
-                                          const SharkPHIValue* parent)
-{
+                                          const SharkPHIValue* parent) {
   return new SharkPHIValue(type, phi, parent);
 }
 
-inline SharkValue* SharkValue::address_constant(int bci)
-{
+inline SharkValue* SharkValue::address_constant(int bci) {
   return new SharkAddressValue(bci);
 }
--- a/pulseaudio/AUTHORS	Thu Feb 25 18:48:18 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5 +0,0 @@
-Authors
-
-Ioana Iivan (iivan@redhat.com)
-
-Omair Majid (omajid@redhat.com)
\ No newline at end of file
--- a/pulseaudio/src/native/org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c	Thu Feb 25 18:48:18 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/* org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.c
- Copyright (C) 2008 Red Hat, Inc.
-
- This file is part of IcedTea.
-
- IcedTea is free software; you can redistribute it and/or
- modify it under the terms of the GNU General Public License as published by
- the Free Software Foundation, version 2.
-
- IcedTea is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with IcedTea; see the file COPYING.  If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- 02110-1301 USA.
-
- Linking this library statically or dynamically with other modules is
- making a combined work based on this library.  Thus, the terms and
- conditions of the GNU General Public License cover the whole
- combination.
-
- As a special exception, the copyright holders of this library give you
- permission to link this library with independent modules to produce an
- executable, regardless of the license terms of these independent
- modules, and to copy and distribute the resulting executable under
- terms of your choice, provided that you also meet, for each linked
- independent module, the terms and conditions of the license of that
- module.  An independent module is a module which is not derived from
- or based on this library.  If you modify this library, you may extend
- this exception to your version of the library, but you are not
- obligated to do so.  If you do not wish to do so, delete this
- exception statement from your version.
- */
-
-#include <jni.h>
-#include <pulse/pulseaudio.h>
-
-#include "jni-common.h"
-#include "org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl.h"
-
-
-extern JNIEnv* pulse_thread_env;
-
-static void set_sink_input_volume_callback(pa_context* context, int success,
-		void* userdata) {
-
-	JNIEnv* env = pulse_thread_env;
-
-	notifyWaitingOperations(env);
-
-}
-
-JNIEXPORT jint JNICALL Java_org_classpath_icedtea_pulseaudio_PulseAudioStreamVolumeControl_native_1setValue
-(JNIEnv *env, jobject obj, jfloat new_volume) {
-	//	printf("IN NATIVE SET VOLUME\n");
-	pa_stream *stream = getJavaPointer(env, obj, "streamPointer");
-	//	printf("STREAM POINTER %d", (int) stream);
-	pa_context *context = pa_stream_get_context(stream);
-	int stream_id = pa_stream_get_index(stream);
-	int channels = pa_stream_get_sample_spec(stream)->channels;
-	pa_cvolume cv;
-	return (jint) pa_context_set_sink_input_volume(context, stream_id, pa_cvolume_set(&cv, channels, new_volume), set_sink_input_volume_callback, NULL);
-}
-
--- a/rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java	Thu Feb 25 18:48:18 2010 +0000
+++ b/rt/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java	Thu Feb 25 18:50:04 2010 +0000
@@ -27,6 +27,7 @@
 import java.security.AccessController;
 import java.security.Permission;
 import java.security.PrivilegedAction;
+import java.util.PropertyPermission;
 
 import javax.swing.JWindow;
 
@@ -288,7 +289,7 @@
 				//Change this SocketPermission's action to connect and accept
 				//(and resolve). This is to avoid asking for connect permission 
 				//on every address resolve.
-				Permission tmpPerm;
+				Permission tmpPerm = null;
 				if (perm instanceof SocketPermission) {
 					tmpPerm = new SocketPermission(perm.getName(), 
 							SecurityConstants.SOCKET_CONNECT_ACCEPT_ACTION);
@@ -332,16 +333,81 @@
 						}
 					}
 
-				} else
-					tmpPerm = perm;
-				
-				//askPermission will only prompt the user on SocketPermission 
-				//meaning we're denying all other SecurityExceptions that may arise.
-				if (askPermission(tmpPerm)) {
-					addPermission(tmpPerm);
-					//return quietly.
+				} else if (perm instanceof PropertyPermission) {
+
+				    if (JNLPRuntime.isDebug())
+				        System.err.println("Requesting property: " + perm.toString());
+
+				    // We go by the rules here:
+				    // http://java.sun.com/docs/books/tutorial/deployment/doingMoreWithRIA/properties.html
+
+				    // Since this is security sensitive, take a conservative approach:
+				    // Allow only what is specifically allowed, and deny everything else
+
+				    // First, allow what everyone is allowed to read
+				    if (perm.getActions().equals("read")) {
+				        if (    perm.getName().equals("java.class.version") ||
+				                perm.getName().equals("java.vendor") ||
+				                perm.getName().equals("java.vendor.url")  ||
+				                perm.getName().equals("java.version") ||
+				                perm.getName().equals("os.name") ||
+				                perm.getName().equals("os.arch") ||
+				                perm.getName().equals("os.version") ||
+				                perm.getName().equals("file.separator") ||
+				                perm.getName().equals("path.separator") ||
+				                perm.getName().equals("line.separator") ||
+				                perm.getName().startsWith("javaplugin.")
+				            ) {
+				            return;
+				        }
+				    }
+
+				    // Next, allow what only JNLP apps can do
+				    if (getApplication().getJNLPFile().isApplication()) {
+				        if (    perm.getName().equals("awt.useSystemAAFontSettings") ||
+				                perm.getName().equals("http.agent") ||
+				                perm.getName().equals("http.keepAlive") ||
+				                perm.getName().equals("java.awt.syncLWRequests") ||
+				                perm.getName().equals("java.awt.Window.locationByPlatform") ||
+				                perm.getName().equals("javaws.cfg.jauthenticator") ||
+				                perm.getName().equals("javax.swing.defaultlf") ||
+				                perm.getName().equals("sun.awt.noerasebackground") ||
+				                perm.getName().equals("sun.awt.erasebackgroundonresize") ||
+				                perm.getName().equals("sun.java2d.d3d") ||
+				                perm.getName().equals("sun.java2d.dpiaware") ||
+				                perm.getName().equals("sun.java2d.noddraw") ||
+				                perm.getName().equals("sun.java2d.opengl") ||
+				                perm.getName().equals("swing.boldMetal") ||
+				                perm.getName().equals("swing.metalTheme") ||
+				                perm.getName().equals("swing.noxp") ||
+				                perm.getName().equals("swing.useSystemFontSettings")
+				        ) {
+				            return; // JNLP apps can read and write to these
+				        }
+				    }
+
+				    // Next, allow access to customizable properties 
+				    if (perm.getName().startsWith("jnlp.") || 
+				        perm.getName().startsWith("javaws.")) {
+				        return;
+				    }
+
+				    // Everything else is denied
+				    throw se;
+
 				} else {
-					throw se;
+				    tmpPerm = perm;
+				}
+
+				if (tmpPerm != null) {
+				    //askPermission will only prompt the user on SocketPermission 
+				    //meaning we're denying all other SecurityExceptions that may arise.
+				    if (askPermission(tmpPerm)) {
+				        addPermission(tmpPerm);
+				        //return quietly.
+				    } else {
+				        throw se;
+				    }
 				}
 			}
         }
@@ -352,7 +418,7 @@
             throw ex;
         }
     }
-    
+
     /**
      * Asks the user whether or not to grant permission.
      * @param perm the permission to be granted
--- a/tools-copy/tools-corba-copy-files.txt	Thu Feb 25 18:48:18 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6 +0,0 @@
-sun/rmi/rmic/iiop/
-com/sun/tools/corba/se/idl/som/
-com/sun/tools/corba/se/idl/som/idlemit/
-com/sun/tools/corba/se/idl/som/cff/
-com/sun/tools/corba/se/idl/toJavaPortable/
-com/sun/tools/corba/se/idl/constExpr/
--- a/tools-copy/tools-jaxws-copy-files.txt	Thu Feb 25 18:48:18 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,101 +0,0 @@
-com/sun/tools/internal/xjc/
-com/sun/tools/internal/xjc/generator/
-com/sun/tools/internal/xjc/generator/bean/
-com/sun/tools/internal/xjc/generator/bean/field/
-com/sun/tools/internal/xjc/generator/util/
-com/sun/tools/internal/xjc/generator/annotation/
-com/sun/tools/internal/xjc/generator/annotation/ri/
-com/sun/tools/internal/xjc/generator/annotation/spec/
-com/sun/tools/internal/xjc/addon/
-com/sun/tools/internal/xjc/addon/at_generated/
-com/sun/tools/internal/xjc/addon/code_injector/
-com/sun/tools/internal/xjc/addon/locator/
-com/sun/tools/internal/xjc/addon/sync/
-com/sun/tools/internal/xjc/reader/
-com/sun/tools/internal/xjc/reader/gbind/
-com/sun/tools/internal/xjc/reader/xmlschema/
-com/sun/tools/internal/xjc/reader/xmlschema/bindinfo/
-com/sun/tools/internal/xjc/reader/xmlschema/parser/
-com/sun/tools/internal/xjc/reader/xmlschema/ct/
-com/sun/tools/internal/xjc/reader/internalizer/
-com/sun/tools/internal/xjc/reader/relaxng/
-com/sun/tools/internal/xjc/reader/dtd/
-com/sun/tools/internal/xjc/reader/dtd/bindinfo/
-com/sun/tools/internal/xjc/runtime/
-com/sun/tools/internal/xjc/util/
-com/sun/tools/internal/xjc/outline/
-com/sun/tools/internal/xjc/api/
-com/sun/tools/internal/xjc/api/impl/
-com/sun/tools/internal/xjc/api/impl/s2j/
-com/sun/tools/internal/xjc/api/impl/j2s/
-com/sun/tools/internal/xjc/api/util/
-com/sun/tools/internal/xjc/model/
-com/sun/tools/internal/xjc/model/nav/
-com/sun/tools/internal/xjc/writer/
-com/sun/tools/internal/ws/
-com/sun/tools/internal/ws/spi/
-com/sun/tools/internal/ws/resources/
-com/sun/tools/internal/ws/wscompile/
-com/sun/tools/internal/ws/util/
-com/sun/tools/internal/ws/util/xml/
-com/sun/tools/internal/ws/wsdl/
-com/sun/tools/internal/ws/wsdl/document/
-com/sun/tools/internal/ws/wsdl/document/schema/
-com/sun/tools/internal/ws/wsdl/document/mime/
-com/sun/tools/internal/ws/wsdl/document/http/
-com/sun/tools/internal/ws/wsdl/document/soap/
-com/sun/tools/internal/ws/wsdl/document/jaxws/
-com/sun/tools/internal/ws/wsdl/parser/
-com/sun/tools/internal/ws/wsdl/framework/
-com/sun/tools/internal/ws/processor/
-com/sun/tools/internal/ws/processor/generator/
-com/sun/tools/internal/ws/processor/modeler/
-com/sun/tools/internal/ws/processor/modeler/wsdl/
-com/sun/tools/internal/ws/processor/modeler/annotation/
-com/sun/tools/internal/ws/processor/util/
-com/sun/tools/internal/ws/processor/model/
-com/sun/tools/internal/ws/processor/model/jaxb/
-com/sun/tools/internal/ws/processor/model/java/
-com/sun/tools/internal/ws/processor/model/exporter/
-com/sun/istack/internal/tools/
-com/sun/istack/internal/ws/
-com/sun/codemodel/
-com/sun/codemodel/internal/
-com/sun/codemodel/internal/fmt/
-com/sun/codemodel/internal/util/
-com/sun/codemodel/internal/writer/
-com/sun/tools/internal/jxc/
-com/sun/tools/internal/jxc/apt/
-com/sun/tools/internal/jxc/gen/
-com/sun/tools/internal/jxc/gen/config/
-com/sun/tools/internal/jxc/model/
-com/sun/tools/internal/jxc/model/nav/
-com/sun/xml/internal/rngom/
-com/sun/xml/internal/rngom/nc/
-com/sun/xml/internal/rngom/parse/
-com/sun/xml/internal/rngom/parse/compact/
-com/sun/xml/internal/rngom/parse/xml/
-com/sun/xml/internal/rngom/parse/host/
-com/sun/xml/internal/rngom/ast/
-com/sun/xml/internal/rngom/ast/om/
-com/sun/xml/internal/rngom/ast/util/
-com/sun/xml/internal/rngom/ast/builder/
-com/sun/xml/internal/rngom/xml/
-com/sun/xml/internal/rngom/xml/sax/
-com/sun/xml/internal/rngom/xml/util/
-com/sun/xml/internal/rngom/dt/
-com/sun/xml/internal/rngom/dt/builtin/
-com/sun/xml/internal/rngom/digested/
-com/sun/xml/internal/rngom/util/
-com/sun/xml/internal/rngom/binary/
-com/sun/xml/internal/rngom/binary/visitor/
-com/sun/xml/internal/xsom/
-com/sun/xml/internal/xsom/impl/
-com/sun/xml/internal/xsom/impl/parser/
-com/sun/xml/internal/xsom/impl/parser/state/
-com/sun/xml/internal/xsom/impl/util/
-com/sun/xml/internal/xsom/visitor/
-com/sun/xml/internal/xsom/parser/
-com/sun/xml/internal/xsom/util/
-com/sun/xml/internal/dtdparser/
-com/sun/xml/internal/dtdparser/resources/
--- a/tools-copy/tools-jdk-copy-files.txt	Thu Feb 25 18:48:18 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-com/sun/jarsigner/
-com/sun/jdi/
-com/sun/jdi/connect/
-com/sun/jdi/request/
-com/sun/tools/attach/
-com/sun/tools/example/debug/expr/
-com/sun/tools/example/debug/tty/
-com/sun/tools/extcheck/
-com/sun/tools/script/shell/
-org/relaxng/datatype/
-org/relaxng/datatype/helpers/
-sun/applet/
-sun/applet/resources/
-sun/jvmstat/monitor/
-sun/jvmstat/monitor/remote/
-sun/jvmstat/perfdata/monitor/
-sun/jvmstat/perfdata/monitor/protocol/file/
-sun/jvmstat/perfdata/monitor/protocol/local/
-sun/jvmstat/perfdata/monitor/protocol/rmi/
-sun/jvmstat/perfdata/monitor/v1_0/
-sun/jvmstat/perfdata/monitor/v2_0/
-sun/rmi/rmic/
-sun/rmi/rmic/newrmic/
-sun/rmi/rmic/newrmic/jrmp/
-sun/tools/asm/
-sun/tools/attach/
-sun/tools/jar/
-sun/tools/java/
-sun/tools/javac/
-sun/tools/jinfo/
-sun/tools/jmap/
-sun/tools/jps/
-sun/tools/jstack/
-sun/tools/jstat/
-sun/tools/jstatd/
-sun/tools/native2ascii/
-sun/tools/serialver/
-sun/tools/tree/
-sun/tools/util/
--- a/tools-copy/tools-langtools-copy-files.txt	Thu Feb 25 18:48:18 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-sun/tools/javap/
-com/sun/javadoc/
-com/sun/tools/javadoc/
-com/sun/tools/javadoc/resources/
-com/sun/mirror/
-com/sun/mirror/declaration/
-com/sun/mirror/apt/
-com/sun/mirror/util/
-com/sun/mirror/type/
-com/sun/source/
-com/sun/source/util/
-com/sun/source/tree/
-com/sun/tools/doclets/
-com/sun/tools/doclets/formats/
-com/sun/tools/doclets/formats/html/
-com/sun/tools/doclets/formats/html/resources/
-com/sun/tools/doclets/formats/html/markup/
-com/sun/tools/doclets/standard/
-com/sun/tools/doclets/internal/
-com/sun/tools/doclets/internal/toolkit/
-com/sun/tools/doclets/internal/toolkit/resources/
-com/sun/tools/doclets/internal/toolkit/taglets/
-com/sun/tools/doclets/internal/toolkit/util/
-com/sun/tools/doclets/internal/toolkit/util/links/
-com/sun/tools/doclets/internal/toolkit/builders/
-com/sun/tools/javac/
-com/sun/tools/javac/zip/
-com/sun/tools/javac/sym/
-com/sun/tools/javac/comp/
-com/sun/tools/javac/resources/
-com/sun/tools/javac/jvm/
-com/sun/tools/javac/processing/
-com/sun/tools/javac/parser/
-com/sun/tools/javac/util/
-com/sun/tools/javac/main/
-com/sun/tools/javac/api/
-com/sun/tools/javac/model/
-com/sun/tools/javac/code/
-com/sun/tools/javac/tree/
-com/sun/tools/apt/
-com/sun/tools/apt/comp/
-com/sun/tools/apt/resources/
-com/sun/tools/apt/mirror/
-com/sun/tools/apt/mirror/declaration/
-com/sun/tools/apt/mirror/apt/
-com/sun/tools/apt/mirror/util/
-com/sun/tools/apt/mirror/type/
-com/sun/tools/apt/util/
-com/sun/tools/apt/main/
-com/sun/tools/javah/
-com/sun/tools/javah/resources/