Skip to content

Instantly share code, notes, and snippets.

@vegard
Created April 27, 2012 12:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vegard/2508712 to your computer and use it in GitHub Desktop.
Save vegard/2508712 to your computer and use it in GitHub Desktop.
debug-0.txt is the output of -Xtrace:invoke for DEBUG=0 while debug-1.txt is the same for DEBUG=1
--- debug-0.txt 2012-04-27 14:11:32.000000000 +0200
+++ debug-1.txt 2012-04-27 14:12:19.000000000 +0200
@@ -44,0 +45,11 @@
+[main] trace invoke: java/lang/StringBuilder.<init>()V
+[main] trace invoke: java/lang/StringBuilder.<init>(I)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(F)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/Number.<clinit>()V
+[main] trace invoke: java/lang/Float.<clinit>()V
+[main] trace invoke: java/lang/Float.toString(F)Ljava/lang/String;
+[main] trace invoke: java/lang/VMFloat.<clinit>()V
@@ -1260 +1270,0 @@
-[main] trace invoke: java/lang/Number.<clinit>()V
@@ -1407,0 +1418,216 @@
+[main] trace invoke: java/lang/System.loadLibrary(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Runtime.getRuntime()Ljava/lang/Runtime;
+[main] trace invoke: gnu/classpath/VMStackWalker.getCallingClassLoader()Ljava/lang/ClassLoader;
+[main] trace invoke: java/lang/Runtime.loadLibrary(Ljava/lang/String;Ljava/lang/ClassLoader;)V
+[main] trace invoke: java/lang/String.valueOf(Ljava/lang/Object;)Ljava/lang/String;
+[main] trace invoke: java/lang/String.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/StringBuilder.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/Runtime.loadLib(Ljava/lang/String;Ljava/lang/ClassLoader;)I
+[main] trace invoke: java/lang/VMFloat.toString(F)Ljava/lang/String;
+[main] trace invoke: java/lang/VMDouble.<clinit>()V
+[main] trace invoke: java/lang/System.loadLibrary(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Runtime.getRuntime()Ljava/lang/Runtime;
+[main] trace invoke: gnu/classpath/VMStackWalker.getCallingClassLoader()Ljava/lang/ClassLoader;
+[main] trace invoke: java/lang/Runtime.loadLibrary(Ljava/lang/String;Ljava/lang/ClassLoader;)V
+[main] trace invoke: java/lang/String.valueOf(Ljava/lang/Object;)Ljava/lang/String;
+[main] trace invoke: java/lang/String.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/StringBuilder.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/Runtime.loadLib(Ljava/lang/String;Ljava/lang/ClassLoader;)I
+[main] trace invoke: java/lang/Double.<clinit>()V
+[main] trace invoke: java/lang/Double.isNaN(D)Z
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/IllegalArgumentException.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/RuntimeException.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Exception.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Throwable.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/Throwable.fillInStackTrace()Ljava/lang/Throwable;
+[main] trace exception: exception object 0x1f3f660 (java/lang/IllegalArgumentException) thrown
+[main] message : 0x228e988 = "Illegal Load: 1.02E-43" (java/lang/String)
+[main] from : 0x4112f976: Hashtable.<init>(IF)V
+[main] (Hashtable.java:21)
+[main] action : unwind to 0x4112c150: Hashtable.main([Ljava/lang/String;)V
+[main] (Hashtable.java:28)
+[main] trace exception: exception object 0x1f3f660 (java/lang/IllegalArgumentException) thrown
+[main] message : 0x228e988 = "Illegal Load: 1.02E-43" (java/lang/String)
+[main] from : 0x4112c14f: Hashtable.main([Ljava/lang/String;)V
+[main] (Hashtable.java:28)
+[main] action : unwind to native caller at 0x41f97f
+[main] trace invoke: java/lang/Thread.getName()Ljava/lang/String;
+[main] trace invoke: java/lang/VMThread.getName()Ljava/lang/String;
+[main] trace invoke: java/lang/Throwable.stackTraceString()Ljava/lang/String;
+[main] trace invoke: java/lang/StringBuilder.<init>()V
+[main] trace invoke: java/lang/StringBuilder.<init>(I)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/Throwable.getStackTrace()[Ljava/lang/StackTraceElement;
+[main] trace invoke: java/lang/StackTraceElement.<init>(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Z)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StackTraceElement.<init>(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Z)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/Throwable.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/Throwable.getLocalizedMessage()Ljava/lang/String;
+[main] trace invoke: java/lang/Throwable.getMessage()Ljava/lang/String;
+[main] trace invoke: java/lang/Object.getClass()Ljava/lang/Class;
+[main] trace invoke: java/lang/Class.getName()Ljava/lang/String;
+[main] trace invoke: java/lang/String.valueOf(Ljava/lang/Object;)Ljava/lang/String;
+[main] trace invoke: java/lang/String.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/StringBuilder.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.<init>(Ljava/lang/String;)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/Throwable.stackTraceStringBuffer(Ljava/lang/StringBuilder;Ljava/lang/String;[Ljava/lang/StackTraceElement;I)V
+[main] trace invoke: java/lang/Throwable$StaticData.<clinit>()V
+[main] trace invoke: gnu/classpath/SystemProperties.getProperty(Ljava/lang/String;)Ljava/lang/String;
+[main] trace invoke: java/util/Properties.getProperty(Ljava/lang/String;)Ljava/lang/String;
+[main] trace invoke: java/util/Hashtable.get(Ljava/lang/Object;)Ljava/lang/Object;
+[main] trace invoke: java/util/Hashtable.hash(Ljava/lang/Object;)I
+[main] trace invoke: java/lang/String.hashCode()I
+[main] trace invoke: java/lang/String.equals(Ljava/lang/Object;)Z
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StackTraceElement.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/StringBuilder.<init>()V
+[main] trace invoke: java/lang/StringBuilder.<init>(I)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/StringBuilder.append(I)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/String.valueOf(I)Ljava/lang/String;
+[main] trace invoke: java/lang/Integer.toString(II)Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StackTraceElement.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/StringBuilder.<init>()V
+[main] trace invoke: java/lang/StringBuilder.<init>(I)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/StringBuilder.append(I)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/String.valueOf(I)Ljava/lang/String;
+[main] trace invoke: java/lang/Integer.toString(II)Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(C)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/Throwable.getCause()Ljava/lang/Throwable;
+[main] trace invoke: java/lang/StringBuilder.toString()Ljava/lang/String;
+[main] trace invoke: java/lang/String.<init>(Ljava/lang/StringBuilder;)V
+[main] trace invoke: java/lang/String.<init>([CII)V
+[main] trace invoke: java/lang/String.<init>([CIIZ)V
+[main] trace invoke: java/lang/Object.<init>()V
+Exception in thread "main" java.lang.IllegalArgumentException: Illegal Load: 1.02E-43
+ at Hashtable.<init>(Hashtable.java:21)
+ at Hashtable.main(Hashtable.java:28)
@vegard
Copy link
Author

vegard commented Apr 27, 2012

--- debug-0.txt 2012-04-27 14:11:32.000000000 +0200
+++ debug-1.txt 2012-04-27 14:12:19.000000000 +0200
@@ -35,20 +35,31 @@
[main] trace invoke: java/lang/ThreadGroup.addThread(Ljava/lang/Thread;)V
[main] trace invoke: java/util/Vector.add(Ljava/lang/Object;)Z
[main] trace invoke: java/util/Vector.addElement(Ljava/lang/Object;)V
[main] trace invoke: java/lang/ThreadLocal.()V
[main] trace invoke: java/lang/Object.()V
[main] trace invoke: java/lang/InheritableThreadLocal.newChildThread(Ljava/lang/Thread;)V
[main] trace invoke: java/lang/Thread.currentThread()Ljava/lang/Thread;
[main] trace invoke: Hashtable.main([Ljava/lang/String;)V
[main] trace invoke: Hashtable.(IF)V
[main] trace invoke: java/lang/Object.()V
+[main] trace invoke: java/lang/StringBuilder.()V
+[main] trace invoke: java/lang/StringBuilder.(I)V
+[main] trace invoke: java/lang/Object.()V
+[main] trace invoke: java/lang/StringBuilder.append(Ljava/lang/String;)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/StringBuilder.ensureCapacity(I)V
+[main] trace invoke: java/lang/String.getChars(II[CI)V
+[main] trace invoke: java/lang/StringBuilder.append(F)Ljava/lang/StringBuilder;
+[main] trace invoke: java/lang/Number.()V
+[main] trace invoke: java/lang/Float.()V
+[main] trace invoke: java/lang/Float.toString(F)Ljava/lang/String;
+[main] trace invoke: java/lang/VMFloat.()V
[main] trace invoke: java/lang/System.()V
[main] trace invoke: java/lang/VMSystem.makeStandardInputStream()Ljava/io/InputStream;
[main] trace invoke: java/io/FileDescriptor.()V
[main] trace invoke: gnu/java/nio/FileChannelImpl.()V
[main] trace invoke: java/lang/System.loadLibrary(Ljava/lang/String;)V
[main] trace invoke: java/lang/Runtime.()V
[main] trace invoke: java/lang/Runtime.()V
[main] trace invoke: java/lang/Object.()V
[main] trace invoke: gnu/classpath/SystemProperties.()V
[main] trace invoke: java/util/Properties.()V

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment