You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

TraceJarHello.txt 7.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. public class DynamicHelloWorld extends java.lang.Object implements java.io.Serializable:
  2. public void <init>():
  3. ALOAD_0 // LDynamicHelloWorld; this (line 8)
  4. INVOKESPECIAL java.lang.Object.<init> ()V
  5. constructor-execution(void DynamicHelloWorld.<init>())
  6. | RETURN
  7. constructor-execution(void DynamicHelloWorld.<init>())
  8. end public void <init>()
  9. public static void main(String[]):
  10. catch java.lang.UnsupportedOperationException -> E0
  11. | NEW DynamicHelloWorld (line 12)
  12. | DUP
  13. | INVOKESPECIAL DynamicHelloWorld.<init> ()V
  14. | LDC "hello"
  15. | GETSTATIC java.util.Collections.EMPTY_LIST Ljava/util/List;
  16. | INVOKEVIRTUAL DynamicHelloWorld.doit (Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
  17. | POP
  18. | GOTO L0
  19. catch java.lang.UnsupportedOperationException -> E0
  20. E0: ASTORE_1 (line 13)
  21. GETSTATIC java.lang.System.out Ljava/io/PrintStream; (line 14)
  22. NEW java.lang.StringBuffer
  23. DUP
  24. LDC "expected and caught: "
  25. INVOKESPECIAL java.lang.StringBuffer.<init> (Ljava/lang/String;)V
  26. ALOAD_1 // Ljava/lang/UnsupportedOperationException; t
  27. INVOKEVIRTUAL java.lang.StringBuffer.append (Ljava/lang/Object;)Ljava/lang/StringBuffer;
  28. INVOKEVIRTUAL java.lang.StringBuffer.toString ()Ljava/lang/String;
  29. INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V
  30. RETURN (line 15)
  31. L0: NEW java.lang.RuntimeException (line 17)
  32. DUP
  33. LDC "should have caught exception"
  34. INVOKESPECIAL java.lang.RuntimeException.<init> (Ljava/lang/String;)V
  35. ATHROW
  36. end public static void main(String[])
  37. String doit(String, java.util.List):
  38. ALOAD_1
  39. ASTORE_3
  40. ALOAD_2
  41. ASTORE 4
  42. method-execution(java.lang.String DynamicHelloWorld.doit(java.lang.String, java.util.List))
  43. | INVOKESTATIC MyTrace.aspectOf ()LMyTrace; (line 21)
  44. | ALOAD_0
  45. | INVOKEVIRTUAL Trace.ajc$before$Trace$1$26352be2 (Ljava/lang/Object;)V
  46. | INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
  47. | ICONST_3
  48. | ANEWARRAY java.lang.Object
  49. | ASTORE 6
  50. | ALOAD 6
  51. | ICONST_0
  52. | ALOAD_0
  53. | AASTORE
  54. | ALOAD 6
  55. | ICONST_1
  56. | ALOAD_3
  57. | AASTORE
  58. | ALOAD 6
  59. | ICONST_2
  60. | ALOAD 4
  61. | AASTORE
  62. | NEW DynamicHelloWorld$AjcClosure3
  63. | DUP
  64. | ALOAD 6
  65. | INVOKESPECIAL DynamicHelloWorld$AjcClosure3.<init> ([Ljava/lang/Object;)V
  66. | INVOKEVIRTUAL Trace.ajc$around$Trace$2$a986034c (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object;
  67. | CHECKCAST java.lang.String
  68. | DUP
  69. | ASTORE 7
  70. | DUP
  71. | ASTORE 8
  72. | INVOKESTATIC MyTrace.aspectOf ()LMyTrace;
  73. | ALOAD_0
  74. | ALOAD 8
  75. | INVOKEVIRTUAL MyTrace.ajc$afterReturning$MyTrace$1$2b31dfa3 (Ljava/lang/Object;Ljava/lang/Object;)V
  76. | ALOAD 7
  77. | ARETURN
  78. method-execution(java.lang.String DynamicHelloWorld.doit(java.lang.String, java.util.List))
  79. end String doit(String, java.util.List)
  80. static final String doit_aroundBody0(DynamicHelloWorld, String, java.util.List):
  81. ALOAD_2 // Ljava/util/List; l (line 21)
  82. ALOAD_1 // Ljava/lang/String; s
  83. INVOKEINTERFACE java.util.List.add (Ljava/lang/Object;)Z
  84. POP
  85. ALOAD_2 // Ljava/util/List; l (line 22)
  86. INVOKEVIRTUAL java.lang.Object.toString ()Ljava/lang/String;
  87. ARETURN
  88. end static final String doit_aroundBody0(DynamicHelloWorld, String, java.util.List)
  89. static final String doit_aroundBody2(DynamicHelloWorld, String, java.util.List):
  90. INVOKESTATIC MyTrace.aspectOf ()LMyTrace; (line 21)
  91. ALOAD_0
  92. ICONST_3
  93. ANEWARRAY java.lang.Object
  94. ASTORE_3
  95. ALOAD_3
  96. ICONST_0
  97. ALOAD_0
  98. AASTORE
  99. ALOAD_3
  100. ICONST_1
  101. ALOAD_1
  102. AASTORE
  103. ALOAD_3
  104. ICONST_2
  105. ALOAD_2
  106. AASTORE
  107. NEW DynamicHelloWorld$AjcClosure1
  108. DUP
  109. ALOAD_3
  110. INVOKESPECIAL DynamicHelloWorld$AjcClosure1.<init> ([Ljava/lang/Object;)V
  111. INVOKEVIRTUAL Trace.ajc$around$Trace$3$26352be2 (Ljava/lang/Object;Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object;
  112. CHECKCAST java.lang.String
  113. ARETURN
  114. end static final String doit_aroundBody2(DynamicHelloWorld, String, java.util.List)
  115. end public class DynamicHelloWorld
  116. public class DynamicHelloWorld$AjcClosure1 extends org.aspectj.runtime.internal.AroundClosure:
  117. public void <init>(Object[]):
  118. ALOAD_0
  119. ALOAD_1
  120. INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure.<init> ([Ljava/lang/Object;)V
  121. RETURN
  122. end public void <init>(Object[])
  123. public Object run(Object[]):
  124. ALOAD_0
  125. GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object;
  126. ASTORE_2
  127. ALOAD_1
  128. ICONST_0
  129. AALOAD
  130. CHECKCAST DynamicHelloWorld
  131. ALOAD_2
  132. ICONST_1
  133. AALOAD
  134. CHECKCAST java.lang.String
  135. ALOAD_2
  136. ICONST_2
  137. AALOAD
  138. CHECKCAST java.util.List
  139. INVOKESTATIC DynamicHelloWorld.doit_aroundBody0 (LDynamicHelloWorld;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
  140. ARETURN
  141. end public Object run(Object[])
  142. end public class DynamicHelloWorld$AjcClosure1
  143. public class DynamicHelloWorld$AjcClosure3 extends org.aspectj.runtime.internal.AroundClosure:
  144. public void <init>(Object[]):
  145. ALOAD_0
  146. ALOAD_1
  147. INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure.<init> ([Ljava/lang/Object;)V
  148. RETURN
  149. end public void <init>(Object[])
  150. public Object run(Object[]):
  151. ALOAD_0
  152. GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object;
  153. ASTORE_2
  154. ALOAD_2
  155. ICONST_0
  156. AALOAD
  157. CHECKCAST DynamicHelloWorld
  158. ALOAD_2
  159. ICONST_1
  160. AALOAD
  161. CHECKCAST java.lang.String
  162. ALOAD_2
  163. ICONST_2
  164. AALOAD
  165. CHECKCAST java.util.List
  166. INVOKESTATIC DynamicHelloWorld.doit_aroundBody2 (LDynamicHelloWorld;Ljava/lang/String;Ljava/util/List;)Ljava/lang/String;
  167. ARETURN
  168. end public Object run(Object[])
  169. end public class DynamicHelloWorld$AjcClosure3