diff --git a/IMPL_PLAN.md b/IMPL_PLAN.md new file mode 100644 index 000000000..df1e2fcba --- /dev/null +++ b/IMPL_PLAN.md @@ -0,0 +1,86 @@ +# Implementation Plan: Convert probe to INVOKEDYNAMIC dispatch + +## Key insight +Probe class lives on bootstrap classloader → cannot reference masked `.classdata` classes. +Fix: route all BTraceRuntimeAccess/BTraceRuntimeBridge calls through INVOKEDYNAMIC. + +## Files to change + +### 1. Preprocessor.java (btrace-instr) +- `addRuntimeNode()`: field desc → `Ljava/lang/Object;` (not BTraceRuntimeBridge) +- `initRuntime()`: replace handler array construction + `INVOKESTATIC forClass` with: + ``` + LDC class + INVOKEDYNAMIC "initRuntime" (Ljava/lang/Class;)Ljava/lang/Object; [runtimeBootstrap, "org/openjdk/btrace/runtime/BTraceRuntimeAccess"] + PUTSTATIC runtime : Object + ``` +- `addRuntimeCheck()`: replace `INVOKESTATIC BTraceRuntimeAccess.enter(BTraceRuntimeBridge)Z` with: + ``` + GETSTATIC runtime : Object + INVOKEDYNAMIC "enter" (Ljava/lang/Object;)Z [runtimeBootstrap, "org/openjdk/btrace/runtime/BTraceRuntimeAccess"] + ``` +- `tlsInitSequence()`: replace `INVOKESTATIC BTraceRuntimeAccess.newThreadLocal` with: + ``` + INVOKEDYNAMIC "newThreadLocal" (Ljava/lang/Object;)Ljava/lang/ThreadLocal; [runtimeBootstrap, "org/openjdk/btrace/runtime/BTraceRuntimeAccess"] + ``` +- ALL `INVOKEINTERFACE BTraceRuntimeBridge.xxx` → INVOKEDYNAMIC with Object receiver prepended: + - `start()V` → `(Ljava/lang/Object;)V` + - `leave()V` → `(Ljava/lang/Object;)V` + - `handleException(Throwable)V` → `(Ljava/lang/Object;Ljava/lang/Throwable;)V` + - `newPerfCounter(Object,String,String)V` → `(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)V` + - `getPerf*/putPerf*` → Object receiver prepended + - owner arg = `"org/openjdk/btrace/core/BTraceRuntimeBridge"` +- `findBTraceRuntimeStart()`: look for INVOKEDYNAMIC "start" instead of INVOKEINTERFACE + +Add shared Handle constant for runtimeBootstrap (mirror what Assembler.java has). + +### 2. HandlerRepository.java (btrace-core) +Add method: +```java +Object initProbeRuntime(Class probeClass); +``` + +### 3. HandlerRepositoryImpl.java (btrace-instr) +- Add inner class `HandlerMetadata` with arrays: TimerHandler[], EventHandler[], ErrorHandler[], ExitHandler[], LowMemoryHandler[] +- Add `Map handlerMetadata` +- In `registerProbe()`: extract handler metadata from probe's class node annotations, store in map +- Add `initProbeRuntime(Class probeClass)`: retrieve metadata, call BTraceRuntimeAccess.forClass(), return Object +- In `resolveRuntime()`: + - owner = `BTraceRuntimeAccess`, name = `"initRuntime"` → return MH to `this::initProbeRuntime` adapted to `(Class)Object` + - owner = `BTraceRuntimeAccess`, name = `"enter"` → findStatic on BTraceRuntimeAccess.enter(BTraceRuntimeBridge), adapt Object→BTraceRuntimeBridge via asType + - owner = `BTraceRuntimeAccess`, others → existing findStatic logic + - owner = `BTraceRuntimeBridge` → findVirtual on BTraceRuntimeBridge interface, adapt first arg Object→BTraceRuntimeBridge + +### 4. IndyDispatcher.java (btrace-core) +Add `initBootstrap` method (alternative approach - use existing `runtimeBootstrap` + special-casing in resolveRuntime). + +Actually NO new bootstrap method needed: `runtimeBootstrap("initRuntime", owner=BTraceRuntimeAccess)` → delegates to `resolveRuntime` which returns initProbeRuntime handle. + +## Handler metadata extraction in registerProbe +The BTraceProbe's class bytes contain annotations. We need to extract: +- `@OnTimer`: method name, period (long), from (String) +- `@OnEvent`: method name, event name (String) +- `@OnError`: method name +- `@OnExit`: method name +- `@OnLowMemory`: method name, pool (String), threshold (long), thresholdFrom (String) + +Use ASM ClassReader on `probe.getFullBytecode()` with a custom visitor. + +## Handler metadata for BTraceProbePersisted +Same approach: scan bytes with ClassReader. + +## Descriptor constants needed (in Preprocessor) +```java +// For invokedynamic enter call: +"(Ljava/lang/Object;)Z" +// For initRuntime: +"(Ljava/lang/Class;)Ljava/lang/Object;" +// For start/leave: +"(Ljava/lang/Object;)V" +// For handleException: +"(Ljava/lang/Object;Ljava/lang/Throwable;)V" +// For newPerfCounter: +"(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)V" +// For newThreadLocal: +"(Ljava/lang/Object;)Ljava/lang/ThreadLocal;" +``` diff --git a/benchmarks/runtime-benchmarks/build.gradle b/benchmarks/runtime-benchmarks/build.gradle index 83faf3e0e..934d306c8 100644 --- a/benchmarks/runtime-benchmarks/build.gradle +++ b/benchmarks/runtime-benchmarks/build.gradle @@ -36,7 +36,7 @@ task btracec(type: JavaExec) { args "${buildDir}/classes/java/main/" args '-packext' args 'btclass' - args fileTree(dir: "src/jmh/btrace", include: 'TraceScript.java') + args fileTree(dir: "src/jmh/btrace", include: '*.java') } compileJmhJava.dependsOn btracec jmhClasses.dependsOn btracec @@ -63,6 +63,6 @@ jmh { duplicateClassesStrategy = DuplicatesStrategy.WARN jvmArgsAppend = ["-Djmh.basedir=${project.buildDir.getParent()}", "-Dproject.version=${project.version}"] // jmhVersion = '1.27' - includes = ['org.openjdk.btrace.bench.ClassFilterBenchmark'] + includes = [project.findProperty('jmhInclude') ?: 'org.openjdk.btrace.bench.ClassFilterBenchmark'] verbosity = 'EXTRA' } diff --git a/benchmarks/runtime-benchmarks/src/jmh/btrace/DispatchScript.java b/benchmarks/runtime-benchmarks/src/jmh/btrace/DispatchScript.java new file mode 100644 index 000000000..3cd8e7715 --- /dev/null +++ b/benchmarks/runtime-benchmarks/src/jmh/btrace/DispatchScript.java @@ -0,0 +1,20 @@ +import org.openjdk.btrace.core.annotations.BTrace; +import org.openjdk.btrace.core.annotations.Duration; +import org.openjdk.btrace.core.annotations.Kind; +import org.openjdk.btrace.core.annotations.Location; +import org.openjdk.btrace.core.annotations.OnMethod; +import org.openjdk.btrace.core.annotations.ProbeClassName; +import org.openjdk.btrace.core.annotations.ProbeMethodName; + +@BTrace +public class DispatchScript { + @OnMethod(clazz = "org.openjdk.btrace.bench.DispatchTarget", method = "noArgs") + public static void onEntry(@ProbeClassName String pcn, @ProbeMethodName String pmn) {} + + @OnMethod( + clazz = "org.openjdk.btrace.bench.DispatchTarget", + method = "withReturn", + location = @Location(Kind.RETURN)) + public static void onReturn( + @ProbeClassName String pcn, @ProbeMethodName String pmn, @Duration long dur) {} +} diff --git a/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/DispatchBenchmark.java b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/DispatchBenchmark.java new file mode 100644 index 000000000..a8434e3ab --- /dev/null +++ b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/DispatchBenchmark.java @@ -0,0 +1,335 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code 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 + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package org.openjdk.btrace.bench; + +import java.io.InputStream; +import java.lang.reflect.Field; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.TimeUnit; +import org.openjdk.btrace.core.BTraceRuntimeBridge; +import org.openjdk.btrace.core.DebugSupport; +import org.openjdk.btrace.core.SharedSettings; +import org.openjdk.btrace.core.extensions.ExtensionContext; +import org.openjdk.btrace.core.handlers.ErrorHandler; +import org.openjdk.btrace.core.handlers.EventHandler; +import org.openjdk.btrace.core.handlers.ExitHandler; +import org.openjdk.btrace.core.handlers.LowMemoryHandler; +import org.openjdk.btrace.core.handlers.TimerHandler; +import org.openjdk.btrace.instr.BTraceProbe; +import org.openjdk.btrace.instr.BTraceProbeFactory; +import org.openjdk.btrace.instr.BTraceTransformer; +import org.openjdk.btrace.instr.HandlerRepositoryImpl; +import org.openjdk.btrace.runtime.BTraceRuntimeAccess; +import org.openjdk.jmh.annotations.Benchmark; +import org.openjdk.jmh.annotations.BenchmarkMode; +import org.openjdk.jmh.annotations.Fork; +import org.openjdk.jmh.annotations.Level; +import org.openjdk.jmh.annotations.Measurement; +import org.openjdk.jmh.annotations.Mode; +import org.openjdk.jmh.annotations.OutputTimeUnit; +import org.openjdk.jmh.annotations.Scope; +import org.openjdk.jmh.annotations.Setup; +import org.openjdk.jmh.annotations.State; +import org.openjdk.jmh.annotations.Warmup; +import org.openjdk.jmh.runner.Runner; +import org.openjdk.jmh.runner.options.Options; +import org.openjdk.jmh.runner.options.OptionsBuilder; + +/** + * Measures the actual overhead of INVOKEDYNAMIC handler dispatch in real BTrace-instrumented code. + * + *

Setup uses the real {@link BTraceTransformer} pipeline to instrument {@link DispatchTarget} + * with the compiled {@code DispatchScript.btclass} probe. The benchmark compares calling the + * original (uninstrumented) methods against the instrumented versions that dispatch through + * INVOKEDYNAMIC → ConstantCallSite → probe handler. + */ +@State(Scope.Thread) +@OutputTimeUnit(TimeUnit.NANOSECONDS) +@Fork(2) +@BenchmarkMode(Mode.AverageTime) +public class DispatchBenchmark { + + private Workload original; + private Workload instrumented; + + @Setup(Level.Trial) + public void setup() throws Exception { + SharedSettings settings = SharedSettings.GLOBAL; + settings.setTrusted(true); + + BTraceProbeFactory factory = new BTraceProbeFactory(settings); + + // Load compiled BTrace script (.btclass packaged by btracec task) + byte[] scriptBytes; + try (InputStream is = getClass().getClassLoader().getResourceAsStream("DispatchScript.btclass")) { + if (is == null) { + throw new IllegalStateException( + "DispatchScript.btclass not found on classpath. Run btracec task first."); + } + scriptBytes = readAllBytes(is); + } + + // Create probe from compiled script + BTraceProbe probe = factory.createProbe(scriptBytes); + + // Get the probe class bytecode (with AnyType→Object transformation) + byte[] probeBytes = probe.getFullBytecode(); + String probeClassName = probe.getClassName(false); + + // Read the original target class bytecode from classpath + String targetResource = + DispatchTarget.class.getName().replace('.', '/') + ".class"; + byte[] targetBytes; + try (InputStream is = getClass().getClassLoader().getResourceAsStream(targetResource)) { + if (is == null) { + throw new IllegalStateException("DispatchTarget.class not found on classpath."); + } + targetBytes = readAllBytes(is); + } + + // Install a no-op BTraceRuntimeAccess delegate so the probe class + // gets a non-null BTraceRuntimeBridge. Without this, forClass() returns null + // and the generated error handler NPEs on runtime.handleException(). + BTraceRuntimeAccess.install(new NoOpDelegate()); + + // Set up the classloader for probe and instrumented target. + // Child-first for classes we define; parent-first for everything else + // (BTrace runtime, JMH, java.*, etc.) + InstrumentedClassLoader benchCL = + new InstrumentedClassLoader(getClass().getClassLoader()); + benchCL.addClass(probeClassName, probeBytes); + + // Define the probe class so INVOKEDYNAMIC resolution can find it + Class probeClass = Class.forName(probeClassName, true, benchCL); + + // Set the definedClass field on the probe via reflection + setDefinedClass(probe, probeClass); + + // Register probe in HandlerRepositoryImpl (drives INVOKEDYNAMIC resolution) + HandlerRepositoryImpl.registerProbe(probe); + + // Create transformer and register probe for class matching + BTraceTransformer transformer = new BTraceTransformer(new DebugSupport(settings)); + transformer.register(probe); + + // Transform the target class using the real instrumentation pipeline. + // Pass benchCL (not system CL) to bypass the sensitive-class filter for org/openjdk/btrace/*. + byte[] instrumentedBytes = + transformer.transform( + benchCL, + DispatchTarget.class.getName().replace('.', '/'), + null, + null, + targetBytes); + + if (instrumentedBytes == null) { + throw new IllegalStateException( + "BTraceTransformer did not instrument DispatchTarget. " + + "Check that DispatchScript targets the correct class/methods."); + } + + // Load the instrumented class in the child classloader + benchCL.addClass(DispatchTarget.class.getName(), instrumentedBytes); + Class instrClass = + Class.forName(DispatchTarget.class.getName(), true, benchCL); + + // Create instances + original = new DispatchTarget(); + // Workload must NOT be added to benchCL so it resolves via parent delegation, + // keeping the same Class instance as the cast target here. + instrumented = (Workload) instrClass.getConstructor().newInstance(); + } + + // --- Benchmarks: entry handler (empty body, pure dispatch overhead) --- + + @Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Benchmark + public void baseline_noArgs() { + original.noArgs(); + } + + @Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Benchmark + public void instrumented_noArgs() { + instrumented.noArgs(); + } + + // --- Benchmarks: return handler with @Duration --- + + @Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Benchmark + public long baseline_withReturn() { + return original.withReturn(); + } + + @Warmup(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Measurement(iterations = 5, time = 1, timeUnit = TimeUnit.SECONDS) + @Benchmark + public long instrumented_withReturn() { + return instrumented.withReturn(); + } + + // --- Helpers --- + + private static void setDefinedClass(BTraceProbe probe, Class clz) throws Exception { + // Both BTraceProbeNode and BTraceProbePersisted have a 'definedClass' field + Field field = null; + Class c = probe.getClass(); + while (c != null && field == null) { + try { + field = c.getDeclaredField("definedClass"); + } catch (NoSuchFieldException e) { + c = c.getSuperclass(); + } + } + if (field == null) { + throw new IllegalStateException("Cannot find 'definedClass' field on " + probe.getClass()); + } + field.setAccessible(true); + field.set(probe, clz); + } + + private static byte[] readAllBytes(InputStream is) throws Exception { + byte[] buf = new byte[8192]; + int pos = 0; + int read; + while ((read = is.read(buf, pos, buf.length - pos)) > 0) { + pos += read; + if (pos == buf.length) { + byte[] newBuf = new byte[buf.length * 2]; + System.arraycopy(buf, 0, newBuf, 0, pos); + buf = newBuf; + } + } + byte[] result = new byte[pos]; + System.arraycopy(buf, 0, result, 0, pos); + return result; + } + + /** + * ClassLoader that uses child-first delegation for explicitly added classes, parent-first for + * everything else. This lets the instrumented DispatchTarget coexist with the original while + * sharing the BTrace runtime, JMH, and java.* classes from the parent. + */ + static final class InstrumentedClassLoader extends ClassLoader { + private final Map classes = new HashMap<>(); + + InstrumentedClassLoader(ClassLoader parent) { + super(parent); + } + + void addClass(String name, byte[] bytes) { + classes.put(name, bytes); + } + + @Override + protected Class loadClass(String name, boolean resolve) throws ClassNotFoundException { + synchronized (getClassLoadingLock(name)) { + Class c = findLoadedClass(name); + if (c != null) { + return c; + } + byte[] bytes = classes.get(name); + if (bytes != null) { + c = defineClass(name, bytes, 0, bytes.length); + if (resolve) { + resolveClass(c); + } + return c; + } + return super.loadClass(name, resolve); + } + } + } + + /** No-op delegate that satisfies the probe class {@code } contract. */ + static final class NoOpDelegate implements BTraceRuntimeAccess.Delegate { + private static final BTraceRuntimeBridge NOOP_BRIDGE = new NoOpBridge(); + + @Override + public boolean enter(BTraceRuntimeBridge currentRt) { + return true; + } + + @Override + public void leave() {} + + @Override + public BTraceRuntimeBridge forClass( + Class cl, + TimerHandler[] tHandlers, + EventHandler[] evHandlers, + ErrorHandler[] errHandlers, + ExitHandler[] eHandlers, + LowMemoryHandler[] lmHandlers) { + return NOOP_BRIDGE; + } + + @Override + public ThreadLocal newThreadLocal(Object initValue) { + return ThreadLocal.withInitial(() -> initValue); + } + + @Override + public String getClientName(String forClassName) { + return forClassName; + } + + @Override + public ExtensionContext currentContext() { + return null; + } + } + + /** No-op bridge returned by {@link NoOpDelegate#forClass}. */ + static final class NoOpBridge implements BTraceRuntimeBridge { + @Override public void start() {} + @Override public void leave() {} + @Override public void handleException(Throwable th) {} + @Override public boolean isDisabled() { return false; } + @Override public void newPerfCounter(Object value, String name, String desc) {} + @Override public int getPerfInt(String name) { return 0; } + @Override public void putPerfInt(int value, String name) {} + @Override public float getPerfFloat(String name) { return 0f; } + @Override public void putPerfFloat(float value, String name) {} + @Override public long getPerfLong(String name) { return 0L; } + @Override public void putPerfLong(long value, String name) {} + @Override public String getPerfString(String name) { return ""; } + @Override public void putPerfString(String value, String name) {} + } + + public static void main(String[] args) throws Exception { + Options opt = + new OptionsBuilder() + .include(".*" + DispatchBenchmark.class.getSimpleName() + ".*") + .build(); + + new Runner(opt).run(); + } +} diff --git a/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/DispatchTarget.java b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/DispatchTarget.java new file mode 100644 index 000000000..e061e2baa --- /dev/null +++ b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/DispatchTarget.java @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code 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 + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package org.openjdk.btrace.bench; + +/** Target class for BTrace instrumentation in {@link DispatchBenchmark}. */ +public class DispatchTarget implements Workload { + private long counter; + + @Override + public void noArgs() { + counter++; + } + + @Override + public long withReturn() { + return ++counter; + } +} diff --git a/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/StatsdBenchmark.java b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/StatsdBenchmark.java index 6c8b91902..bc5c1fe2b 100644 --- a/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/StatsdBenchmark.java +++ b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/StatsdBenchmark.java @@ -26,6 +26,7 @@ import java.util.concurrent.TimeUnit; import org.openjdk.btrace.statsd.Statsd; +import org.openjdk.btrace.statsd.StatsdImpl; import org.openjdk.jmh.annotations.Benchmark; import org.openjdk.jmh.annotations.BenchmarkMode; import org.openjdk.jmh.annotations.Fork; @@ -55,15 +56,15 @@ public class StatsdBenchmark { @Setup public void setup() { - c = Statsd.getInstance(); + c = new StatsdImpl(); } @Warmup(iterations = 5, time = 500, timeUnit = TimeUnit.MILLISECONDS) @Measurement(iterations = 5, time = 500, timeUnit = TimeUnit.MILLISECONDS) @Benchmark @Threads(1) - public void testGauge_1() { - c.gauge("g1", 10); + public void testIncrement_1() { + c.increment("counter1"); } public static void main(String[] args) throws Exception { diff --git a/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/Workload.java b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/Workload.java new file mode 100644 index 000000000..afdf7f922 --- /dev/null +++ b/benchmarks/runtime-benchmarks/src/jmh/java/org/openjdk/btrace/bench/Workload.java @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code 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 + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ +package org.openjdk.btrace.bench; + +/** + * Interface shared between the original and instrumented {@link DispatchTarget} so that JMH can + * call the same methods through a virtual dispatch without reflection overhead. + */ +public interface Workload { + void noArgs(); + + long withReturn(); +} diff --git a/btrace-agent/src/main/java/org/openjdk/btrace/agent/Client.java b/btrace-agent/src/main/java/org/openjdk/btrace/agent/Client.java index 238b5e6cb..8ba62be4e 100644 --- a/btrace-agent/src/main/java/org/openjdk/btrace/agent/Client.java +++ b/btrace-agent/src/main/java/org/openjdk/btrace/agent/Client.java @@ -52,7 +52,6 @@ import org.openjdk.btrace.instr.ClassCache; import org.openjdk.btrace.instr.ClassFilter; import org.openjdk.btrace.instr.ClassInfo; -import org.openjdk.btrace.instr.HandlerRepositoryImpl; import org.openjdk.btrace.instr.InstrumentUtils; import org.openjdk.btrace.instr.Instrumentor; import org.openjdk.btrace.instr.MethodTrackingContext; @@ -324,7 +323,6 @@ synchronized void onExit(int exitCode) { } finally { runtime.shutdownCmdLine(); CLIENTS.remove(id); - HandlerRepositoryImpl.unregisterProbe(probe); } } } diff --git a/btrace-bootstrap/build.gradle b/btrace-bootstrap/build.gradle index b7eac0577..1948376cd 100644 --- a/btrace-bootstrap/build.gradle +++ b/btrace-bootstrap/build.gradle @@ -3,65 +3,24 @@ plugins { alias(libs.plugins.shadow) } +// Minimal bootstrap: only the three classes required by the INVOKEDYNAMIC dispatch mechanism. +// Probe classes are now defined in the agent classloader (MaskedClassLoader), so all other +// BTrace API types live in the masked agent section and are no longer bootstrap-visible. def bootIncludes = { - if (it.directory) { - return true - } - if (it.path.endsWith('.jar')) { - return true - } - if (it.path.startsWith('org/openjdk/btrace/core/')) { - if (it.path == 'org/openjdk/btrace/core/Messages.class' - || it.path == 'org/openjdk/btrace/core/messages.properties') { - return false - } - if (it.path.startsWith('org/openjdk/btrace/core/extensions/')) { - return false - } - // Include handlers - probe classes need them in their static initializers - if (it.path.startsWith('org/openjdk/btrace/core/handlers/')) { - return true - } - if (it.path.startsWith('org/openjdk/btrace/core/comm/')) { - return false - } - // Include annotations - needed by compiler at compile-time - if (it.path.startsWith('org/openjdk/btrace/core/annotations/')) { - return true - } - return true - } + if (it.directory) return true + if (it.path.endsWith('.jar')) return true + // IndyDispatcher — bootstrap method for all INVOKEDYNAMIC probe/runtime dispatch + if (it.path.startsWith('org/openjdk/btrace/indy/')) return true + // LinkingFlag — re-entrancy guard used by IndyDispatcher and LinkerInstrumentor + if (it.path.startsWith('org/openjdk/btrace/runtime/LinkingFlag')) return true + // HandlerRepository — interface referenced directly by IndyDispatcher + if (it.path == 'org/openjdk/btrace/core/HandlerRepository.class') return true + // AnyType + its anonymous inner classes — GETSTATIC AnyType.VOID emitted into instrumented target classes + if (it.path.startsWith('org/openjdk/btrace/core/types/AnyType')) return true + // Service descriptors (text files, no classloader namespace impact) if (it.path.startsWith('META-INF/services')) { return !it.path.contains('com.sun.') && !it.path.contains('javax.annotation.') } - // Include BTraceRuntimeAccess and LinkingFlag from btrace-core (bootstrap classes) - if (it.path.startsWith('org/openjdk/btrace/runtime/')) { - // Match BTraceRuntimeAccess but NOT BTraceRuntimeAccessImpl - if (it.path.startsWith('org/openjdk/btrace/runtime/BTraceRuntimeAccess.class') - || it.path.startsWith('org/openjdk/btrace/runtime/BTraceRuntimeAccess$') - || it.path.startsWith('org/openjdk/btrace/runtime/LinkingFlag')) { - return true - } - // Include invokedynamic bootstrap classes (they use volatile fields to reach agent implementations) - if (it.path.startsWith('org/openjdk/btrace/runtime/Indy') - || it.path.startsWith('org/openjdk/btrace/runtime/ExtensionIndy')) { - return true - } - // Include Auxiliary class - probe classes are defined via MethodHandles.privateLookupIn(Auxiliary.class) - // and must be bootstrap-visible so they're accessible from application classloaders - if (it.path.startsWith('org/openjdk/btrace/runtime/auxiliary/Auxiliary')) { - return true - } - return false - } - // Include ExtensionBridge interface (referenced by ExtensionIndy) - if (it.path == 'org/openjdk/btrace/extension/ExtensionBridge.class') { - return true - } - // Include slf4j for bootstrap classes (DebugSupport needs it) - if (it.path.startsWith('org/slf4j/')) { - return true - } return false } diff --git a/btrace-core/src/main/java/org/openjdk/btrace/core/BTraceRuntime.java b/btrace-core/src/main/java/org/openjdk/btrace/core/BTraceRuntime.java index 92a2172c3..6b92f4f94 100644 --- a/btrace-core/src/main/java/org/openjdk/btrace/core/BTraceRuntime.java +++ b/btrace-core/src/main/java/org/openjdk/btrace/core/BTraceRuntime.java @@ -124,12 +124,17 @@ public static int parseInt(String value, int deflt) { // for jvmstat. public static Unsafe initUnsafe() { - try { - if (unsafe == null) { - unsafe = Unsafe.getUnsafe(); + if (unsafe == null) { + try { + // Use reflection to obtain Unsafe — works from any classloader, not just bootstrap. + // Unsafe.getUnsafe() requires the caller to be bootstrap-loaded, which is no longer + // guaranteed when BTraceRuntime lives in the agent masked classloader. + java.lang.reflect.Field f = Unsafe.class.getDeclaredField("theUnsafe"); + f.setAccessible(true); + unsafe = (Unsafe) f.get(null); + } catch (Exception e) { + System.err.println("BTrace warning: unable to initialize Unsafe. BTrace will not function properly"); } - } catch (SecurityException e) { - System.err.println("BTrace warning: unable to initialize Unsafe. BTrace will not function properly"); } return unsafe; } diff --git a/btrace-core/src/main/java/org/openjdk/btrace/core/HandlerRepository.java b/btrace-core/src/main/java/org/openjdk/btrace/core/HandlerRepository.java index e02f28faa..6a0925341 100644 --- a/btrace-core/src/main/java/org/openjdk/btrace/core/HandlerRepository.java +++ b/btrace-core/src/main/java/org/openjdk/btrace/core/HandlerRepository.java @@ -1,11 +1,78 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code 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 + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + package org.openjdk.btrace.core; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodType; + /** - * A bridge interface between a handler repository implementation and the invoke dynamic bootstrap - * class doing the handler lookup. + * Bridge interface between the bootstrap-resident {@link + * org.openjdk.btrace.indy.IndyDispatcher} and the agent-resident handler + * repository. The implementation lives in the agent classloader and is set on + * {@code IndyDispatcher.repository} during agent initialization. */ -@FunctionalInterface public interface HandlerRepository { - byte[] getProbeHandler( - String callerName, String probeName, String handlerName, String handlerDesc); + /** + * Resolve a probe handler to a {@link MethodHandle}. + * + * @param probeName the fully qualified probe class name + * @param handlerName the prefixed handler method name + * @param handlerType the method type of the handler + * @return a MethodHandle to the handler, or {@code null} if resolution fails + */ + MethodHandle resolveHandler(String probeName, String handlerName, MethodType handlerType); + + /** + * Resolve a runtime utility method (e.g. {@code MethodTracker.hit}) to a {@link MethodHandle}. + * + * @param owner the internal name of the owning class + * @param name the method name + * @param type the method type + * @return a MethodHandle to the method, or {@code null} if resolution fails + */ + MethodHandle resolveRuntime(String owner, String name, MethodType type); + + /** + * Returns the instrumentation level set for the given probe, or {@code Integer.MIN_VALUE} if the + * probe is not registered or has no level set. + * + * @param probeName the fully qualified probe class name + */ + int getLevel(String probeName); + + /** + * Initialises the BTrace runtime for the given probe class by constructing handler arrays from + * pre-registered metadata and calling {@code BTraceRuntimeAccess.forClass}. + * + *

Called from the probe's {@code } via an {@code INVOKEDYNAMIC "initRuntime"} call + * site routed through {@link org.openjdk.btrace.indy.IndyDispatcher#runtimeBootstrap}. + * + * @param probeClass the probe class (resolved at link time from the LDC constant in clinit) + * @return the {@code BTraceRuntimeBridge} instance as {@code Object} (avoids bootstrap-visible + * reference to the masked class) + */ + Object initProbeRuntime(Class probeClass); } diff --git a/btrace-core/src/main/java/org/openjdk/btrace/indy/IndyDispatcher.java b/btrace-core/src/main/java/org/openjdk/btrace/indy/IndyDispatcher.java new file mode 100644 index 000000000..4a57d0e2a --- /dev/null +++ b/btrace-core/src/main/java/org/openjdk/btrace/indy/IndyDispatcher.java @@ -0,0 +1,226 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code 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 + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +package org.openjdk.btrace.indy; + +import java.lang.invoke.CallSite; +import java.lang.invoke.ConstantCallSite; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; +import org.openjdk.btrace.core.HandlerRepository; +import org.openjdk.btrace.runtime.LinkingFlag; + +/** + * Minimal invokedynamic bootstrap dispatcher for BTrace probe handlers. Resides in the bootstrap + * classloader. All actual handler resolution is delegated to {@link HandlerRepository}, which is set + * by the agent at initialization time. + * + *

Instrumented bytecode emits {@code INVOKEDYNAMIC} instructions targeting the {@link + * #bootstrap} method. On first invocation, the bootstrap resolves a {@link MethodHandle} to the + * probe handler (living in the agent classloader) and returns a {@link ConstantCallSite} so + * subsequent calls go directly through the cached handle. + * + *

This class, together with {@link org.openjdk.btrace.runtime.LinkingFlag}, forms the minimal + * bootstrap footprint required by BTrace. + */ +public final class IndyDispatcher { + private static final MethodHandle NOOP; + private static final MethodHandle CHECK_LEVEL; + + static { + try { + NOOP = + MethodHandles.lookup() + .findStatic(IndyDispatcher.class, "noop", MethodType.methodType(void.class)); + CHECK_LEVEL = + MethodHandles.lookup() + .findStatic( + IndyDispatcher.class, + "checkLevel", + MethodType.methodType( + int.class, HandlerRepository.class, String.class, int.class, int.class)); + } catch (NoSuchMethodException | IllegalAccessException e) { + throw new ExceptionInInitializerError(e); + } + } + + /** + * Set by {@code HandlerRepositoryImpl} during agent initialization. Bridges the bootstrap + * classloader to the agent classloader where probe handlers are loaded. + */ + public static volatile HandlerRepository repository; + + /** + * Bootstrap method for probe handler dispatch. Called by the JVM when an {@code INVOKEDYNAMIC} + * instruction targeting a probe handler is first executed. + * + * @param caller lookup context provided by the JVM (unused, reserved) + * @param name the call site name (prefixed handler method name) + * @param type the method type of the call site + * @param probeClassName the fully qualified probe class name + * @return a {@link ConstantCallSite} wrapping the resolved handler, or a no-op fallback + */ + public static CallSite bootstrap( + MethodHandles.Lookup caller, String name, MethodType type, String probeClassName) { + LinkingFlag.guardLinking(); + try { + HandlerRepository repo = repository; + if (repo == null) { + // System.err is used intentionally: this class lives in the bootstrap classloader + // where SLF4J may not yet be available. + System.err.println("BTrace: IndyDispatcher.repository not initialized for " + probeClassName + "#" + name); + return new ConstantCallSite(MethodHandles.dropArguments(NOOP, 0, type.parameterArray())); + } + MethodHandle mh; + try { + mh = repo.resolveHandler(probeClassName, name, type); + } catch (Throwable t) { + mh = null; + } + if (mh == null) { + mh = MethodHandles.dropArguments(NOOP, 0, type.parameterArray()); + } + return new ConstantCallSite(mh); + } finally { + LinkingFlag.reset(); + } + } + + /** + * Bootstrap method for runtime utility calls (e.g. {@code MethodTracker}). Called by the JVM when + * an {@code INVOKEDYNAMIC} instruction targeting a runtime utility method is first executed. + * + * @param caller lookup context provided by the JVM + * @param name the method name to resolve + * @param type the method type of the call site + * @param owner the internal name of the owning class (e.g. {@code + * "org/openjdk/btrace/instr/MethodTracker"}) + * @return a {@link ConstantCallSite} wrapping the resolved method, or a no-op fallback + */ + public static CallSite runtimeBootstrap( + MethodHandles.Lookup caller, String name, MethodType type, String owner) { + LinkingFlag.guardLinking(); + try { + HandlerRepository repo = repository; + if (repo == null) { + // System.err is used intentionally: this class lives in the bootstrap classloader + // where SLF4J may not yet be available. + System.err.println("BTrace: IndyDispatcher.repository not initialized for runtime " + owner + "#" + name); + return new ConstantCallSite(buildDefaultHandle(type)); + } + MethodHandle mh; + try { + mh = repo.resolveRuntime(owner, name, type); + } catch (Throwable t) { + mh = null; + } + if (mh == null) { + mh = buildDefaultHandle(type); + } + return new ConstantCallSite(mh); + } finally { + LinkingFlag.reset(); + } + } + + /** + * Bootstrap method for probe level checks. Replaces the former {@code GETSTATIC + * probeName.$btrace$$level} instruction emitted into instrumented target classes. Returns a + * {@link ConstantCallSite} whose target re-reads the probe level on every invocation so that + * dynamic level changes via {@code setInstrumentationLevel} take effect immediately. + * + * @param caller lookup context (unused) + * @param name unused call-site name + * @param type expected to be {@code ()I} + * @param probeName the fully qualified probe class name + * @param lo the inclusive lower bound of the accepted level range + * @param hi the inclusive upper bound of the accepted level range + * @return a call site returning 1 if {@code lo <= probe level <= hi}, else 0 + */ + public static CallSite levelBootstrap( + MethodHandles.Lookup caller, + String name, + MethodType type, + String probeName, + int lo, + int hi) { + LinkingFlag.guardLinking(); + try { + HandlerRepository repo = repository; + if (repo == null) { + return new ConstantCallSite(MethodHandles.constant(int.class, 0)); + } + // Bind repo, probeName, lo, hi into checkLevel so each invocation re-reads the live level. + // This mirrors the old GETSTATIC semantics: dynamic level changes are reflected immediately. + MethodHandle bound = + MethodHandles.insertArguments(CHECK_LEVEL, 0, repo, probeName, lo, hi); + return new ConstantCallSite(bound); + } finally { + LinkingFlag.reset(); + } + } + + /** + * Reads the current level from the repository and returns 1 if it falls within [{@code lo}, + * {@code hi}], or 0 otherwise. Called on every probe entry via the level-check call site. + */ + public static int checkLevel(HandlerRepository repo, String probeName, int lo, int hi) { + int level = repo.getLevel(probeName); + return (level != Integer.MIN_VALUE && level >= lo && level <= hi) ? 1 : 0; + } + + /** No-op handler used as fallback when handler resolution fails. */ + public static void noop() {} + + private static MethodHandle buildDefaultHandle(MethodType type) { + Class ret = type.returnType(); + MethodHandle base; + if (ret == void.class) { + base = NOOP; + } else if (ret == boolean.class) { + base = MethodHandles.constant(boolean.class, false); + } else if (ret == int.class) { + base = MethodHandles.constant(int.class, 0); + } else if (ret == long.class) { + base = MethodHandles.constant(long.class, 0L); + } else { + // Reference types or other primitives - return null/zero via identity tricks + base = MethodHandles.constant(ret, defaultValue(ret)); + } + return MethodHandles.dropArguments(base, 0, type.parameterArray()); + } + + private static Object defaultValue(Class type) { + if (type == byte.class) return (byte) 0; + if (type == short.class) return (short) 0; + if (type == char.class) return (char) 0; + if (type == float.class) return 0.0f; + if (type == double.class) return 0.0d; + return null; // reference types + } + + private IndyDispatcher() {} +} diff --git a/btrace-core/src/main/java/org/openjdk/btrace/runtime/LinkingFlag.java b/btrace-core/src/main/java/org/openjdk/btrace/runtime/LinkingFlag.java index 05cd54a78..3138264ff 100644 --- a/btrace-core/src/main/java/org/openjdk/btrace/runtime/LinkingFlag.java +++ b/btrace-core/src/main/java/org/openjdk/btrace/runtime/LinkingFlag.java @@ -1,23 +1,29 @@ package org.openjdk.btrace.runtime; public final class LinkingFlag { - private static final ThreadLocal linking = new ThreadLocal<>(); + private static final ThreadLocal linking = + new ThreadLocal() { + @Override + protected int[] initialValue() { + return new int[] {0}; + } + }; public static int guardLinking() { - Integer current = linking.get(); - current = current == null ? 0 : current; - linking.set(current + 1); + int[] arr = linking.get(); + int current = arr[0]; + arr[0] = current + 1; return current; } public static int get() { - Integer current = linking.get(); - return current == null ? 0 : current; + return linking.get()[0]; } public static void reset() { - Integer current = linking.get(); - current = current == null ? 0 : current; - linking.set(current > 0 ? current - 1 : 0); + int[] arr = linking.get(); + if (arr[0] > 0) { + arr[0]--; + } } } diff --git a/btrace-core/src/test/java/org/openjdk/btrace/indy/IndyDispatcherTest.java b/btrace-core/src/test/java/org/openjdk/btrace/indy/IndyDispatcherTest.java new file mode 100644 index 000000000..09ed85a56 --- /dev/null +++ b/btrace-core/src/test/java/org/openjdk/btrace/indy/IndyDispatcherTest.java @@ -0,0 +1,301 @@ +package org.openjdk.btrace.indy; + +import static org.junit.jupiter.api.Assertions.*; + +import java.lang.invoke.CallSite; +import java.lang.invoke.ConstantCallSite; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.openjdk.btrace.core.HandlerRepository; + +class IndyDispatcherTest { + + private HandlerRepository savedRepository; + + @BeforeEach + void saveRepository() { + savedRepository = IndyDispatcher.repository; + } + + @AfterEach + void restoreRepository() { + IndyDispatcher.repository = savedRepository; + } + + // --- bootstrap() --- + + @Test + void bootstrap_returnsConstantCallSite() throws Throwable { + IndyDispatcher.repository = nullReturningRepo(); + CallSite cs = + IndyDispatcher.bootstrap( + MethodHandles.lookup(), + "onEntry", + MethodType.methodType(void.class), + "some/Probe"); + assertInstanceOf(ConstantCallSite.class, cs); + } + + @Test + void bootstrap_noopWhenRepositoryIsNull() throws Throwable { + IndyDispatcher.repository = null; + MethodType type = MethodType.methodType(void.class, String.class); + CallSite cs = + IndyDispatcher.bootstrap(MethodHandles.lookup(), "onEntry", type, "some/Probe"); + assertNotNull(cs); + cs.dynamicInvoker().invoke("arg"); // must not throw + } + + @Test + void bootstrap_noopWhenRepositoryReturnsNull() throws Throwable { + IndyDispatcher.repository = nullReturningRepo(); + MethodType type = MethodType.methodType(void.class, int.class); + CallSite cs = + IndyDispatcher.bootstrap(MethodHandles.lookup(), "onEntry", type, "some/Probe"); + assertNotNull(cs); + cs.dynamicInvoker().invoke(42); // must not throw + } + + @Test + void bootstrap_noopWhenRepositoryThrows() throws Throwable { + IndyDispatcher.repository = throwingRepo(); + MethodType type = MethodType.methodType(void.class); + CallSite cs = + IndyDispatcher.bootstrap(MethodHandles.lookup(), "onEntry", type, "some/Probe"); + assertNotNull(cs); + cs.dynamicInvoker().invoke(); // must not throw + } + + @Test + void bootstrap_usesResolvedHandle() throws Throwable { + MethodHandle target = + MethodHandles.lookup() + .findStatic( + IndyDispatcherTest.class, "noop", MethodType.methodType(void.class)); + IndyDispatcher.repository = repoReturning(target); + CallSite cs = + IndyDispatcher.bootstrap( + MethodHandles.lookup(), + "noop", + MethodType.methodType(void.class), + "some/Probe"); + assertSame(target, cs.getTarget()); + } + + // --- runtimeBootstrap() --- + + @Test + void runtimeBootstrap_returnsConstantCallSite() throws Throwable { + IndyDispatcher.repository = nullReturningRepo(); + CallSite cs = + IndyDispatcher.runtimeBootstrap( + MethodHandles.lookup(), + "hit", + MethodType.methodType(boolean.class, int.class), + "some/Runtime"); + assertInstanceOf(ConstantCallSite.class, cs); + } + + @Test + void runtimeBootstrap_noopWhenRepositoryThrows() throws Throwable { + IndyDispatcher.repository = throwingRepo(); + MethodType type = MethodType.methodType(void.class, int.class); + CallSite cs = + IndyDispatcher.runtimeBootstrap( + MethodHandles.lookup(), "updateEndTs", type, "some/Runtime"); + assertNotNull(cs); + cs.dynamicInvoker().invoke(1); // must not throw + } + + @Test + void runtimeBootstrap_noopWhenRepositoryIsNull() throws Throwable { + IndyDispatcher.repository = null; + MethodType type = MethodType.methodType(void.class, int.class); + CallSite cs = + IndyDispatcher.runtimeBootstrap( + MethodHandles.lookup(), "updateEndTs", type, "some/Runtime"); + assertNotNull(cs); + cs.dynamicInvoker().invoke(1); // must not throw + } + + @Test + void runtimeBootstrap_defaultReturnsFalseForBooleanType() throws Throwable { + IndyDispatcher.repository = null; + MethodType type = MethodType.methodType(boolean.class, int.class); + CallSite cs = + IndyDispatcher.runtimeBootstrap(MethodHandles.lookup(), "hit", type, "some/Runtime"); + Object result = cs.dynamicInvoker().invoke(1); + assertEquals(Boolean.FALSE, result); + } + + @Test + void runtimeBootstrap_defaultReturnsZeroForLongType() throws Throwable { + IndyDispatcher.repository = null; + MethodType type = MethodType.methodType(long.class, int.class); + CallSite cs = + IndyDispatcher.runtimeBootstrap( + MethodHandles.lookup(), "hitTimed", type, "some/Runtime"); + Object result = cs.dynamicInvoker().invoke(1); + assertEquals(0L, result); + } + + @Test + void runtimeBootstrap_defaultReturnsZeroForIntType() throws Throwable { + IndyDispatcher.repository = null; + MethodType type = MethodType.methodType(int.class, int.class); + CallSite cs = + IndyDispatcher.runtimeBootstrap( + MethodHandles.lookup(), "someInt", type, "some/Runtime"); + Object result = cs.dynamicInvoker().invoke(1); + assertEquals(0, result); + } + + // --- levelBootstrap() --- + + @Test + void levelBootstrap_returnsZeroWhenRepositoryIsNull() throws Throwable { + IndyDispatcher.repository = null; + CallSite cs = + IndyDispatcher.levelBootstrap( + MethodHandles.lookup(), "levelCheck", MethodType.methodType(int.class), "p.Probe", 0, Integer.MAX_VALUE); + assertEquals(0, (int) cs.dynamicInvoker().invoke()); + } + + @Test + void levelBootstrap_returnsOneWhenLevelInRange() throws Throwable { + IndyDispatcher.repository = repoWithLevel(5); + CallSite cs = + IndyDispatcher.levelBootstrap( + MethodHandles.lookup(), "levelCheck", MethodType.methodType(int.class), "p.Probe", 1, 10); + assertEquals(1, (int) cs.dynamicInvoker().invoke()); + } + + @Test + void levelBootstrap_returnsZeroWhenLevelBelowRange() throws Throwable { + IndyDispatcher.repository = repoWithLevel(0); + CallSite cs = + IndyDispatcher.levelBootstrap( + MethodHandles.lookup(), "levelCheck", MethodType.methodType(int.class), "p.Probe", 1, 10); + assertEquals(0, (int) cs.dynamicInvoker().invoke()); + } + + @Test + void levelBootstrap_returnsZeroWhenLevelAboveRange() throws Throwable { + IndyDispatcher.repository = repoWithLevel(11); + CallSite cs = + IndyDispatcher.levelBootstrap( + MethodHandles.lookup(), "levelCheck", MethodType.methodType(int.class), "p.Probe", 1, 10); + assertEquals(0, (int) cs.dynamicInvoker().invoke()); + } + + @Test + void levelBootstrap_returnsZeroWhenProbeNotRegistered() throws Throwable { + IndyDispatcher.repository = repoWithLevel(Integer.MIN_VALUE); + CallSite cs = + IndyDispatcher.levelBootstrap( + MethodHandles.lookup(), "levelCheck", MethodType.methodType(int.class), "p.Probe", 0, Integer.MAX_VALUE); + assertEquals(0, (int) cs.dynamicInvoker().invoke()); + } + + @Test + void levelBootstrap_reflectsLevelChangeAfterLinking() throws Throwable { + int[] levelHolder = {5}; + HandlerRepository repo = new HandlerRepository() { + @Override public MethodHandle resolveHandler(String p, String h, MethodType t) { return null; } + @Override public MethodHandle resolveRuntime(String o, String n, MethodType t) { return null; } + @Override public int getLevel(String probeName) { return levelHolder[0]; } + }; + IndyDispatcher.repository = repo; + CallSite cs = + IndyDispatcher.levelBootstrap( + MethodHandles.lookup(), "levelCheck", MethodType.methodType(int.class), "p.Probe", 1, 10); + assertEquals(1, (int) cs.dynamicInvoker().invoke()); + // Simulate setInstrumentationLevel pushing level out of range + levelHolder[0] = 20; + assertEquals(0, (int) cs.dynamicInvoker().invoke()); + } + + // --- helpers --- + + public static void noop() {} + + private static HandlerRepository nullReturningRepo() { + return new HandlerRepository() { + @Override + public MethodHandle resolveHandler(String p, String h, MethodType t) { + return null; + } + + @Override + public MethodHandle resolveRuntime(String o, String n, MethodType t) { + return null; + } + + @Override + public int getLevel(String probeName) { + return Integer.MAX_VALUE; + } + }; + } + + private static HandlerRepository throwingRepo() { + return new HandlerRepository() { + @Override + public MethodHandle resolveHandler(String p, String h, MethodType t) { + throw new RuntimeException("repository unavailable"); + } + + @Override + public MethodHandle resolveRuntime(String o, String n, MethodType t) { + throw new RuntimeException("repository unavailable"); + } + + @Override + public int getLevel(String probeName) { + return Integer.MAX_VALUE; + } + }; + } + + private static HandlerRepository repoWithLevel(int level) { + return new HandlerRepository() { + @Override + public MethodHandle resolveHandler(String p, String h, MethodType t) { + return null; + } + + @Override + public MethodHandle resolveRuntime(String o, String n, MethodType t) { + return null; + } + + @Override + public int getLevel(String probeName) { + return level; + } + }; + } + + private static HandlerRepository repoReturning(MethodHandle mh) { + return new HandlerRepository() { + @Override + public MethodHandle resolveHandler(String p, String h, MethodType t) { + return mh; + } + + @Override + public MethodHandle resolveRuntime(String o, String n, MethodType t) { + return mh; + } + + @Override + public int getLevel(String probeName) { + return Integer.MAX_VALUE; + } + }; + } +} diff --git a/btrace-dist/build.gradle b/btrace-dist/build.gradle index e79d49f91..088de5bd7 100644 --- a/btrace-dist/build.gradle +++ b/btrace-dist/build.gradle @@ -186,16 +186,9 @@ task prepareAgentClassdata(type: Copy) { include 'org/openjdk/btrace/instr/jaxb.index' // Required for JAXB probe descriptor loading include 'org/openjdk/btrace/runtime/**/*.class' include 'org/openjdk/btrace/extension/**/*.class' - include 'org/openjdk/btrace/core/comm/**/*.class' - include 'org/openjdk/btrace/core/handlers/**/*.class' - include 'org/openjdk/btrace/core/Messages.class' - include 'org/openjdk/btrace/core/messages.properties' - // Exclude classes that go in shared section - exclude 'org/openjdk/btrace/core/extensions/**' - exclude 'org/openjdk/btrace/core/annotations/**' - // Exclude bootstrap runtime classes (now in btrace-core) - exclude 'org/openjdk/btrace/runtime/BTraceRuntimeAccess.class' - exclude 'org/openjdk/btrace/runtime/BTraceRuntimeAccess$*.class' + // core/* and slf4j are in shared section (accessible to both agent and client) + exclude 'org/openjdk/btrace/core/**' + // LinkingFlag stays in bootstrap (used by IndyDispatcher and LinkerInstrumentor) exclude 'org/openjdk/btrace/runtime/LinkingFlag.class' exclude 'META-INF/**' rename { name -> name.endsWith('.class') ? name.replace('.class', '.classdata') : name } @@ -239,11 +232,21 @@ task prepareSharedClassdata(type: Copy) { into "${maskedJarTmpDir}/shared" from(provider { zipTree(allClassesShadow.archiveFile) }) { - // Only include classes used by both client and agent + // Core classes used by both client and agent (formerly in bootstrap) + include 'org/openjdk/btrace/core/*.class' + include 'org/openjdk/btrace/core/types/**/*.class' + include 'org/openjdk/btrace/core/jfr/**/*.class' + include 'org/openjdk/btrace/core/aggregation/**/*.class' + include 'org/openjdk/btrace/core/handlers/**/*.class' include 'org/openjdk/btrace/core/comm/**/*.class' include 'org/openjdk/btrace/core/extensions/**/*.class' include 'org/openjdk/btrace/core/annotations/**/*.class' + include 'org/openjdk/btrace/core/annotations/jaxb.index' + include 'org/openjdk/btrace/core/messages.properties' + // HandlerRepository stays in bootstrap (referenced by IndyDispatcher) + exclude 'org/openjdk/btrace/core/HandlerRepository.class' include 'org/openjdk/btrace/libs/org/objectweb/asm/**/*.class' + include 'org/openjdk/btrace/libs/org/slf4j/**/*.class' // Exclude ASM packages not needed exclude 'org/openjdk/btrace/libs/org/objectweb/asm/commons/**' exclude 'org/openjdk/btrace/libs/org/objectweb/asm/util/**' @@ -305,6 +308,7 @@ task btraceJar(type: Jar) { into('META-INF/btrace/shared') { from("${maskedJarTmpDir}/shared") { include '**/*.classdata' + include '**/jaxb.index' } } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/Assembler.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/Assembler.java index 6f1885b58..0fbd0d199 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/Assembler.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/Assembler.java @@ -24,6 +24,9 @@ */ package org.openjdk.btrace.instr; +import java.lang.invoke.CallSite; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; import org.objectweb.asm.Handle; import org.objectweb.asm.Label; import org.objectweb.asm.MethodVisitor; @@ -60,6 +63,7 @@ import static org.objectweb.asm.Opcodes.GETFIELD; import static org.objectweb.asm.Opcodes.GETSTATIC; import static org.objectweb.asm.Opcodes.GOTO; +import static org.objectweb.asm.Opcodes.H_INVOKESTATIC; import static org.objectweb.asm.Opcodes.IALOAD; import static org.objectweb.asm.Opcodes.IASTORE; import static org.objectweb.asm.Opcodes.ICONST_0; @@ -69,6 +73,7 @@ import static org.objectweb.asm.Opcodes.ICONST_4; import static org.objectweb.asm.Opcodes.ICONST_5; import static org.objectweb.asm.Opcodes.ICONST_M1; +import static org.objectweb.asm.Opcodes.IFEQ; import static org.objectweb.asm.Opcodes.IFNE; import static org.objectweb.asm.Opcodes.IF_ICMPGT; import static org.objectweb.asm.Opcodes.IF_ICMPLT; @@ -106,7 +111,6 @@ import static org.openjdk.btrace.instr.Constants.BOX_LONG_DESC; import static org.openjdk.btrace.instr.Constants.BOX_SHORT_DESC; import static org.openjdk.btrace.instr.Constants.BOX_VALUEOF; -import static org.openjdk.btrace.instr.Constants.BTRACE_LEVEL_FLD; import static org.openjdk.btrace.instr.Constants.BYTE_BOXED_INTERNAL; import static org.openjdk.btrace.instr.Constants.BYTE_VALUE; import static org.openjdk.btrace.instr.Constants.BYTE_VALUE_DESC; @@ -588,6 +592,52 @@ public Assembler invokeStatic(String owner, String method, String desc) { return this; } + private static final String INDY_DISPATCHER_INTERNAL = "org/openjdk/btrace/indy/IndyDispatcher"; + private static final MethodType RUNTIME_BOOTSTRAP_MT = + MethodType.methodType( + CallSite.class, + MethodHandles.Lookup.class, + String.class, + MethodType.class, + String.class); + private static final Handle RUNTIME_BOOTSTRAP_HANDLE = + new Handle( + H_INVOKESTATIC, + INDY_DISPATCHER_INTERNAL, + "runtimeBootstrap", + RUNTIME_BOOTSTRAP_MT.toMethodDescriptorString(), + false); + + private static final MethodType LEVEL_BOOTSTRAP_MT = + MethodType.methodType( + CallSite.class, + MethodHandles.Lookup.class, + String.class, + MethodType.class, + String.class, + int.class, + int.class); + static final Handle LEVEL_BOOTSTRAP_HANDLE = + new Handle( + H_INVOKESTATIC, + INDY_DISPATCHER_INTERNAL, + "levelBootstrap", + LEVEL_BOOTSTRAP_MT.toMethodDescriptorString(), + false); + + /** + * Emit an INVOKEDYNAMIC instruction that routes through IndyDispatcher.runtimeBootstrap to + * resolve a static method in the agent classloader at first invocation. + * + * @param owner the internal name of the target class + * @param method the method name + * @param desc the method descriptor + */ + public Assembler invokeRuntime(String owner, String method, String desc) { + mv.visitInvokeDynamicInsn(method, desc, RUNTIME_BOOTSTRAP_HANDLE, owner); + return this; + } + public Assembler invokeDynamic( String name, String descriptor, Handle bootstrap, Object... bootstrapArguments) { mv.visitInvokeDynamicInsn(name, descriptor, bootstrap, bootstrapArguments); @@ -619,24 +669,24 @@ public Assembler addLevelCheck(String clsName, Level level, Label jmp) { } public Assembler addLevelCheck(String clsName, Interval itv, Label jmp) { - getStatic(clsName, "$btrace$$level", INT_DESC); + int lo, hi; if (itv.getA() <= 0) { - if (itv.getB() != Integer.MAX_VALUE) { - ldc(itv.getB()); - jump(IF_ICMPGT, jmp); - } - } else if (itv.getA() < itv.getB()) { if (itv.getB() == Integer.MAX_VALUE) { - ldc(itv.getA()); - jump(IF_ICMPLT, jmp); - } else { - ldc(itv.getA()); - jump(IF_ICMPLT, jmp); - getStatic(clsName, "$btrace$$level", INT_DESC); - ldc(itv.getB()); - jump(IF_ICMPGT, jmp); + // No restriction — always passes + return this; } + lo = 0; + hi = itv.getB(); + } else if (itv.getA() < itv.getB()) { + lo = itv.getA(); + hi = itv.getB(); + } else { + // A >= B with A > 0 — no check + return this; } + // INDY returns 1 if level in [lo, hi], 0 otherwise; skip handler if out of range + invokeDynamic("levelCheck", "()I", LEVEL_BOOTSTRAP_HANDLE, clsName, lo, hi); + jump(IFEQ, jmp); return this; } @@ -652,49 +702,46 @@ public Assembler addLevelCheck(String clsName, Interval itv, Label jmp) { */ public Assembler compareLevel(String clsName, Level level) { Interval itv = level.getValue(); + int lo, hi; if (itv.getA() <= 0) { - if (itv.getB() != Integer.MAX_VALUE) { - ldc(itv.getB()); - getStatic(clsName, BTRACE_LEVEL_FLD, INT_DESC); - sub(Type.INT_TYPE); - } - } else if (itv.getA() < itv.getB()) { if (itv.getB() == Integer.MAX_VALUE) { - getStatic(clsName, BTRACE_LEVEL_FLD, INT_DESC); - ldc(itv.getA()); - sub(Type.INT_TYPE); - } else { - Label l1 = new Label(); - Label l2 = new Label(); - ldc(itv.getA()); - jump(IF_ICMPLT, l1); - getStatic(clsName, BTRACE_LEVEL_FLD, INT_DESC); - ldc(itv.getB()); - jump(IF_ICMPGT, l1); + // No restriction — push 0 (in range) unconditionally ldc(0); - Label l3 = new Label(); - label(l3); - mHelper.insertFrameSameStack(l3); - jump(GOTO, l2); - label(l1); - mHelper.insertFrameSameStack(l1); - ldc(-1); - label(l2); - mHelper.insertFrameSameStack(l2); + return this; } + lo = 0; + hi = itv.getB(); + } else if (itv.getA() < itv.getB()) { + lo = itv.getA(); + hi = itv.getB(); + } else { + // A >= B with A > 0 — no check; push 0 (in range) + ldc(0); + return this; } + // INDY returns 1 if in range, 0 if not; convert to 0/-1 expected by callers + invokeDynamic("levelCheck", "()I", LEVEL_BOOTSTRAP_HANDLE, clsName, lo, hi); + ldc(1); + sub(Type.INT_TYPE); // result - 1: 0 if in range, -1 if not return this; } public Label openLinkerCheck() { Label l = new Label(); invokeStatic(Constants.LINKING_FLAG_INTERNAL, "get", "()I"); - // if the linking flag is 0, then we are not in a reentrant call + // if the linking flag is non-zero we are either in a bootstrap/linking call + // or inside a probe handler — skip to avoid recursion jump(IFNE, l); + // Set the flag to prevent re-entrant probe execution: if the probe handler + // calls instrumented code (e.g. AtomicLong.getAndIncrement), the nested + // openLinkerCheck will see the flag and skip. + invokeStatic(Constants.LINKING_FLAG_INTERNAL, "guardLinking", "()I"); + pop(); return l; } public void closeLinkerCheck(Label l) { + invokeStatic(Constants.LINKING_FLAG_INTERNAL, "reset", "()V"); label(l); mHelper.insertFrameSameStack(l); } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceClassWriter.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceClassWriter.java index 862be8cd6..d905caf54 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceClassWriter.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceClassWriter.java @@ -25,15 +25,12 @@ package org.openjdk.btrace.instr; import java.util.ArrayDeque; -import java.util.Collection; import java.util.Deque; -import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashSet; import org.objectweb.asm.ClassVisitor; import org.objectweb.asm.ClassWriter; import org.objectweb.asm.Opcodes; -import org.objectweb.asm.tree.MethodNode; /** * A hacked version of instrumentors = new ArrayDeque<>(); private final ClassLoader targetCL; private final BTraceClassReader cr; - private final Collection cushionMethods = new HashSet<>(); - BTraceClassWriter(ClassLoader cl, int flags) { super(flags); targetCL = cl != null ? cl : ClassLoader.getSystemClassLoader(); @@ -84,18 +79,7 @@ public byte[] instrument() { if (instrumentors.isEmpty()) return null; Instrumentor top = instrumentors.peekLast(); - ClassVisitor cv = - new ClassVisitor(Opcodes.ASM9, top != null ? top : this) { - @Override - public void visitEnd() { - if (top != null && top.hasCushionMethods()) { - for (MethodNode m : cushionMethods) { - m.accept(this); - } - } - super.visitEnd(); - } - }; + ClassVisitor cv = top != null ? top : this; InstrumentUtils.accept(cr, cv); for (Instrumentor i : instrumentors) { hit |= i.hasMatch(); @@ -121,15 +105,4 @@ protected String getCommonSuperClass(String type1, String type2) { return Constants.OBJECT_INTERNAL; } - /** - * Add dummy cushion methods to account for an instrumented code in hot loop still running even - * once the instrumentation was removed (code can not be hotswapped as long as the affected method - * is on stack so it may happen that an instrumentation from a disconnected BTrace client will be - * running for a long time) - * - * @param pillowMethods the methods to create cushions for - */ - public void addCushionMethods(Collection pillowMethods) { - cushionMethods.addAll(pillowMethods); - } } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbe.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbe.java index fc0408af9..28c58a751 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbe.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbe.java @@ -93,7 +93,11 @@ public interface BTraceProbe { void checkVerified(); - void copyHandlers(ClassVisitor copyingVisitor); + /** + * Returns the Class object produced by {@link #register}, or {@code null} if the probe has not + * been registered yet. + */ + Class getDefinedClass(); void applyArgs(ArgsMap argsMap); diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeFactory.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeFactory.java index db2286046..0b241c9e3 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeFactory.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeFactory.java @@ -158,7 +158,6 @@ public BTraceProbe createProbe(byte[] code, ArgsMap argsMap) { } applyArgs(bp, argsMap); - HandlerRepositoryImpl.registerProbe(bp); return bp; } @@ -184,7 +183,6 @@ public BTraceProbe createProbe(InputStream code, ArgsMap argsMap) { } applyArgs(bp, argsMap); - HandlerRepositoryImpl.registerProbe(bp); return bp; } } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeNode.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeNode.java index 55dff3c9b..b45e67449 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeNode.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbeNode.java @@ -54,7 +54,6 @@ import java.util.HashSet; import java.util.Map; import java.util.Set; -import java.util.TreeSet; /** * @author Jaroslav Bachorik @@ -76,6 +75,7 @@ public final class BTraceProbeNode extends ClassNode implements BTraceProbe { private final BTraceBCPClassLoader bcpResourceClassLoader; private volatile BTraceRuntime.Impl rt = null; + private volatile Class definedClass = null; private BTraceTransformer transformer; private VerifierException verifierException = null; @@ -202,11 +202,18 @@ String translateOwner(String owner) { @Override public Class register(BTraceRuntime.Impl rt, BTraceTransformer t) { - byte[] code = getBytecode(true); + // getBytecode(false): include all handler methods (not just BCP-required ones) so that + // INVOKEDYNAMIC-based dispatch can resolve them via publicLookup().findStatic(). + byte[] code = getBytecode(false); if (debug.isDumpClasses()) { debug.dumpClass(name + "_bcp", code); } + // Pre-register handler metadata before defineClass triggers , + // which calls initProbeRuntime via INVOKEDYNAMIC and needs the metadata. + HandlerRepositoryImpl.preRegisterProbeBytes(code); Class clz = delegate.defineClass(rt, code); + definedClass = clz; + HandlerRepositoryImpl.registerProbe(this); t.register(this); transformer = t; this.rt = rt; @@ -221,9 +228,16 @@ public void unregister() { } transformer.unregister(this); } + HandlerRepositoryImpl.unregisterProbe(this); + definedClass = null; rt = null; } + @Override + public Class getDefinedClass() { + return definedClass; + } + @Override public byte[] getFullBytecode() { return getBytecode(false); @@ -267,6 +281,25 @@ public MethodVisitor visitMethod( return super.visitMethod(access, name, desc, sig, exceptions); } }; + } else { + // Transform AnyType→Object in method descriptors so that the probe class + // methods match the INVOKEDYNAMIC call site descriptors. + cv = + new ClassVisitor(Opcodes.ASM9, cw) { + @Override + public MethodVisitor visitMethod( + int access, String name, String desc, String sig, String[] exceptions) { + if (name.startsWith("<")) { + return super.visitMethod(access, name, desc, sig, exceptions); + } + String newDesc = desc.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC); + String newSig = + sig != null + ? sig.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC) + : null; + return super.visitMethod(access, name, newDesc, newSig, exceptions); + } + }; } accept(cv); return cw.toByteArray(); @@ -373,37 +406,6 @@ public void checkVerified() { } } - @Override - public void copyHandlers(ClassVisitor copyingVisitor) { - Set copyNodes = new TreeSet<>(BTraceMethodNode.COMPARATOR); - - for (OnMethod om : onmethods()) { - if (!om.isCalled()) { - continue; - } - - BTraceMethodNode bmn = om.getMethodNode(); - - MethodNode mn = copy(bmn); - - copyNodes.add(mn); - for (BTraceMethodNode c : bmn.getCallees()) { - copyNodes.add(copy(c)); - } - } - copyingVisitor.visit( - Opcodes.V1_7, - Opcodes.ACC_PUBLIC | Opcodes.ACC_FINAL, - getClassName(true), - null, - "java/lang/Object", - null); - for (MethodNode mn : copyNodes) { - mn.accept(copyingVisitor); - } - copyingVisitor.visitEnd(); - } - @Override public void applyArgs(ArgsMap argsMap) { delegate.applyArgs(argsMap); @@ -517,20 +519,6 @@ private Set fromIdSet(Set ids) { return methods; } - private MethodNode copy(MethodNode n) { - String[] exceptions = n.exceptions != null ? n.exceptions.toArray(new String[0]) : null; - MethodNode mn = new MethodNode(Opcodes.ASM9, n.access, n.name, n.desc, n.signature, exceptions); - n.accept(mn); - mn.access = Opcodes.ACC_STATIC | Opcodes.ACC_PRIVATE; - mn.desc = mn.desc.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC); - mn.signature = - mn.signature != null - ? mn.signature.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC) - : null; - mn.name = getActionPrefix() + mn.name; - return mn; - } - private byte[] readFully(InputStream is) throws IOException { int bufSize = 512; int pos = 0; diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbePersisted.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbePersisted.java index 1e0189399..9ddd3e40e 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbePersisted.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceProbePersisted.java @@ -23,6 +23,7 @@ import org.objectweb.asm.ClassReader; import org.objectweb.asm.ClassVisitor; +import org.objectweb.asm.ClassWriter; import org.objectweb.asm.FieldVisitor; import org.objectweb.asm.Label; import org.objectweb.asm.MethodVisitor; @@ -91,6 +92,7 @@ public class BTraceProbePersisted implements BTraceProbe { private final AtomicBoolean triedVerify = new AtomicBoolean(false); private final Map> calleeMap = new HashMap<>(); private volatile BTraceRuntime.Impl rt = null; + private volatile Class definedClass = null; private BTraceTransformer transformer; private byte[] fullData = null; private byte[] dataHolder = null; @@ -560,11 +562,13 @@ public Iterable onprobes() { @Override public Class register(BTraceRuntime.Impl rt, BTraceTransformer t) { - byte[] code = dataHolder; + byte[] code = transformAnyTypeDescriptors(fullData); if (debug.isDumpClasses()) { debug.dumpClass(delegate.getClassName(true) + "_bcp", code); } Class clz = delegate.defineClass(rt, code); + definedClass = clz; + HandlerRepositoryImpl.registerProbe(this); t.register(this); transformer = t; this.rt = rt; @@ -579,9 +583,16 @@ public void unregister() { } transformer.unregister(this); } + HandlerRepositoryImpl.unregisterProbe(this); + definedClass = null; rt = null; } + @Override + public Class getDefinedClass() { + return definedClass; + } + @Override public boolean willInstrument(Class clz) { return delegate.willInstrument(clz); @@ -594,53 +605,6 @@ public void checkVerified() { } } - @Override - public void copyHandlers(ClassVisitor copyingVisitor) { - ClassReader cr = new ClassReader(fullData); - Set copiedMethods = new HashSet<>(); - for (OnMethod om : onmethods()) { - if (om.isCalled()) { - String mid = CallGraph.methodId(om.getTargetName(), om.getTargetDescriptor()); - copiedMethods.add(mid); - Set callees = calleeMap.get(mid); - if (callees != null) { - copiedMethods.addAll(calleeMap.get(mid)); - } - } - } - cr.accept( - new ClassVisitor(ASM9) { - @Override - public void visit( - int version, - int access, - String name, - String signature, - String superName, - String[] interfaces) { - copyingVisitor.visit(version, access, name, signature, superName, interfaces); - } - - @Override - public MethodVisitor visitMethod( - int access, String name, String desc, String signature, String[] exceptions) { - String mid = CallGraph.methodId(name, desc); - if (copiedMethods.contains(mid)) { - return copyingVisitor.visitMethod( - ACC_PRIVATE | ACC_STATIC, - getActionPrefix() + name, - desc.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC), - signature != null - ? signature.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC) - : null, - exceptions); - } - return super.visitMethod(access, name, desc, signature, exceptions); - } - }, - 0); - } - @Override public void applyArgs(ArgsMap argsMap) { delegate.applyArgs(argsMap); @@ -661,6 +625,29 @@ public Set getRequiredPermissions() { return delegate.getRequiredPermissions(); } + private static byte[] transformAnyTypeDescriptors(byte[] data) { + ClassReader cr = new ClassReader(data); + ClassWriter cw = new ClassWriter(0); + cr.accept( + new ClassVisitor(ASM9, cw) { + @Override + public MethodVisitor visitMethod( + int access, String name, String desc, String sig, String[] exceptions) { + if (name.startsWith("<")) { + return super.visitMethod(access, name, desc, sig, exceptions); + } + String newDesc = desc.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC); + String newSig = + sig != null + ? sig.replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC) + : null; + return super.visitMethod(access, name, newDesc, newSig, exceptions); + } + }, + 0); + return cw.toByteArray(); + } + private void upgradeBytecode() { fullData = ProbeUpgradeVisitor_1_2.upgrade(new ClassReader(fullData)); dataHolder = ProbeUpgradeVisitor_1_2.upgrade(new ClassReader(dataHolder)); diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceTransformer.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceTransformer.java index b61693e0d..903951fdd 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceTransformer.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/BTraceTransformer.java @@ -25,10 +25,6 @@ package org.openjdk.btrace.instr; import org.objectweb.asm.Opcodes; -import org.objectweb.asm.Type; -import org.objectweb.asm.tree.InsnList; -import org.objectweb.asm.tree.InsnNode; -import org.objectweb.asm.tree.MethodNode; import org.openjdk.btrace.core.BTraceRuntime; import org.openjdk.btrace.core.DebugSupport; import org.slf4j.Logger; @@ -40,7 +36,6 @@ import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; -import java.util.HashSet; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -64,8 +59,6 @@ public final class BTraceTransformer implements ClassFileTransformer { private final ReentrantReadWriteLock setupLock = new ReentrantReadWriteLock(); private final Collection probes = new ArrayList<>(3); private final Filter filter = new Filter(); - private final Collection cushionMethods = new HashSet<>(); - public BTraceTransformer(DebugSupport d) { debug = d; } @@ -101,23 +94,6 @@ public final void unregister(BTraceProbe p) { probes.remove(p); for (OnMethod om : p.onmethods()) { filter.remove(om); - MethodNode cushionMethod = - new MethodNode( - Opcodes.ASM9, - Opcodes.ACC_PRIVATE | Opcodes.ACC_STATIC, - Instrumentor.getActionMethodName(p, om.getTargetName()), - om.getTargetDescriptor(), - null, - null); - InsnList code = new InsnList(); - code.add(new InsnNode(Opcodes.RETURN)); - cushionMethod.instructions = code; - int localSize = 0; - for (Type t : Type.getArgumentTypes(om.getTargetDescriptor())) { - localSize += t.getSize(); - } - cushionMethod.maxLocals = localSize; - cushionMethods.add(cushionMethod); } } finally { @@ -133,6 +109,16 @@ public byte[] transform( ProtectionDomain protectionDomain, byte[] classfileBuffer) throws IllegalClassFormatException { + // BTrace's own classes must never be instrumented regardless of classloader. + // This intentionally duplicates the org/openjdk/btrace/ entry in ClassFilter's + // sensitive PrefixMap. The early-exit here is needed because: + // 1. setupLock acquisition can trigger class loading on JDK 8, re-entering transform() + // 2. Agent classes loaded by MaskedClassLoader bypass the loader-based sensitive check + // (which only covers bootstrap and system classloaders) + if (className != null && className.startsWith("org/openjdk/btrace/")) { + return null; + } + try { setupLock.readLock().lock(); @@ -170,7 +156,6 @@ && isSensitiveClass(className)) { } BTraceClassReader cr = InstrumentUtils.newClassReader(loader, classfileBuffer); BTraceClassWriter cw = InstrumentUtils.newClassWriter(cr); - cw.addCushionMethods(cushionMethods); for (BTraceProbe p : probes) { p.notifyTransform(className); cw.addInstrumentor(p, loader); diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/ClassFilter.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/ClassFilter.java index 368f38d7a..333740412 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/ClassFilter.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/ClassFilter.java @@ -88,6 +88,16 @@ public class ClassFilter { SENSITIVE_CLASSES.add("sun/invoke/"); SENSITIVE_CLASSES.add("org/openjdk/btrace/"); + // JDK 8 internal packages (moved to jdk/internal/ in JDK 9+). + // Used by MethodHandle/invoke machinery during INVOKEDYNAMIC resolution. + try { + Class.forName("java.lang.Module"); + } catch (ClassNotFoundException e) { + // JDK 8 + SENSITIVE_CLASSES.add("sun/misc/"); + SENSITIVE_CLASSES.add("sun/reflect/"); + } + // Method-level exclusions for Thread: ThreadLocal accessor/mutator methods create infinite // recursion on JDK 25+ where ThreadLocal.createMap calls Thread.setThreadLocals. addSensitiveMethod("java/lang/Thread", "threadLocals"); diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/CopyingVisitor.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/CopyingVisitor.java deleted file mode 100644 index 1e08291f9..000000000 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/CopyingVisitor.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.openjdk.btrace.instr; - -import static org.objectweb.asm.Opcodes.ASM9; - -import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.MethodVisitor; -import org.objectweb.asm.Opcodes; - -class CopyingVisitor extends ClassVisitor { - private final boolean renameParent; - private final String targetClassName; - - private String origClassName; - - public CopyingVisitor(String targetClassName, boolean renameParent, ClassVisitor parent) { - super(Opcodes.ASM8, parent); - this.targetClassName = targetClassName; - this.renameParent = renameParent; - } - - @Override - public void visit( - int version, - int access, - String name, - String signature, - String superName, - String[] interfaces) { - if (renameParent) { - super.visit(version, access, targetClassName, signature, superName, interfaces); - } - origClassName = name; - } - - @Override - public MethodVisitor visitMethod( - int access, String name, String desc, String sig, String[] exceptions) { - return new MethodVisitor( - ASM9, - super.visitMethod( - Opcodes.ACC_PRIVATE | Opcodes.ACC_STATIC, getMethodName(name), desc, sig, exceptions)) { - @Override - public void visitMethodInsn( - int opcode, String owner, String name, String desc, boolean itfc) { - if (owner.equals(origClassName)) { - owner = targetClassName; - name = getActionMethodName(name); - } - super.visitMethodInsn(opcode, owner, name, desc, itfc); - } - }; - } - - protected String getActionMethodName(String name) { - return name; - } - - protected String getMethodName(String name) { - return name; - } -} diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/HandlerRepositoryImpl.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/HandlerRepositoryImpl.java index 027bec199..da860e48a 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/HandlerRepositoryImpl.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/HandlerRepositoryImpl.java @@ -1,89 +1,481 @@ +/* + * Copyright (c) 2026, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code 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 + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + package org.openjdk.btrace.instr; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import org.objectweb.asm.AnnotationVisitor; +import org.objectweb.asm.ClassReader; import org.objectweb.asm.ClassVisitor; -import org.objectweb.asm.ClassWriter; -import org.openjdk.btrace.core.DebugSupport; +import org.objectweb.asm.MethodVisitor; +import org.objectweb.asm.Opcodes; +import org.objectweb.asm.tree.AnnotationNode; import org.openjdk.btrace.core.HandlerRepository; -import org.openjdk.btrace.core.SharedSettings; +import org.openjdk.btrace.indy.IndyDispatcher; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.nio.file.StandardOpenOption; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; - -public final class HandlerRepositoryImpl { +public final class HandlerRepositoryImpl implements HandlerRepository { private static final Logger log = LoggerFactory.getLogger(HandlerRepositoryImpl.class); + private static final HandlerRepositoryImpl INSTANCE = new HandlerRepositoryImpl(); + private static final Map probeMap = new ConcurrentHashMap<>(); - private static final Map handlerBytecodeCache = new ConcurrentHashMap<>(); + private static final Map handlerCache = new ConcurrentHashMap<>(); + // Cached Field for $btrace$$level per probe — avoids repeated getDeclaredField on every entry. + private static final Map levelFieldCache = new ConcurrentHashMap<>(); + // Handler metadata extracted at registration time; used by initProbeRuntime. + private static final Map handlerMetadata = new ConcurrentHashMap<>(); static { + IndyDispatcher.repository = INSTANCE; + } + + // ── Handler metadata container ──────────────────────────────────────────── + + /** + * Lightweight snapshot of the timer/event/error/exit/low-memory handler data extracted from a + * probe's bytecode at registration time. Stored per probe so that {@link #initProbeRuntime} can + * reconstruct the arrays without re-reading class bytes at link time. + */ + static final class ProbeHandlerMetadata { + // Timer: [methodName, period (Long), fromProperty (String|null)] + final List timers = new ArrayList<>(); + // Event: [methodName, eventName (String|null)] + final List events = new ArrayList<>(); + // Error: [methodName] + final List errors = new ArrayList<>(); + // Exit: [methodName] + final List exits = new ArrayList<>(); + // LowMemory: [methodName, pool (String), threshold (Long), thresholdFrom (String|null)] + final List lowMemory = new ArrayList<>(); + } + + // ── Probe registration / deregistration ─────────────────────────────────── + + /** + * Extracts and stores handler metadata from raw probe class bytes. Must be called BEFORE + * {@link #registerProbe} (and before {@code defineClass}) because the probe's {@code } + * will invoke {@code initProbeRuntime} during class initialization, which needs the metadata. + */ + public static void preRegisterProbeBytes(byte[] classBytes) { + if (classBytes == null || classBytes.length == 0) return; try { - Class indyClz = Class.forName("org.openjdk.btrace.runtime.Indy"); - HandlerRepository hook = HandlerRepositoryImpl::getProbeHandler; - indyClz.getField("repository").set(null, hook); - } catch (UnsupportedClassVersionError ignored) { - // expected for pre Java 15 runtimes - } catch (Throwable t) { - log.warn("Unable to initialize BTrace Indy support", t); + ClassReader cr = new ClassReader(classBytes); + String probeName = cr.getClassName(); + ProbeHandlerMetadata meta = extractHandlerMetadata(classBytes); + handlerMetadata.put(probeName, meta); + } catch (Exception e) { + log.warn("Failed to pre-register probe handler metadata", e); } } public static void registerProbe(BTraceProbe probe) { - probeMap.put(probe.getClassName(true), probe); + String probeName = probe.getClassName(true); + probeMap.put(probeName, probe); + + Class clz = probe.getDefinedClass(); + if (clz != null) { + try { + Field f = clz.getDeclaredField("$btrace$$level"); + f.setAccessible(true); + levelFieldCache.put(probeName, f); + } catch (NoSuchFieldException ignored) { + // no $btrace$$level field — probe has no level restriction + } + } } public static void unregisterProbe(BTraceProbe probe) { String probeName = probe.getClassName(true); + levelFieldCache.remove(probeName); + handlerMetadata.remove(probeName); + String prefix = probeName + "#"; + handlerCache.keySet().removeIf(key -> key.startsWith(prefix)); probeMap.remove(probeName); - String probePrefix = probeName + "#"; - handlerBytecodeCache.keySet().removeIf(key -> { - int delimiterIndex = key.indexOf('#'); - return delimiterIndex > 0 && key.substring(0, delimiterIndex).equals(probeName); - }); } - public static byte[] getProbeHandler( - String callerName, String probeName, String handlerName, String handlerDesc) { - String cacheKey = probeName + "#" + handlerName + handlerDesc; + // ── Handler metadata extraction via ASM ─────────────────────────────────── - return handlerBytecodeCache.computeIfAbsent(cacheKey, k -> { - DebugSupport debugSupport = new DebugSupport(SharedSettings.GLOBAL); - BTraceProbe probe = probeMap.get(probeName); - ClassWriter writer = new ClassWriter(ClassWriter.COMPUTE_MAXS); - - String handlerClassName = callerName.replace('.', '/') + "$" + probeName.replace('/', '_'); - ClassVisitor visitor = - new CopyingVisitor(handlerClassName, true, writer) { - @Override - protected String getMethodName(String name) { - int idx = name.lastIndexOf("$"); - if (idx > -1) { - return name.substring(idx + 1); - } - return name; - } - }; - - probe.copyHandlers(visitor); - byte[] data = writer.toByteArray(); - - if (debugSupport.isDumpClasses()) { - try { - String handlerPath = - debugSupport.getDumpClassDir() + "/" + handlerClassName.replace('/', '_') + ".class"; - log.debug("BTrace INDY handler dumped: {}", handlerPath); - Files.write(Paths.get(handlerPath), data, StandardOpenOption.CREATE); - } catch (Throwable e) { - log.debug("Failed to dump BTrace INDY handler", e); + private static ProbeHandlerMetadata extractHandlerMetadata(byte[] classBytes) { + ProbeHandlerMetadata meta = new ProbeHandlerMetadata(); + if (classBytes == null) return meta; + try { + ClassReader cr = new ClassReader(classBytes); + cr.accept(new HandlerMetadataExtractor(meta), ClassReader.SKIP_DEBUG | ClassReader.SKIP_FRAMES); + } catch (Exception e) { + log.warn("Failed to extract handler metadata from probe bytecode", e); + } + return meta; + } + + /** + * ASM visitor that scans method annotations and populates a {@link ProbeHandlerMetadata}. + */ + private static final class HandlerMetadataExtractor extends ClassVisitor { + private final ProbeHandlerMetadata meta; + + HandlerMetadataExtractor(ProbeHandlerMetadata meta) { + super(Opcodes.ASM9); + this.meta = meta; + } + + @Override + public MethodVisitor visitMethod( + int access, String name, String descriptor, String signature, String[] exceptions) { + return new MethodVisitor(Opcodes.ASM9) { + @Override + public AnnotationVisitor visitAnnotation(String desc, boolean visible) { + switch (desc) { + case "Lorg/openjdk/btrace/core/annotations/OnTimer;": + return new AnnotationVisitor(Opcodes.ASM9) { + long period = -1L; + String from = null; + + @Override + public void visit(String n, Object value) { + if ("value".equals(n) && value instanceof Long) period = (Long) value; + else if ("from".equals(n) && value instanceof String) from = (String) value; + } + + @Override + public void visitEnd() { + meta.timers.add(new Object[]{name, period, from}); + } + }; + + case "Lorg/openjdk/btrace/core/annotations/OnEvent;": + return new AnnotationVisitor(Opcodes.ASM9) { + String eventName = null; + + @Override + public void visit(String n, Object value) { + if ("value".equals(n)) eventName = (String) value; + } + + @Override + public void visitEnd() { + meta.events.add(new Object[]{name, eventName}); + } + }; + + case "Lorg/openjdk/btrace/core/annotations/OnError;": + meta.errors.add(name); + return null; + + case "Lorg/openjdk/btrace/core/annotations/OnExit;": + meta.exits.add(name); + return null; + + case "Lorg/openjdk/btrace/core/annotations/OnLowMemory;": + return new AnnotationVisitor(Opcodes.ASM9) { + String pool = ""; + long threshold = Long.MAX_VALUE; + String thresholdFrom = null; + + @Override + public void visit(String n, Object value) { + if ("pool".equals(n)) pool = (String) value; + else if ("threshold".equals(n) && value instanceof Long) threshold = (Long) value; + else if ("thresholdFrom".equals(n)) thresholdFrom = (String) value; + } + + @Override + public void visitEnd() { + meta.lowMemory.add(new Object[]{name, pool, threshold, thresholdFrom}); + } + }; + + default: + return null; + } } + }; + } + } + + // ── initProbeRuntime ─────────────────────────────────────────────────────── + + /** + * Called from the probe's {@code } via INVOKEDYNAMIC "initRuntime". Builds handler + * arrays from pre-registered metadata and delegates to {@code BTraceRuntimeAccess.forClass}. + */ + @Override + public Object initProbeRuntime(Class probeClass) { + String probeName = probeClass.getName().replace('.', '/'); + ProbeHandlerMetadata meta = handlerMetadata.get(probeName); + if (meta == null) { + log.warn("No handler metadata registered for probe {}", probeName); + meta = new ProbeHandlerMetadata(); + } + try { + // Use reflection to avoid compile-time dependency on the handler types + // (which live in btrace-core but are masked .classdata on bootstrap). + ClassLoader cl = HandlerRepositoryImpl.class.getClassLoader(); + + Class timerHandlerClass = Class.forName("org.openjdk.btrace.core.handlers.TimerHandler", true, cl); + Class eventHandlerClass = Class.forName("org.openjdk.btrace.core.handlers.EventHandler", true, cl); + Class errorHandlerClass = Class.forName("org.openjdk.btrace.core.handlers.ErrorHandler", true, cl); + Class exitHandlerClass = Class.forName("org.openjdk.btrace.core.handlers.ExitHandler", true, cl); + Class lowMemHandlerClass= Class.forName("org.openjdk.btrace.core.handlers.LowMemoryHandler", true, cl); + Class rtAccessClass = Class.forName("org.openjdk.btrace.runtime.BTraceRuntimeAccess", true, cl); + + Object timerArr = buildTimerHandlers(meta, timerHandlerClass); + Object eventArr = buildEventHandlers(meta, eventHandlerClass); + Object errorArr = buildErrorHandlers(meta, errorHandlerClass); + Object exitArr = buildExitHandlers(meta, exitHandlerClass); + Object lowMemArr= buildLowMemoryHandlers(meta, lowMemHandlerClass); + + java.lang.reflect.Method forClass = rtAccessClass.getMethod( + "forClass", + Class.class, + java.lang.reflect.Array.newInstance(timerHandlerClass, 0).getClass(), + java.lang.reflect.Array.newInstance(eventHandlerClass, 0).getClass(), + java.lang.reflect.Array.newInstance(errorHandlerClass, 0).getClass(), + java.lang.reflect.Array.newInstance(exitHandlerClass, 0).getClass(), + java.lang.reflect.Array.newInstance(lowMemHandlerClass, 0).getClass()); + + return forClass.invoke(null, probeClass, timerArr, eventArr, errorArr, exitArr, lowMemArr); + } catch (Exception e) { + log.error("Failed to initialize probe runtime for {}", probeName, e); + return null; + } + } + + private static Object buildTimerHandlers(ProbeHandlerMetadata meta, Class timerClass) + throws Exception { + Object arr = java.lang.reflect.Array.newInstance(timerClass, meta.timers.size()); + java.lang.reflect.Constructor ctor = timerClass.getConstructor(String.class, long.class, String.class); + for (int i = 0; i < meta.timers.size(); i++) { + Object[] d = meta.timers.get(i); + java.lang.reflect.Array.set(arr, i, ctor.newInstance(d[0], d[1], d[2])); + } + return arr; + } + + private static Object buildEventHandlers(ProbeHandlerMetadata meta, Class eventClass) + throws Exception { + Object arr = java.lang.reflect.Array.newInstance(eventClass, meta.events.size()); + java.lang.reflect.Constructor ctor = eventClass.getConstructor(String.class, String.class); + for (int i = 0; i < meta.events.size(); i++) { + Object[] d = meta.events.get(i); + java.lang.reflect.Array.set(arr, i, ctor.newInstance(d[0], d[1])); + } + return arr; + } + + private static Object buildErrorHandlers(ProbeHandlerMetadata meta, Class errorClass) + throws Exception { + Object arr = java.lang.reflect.Array.newInstance(errorClass, meta.errors.size()); + java.lang.reflect.Constructor ctor = errorClass.getConstructor(String.class); + for (int i = 0; i < meta.errors.size(); i++) { + java.lang.reflect.Array.set(arr, i, ctor.newInstance(meta.errors.get(i))); + } + return arr; + } + + private static Object buildExitHandlers(ProbeHandlerMetadata meta, Class exitClass) + throws Exception { + Object arr = java.lang.reflect.Array.newInstance(exitClass, meta.exits.size()); + java.lang.reflect.Constructor ctor = exitClass.getConstructor(String.class); + for (int i = 0; i < meta.exits.size(); i++) { + java.lang.reflect.Array.set(arr, i, ctor.newInstance(meta.exits.get(i))); + } + return arr; + } + + private static Object buildLowMemoryHandlers(ProbeHandlerMetadata meta, Class lowMemClass) + throws Exception { + Object arr = java.lang.reflect.Array.newInstance(lowMemClass, meta.lowMemory.size()); + java.lang.reflect.Constructor ctor = + lowMemClass.getConstructor(String.class, String.class, long.class, String.class); + for (int i = 0; i < meta.lowMemory.size(); i++) { + Object[] d = meta.lowMemory.get(i); + java.lang.reflect.Array.set(arr, i, ctor.newInstance(d[0], d[1], d[2], d[3])); + } + return arr; + } + + // ── Handler resolution ──────────────────────────────────────────────────── + + @Override + public MethodHandle resolveHandler( + String probeName, String handlerName, MethodType handlerType) { + String cacheKey = probeName + "#" + handlerName + handlerType.toMethodDescriptorString(); + + // computeIfAbsent does not store null, so a null result (probe not yet ready) leaves + // the cache empty. BTrace guarantees probes are registered before instrumented classes + // can execute, so this path is only reached transiently during agent initialization. + return handlerCache.computeIfAbsent( + cacheKey, + k -> { + BTraceProbe probe = probeMap.get(probeName); + if (probe == null) { + log.warn("No probe registered for {}", probeName); + return null; + } + Class probeClass = probe.getDefinedClass(); + if (probeClass == null) { + log.warn("Probe {} not yet defined", probeName); + return null; + } + + // Strip action prefix to get the actual method name in the probe class. + // The handlerName is prefixed (e.g. "$btrace$com$example$MyProbe$onEntry"), + // and the actual method in the probe class is the part after the last '$'. + String actualName = handlerName; + int idx = handlerName.lastIndexOf('$'); + if (idx > -1) { + actualName = handlerName.substring(idx + 1); + } + + try { + return MethodHandles.publicLookup().findStatic(probeClass, actualName, handlerType); + } catch (NoSuchMethodException | IllegalAccessException e) { + log.warn( + "Failed to resolve handler {}.{} with type {}", probeName, actualName, handlerType, e); + return null; + } + }); + } + + @Override + public int getLevel(String probeName) { + Field f = levelFieldCache.get(probeName); + if (f == null) { + // Not in cache: probe has no $btrace$$level field (no level restriction), + // or probe is not registered / not yet defined. + BTraceProbe probe = probeMap.get(probeName); + if (probe == null) { + return Integer.MIN_VALUE; + } + Class clz = probe.getDefinedClass(); + return clz == null ? Integer.MIN_VALUE : Integer.MAX_VALUE; + } + try { + Object val = f.get(null); + return val instanceof Integer ? (Integer) val : Integer.MIN_VALUE; + } catch (IllegalAccessException e) { + return Integer.MIN_VALUE; + } + } + + @Override + public MethodHandle resolveRuntime(String owner, String name, MethodType type) { + String cacheKey = "rt#" + owner + "." + name + type.toMethodDescriptorString(); + + return handlerCache.computeIfAbsent( + cacheKey, + k -> resolveRuntimeUncached(owner, name, type)); + } + + private MethodHandle resolveRuntimeUncached(String owner, String name, MethodType callSiteType) { + ClassLoader cl = HandlerRepositoryImpl.class.getClassLoader(); + + // ── initRuntime ────────────────────────────────────────────────────────── + // Called from probe : INVOKEDYNAMIC "initRuntime" (Class)Object + if (Constants.BTRACERTACCESS_INTERNAL.equals(owner) && "initRuntime".equals(name)) { + try { + MethodHandle mh = + MethodHandles.lookup() + .findVirtual( + HandlerRepository.class, + "initProbeRuntime", + MethodType.methodType(Object.class, Class.class)); + // Bind to the singleton instance so the call site is (Class)Object. + return mh.bindTo(INSTANCE); + } catch (NoSuchMethodException | IllegalAccessException e) { + log.warn("Failed to resolve initProbeRuntime", e); + return null; + } + } + + // ── BTraceRuntimeAccess.enter ───────────────────────────────────────────── + // Call site: (Object)Z — Object is the runtime field value (actually BTraceRuntimeBridge). + // Actual method: BTraceRuntimeAccess.enter(BTraceRuntimeBridge)Z (static). + if (Constants.BTRACERTACCESS_INTERNAL.equals(owner) && "enter".equals(name)) { + try { + Class rtBridgeClass = + Class.forName( + Constants.BTRACERTBRIDGE_INTERNAL.replace('/', '.'), true, cl); + Class rtAccessClass = + Class.forName( + Constants.BTRACERTACCESS_INTERNAL.replace('/', '.'), true, cl); + MethodHandle mh = + MethodHandles.publicLookup() + .findStatic( + rtAccessClass, + "enter", + MethodType.methodType(boolean.class, rtBridgeClass)); + // Adapt: call site passes Object, actual method wants BTraceRuntimeBridge. + return mh.asType(callSiteType); + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException e) { + log.warn("Failed to resolve BTraceRuntimeAccess.enter", e); + return null; } + } - return data; - }); + // ── BTraceRuntimeBridge interface methods ───────────────────────────────── + // Call site: (Object, ...args)retType — first arg is the receiver as Object. + // Resolve via findVirtual on the interface; adapt Object receiver to BTraceRuntimeBridge. + if (Constants.BTRACERTBRIDGE_INTERNAL.equals(owner)) { + try { + Class rtBridgeClass = + Class.forName( + Constants.BTRACERTBRIDGE_INTERNAL.replace('/', '.'), true, cl); + // Drop the leading Object receiver from the call site type to get the method type. + // e.g. (Object)V → ()V + MethodType virtualType = callSiteType.dropParameterTypes(0, 1) + // Replace the leading parameter types with the concrete interface type for the receiver. + ; + MethodHandle mh = + MethodHandles.publicLookup().findVirtual(rtBridgeClass, name, virtualType); + // Adapt receiver from Object to BTraceRuntimeBridge (asType handles cast). + return mh.asType(callSiteType); + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException e) { + log.warn("Failed to resolve BTraceRuntimeBridge.{}", name, e); + return null; + } + } + + // ── Generic static method in agent classloader ──────────────────────────── + try { + String className = owner.replace('/', '.'); + Class clz = Class.forName(className, true, cl); + return MethodHandles.publicLookup().findStatic(clz, name, callSiteType); + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException e) { + log.warn("Failed to resolve runtime method {}.{}", owner, name, e); + return null; + } } } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/Instrumentor.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/Instrumentor.java index c11fa5001..586e3214f 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/Instrumentor.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/Instrumentor.java @@ -43,7 +43,6 @@ import org.objectweb.asm.MethodVisitor; import org.objectweb.asm.Opcodes; import org.objectweb.asm.Type; -import org.openjdk.btrace.core.BTraceRuntime; import org.openjdk.btrace.core.MethodID; import org.openjdk.btrace.core.annotations.Kind; import org.openjdk.btrace.core.annotations.Sampled; @@ -63,20 +62,11 @@ public class Instrumentor extends ClassVisitor { private String className, superName; - private final boolean useHiddenClasses; - - // Allow forcing INDY-based dispatch (no handler copying) on all JDKs via property - private static boolean useHiddenClassesInTest = false; - private Instrumentor( ClassLoader cl, BTraceProbe bcn, Collection applicables, ClassVisitor cv) { super(ASM9, cv); this.cl = cl; this.bcn = bcn; - BTraceRuntime.Impl rt = bcn.getRuntime(); - // 'rt' is null only during instrumentation tests; we want to default to in-situ instrumentation - // there - useHiddenClasses = useHiddenClassesInTest || (rt != null && rt.version() >= 15); applicableOnMethods = applicables; } @@ -1847,15 +1837,7 @@ protected void onThrow() { @Override public void visitEnd() { - if (!useHiddenClasses) { - bcn.copyHandlers( - new CopyingVisitor(className, false, this) { - @Override - protected String getActionMethodName(String name) { - return Instrumentor.this.getActionMethodName(name); - } - }); - } + // All handler dispatch goes through INVOKEDYNAMIC; no handler copying needed. cv.visitEnd(); } @@ -1863,36 +1845,28 @@ static String getActionMethodName(BTraceProbe bp, String name) { return InstrumentUtils.getActionPrefix(bp.getClassName(true)) + name; } - private String getActionMethodName(String name) { - return getActionMethodName(bcn, name); - } + private static final String INDY_DISPATCHER_INTERNAL = "org/openjdk/btrace/indy/IndyDispatcher"; + private static final MethodType BOOTSTRAP_MT = + MethodType.methodType( + CallSite.class, + MethodHandles.Lookup.class, + String.class, + MethodType.class, + String.class); + private static final Handle BOOTSTRAP_HANDLE = + new Handle( + H_INVOKESTATIC, + INDY_DISPATCHER_INTERNAL, + "bootstrap", + BOOTSTRAP_MT.toMethodDescriptorString(), + false); private void invokeBTraceAction(Assembler asm, OnMethod om) { - if (useHiddenClasses) { - MethodType mt = - MethodType.methodType( - CallSite.class, - MethodHandles.Lookup.class, - String.class, - MethodType.class, - String.class); - - asm.invokeDynamic( - getActionMethodName(om.getTargetName()), - om.getTargetDescriptor().replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC), - new Handle( - H_INVOKESTATIC, - "org/openjdk/btrace/runtime/Indy", - "bootstrap", - mt.toMethodDescriptorString(), - false), - bcn.getClassName(true)); - } else { - asm.invokeStatic( - className, - getActionMethodName(om.getTargetName()), - om.getTargetDescriptor().replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC)); - } + asm.invokeDynamic( + getActionMethodName(bcn, om.getTargetName()), + om.getTargetDescriptor().replace(Constants.ANYTYPE_DESC, Constants.OBJECT_DESC), + BOOTSTRAP_HANDLE, + bcn.getClassName(true)); calledOnMethods.add(om); om.setCalled(); } @@ -1935,7 +1909,4 @@ private boolean typeMatches(String decl, String desc, boolean exactTypeMatch) { } } - boolean hasCushionMethods() { - return !useHiddenClasses; - } } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/LinkerInstrumentor.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/LinkerInstrumentor.java index 5b9bc24c2..855bb48a4 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/LinkerInstrumentor.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/LinkerInstrumentor.java @@ -7,12 +7,16 @@ import org.objectweb.asm.MethodVisitor; import org.objectweb.asm.Opcodes; import org.objectweb.asm.Type; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * This is used to inject code to set/unset linking flag to make sure no BTrace * code is executed while invokedynamic is being linked. */ public final class LinkerInstrumentor { + private static final Logger log = LoggerFactory.getLogger(LinkerInstrumentor.class); + private static class LinkerMethodVisitor extends MethodVisitor { private final Label tryStart = new Label(); private final Label tryEnd = new Label(); @@ -77,7 +81,20 @@ public MethodVisitor visitMethod(int access, String name, String descriptor, Str } public static byte[] addGuard(byte[] classData) { ClassReader cr = new ClassReader(classData); - ClassWriter cw = new ClassWriter(cr, ClassWriter.COMPUTE_FRAMES); + ClassWriter cw = new ClassWriter(cr, ClassWriter.COMPUTE_FRAMES) { + @Override + protected String getCommonSuperClass(String type1, String type2) { + // MethodHandleNatives references package-private types (MemberName, LambdaForm, etc.) + // that may not be resolvable via Class.forName() from the agent classloader. + // Fall back to Object rather than letting the instrumentation fail entirely. + try { + return super.getCommonSuperClass(type1, type2); + } catch (RuntimeException e) { + log.debug("getCommonSuperClass({}, {}) failed, falling back to Object", type1, type2, e); + return "java/lang/Object"; + } + } + }; cr.accept(new LinkerClassVisitor(cw), ClassReader.EXPAND_FRAMES); return cw.toByteArray(); } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/MethodTrackingContext.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/MethodTrackingContext.java index f5f38ee61..1e215d953 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/MethodTrackingContext.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/MethodTrackingContext.java @@ -32,7 +32,6 @@ import org.objectweb.asm.Label; import org.objectweb.asm.Type; import org.openjdk.btrace.core.annotations.Sampled; -import org.openjdk.btrace.instr.Constants; import org.openjdk.btrace.runtime.Interval; /** @@ -59,7 +58,6 @@ public class MethodTrackingContext { private int entryTsVar = Integer.MIN_VALUE; private int sHitVar = Integer.MIN_VALUE; private int durationVar = Integer.MIN_VALUE; - private int globalLevelVar = Integer.MIN_VALUE; private boolean durationComputed = false; private boolean prologueEmitted = false; private Label elseLabel = null; @@ -185,7 +183,7 @@ public void emitExit(int methodId) { asm.loadLocal(Type.INT_TYPE, sHitVar) .jump(IFEQ, l) .ldc(methodId) - .invokeStatic(METHOD_COUNTER_CLASS, "updateEndTs", "(I)V") + .invokeRuntime(METHOD_COUNTER_CLASS, "updateEndTs", "(I)V") .label(l); helper.insertFrameSameStack(l); } @@ -195,7 +193,6 @@ public void emitExit(int methodId) { public void reset() { entryTsVar = Integer.MIN_VALUE; sHitVar = Integer.MIN_VALUE; - globalLevelVar = Integer.MIN_VALUE; durationComputed = false; } @@ -248,42 +245,11 @@ public Label emitHandlerLevelCheck(String levelStr) { Label skipLabel = new Label(); - // Load level variable (cached if multiple handlers need it) - if (helper.shouldCacheLevelVar()) { - if (globalLevelVar == Integer.MIN_VALUE) { - asm.getStatic(probeClassName, Constants.BTRACE_LEVEL_FLD, Constants.INT_DESC).dup(); - globalLevelVar = helper.storeAsNew(); - } else { - asm.loadLocal(Type.INT_TYPE, globalLevelVar); - } - } else { - // Single handler case: just load without caching - asm.getStatic(probeClassName, Constants.BTRACE_LEVEL_FLD, Constants.INT_DESC); - } - - // Perform comparison based on interval - if (itv.getA() > 0 && itv.getB() >= Integer.MAX_VALUE) { - // Check level >= A (or level < A, skip) - asm.ldc(itv.getA()).jump(IF_ICMPLT, skipLabel); - } else if (itv.getA() <= 0 && itv.getB() < Integer.MAX_VALUE) { - // Check level <= B (or level > B, skip) - asm.ldc(itv.getB()).jump(IF_ICMPGT, skipLabel); - } else { - // Range check: A <= level <= B - // Check both lower and upper bounds - if (itv.getA() > 0) { - asm.ldc(itv.getA()).jump(IF_ICMPLT, skipLabel); // Skip if level < A - // Reload for second check (from cache if available, otherwise from static field) - if (helper.shouldCacheLevelVar()) { - asm.loadLocal(Type.INT_TYPE, globalLevelVar); - } else { - asm.getStatic(probeClassName, Constants.BTRACE_LEVEL_FLD, Constants.INT_DESC); - } - } - if (itv.getB() < Integer.MAX_VALUE) { - asm.ldc(itv.getB()).jump(IF_ICMPGT, skipLabel); // Skip if level > B - } - } + int lo = itv.getA() <= 0 ? 0 : itv.getA(); + int hi = itv.getB(); + // INDY returns 1 if probe level in [lo, hi], 0 otherwise; skip handler if out of range + asm.invokeDynamic("levelCheck", "()I", Assembler.LEVEL_BOOTSTRAP_HANDLE, probeClassName, lo, hi) + .jump(IFEQ, skipLabel); return skipLabel; } @@ -313,10 +279,10 @@ private void emitTimingSamplerEntry(int mid) { asm.ldc(mid); switch (samplerKind) { case Const: - asm.invokeStatic(METHOD_COUNTER_CLASS, "hitTimed", "(I)J"); + asm.invokeRuntime(METHOD_COUNTER_CLASS, "hitTimed", "(I)J"); break; case Adaptive: - asm.invokeStatic(METHOD_COUNTER_CLASS, "hitTimedAdaptive", "(I)J"); + asm.invokeRuntime(METHOD_COUNTER_CLASS, "hitTimedAdaptive", "(I)J"); break; default: // do nothing @@ -356,10 +322,10 @@ private void emitSamplerEntry(int mid) { asm.ldc(mid); switch (samplerKind) { case Const: - asm.invokeStatic(METHOD_COUNTER_CLASS, "hit", "(I)Z"); + asm.invokeRuntime(METHOD_COUNTER_CLASS, "hit", "(I)Z"); break; case Adaptive: - asm.invokeStatic(METHOD_COUNTER_CLASS, "hitAdaptive", "(I)Z"); + asm.invokeRuntime(METHOD_COUNTER_CLASS, "hitAdaptive", "(I)Z"); break; default: // do nothing @@ -418,7 +384,7 @@ private void emitTimingSamplerTest(int mid) { if (!durationComputed) { if (entryTsVar != Integer.MIN_VALUE) { asm.ldc(mid) - .invokeStatic(METHOD_COUNTER_CLASS, "getEndTs", "(I)J") + .invokeRuntime(METHOD_COUNTER_CLASS, "getEndTs", "(I)J") .loadLocal(Type.LONG_TYPE, entryTsVar) .sub(Type.LONG_TYPE); } else { @@ -473,42 +439,12 @@ private Label addLevelChecks(Label skip, Runnable initializer) { skipTarget = skip != null ? skip : new Label(); for (Interval i : optimized) { - Label nextCheck = new Label(); - if (globalLevelVar == Integer.MIN_VALUE) { - asm.getStatic(probeClassName, Constants.BTRACE_LEVEL_FLD, Constants.INT_DESC).dup(); - globalLevelVar = helper.storeAsNew(); - } else { - asm.loadLocal(Type.INT_TYPE, globalLevelVar); - } - - boolean stackConsumed = false; - if (i.getA() > Integer.MIN_VALUE) { - stackConsumed = true; - if (i.getA() == 0) { - asm.jump(IFLT, nextCheck); - } else { - asm.ldc(i.getA()).jump(IF_ICMPLT, nextCheck); - } - } - - if (i.getB() < Integer.MAX_VALUE) { - if (stackConsumed) { - asm.loadLocal(Type.INT_TYPE, globalLevelVar); - } - if (i.getB() == 0) { - asm.jump(IFLE, skipTarget); - } else { - asm.ldc(i.getB()).jump(IF_ICMPLE, skipTarget); - } - } else { - Label l = new Label(); - asm.label(l); - helper.insertFrameSameStack(l); - asm.jump(GOTO, skipTarget); - } - - asm.label(nextCheck); - helper.insertFrameSameStack(nextCheck); + int lo = i.getA() == Integer.MIN_VALUE ? Integer.MIN_VALUE : i.getA(); + int hi = i.getB(); + // INDY returns 1 if level in [lo, hi]; jump to skipTarget if in skip range + asm.invokeDynamic( + "levelCheck", "()I", Assembler.LEVEL_BOOTSTRAP_HANDLE, probeClassName, lo, hi) + .jump(IFNE, skipTarget); } } } diff --git a/btrace-instr/src/main/java/org/openjdk/btrace/instr/Preprocessor.java b/btrace-instr/src/main/java/org/openjdk/btrace/instr/Preprocessor.java index 687a0e7e1..8c5056109 100644 --- a/btrace-instr/src/main/java/org/openjdk/btrace/instr/Preprocessor.java +++ b/btrace-instr/src/main/java/org/openjdk/btrace/instr/Preprocessor.java @@ -51,7 +51,6 @@ import org.openjdk.btrace.core.annotations.Event; import org.openjdk.btrace.core.annotations.Return; import org.openjdk.btrace.core.extensions.Extension; -import org.openjdk.btrace.core.BTraceRuntimeBridge; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -97,20 +96,6 @@ final class Preprocessor { private static final Type EXPORT_TYPE = Type.getType("L" + ANNOTATIONS_PREFIX + "Export;"); private static final Type INJECTED_TYPE = Type.getType("L" + ANNOTATIONS_PREFIX + "Injected;"); private static final Type EVENT_TYPE = Type.getType("L" + ANNOTATIONS_PREFIX + "Event;"); - private static final String TIMERHANDLER_INTERNAL = - "org/openjdk/btrace/core/handlers/TimerHandler"; - private static final String TIMERHANDLER_DESC = "L" + TIMERHANDLER_INTERNAL + ";"; - private static final String EVENTHANDLER_INTERNAL = - "org/openjdk/btrace/core/handlers/EventHandler"; - private static final String EVENTHANDLER_DESC = "L" + EVENTHANDLER_INTERNAL + ";"; - private static final String ERRORHANDLER_INTERNAL = - "org/openjdk/btrace/core/handlers/ErrorHandler"; - private static final String ERRORHANDLER_DESC = "L" + ERRORHANDLER_INTERNAL + ";"; - private static final String EXITHANDLER_INTERNAL = "org/openjdk/btrace/core/handlers/ExitHandler"; - private static final String EXITHANDLER_DESC = "L" + EXITHANDLER_INTERNAL + ";"; - private static final String LOWMEMORYHANDLER_INTERNAL = - "org/openjdk/btrace/core/handlers/LowMemoryHandler"; - private static final String LOWMEMORYHANDLER_DESC = "L" + LOWMEMORYHANDLER_INTERNAL + ";"; private static final String NEW_TLS_DESC = "(" + Constants.OBJECT_DESC + ")" + Constants.THREAD_LOCAL_DESC; private static final String TLS_SET_DESC = @@ -123,25 +108,47 @@ final class Preprocessor { + Constants.STRING_DESC + ")" + Constants.VOID_DESC; - private static final String BTRACERT_FOR_CLASS_DESC = - "(" - + Constants.CLASS_DESC - + "[" - + TIMERHANDLER_DESC - + "[" - + EVENTHANDLER_DESC - + "[" - + ERRORHANDLER_DESC - + "[" - + EXITHANDLER_DESC - + "[" - + LOWMEMORYHANDLER_DESC - + ")" - + Constants.BTRACERTBRIDGE_DESC; - private static final String BTRACERT_ENTER_DESC = - "(" + Constants.BTRACERTBRIDGE_DESC + ")" + Constants.BOOLEAN_DESC; private static final String BTRACERT_HANDLE_EXCEPTION_DESC = "(" + Constants.THROWABLE_DESC + ")" + Constants.VOID_DESC; + + // INVOKEDYNAMIC descriptors — all BTraceRuntimeBridge/BTraceRuntimeAccess + // references are routed through IndyDispatcher.runtimeBootstrap so that the + // probe class (defined on the bootstrap classloader) never directly references + // masked .classdata classes. + + // runtimeBootstrap handle: (Lookup,String,MethodType,String)CallSite + private static final String RUNTIME_BOOTSTRAP_DESC = + "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;" + + "Ljava/lang/invoke/MethodType;Ljava/lang/String;)" + + "Ljava/lang/invoke/CallSite;"; + private static final Handle RUNTIME_BOOTSTRAP_HANDLE = + new Handle( + Opcodes.H_INVOKESTATIC, + "org/openjdk/btrace/indy/IndyDispatcher", + "runtimeBootstrap", + RUNTIME_BOOTSTRAP_DESC, + false); + + // Indy call site descriptors + // initRuntime: (Class)Object + private static final String INDY_INIT_RUNTIME_DESC = + "(" + Constants.CLASS_DESC + ")" + Constants.OBJECT_DESC; + // enter: (Object)Z + private static final String INDY_ENTER_DESC = + "(" + Constants.OBJECT_DESC + ")" + Constants.BOOLEAN_DESC; + // start/leave: (Object)V + private static final String INDY_VOID_INSTANCE_DESC = + "(" + Constants.OBJECT_DESC + ")" + Constants.VOID_DESC; + // handleException: (Object,Throwable)V + private static final String INDY_HANDLE_EXCEPTION_DESC = + "(" + Constants.OBJECT_DESC + Constants.THROWABLE_DESC + ")" + Constants.VOID_DESC; + // newPerfCounter: (Object,Object,String,String)V + private static final String INDY_NEW_PERFCOUNTER_DESC = + "(" + Constants.OBJECT_DESC + Constants.OBJECT_DESC + Constants.STRING_DESC + + Constants.STRING_DESC + ")" + Constants.VOID_DESC; + // newThreadLocal: (Object)ThreadLocal + private static final String INDY_NEW_TLS_DESC = + "(" + Constants.OBJECT_DESC + ")" + Constants.THREAD_LOCAL_DESC; private static final String RT_CTX_INTERNAL = "org/openjdk/btrace/core/extensions/ExtensionContext"; private static final String RT_CTX_DESC = "L" + RT_CTX_INTERNAL + ";"; private static final Type RT_CTX_TYPE = Type.getType(RT_CTX_DESC); @@ -619,13 +626,13 @@ private void initTLS(ClassNode cn, FieldNode fn, String typeDesc) { private InsnList tlsInitSequence(ClassNode cn, String name, String desc) { InsnList initList = new InsnList(); + // INVOKEDYNAMIC: avoid direct reference to BTraceRuntimeAccess (.classdata) initList.add( - new MethodInsnNode( - Opcodes.INVOKESTATIC, - Constants.BTRACERTACCESS_INTERNAL, + new InvokeDynamicInsnNode( "newThreadLocal", - NEW_TLS_DESC, - false)); + INDY_NEW_TLS_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTACCESS_INTERNAL)); initList.add(new FieldInsnNode(Opcodes.PUTSTATIC, cn.name, name, desc)); return initList; } @@ -638,17 +645,18 @@ private void initExport(ClassNode cn, FieldNode fn, String typeDesc) { private InsnList exportInitSequence(ClassNode cn, String name, String desc) { InsnList init = new InsnList(); + // Stack before INVOKEDYNAMIC: [runtime:Object, value:Object, perfName:String, typeDesc:String] + // The receiver (runtime) is the first arg of the INDY descriptor. init.add(getRuntimeImpl(cn)); init.add(new InsnNode(Opcodes.SWAP)); init.add(new LdcInsnNode(perfCounterName(cn, name))); init.add(new LdcInsnNode(desc)); init.add( - new MethodInsnNode( - Opcodes.INVOKEINTERFACE, - Constants.BTRACERTBRIDGE_INTERNAL, + new InvokeDynamicInsnNode( "newPerfCounter", - NEW_PERFCOUNTER_DESC, - true)); + INDY_NEW_PERFCOUNTER_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTBRIDGE_INTERNAL)); return init; } @@ -683,7 +691,7 @@ private void initAnnotatedField(FieldNode fn, String typeDesc, InsnList initList addDefaultVal(Type.getType(typeDesc), initList); } } - MethodInsnNode rtStart = findBTraceRuntimeStart(); + InvokeDynamicInsnNode rtStart = findBTraceRuntimeStart(); if (rtStart != null) { l.insertBefore(rtStart, initList); } else { @@ -842,19 +850,18 @@ private void initRuntime(ClassNode cn, MethodNode clinit) { addRuntimeNode(cn); InsnList l = new InsnList(); + // Use INVOKEDYNAMIC so the probe class (on bootstrap classloader) never + // directly references BTraceRuntimeAccess or the handler types — all masked + // .classdata classes invisible to bootstrap on JDK 8. + // HandlerRepositoryImpl.initProbeRuntime resolves the actual BTraceRuntimeBridge + // instance at link time using pre-registered handler metadata. l.add(new LdcInsnNode(Type.getObjectType(cn.name))); - l.add(loadTimerHandlers(cn)); - l.add(loadEventHandlers(cn)); - l.add(loadErrorHandlers(cn)); - l.add(loadExitHandlers(cn)); - l.add(loadLowMemoryHandlers(cn)); l.add( - new MethodInsnNode( - Opcodes.INVOKESTATIC, - Constants.BTRACERTACCESS_INTERNAL, - "forClass", - BTRACERT_FOR_CLASS_DESC, - false)); + new InvokeDynamicInsnNode( + "initRuntime", + INDY_INIT_RUNTIME_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTACCESS_INTERNAL)); l.add(new FieldInsnNode(Opcodes.PUTSTATIC, cn.name, rtField.name, rtField.desc)); // Mark where the error handler should start (after runtime is set) @@ -871,257 +878,25 @@ private void initRuntime(ClassNode cn, MethodNode clinit) { startRuntime(cn, clinit); } - private InsnList loadTimerHandlers(ClassNode cn) { - InsnList il = new InsnList(); - int cnt = 0; - for (MethodNode mn : cn.methods) { - if (mn.visibleAnnotations != null) { - AnnotationNode an = mn.visibleAnnotations.get(0); - if (an.desc.equals(Constants.ONTIMER_DESC)) { - Iterator anValueIterator = an.values != null ? an.values.iterator() : null; - if (anValueIterator != null) { - long period = -1; - String property = null; - - while (anValueIterator.hasNext()) { - String key = (String) anValueIterator.next(); - Object value = anValueIterator.next(); - - if (value != null) { - switch (key) { - case "value": - { - period = (Long) value; - break; - } - case "from": - { - property = (String) value; - break; - } - } - } - } - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(cnt++)); - il.add(new TypeInsnNode(Opcodes.NEW, TIMERHANDLER_INTERNAL)); - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(mn.name)); - il.add(new LdcInsnNode(period)); - il.add( - property != null ? new LdcInsnNode(property) : new InsnNode(Opcodes.ACONST_NULL)); - il.add( - new MethodInsnNode( - Opcodes.INVOKESPECIAL, - TIMERHANDLER_INTERNAL, - "", - "(Ljava/lang/String;JLjava/lang/String;)V", - false)); - il.add(new InsnNode(Opcodes.AASTORE)); - } - } - } - } - if (cnt > 0) { - InsnList newArray = new InsnList(); - newArray.add(new LdcInsnNode(cnt)); - newArray.add(new TypeInsnNode(Opcodes.ANEWARRAY, TIMERHANDLER_INTERNAL)); - il.insert(newArray); - } else { - il.insert(new InsnNode(Opcodes.ACONST_NULL)); - } - - return il; - } - - private InsnList loadEventHandlers(ClassNode cn) { - InsnList il = new InsnList(); - int cnt = 0; - for (MethodNode mn : cn.methods) { - if (mn.visibleAnnotations != null) { - AnnotationNode an = mn.visibleAnnotations.get(0); - if (an.desc.equals(Constants.ONEVENT_DESC)) { - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(cnt++)); - il.add(new TypeInsnNode(Opcodes.NEW, EVENTHANDLER_INTERNAL)); - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(mn.name)); - il.add( - an.values != null - ? new LdcInsnNode(an.values.get(1)) - : new InsnNode(Opcodes.ACONST_NULL)); - il.add( - new MethodInsnNode( - Opcodes.INVOKESPECIAL, - EVENTHANDLER_INTERNAL, - "", - "(Ljava/lang/String;Ljava/lang/String;)V", - false)); - il.add(new InsnNode(Opcodes.AASTORE)); - } - } - } - if (cnt > 0) { - InsnList newArray = new InsnList(); - newArray.add(new LdcInsnNode(cnt)); - newArray.add(new TypeInsnNode(Opcodes.ANEWARRAY, EVENTHANDLER_INTERNAL)); - il.insert(newArray); - } else { - il.insert(new InsnNode(Opcodes.ACONST_NULL)); - } - - return il; - } - - private InsnList loadErrorHandlers(ClassNode cn) { - InsnList il = new InsnList(); - int cnt = 0; - for (MethodNode mn : cn.methods) { - if (mn.visibleAnnotations != null) { - AnnotationNode an = mn.visibleAnnotations.get(0); - if (an.desc.equals(Constants.ONERROR_DESC)) { - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(cnt++)); - il.add(new TypeInsnNode(Opcodes.NEW, ERRORHANDLER_INTERNAL)); - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(mn.name)); - il.add( - new MethodInsnNode( - Opcodes.INVOKESPECIAL, - ERRORHANDLER_INTERNAL, - "", - "(Ljava/lang/String;)V", - false)); - il.add(new InsnNode(Opcodes.AASTORE)); - } - } - } - if (cnt > 0) { - InsnList newArray = new InsnList(); - newArray.add(new LdcInsnNode(cnt)); - newArray.add(new TypeInsnNode(Opcodes.ANEWARRAY, ERRORHANDLER_INTERNAL)); - il.insert(newArray); - } else { - il.insert(new InsnNode(Opcodes.ACONST_NULL)); - } - - return il; - } - - private InsnList loadExitHandlers(ClassNode cn) { - InsnList il = new InsnList(); - int cnt = 0; - for (MethodNode mn : cn.methods) { - if (mn.visibleAnnotations != null) { - AnnotationNode an = mn.visibleAnnotations.get(0); - if (an.desc.equals(Constants.ONEXIT_DESC)) { - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(cnt++)); - il.add(new TypeInsnNode(Opcodes.NEW, EXITHANDLER_INTERNAL)); - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(mn.name)); - il.add( - new MethodInsnNode( - Opcodes.INVOKESPECIAL, - EXITHANDLER_INTERNAL, - "", - "(Ljava/lang/String;)V", - false)); - il.add(new InsnNode(Opcodes.AASTORE)); - } - } - } - if (cnt > 0) { - InsnList newArray = new InsnList(); - newArray.add(new LdcInsnNode(cnt)); - newArray.add(new TypeInsnNode(Opcodes.ANEWARRAY, EXITHANDLER_INTERNAL)); - il.insert(newArray); - } else { - il.insert(new InsnNode(Opcodes.ACONST_NULL)); - } - - return il; - } - - private InsnList loadLowMemoryHandlers(ClassNode cn) { - InsnList il = new InsnList(); - int cnt = 0; - for (MethodNode mn : cn.methods) { - if (mn.visibleAnnotations != null) { - AnnotationNode an = mn.visibleAnnotations.get(0); - if (an.desc.equals(Constants.ONLOWMEMORY_DESC)) { - String pool = ""; - long threshold = Long.MAX_VALUE; - String thresholdProp = null; - - for (int i = 0; i < an.values.size(); i += 2) { - String key = (String) an.values.get(i); - Object val = an.values.get(i + 1); - switch (key) { - case "pool": - { - pool = (String) val; - break; - } - case "threshold": - { - threshold = (long) val; - break; - } - case "thresholdFrom": - { - thresholdProp = (String) val; - break; - } - } - } - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(cnt++)); - il.add(new TypeInsnNode(Opcodes.NEW, LOWMEMORYHANDLER_INTERNAL)); - il.add(new InsnNode(Opcodes.DUP)); - il.add(new LdcInsnNode(mn.name)); - il.add(new LdcInsnNode(pool)); - il.add(new LdcInsnNode(threshold)); - il.add(new LdcInsnNode(thresholdProp)); - il.add( - new MethodInsnNode( - Opcodes.INVOKESPECIAL, - LOWMEMORYHANDLER_INTERNAL, - "", - "(Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;)V", - false)); - il.add(new InsnNode(Opcodes.AASTORE)); - } - } - } - if (cnt > 0) { - InsnList newArray = new InsnList(); - newArray.add(new LdcInsnNode(cnt)); - newArray.add(new TypeInsnNode(Opcodes.ANEWARRAY, EXITHANDLER_INTERNAL)); - il.insert(newArray); - } else { - il.insert(new InsnNode(Opcodes.ACONST_NULL)); - } - - return il; - } - private void startRuntime(ClassNode cNode, MethodNode clinit1) { for (AbstractInsnNode n = clinit1.instructions.getFirst(); n != null; n = n.getNext()) { if (n.getOpcode() == Opcodes.RETURN) { AbstractInsnNode prev = n.getPrevious(); - if (prev != null && prev.getType() == AbstractInsnNode.METHOD_INSN) { - MethodInsnNode minNode = (MethodInsnNode) prev; - if (minNode.name.equals("leave")) { - // don't start the runtime if we are bailing out (BTraceRuntime.leave()) + if (prev != null && prev.getType() == AbstractInsnNode.INVOKE_DYNAMIC_INSN) { + InvokeDynamicInsnNode indyNode = (InvokeDynamicInsnNode) prev; + if (indyNode.name.equals("leave")) { + // don't start the runtime if we are bailing out (runtime.leave()) continue; } } InsnList il = new InsnList(); il.add(getRuntimeImpl(cNode)); il.add( - new MethodInsnNode( - Opcodes.INVOKEINTERFACE, Constants.BTRACERTBRIDGE_INTERNAL, "start", "()V", true)); + new InvokeDynamicInsnNode( + "start", + INDY_VOID_INSTANCE_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTBRIDGE_INTERNAL)); clinit1.instructions.insertBefore(n, il); } } @@ -1135,18 +910,24 @@ private InsnList getRuntimeExit(ClassNode cn) { InsnList il = new InsnList(); il.add(getRuntimeImpl(cn)); il.add( - new MethodInsnNode( - Opcodes.INVOKEINTERFACE, Constants.BTRACERTBRIDGE_INTERNAL, "leave", "()V", true)); + new InvokeDynamicInsnNode( + "leave", + INDY_VOID_INSTANCE_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTBRIDGE_INTERNAL)); return il; } private void addRuntimeNode(ClassNode cn) { + // Use Object as field type so the probe class (loaded on the bootstrap classloader) + // never directly references BTraceRuntimeBridge, which is a masked .classdata file + // invisible to the bootstrap classloader on JDK 8. rtField = new FieldNode( Opcodes.ASM9, (Opcodes.ACC_PUBLIC | Opcodes.ACC_STATIC), "runtime", - Type.getDescriptor(BTraceRuntimeBridge.class), + Constants.OBJECT_DESC, null, null); cn.fields.add(0, rtField); @@ -1173,16 +954,17 @@ private void addBTraceErrorHandler(ClassNode cn, MethodNode mn) { // add proper stackframe map node l.add(throwableHandlerFrame(mn)); + // Stack at handler entry: [throwable:Throwable] + // We need: runtime.handleException(throwable) → INDY (Object,Throwable)V l.add(getRuntimeImpl(cn)); l.add(new InsnNode(Opcodes.DUP_X1)); l.add(new InsnNode(Opcodes.SWAP)); l.add( - new MethodInsnNode( - Opcodes.INVOKEINTERFACE, - Constants.BTRACERTBRIDGE_INTERNAL, + new InvokeDynamicInsnNode( "handleException", - BTRACERT_HANDLE_EXCEPTION_DESC, - true)); + INDY_HANDLE_EXCEPTION_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTBRIDGE_INTERNAL)); l.add(getReturnSequence(cn, mn, true)); mn.tryCatchBlocks.add(new TryCatchBlockNode(from, to, to, Constants.THROWABLE_INTERNAL)); @@ -1247,13 +1029,16 @@ private void addBTraceRuntimeEnter(ClassNode cn, MethodNode mn) { private void addRuntimeCheck(ClassNode cn, MethodNode mn, InsnList entryCheck, boolean b) { LabelNode start = new LabelNode(); + // INVOKEDYNAMIC so the probe class never directly references BTraceRuntimeAccess + // (masked .classdata, invisible to bootstrap classloader on JDK 8). + // The Object on the stack is the runtime field value; resolveRuntime adapts + // it to BTraceRuntimeBridge via asType() before calling BTraceRuntimeAccess.enter. entryCheck.add( - new MethodInsnNode( - Opcodes.INVOKESTATIC, - Constants.BTRACERTACCESS_INTERNAL, + new InvokeDynamicInsnNode( "enter", - BTRACERT_ENTER_DESC, - false)); + INDY_ENTER_DESC, + RUNTIME_BOOTSTRAP_HANDLE, + Constants.BTRACERTACCESS_INTERNAL)); entryCheck.add(new JumpInsnNode(Opcodes.IFNE, start)); entryCheck.add(getReturnSequence(cn, mn, b)); entryCheck.add(start); @@ -1344,14 +1129,14 @@ private FieldInsnNode findNodeInitialization(FieldNode fn) { return null; } - private MethodInsnNode findBTraceRuntimeStart() { + private InvokeDynamicInsnNode findBTraceRuntimeStart() { for (AbstractInsnNode n = clinit.instructions.getFirst(); n != null; n = n.getNext()) { - if (n.getType() == AbstractInsnNode.METHOD_INSN) { - MethodInsnNode minNode = (MethodInsnNode) n; - if (minNode.getOpcode() == Opcodes.INVOKEINTERFACE - && minNode.owner.equals(Constants.BTRACERTBRIDGE_INTERNAL) - && minNode.name.equals("start")) { - return minNode; + if (n.getType() == AbstractInsnNode.INVOKE_DYNAMIC_INSN) { + InvokeDynamicInsnNode indyNode = (InvokeDynamicInsnNode) n; + if (indyNode.name.equals("start") + && indyNode.bsmArgs.length > 0 + && Constants.BTRACERTBRIDGE_INTERNAL.equals(indyNode.bsmArgs[0])) { + return indyNode; } } } @@ -1484,15 +1269,16 @@ private AbstractInsnNode updateExportUsage(ClassNode cn, FieldInsnNode fin, Insn } } toInsert.add(new LdcInsnNode(perfCounterName(cn, fin.name))); + // INVOKEDYNAMIC: prepend Object receiver (runtime) to the descriptor. + // putPerf*: (Object, value, String)V / getPerf*: (Object, String)T + String indyDesc = + isPut + ? Type.getMethodDescriptor( + Type.VOID_TYPE, Constants.OBJECT_TYPE, tType, Constants.STRING_TYPE) + : Type.getMethodDescriptor(tType, Constants.OBJECT_TYPE, Constants.STRING_TYPE); toInsert.add( - new MethodInsnNode( - Opcodes.INVOKEINTERFACE, - Constants.BTRACERTBRIDGE_INTERNAL, - methodName, - isPut - ? Type.getMethodDescriptor(Type.VOID_TYPE, tType, Constants.STRING_TYPE) - : Type.getMethodDescriptor(tType, Constants.STRING_TYPE), - true)); + new InvokeDynamicInsnNode( + methodName, indyDesc, RUNTIME_BOOTSTRAP_HANDLE, Constants.BTRACERTBRIDGE_INTERNAL)); l.insert(fin, toInsert); } AbstractInsnNode ret = fin.getNext(); diff --git a/btrace-instr/src/test/java/org/openjdk/btrace/instr/HandlerRepositoryImplTest.java b/btrace-instr/src/test/java/org/openjdk/btrace/instr/HandlerRepositoryImplTest.java index 081f05221..d7c9d75e4 100644 --- a/btrace-instr/src/test/java/org/openjdk/btrace/instr/HandlerRepositoryImplTest.java +++ b/btrace-instr/src/test/java/org/openjdk/btrace/instr/HandlerRepositoryImplTest.java @@ -2,77 +2,316 @@ import static org.junit.jupiter.api.Assertions.*; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodType; +import java.util.Collection; +import java.util.Collections; +import java.util.Set; +import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import org.openjdk.btrace.core.ArgsMap; +import org.openjdk.btrace.core.BTraceRuntime; +import org.openjdk.btrace.core.HandlerRepository; +import org.openjdk.btrace.core.extensions.Permission; +import org.openjdk.btrace.indy.IndyDispatcher; /** - * Tests for HandlerRepositoryImpl cache invalidation logic. + * Tests for HandlerRepositoryImpl: resolveHandler, resolveRuntime, and unregisterProbe cache + * invalidation. */ -class HandlerRepositoryImplTest { +public class HandlerRepositoryImplTest { + + /** + * Public static handler class so MethodHandles.publicLookup() can find its methods. + */ + public static class TestHandlers { + public static void onEntry() {} + + public static void onEntryWithArgs(String pcn, String pmn) {} + + public static boolean hit(int mid) { + return true; + } + } + + @BeforeAll + static void loadHandlerRepository() throws Exception { + // Trigger HandlerRepositoryImpl static initializer, which sets IndyDispatcher.repository + Class.forName("org.openjdk.btrace.instr.HandlerRepositoryImpl"); + } + + private static HandlerRepository repo() { + return IndyDispatcher.repository; + } + + // --------------------------------------------------------------------------- + // resolveHandler + // --------------------------------------------------------------------------- + + @Test + void resolveHandler_returnsNull_whenProbeNotRegistered() { + MethodHandle mh = + repo() + .resolveHandler( + "test/nonexistent/Probe", + "onEntry", + MethodType.methodType(void.class)); + assertNull(mh); + } + + @Test + void resolveHandler_returnsNull_whenDefinedClassIsNull() { + String probeName = "test/NullClassProbe"; + BTraceProbe probe = stubProbe(probeName, null); + HandlerRepositoryImpl.registerProbe(probe); + try { + MethodHandle mh = + repo() + .resolveHandler(probeName, "onEntry", MethodType.methodType(void.class)); + assertNull(mh); + } finally { + HandlerRepositoryImpl.unregisterProbe(probe); + } + } + + @Test + void resolveHandler_returnsMethodHandle_forRegisteredProbe() throws Throwable { + String probeName = "test/SimpleProbe"; + BTraceProbe probe = stubProbe(probeName, TestHandlers.class); + HandlerRepositoryImpl.registerProbe(probe); + try { + MethodHandle mh = + repo() + .resolveHandler(probeName, "onEntry", MethodType.methodType(void.class)); + assertNotNull(mh); + mh.invoke(); // must not throw + } finally { + HandlerRepositoryImpl.unregisterProbe(probe); + } + } + + @Test + void resolveHandler_stripsPrefix_fromDollarSignHandlerName() throws Throwable { + String probeName = "test/PrefixedProbe"; + BTraceProbe probe = stubProbe(probeName, TestHandlers.class); + HandlerRepositoryImpl.registerProbe(probe); + try { + // Instrumented call sites use prefixed names like "$btrace$test$PrefixedProbe$onEntry" + MethodHandle mh = + repo() + .resolveHandler( + probeName, + "$btrace$test$PrefixedProbe$onEntry", + MethodType.methodType(void.class)); + assertNotNull(mh); + mh.invoke(); + } finally { + HandlerRepositoryImpl.unregisterProbe(probe); + } + } + + @Test + void resolveHandler_caches_secondCallReturnsSameHandle() { + String probeName = "test/CacheProbe"; + BTraceProbe probe = stubProbe(probeName, TestHandlers.class); + HandlerRepositoryImpl.registerProbe(probe); + try { + MethodType type = MethodType.methodType(void.class); + MethodHandle mh1 = repo().resolveHandler(probeName, "onEntry", type); + MethodHandle mh2 = repo().resolveHandler(probeName, "onEntry", type); + assertNotNull(mh1); + assertSame(mh1, mh2); + } finally { + HandlerRepositoryImpl.unregisterProbe(probe); + } + } @Test - void testCacheKeyParsing() { - // Test the cache key format and parsing logic to verify the fix for substring matching issue - // Cache key format: probeName + "#" + handlerName + handlerDesc - - String probeName1 = "com/example/Probe"; - String probeName2 = "com/example/ProbeExtended"; - String handler = "handleMethod"; - String desc = "(Ljava/lang/String;)V"; - - String cacheKey1 = probeName1 + "#" + handler + desc; - String cacheKey2 = probeName2 + "#" + handler + desc; - - // Verify that the old logic (startsWith) would incorrectly match - String oldPrefix = probeName1 + "#"; - assertTrue(cacheKey1.startsWith(oldPrefix), "Key1 should start with probe1 prefix"); - assertFalse(cacheKey2.startsWith(oldPrefix), "Key2 should NOT start with probe1 prefix"); - - // Verify that the new logic (exact match on probe name) works correctly - int delimiterIndex1 = cacheKey1.indexOf('#'); - int delimiterIndex2 = cacheKey2.indexOf('#'); - - String extractedProbe1 = cacheKey1.substring(0, delimiterIndex1); - String extractedProbe2 = cacheKey2.substring(0, delimiterIndex2); - - assertEquals(probeName1, extractedProbe1, "Should extract probe1 name correctly"); - assertEquals(probeName2, extractedProbe2, "Should extract probe2 name correctly"); - - // Verify the matching logic - simulate the fixed unregisterProbe logic - assertTrue(extractedProbe1.equals(probeName1), "Extracted probe1 should match exactly"); - assertFalse(extractedProbe1.equals(probeName2), "Extracted probe1 should NOT match probe2"); - assertFalse(extractedProbe2.equals(probeName1), "Extracted probe2 should NOT match probe1"); - assertTrue(extractedProbe2.equals(probeName2), "Extracted probe2 should match exactly"); + void resolveHandler_returnsNull_afterUnregister() { + String probeName = "test/UnregisterProbe"; + BTraceProbe probe = stubProbe(probeName, TestHandlers.class); + HandlerRepositoryImpl.registerProbe(probe); + + // Pre-populate cache + MethodType type = MethodType.methodType(void.class); + assertNotNull(repo().resolveHandler(probeName, "onEntry", type)); + + // Unregister clears both probeMap and cache + HandlerRepositoryImpl.unregisterProbe(probe); + MethodHandle mh = repo().resolveHandler(probeName, "onEntry", type); + assertNull(mh); + } + + @Test + void unregisterProbe_doesNotEvictOtherProbesCacheEntries() { + // Regression: old implementation used a custom substring match that could + // incorrectly match "test/Probe#..." when unregistering "test/P#..." if not + // anchored with the '#' delimiter. The current implementation uses + // key.startsWith(probeName + "#"), so "test/ProbeExtended#..." must survive + // when "test/Probe" is unregistered. + String probe1Name = "test/PrefixRegressionBase"; + String probe2Name = "test/PrefixRegressionBaseExtended"; + BTraceProbe probe1 = stubProbe(probe1Name, TestHandlers.class); + BTraceProbe probe2 = stubProbe(probe2Name, TestHandlers.class); + HandlerRepositoryImpl.registerProbe(probe1); + HandlerRepositoryImpl.registerProbe(probe2); + try { + MethodType type = MethodType.methodType(void.class); + // Pre-populate cache for both + assertNotNull(repo().resolveHandler(probe1Name, "onEntry", type)); + assertNotNull(repo().resolveHandler(probe2Name, "onEntry", type)); + + // Unregister probe1 – must not evict probe2's cache entry + HandlerRepositoryImpl.unregisterProbe(probe1); + + MethodHandle mh2 = repo().resolveHandler(probe2Name, "onEntry", type); + assertNotNull(mh2, "probe2 handler should not be evicted when probe1 is unregistered"); + } finally { + HandlerRepositoryImpl.unregisterProbe(probe2); + } } + // --------------------------------------------------------------------------- + // resolveRuntime + // --------------------------------------------------------------------------- + @Test - void testCacheKeyWithEdgeCases() { - // Test edge cases to ensure the fix handles various probe name scenarios - - // Case 1: Probe names where one is a prefix of another - String probe1 = "org/example/Test"; - String probe2 = "org/example/TestSuite"; - String handler = "handler"; - String desc = "()V"; - - String key1 = probe1 + "#" + handler + desc; - String key2 = probe2 + "#" + handler + desc; - - // Extract probe names using the new logic - int delim1 = key1.indexOf('#'); - int delim2 = key2.indexOf('#'); - - assertEquals(probe1, key1.substring(0, delim1)); - assertEquals(probe2, key2.substring(0, delim2)); - assertNotEquals(key1.substring(0, delim1), key2.substring(0, delim2)); - - // Case 2: Identical probe names should match - String key1Duplicate = probe1 + "#" + "anotherHandler" + "()I"; - int delim1Dup = key1Duplicate.indexOf('#'); - assertEquals(probe1, key1Duplicate.substring(0, delim1Dup)); - - // Case 3: Empty handler name or descriptor (edge case) - String keyMinimal = probe1 + "#"; - int delimMinimal = keyMinimal.indexOf('#'); - assertEquals(probe1, keyMinimal.substring(0, delimMinimal)); + void resolveRuntime_returnsMethodHandle_forKnownStaticMethod() throws Throwable { + MethodHandle mh = + repo() + .resolveRuntime( + "java/lang/Math", "abs", MethodType.methodType(int.class, int.class)); + assertNotNull(mh); + assertEquals(42, (int) mh.invoke(-42)); + } + + @Test + void resolveRuntime_returnsNull_forUnknownClass() { + MethodHandle mh = + repo() + .resolveRuntime( + "nonexistent/RuntimeClass", "method", MethodType.methodType(void.class)); + assertNull(mh); + } + + @Test + void resolveRuntime_returnsNull_forUnknownMethod() { + MethodHandle mh = + repo() + .resolveRuntime( + "java/lang/Math", + "noSuchMethod", + MethodType.methodType(void.class)); + assertNull(mh); + } + + @Test + void resolveRuntime_caches_secondCallReturnsSameHandle() { + MethodType type = MethodType.methodType(int.class, int.class); + MethodHandle mh1 = repo().resolveRuntime("java/lang/Math", "abs", type); + MethodHandle mh2 = repo().resolveRuntime("java/lang/Math", "abs", type); + assertNotNull(mh1); + assertSame(mh1, mh2); + } + + // --------------------------------------------------------------------------- + // Stub factory + // --------------------------------------------------------------------------- + + /** Creates a minimal BTraceProbe stub that only implements getClassName and getDefinedClass. */ + private static BTraceProbe stubProbe(String internalName, Class definedClass) { + return new BTraceProbe() { + @Override + public String getClassName(boolean internal) { + return internalName; + } + + @Override + public String getClassName() { + return internalName.replace('/', '.'); + } + + @Override + public Class getDefinedClass() { + return definedClass; + } + + @Override + public String getActionPrefix() { + return ""; + } + + @Override + public Collection getApplicableHandlers(BTraceClassReader cr) { + return Collections.emptyList(); + } + + @Override + public byte[] getFullBytecode() { + return new byte[0]; + } + + @Override + public byte[] getDataHolderBytecode() { + return new byte[0]; + } + + @Override + public boolean isClassRenamed() { + return false; + } + + @Override + public boolean isTransforming() { + return false; + } + + @Override + public boolean isVerified() { + return true; + } + + @Override + public void notifyTransform(String className) {} + + @Override + public Iterable onmethods() { + return Collections.emptyList(); + } + + @Override + public Iterable onprobes() { + return Collections.emptyList(); + } + + @Override + public Class register(BTraceRuntime.Impl rt, BTraceTransformer t) { + return null; + } + + @Override + public void unregister() {} + + @Override + public boolean willInstrument(Class clz) { + return false; + } + + @Override + public void checkVerified() {} + + @Override + public void applyArgs(ArgsMap argsMap) {} + + @Override + public BTraceRuntime.Impl getRuntime() { + return null; + } + + @Override + public Set getRequiredPermissions() { + return Collections.emptySet(); + } + }; } } diff --git a/btrace-instr/src/test/java/org/openjdk/btrace/instr/InstrumentorTestBase.java b/btrace-instr/src/test/java/org/openjdk/btrace/instr/InstrumentorTestBase.java index b2c5c897d..e60a582de 100644 --- a/btrace-instr/src/test/java/org/openjdk/btrace/instr/InstrumentorTestBase.java +++ b/btrace-instr/src/test/java/org/openjdk/btrace/instr/InstrumentorTestBase.java @@ -202,7 +202,7 @@ public void visit( String[] interfaces) { int idx = name.lastIndexOf('/'); name = - Auxiliary.class.getPackage().getName().replace('.', '/') + Auxiliary.class.getName().substring(0, Auxiliary.class.getName().lastIndexOf('.')).replace('.', '/') + '/' + name.substring(idx + 1); super.visit(version, access, name, signature, superName, interfaces); diff --git a/btrace-instr/src/test/java/org/openjdk/btrace/instr/OnMethodInstrumenterTest.java b/btrace-instr/src/test/java/org/openjdk/btrace/instr/OnMethodInstrumenterTest.java index 153d7d00a..d5af00d13 100644 --- a/btrace-instr/src/test/java/org/openjdk/btrace/instr/OnMethodInstrumenterTest.java +++ b/btrace-instr/src/test/java/org/openjdk/btrace/instr/OnMethodInstrumenterTest.java @@ -46,8 +46,6 @@ public class OnMethodInstrumenterTest extends InstrumentorTestBase { private static final Map targetClassMap = new HashMap<>(); private static final Map verifyFlagMap = new HashMap<>(); - private static Field instrHiddenClassesFlagFld = null; - static { targetClassMap.put("onmethod/MatchDerived", "DerivedClass"); targetClassMap.put("issues/BTRACE22", "issues/BTRACE22"); @@ -77,19 +75,15 @@ public static void classSetup() throws Exception { Field f = RandomIntProvider.class.getDeclaredField("useBtraceEnter"); f.setAccessible(true); f.setBoolean(null, false); - - instrHiddenClassesFlagFld = Instrumentor.class.getDeclaredField("useHiddenClassesInTest"); - instrHiddenClassesFlagFld.setAccessible(true); } @ParameterizedTest @MethodSource("listTransformations") - void testTransformation(String trace, String targetClass, boolean verify, boolean useHiddenClasses) throws Exception { - instrHiddenClassesFlagFld.set(null, useHiddenClasses); + void testTransformation(String trace, String targetClass, boolean verify) throws Exception { loadTargetClass(targetClass); transform(trace); - checkTransformation((useHiddenClasses ? "dynamic" : "static") + "/" + trace, verify); + checkTransformation(trace, verify); } @SuppressWarnings("resource") @@ -100,11 +94,8 @@ private static Stream listTransformations() throws Exception { .map(root::relativize) .map(Path::toString) .map(p -> p.replace(".class", "")) - .flatMap(p -> - Stream.of( - Arguments.of(Named.of("Trace: " + p, p), Named.of("Target Class: " + getTargetClass(p), getTargetClass(p)), Named.of("Verify: " + getVerifyFlag(p), getVerifyFlag(p)), Named.of("Dispatcher: INVOKESTATIC", false)), - Arguments.of(Named.of("Trace: " + p, p), Named.of("Target Class: " + getTargetClass(p), getTargetClass(p)), Named.of("Verify: " + getVerifyFlag(p), getVerifyFlag(p)), Named.of("Dispatcher: INVOKEDYNAMIC", true)) - ) + .map(p -> + Arguments.of(Named.of("Trace: " + p, p), Named.of("Target Class: " + getTargetClass(p), getTargetClass(p)), Named.of("Verify: " + getVerifyFlag(p), getVerifyFlag(p))) ); } diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/ExportTest b/btrace-instr/src/test/resources/instrumentorTestData/ExportTest similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/ExportTest rename to btrace-instr/src/test/resources/instrumentorTestData/ExportTest index 369be585e..fc31cbf5b 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/ExportTest +++ b/btrace-instr/src/test/resources/instrumentorTestData/ExportTest @@ -1,14 +1,17 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 1 LLOAD 2 ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ExportTest$testArgs(Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ExportTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/OnProbeTest b/btrace-instr/src/test/resources/instrumentorTestData/OnProbeTest similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/OnProbeTest rename to btrace-instr/src/test/resources/instrumentorTestData/OnProbeTest diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/OnTimerTest b/btrace-instr/src/test/resources/instrumentorTestData/OnTimerTest similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/OnTimerTest rename to btrace-instr/src/test/resources/instrumentorTestData/OnTimerTest diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/ServicesTest b/btrace-instr/src/test/resources/instrumentorTestData/ServicesTest similarity index 51% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/ServicesTest rename to btrace-instr/src/test/resources/instrumentorTestData/ServicesTest index f767be6e7..5e32fd8cf 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/ServicesTest +++ b/btrace-instr/src/test/resources/instrumentorTestData/ServicesTest @@ -1,11 +1,14 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "resources.OnMethodTest" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ServicesTest$testFieldInjection(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ServicesTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/TLSTest b/btrace-instr/src/test/resources/instrumentorTestData/TLSTest similarity index 51% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/TLSTest rename to btrace-instr/src/test/resources/instrumentorTestData/TLSTest index ab2981d40..a591a74b3 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/TLSTest +++ b/btrace-instr/src/test/resources/instrumentorTestData/TLSTest @@ -1,14 +1,17 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 1 LLOAD 2 ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TLSTest$testArgs(Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TLSTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/TraceAllTest b/btrace-instr/src/test/resources/instrumentorTestData/TraceAllTest similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/TraceAllTest rename to btrace-instr/src/test/resources/instrumentorTestData/TraceAllTest index d7f2fabff..925c5f37e 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/TraceAllTest +++ b/btrace-instr/src/test/resources/instrumentorTestData/TraceAllTest @@ -1,252 +1,327 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "private void resources.OnMethodTest#(java.lang.String)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/lang/String] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#noargs" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public static void resources.OnMethodTest#noargs$static" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public static long resources.OnMethodTest#args$static(java.lang.String, long, java.lang.String[], int[])" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public static long resources.OnMethodTest#callTopLevelStatic(java.lang.String, long)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public long resources.OnMethodTest#callTopLevel(java.lang.String, long)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "private long resources.OnMethodTest#callTarget(java.lang.String, long)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#exception" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#uncaught" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#array(int)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#field" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#newObject" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#newArray" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#casts" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#sync" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public long resources.OnMethodTest#callTopLevel1(java.lang.String, long)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "private long resources.OnMethodTest#calLTargetX(java.lang.String, long)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public long resources.OnMethodTest#argsMultiReturn(java.lang.String, long, java.lang.String[], int[])" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#staticField" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#syncM" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public java.lang.String resources.OnMethodTest#argsTypeMatch(java.util.ArrayList)" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.OnMethodTest#caught" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TraceAllTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AnytypeArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AnytypeArgs deleted file mode 100644 index de90bacd6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AnytypeArgs +++ /dev/null @@ -1,30 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -LLOAD 2 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -AASTORE -DUP -ICONST_2 -ALOAD 4 -AASTORE -DUP -ICONST_3 -ALOAD 5 -AASTORE -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args(Ljava/lang/Object;[Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/AnytypeArgs" -] -FRAME SAME -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AnytypeArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AnytypeArgsNoSelf deleted file mode 100644 index 1e7c7e968..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AnytypeArgsNoSelf +++ /dev/null @@ -1,29 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -LLOAD 2 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -AASTORE -DUP -ICONST_2 -ALOAD 4 -AASTORE -DUP -ICONST_3 -ALOAD 5 -AASTORE -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf([Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf" -] -FRAME SAME -MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationSampled deleted file mode 100644 index 723b8f8eb..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationSampled +++ /dev/null @@ -1,44 +0,0 @@ -LCONST_0 -LSTORE 6 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -ILOAD 10 -IFEQ L1 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled" -] -L1 -FRAME SAME1 J -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 -LOCALVARIABLE d [I L0 L3 5 -MAXSTACK = 12 -MAXLOCALS = 13 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsNoSelf deleted file mode 100644 index 4795488d9..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsNoSelf +++ /dev/null @@ -1,15 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf(Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf" -] -FRAME SAME -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnAugmented deleted file mode 100644 index d148e39b9..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnAugmented +++ /dev/null @@ -1,25 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 6 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -LLOAD 6 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented" -] -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 8 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnAugmented1 deleted file mode 100644 index 4367a76dd..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnAugmented1 +++ /dev/null @@ -1,25 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1" -] -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 8 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampledAdaptive deleted file mode 100644 index 8613f17c3..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampledAdaptive +++ /dev/null @@ -1,35 +0,0 @@ -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 6 -ILOAD 6 -IFEQ L0 -L1 -FRAME APPEND [I] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive" -] -FRAME SAME -ILOAD 6 -IFEQ L2 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.updateEndTs (I)V -L2 -FRAME SAME1 J -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 -LOCALVARIABLE d [I L0 L3 5 -MAXSTACK = 6 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsShared b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsShared deleted file mode 100644 index dc57120ad..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsShared +++ /dev/null @@ -1,15 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsShared" -] -FRAME SAME -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetBefore deleted file mode 100644 index 197a86e18..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetBefore +++ /dev/null @@ -1,27 +0,0 @@ -DUP2 -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 4 -ILOAD 3 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args(Ljava/lang/Object;[II)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore" -] -FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] -IALOAD -ISTORE 5 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 5 -MAXSTACK = 5 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Catch b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Catch deleted file mode 100644 index 410446ef9..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Catch +++ /dev/null @@ -1,22 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args(Ljava/lang/Object;Ljava/io/IOException;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/Catch" -] -FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] -ASTORE 2 -L3 -LINENUMBER 85 L3 -ALOAD 2 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Error b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Error deleted file mode 100644 index 23a33d209..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Error +++ /dev/null @@ -1,20 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -FRAME SAME1 java/lang/Throwable -DUP -ASTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "uncaught" -ALOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Error$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/Error" -] -L2 -FRAME FULL [resources/OnMethodTest java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 4 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetBefore deleted file mode 100644 index 2f595f34b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetBefore +++ /dev/null @@ -1,21 +0,0 @@ -DUP -ASTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "field" -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldGetBefore" -] -L1 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest resources/OnMethodTest] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 5 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchAnnotated b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchAnnotated deleted file mode 100644 index 750f5556f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchAnnotated +++ /dev/null @@ -1,11 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotated$args(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MatchAnnotated" -] -FRAME SAME -MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchAnnotatedRegex b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchAnnotatedRegex deleted file mode 100644 index 0648efffb..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchAnnotatedRegex +++ /dev/null @@ -1,11 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotatedRegex$args(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MatchAnnotatedRegex" -] -FRAME SAME -MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturn b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturn deleted file mode 100644 index 1548d9ccf..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturn +++ /dev/null @@ -1,27 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 8 -LLOAD 8 -ALOAD 6 -LLOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args(JLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallReturn" -] -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 7 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturnAugmented deleted file mode 100644 index d04449802..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturnAugmented +++ /dev/null @@ -1,25 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 8 -ALOAD 6 -LLOAD 4 -LLOAD 8 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args(Ljava/lang/String;JJ)J [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented" -] -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturnAugmented1 deleted file mode 100644 index 099c44d5a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallReturnAugmented1 +++ /dev/null @@ -1,25 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 8 -LLOAD 8 -ALOAD 6 -LLOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args(JLjava/lang/String;J)J [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1" -] -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewAfter b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewAfter deleted file mode 100644 index be7b541da..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewAfter +++ /dev/null @@ -1,21 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "java.util.HashMap" -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args(Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NewAfter" -] -FRAME FULL [resources/OnMethodTest java/util/HashMap] [java/util/HashMap] -ASTORE 2 -L2 -LINENUMBER 106 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE m Ljava/util/Map; L2 L3 2 -MAXSTACK = 4 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayStringBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayStringBefore deleted file mode 100644 index 38089a4dd..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayStringBefore +++ /dev/null @@ -1,37 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "java.lang.String" -ICONST_1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore" -] -L3 -FRAME FULL [resources/OnMethodTest [I [[I] [I] -L4 -LINENUMBER 112 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "java.lang.String" -ICONST_2 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore" -] -L5 -FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [I I] -L6 -LINENUMBER 113 L6 -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a [I L1 L7 1 -LOCALVARIABLE b [[I L2 L7 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L7 3 -LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 -MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgs deleted file mode 100644 index fac09920f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgs +++ /dev/null @@ -1,10 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NoArgs" -] -FRAME SAME \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgsReturn deleted file mode 100644 index dca0b5077..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgsReturn +++ /dev/null @@ -1,24 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 5 -ALOAD 0 -LLOAD 5 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args(Ljava/lang/String;JJ[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn" -] -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE a Ljava/lang/String; L0 L2 0 -LOCALVARIABLE b J L0 L2 1 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 3 -LOCALVARIABLE d [I L0 L2 4 -MAXSTACK = 9 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticNoArgs deleted file mode 100644 index 7f5eec1d5..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticNoArgs +++ /dev/null @@ -1,10 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty()V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/StaticNoArgs" -] -FRAME SAME -MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Args b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Args deleted file mode 100644 index 84d0d38c2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Args +++ /dev/null @@ -1,18 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/Args" -] -FRAME SAME -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Args2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Args2Sampled deleted file mode 100644 index 1da21b78f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Args2Sampled +++ /dev/null @@ -1,73 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/Args2Sampled" -] -L4 -FRAME SAME -ILOAD 7 -IFLE L5 -L6 -FRAME SAME -ILOAD 6 -IFEQ L7 -L5 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/Args2Sampled" -] -L7 -LINENUMBER 57 L7 -FRAME SAME -L8 -LOCALVARIABLE this Lresources/OnMethodTest; L7 L8 0 -LOCALVARIABLE a Ljava/lang/String; L7 L8 1 -LOCALVARIABLE b J L7 L8 2 -LOCALVARIABLE c [Ljava/lang/String; L7 L8 4 -LOCALVARIABLE d [I L7 L8 5 -MAXSTACK = 6 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration deleted file mode 100644 index 46c00946d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration +++ /dev/null @@ -1,53 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L1 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -ILOAD 10 -IFLE L2 -L3 -FRAME SAME1 J -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration" -] -L4 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 12 -MAXLOCALS = 13 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2 deleted file mode 100644 index 7019f8dbd..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2 +++ /dev/null @@ -1,75 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L1 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -ILOAD 10 -IFLE L2 -L3 -FRAME SAME1 J -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME SAME1 J -ILOAD 10 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2" -] -L4 -FRAME SAME1 J -ILOAD 10 -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -DUP2 -LSTORE 13 -ALOAD 0 -LLOAD 13 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2" -] -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T T] [J] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a Ljava/lang/String; L0 L6 1 -LOCALVARIABLE b J L0 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L6 4 -LOCALVARIABLE d [I L0 L6 5 -MAXSTACK = 12 -MAXLOCALS = 15 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2Err b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2Err deleted file mode 100644 index 5e76f6812..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2Err +++ /dev/null @@ -1,66 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -TRYCATCHBLOCK L0 L2 L2 java/lang/Throwable -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L3 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 11 -ILOAD 10 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 6 -ALOAD 11 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2(Ljava/lang/Object;JLjava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err" -] -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 12 -ILOAD 10 -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LLOAD 6 -ALOAD 12 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err" -] -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 5 -MAXLOCALS = 13 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2Sampled deleted file mode 100644 index a0bfd52d1..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDuration2Sampled +++ /dev/null @@ -1,105 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -ICONST_0 -ISTORE 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.$btrace$$level : I -DUP -ISTORE 11 -LDC 6 -IF_ICMPLT L0 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I I] [] -GOTO L2 -FRAME SAME -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -L2 -LINENUMBER 57 L2 -FRAME SAME -ILOAD 11 -LDC 6 -IF_ICMPLT L3 -L4 -FRAME SAME1 J -GOTO L5 -L3 -FRAME SAME1 J -ILOAD 10 -IFEQ L6 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L5 -FRAME SAME1 J -ILOAD 11 -ICONST_5 -IF_ICMPGT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 12 -ALOAD 0 -LLOAD 12 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled" -] -L6 -FRAME SAME1 J -ILOAD 11 -LDC 6 -IF_ICMPLT L7 -L8 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I I T T] [J] -GOTO L9 -L7 -FRAME SAME1 J -ILOAD 10 -IFEQ L10 -L9 -FRAME SAME1 J -ILOAD 11 -ICONST_1 -IF_ICMPLT L10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -DUP2 -LSTORE 14 -ALOAD 0 -LLOAD 14 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled" -] -L10 -FRAME SAME1 J -L11 -LOCALVARIABLE this Lresources/OnMethodTest; L2 L11 0 -LOCALVARIABLE a Ljava/lang/String; L2 L11 1 -LOCALVARIABLE b J L2 L11 2 -LOCALVARIABLE c [Ljava/lang/String; L2 L11 4 -LOCALVARIABLE d [I L2 L11 5 -MAXSTACK = 12 -MAXLOCALS = 16 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationConstructor b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationConstructor deleted file mode 100644 index 0f850d06d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationConstructor +++ /dev/null @@ -1,46 +0,0 @@ -LCONST_0 -LSTORE 2 -LCONST_0 -LSTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.$btrace$$level : I -DUP -ISTORE 6 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J I] [] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 4 -FRAME SAME -L3 -LINENUMBER 47 L3 -ILOAD 6 -IFLE L4 -L5 -FRAME SAME -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 4 -LSUB -LSTORE 2 -L4 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LLOAD 2 -ALOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args(Ljava/lang/Object;JLjava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor" -] -L6 -FRAME SAME -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a Ljava/lang/String; L0 L7 1 -MAXSTACK = 4 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationConstructorErr b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationConstructorErr deleted file mode 100644 index 3b99f03a0..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationConstructorErr +++ /dev/null @@ -1,97 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -L2 -LINENUMBER 41 L2 -LCONST_0 -LSTORE 1 -LCONST_0 -LSTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -DUP -ISTORE 5 -IFLE L0 -L3 -FRAME FULL [resources/OnMethodTest J J I] [] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -L0 -LINENUMBER 42 L0 -FRAME SAME -L4 -LINENUMBER 43 L4 -L1 -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -DUP -ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LLOAD 1 -ALOAD 6 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr" -] -L5 -FRAME FULL [resources/OnMethodTest J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 -MAXSTACK = 5 -MAXLOCALS = 7 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -L2 -LINENUMBER 45 L2 -LCONST_0 -LSTORE 2 -LCONST_0 -LSTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -DUP -ISTORE 6 -IFLE L0 -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J I] [] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 4 -L0 -LINENUMBER 46 L0 -FRAME SAME -L4 -LINENUMBER 47 L4 -L1 -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 4 -LSUB -LSTORE 2 -DUP -ASTORE 7 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LLOAD 2 -ALOAD 7 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr" -] -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 -LOCALVARIABLE a Ljava/lang/String; L2 L1 1 -MAXSTACK = 5 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationErr b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationErr deleted file mode 100644 index 6f1c1a9b7..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationErr +++ /dev/null @@ -1,40 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L2 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 11 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LLOAD 6 -ALOAD 11 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr" -] -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 5 -MAXLOCALS = 12 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationMultiReturn b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationMultiReturn deleted file mode 100644 index e34f0eff7..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationMultiReturn +++ /dev/null @@ -1,113 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L1 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -IFLE L2 -L3 -LINENUMBER 141 L3 -ILOAD 10 -IFLE L4 -L5 -FRAME SAME1 J -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L4 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" -] -L6 -FRAME SAME1 J -L2 -LINENUMBER 144 L2 -IFLE L7 -L8 -LINENUMBER 145 L8 -L9 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -DUP2 -LSTORE 13 -ALOAD 0 -LLOAD 13 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" -] -L10 -FRAME SAME1 J -L7 -LINENUMBER 149 L7 -L11 -LINENUMBER 150 L11 -L12 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L13 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L13 -DUP2 -LSTORE 15 -ALOAD 0 -LLOAD 15 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" -] -L13 -FRAME SAME1 J -L14 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L14 0 -LOCALVARIABLE a Ljava/lang/String; L0 L14 1 -LOCALVARIABLE b J L0 L14 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L14 4 -LOCALVARIABLE d [I L0 L14 5 -MAXSTACK = 12 -MAXLOCALS = 17 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationSampled deleted file mode 100644 index 6a7dad12d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationSampled +++ /dev/null @@ -1,62 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -ICONST_0 -ISTORE 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.$btrace$$level : I -DUP -ISTORE 11 -IFLE L0 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I I] [] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -FRAME SAME -ILOAD 11 -IFLE L2 -L3 -FRAME SAME1 J -ILOAD 10 -IFEQ L4 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 12 -ALOAD 0 -LLOAD 12 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled" -] -L4 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 12 -MAXLOCALS = 14 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturn deleted file mode 100644 index bbf290e8d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturn +++ /dev/null @@ -1,29 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsReturn" -] -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 10 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnSampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnSampled deleted file mode 100644 index e86b83305..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnSampled +++ /dev/null @@ -1,49 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME1 J -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 8 -ALOAD 0 -LLOAD 8 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled" -] -L4 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 10 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampled deleted file mode 100644 index 84fb29eed..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampled +++ /dev/null @@ -1,47 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsSampled" -] -L4 -LINENUMBER 57 L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -LOCALVARIABLE a Ljava/lang/String; L4 L5 1 -LOCALVARIABLE b J L4 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L5 4 -LOCALVARIABLE d [I L4 L5 5 -MAXSTACK = 6 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampledAdaptive deleted file mode 100644 index 81c79451a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampledAdaptive +++ /dev/null @@ -1,53 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive" -] -L4 -LINENUMBER 57 L4 -FRAME SAME -ILOAD 6 -IFEQ L5 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.updateEndTs (I)V -L5 -FRAME SAME1 J -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L4 L6 0 -LOCALVARIABLE a Ljava/lang/String; L4 L6 1 -LOCALVARIABLE b J L4 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L6 4 -LOCALVARIABLE d [I L4 L6 5 -MAXSTACK = 6 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampledNoSampling b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampledNoSampling deleted file mode 100644 index 090f9f019..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsSampledNoSampling +++ /dev/null @@ -1,65 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling" -] -L4 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling" -] -L5 -LINENUMBER 57 L5 -FRAME SAME -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L5 L6 0 -LOCALVARIABLE a Ljava/lang/String; L5 L6 1 -LOCALVARIABLE b J L5 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L5 L6 4 -LOCALVARIABLE d [I L5 L6 5 -MAXSTACK = 6 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsUnsafe b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsUnsafe deleted file mode 100644 index 6dbff2de9..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsUnsafe +++ /dev/null @@ -1,18 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe" -] -FRAME SAME -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetBeforeAny deleted file mode 100644 index 35da26e91..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetBeforeAny +++ /dev/null @@ -1,30 +0,0 @@ -DUP2 -ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 4 -ILOAD 3 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny" -] -FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] -IALOAD -ISTORE 5 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 5 -MAXSTACK = 5 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetBefore deleted file mode 100644 index 3e56259b1..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetBefore +++ /dev/null @@ -1,31 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args(Ljava/lang/Object;[III)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ArraySetBefore" -] -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 7 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ConstructorArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ConstructorArgs deleted file mode 100644 index 8e8f8fa10..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ConstructorArgs +++ /dev/null @@ -1,14 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args(Ljava/lang/Object;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ConstructorArgs" -] -FRAME FULL [resources/OnMethodTest java/lang/String] [] \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ErrorDuration b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ErrorDuration deleted file mode 100644 index 7857f659e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ErrorDuration +++ /dev/null @@ -1,41 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -LCONST_0 -LSTORE 1 -LCONST_0 -LSTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.$btrace$$level : I -DUP -ISTORE 5 -IFLE L0 -L2 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -FRAME SAME -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -DUP -ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "uncaught" -LLOAD 1 -ALOAD 6 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/ErrorDuration" -] -L3 -FRAME FULL [resources/OnMethodTest J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 6 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetAfterStatic deleted file mode 100644 index 863bd60c6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetAfterStatic +++ /dev/null @@ -1,32 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 1 -IFLT L1 -L1 -FRAME APPEND [I] -ILOAD 1 -IFLT L2 -DUP2 -LSTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ACONST_NULL -LDC "static field long resources.OnMethodTest#sField" -LLOAD 2 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic" -] -L2 -FRAME FULL [resources/OnMethodTest I J] [J] -L3 -LINENUMBER 162 L3 -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -MAXSTACK = 7 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetBeforeStatic deleted file mode 100644 index 1aafe373a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetBeforeStatic +++ /dev/null @@ -1,20 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic" -] -L1 -FRAME SAME -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetAfter b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetAfter deleted file mode 100644 index fe5365793..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetAfter +++ /dev/null @@ -1,33 +0,0 @@ -ISTORE 1 -DUP -ASTORE 2 -ILOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 3 -IFLT L1 -L1 -FRAME FULL [resources/OnMethodTest I resources/OnMethodTest I] [resources/OnMethodTest I] -ILOAD 3 -IFLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 2 -LDC "field" -ILOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldSetAfter" -] -L2 -LINENUMBER 102 L2 -FRAME SAME -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 4 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetAfterStatic deleted file mode 100644 index 6b7884019..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetAfterStatic +++ /dev/null @@ -1,31 +0,0 @@ -LSTORE 1 -LLOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 3 -IFLT L1 -L1 -FRAME FULL [resources/OnMethodTest J I] [J] -ILOAD 3 -IFLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ACONST_NULL -LDC "sField" -LLOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic" -] -L2 -LINENUMBER 162 L2 -FRAME SAME -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 5 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetBefore deleted file mode 100644 index e6d8f0b64..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetBefore +++ /dev/null @@ -1,27 +0,0 @@ -ISTORE 1 -DUP -ASTORE 2 -ILOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 2 -LDC "field" -ILOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldSetBefore" -] -L1 -FRAME FULL [resources/OnMethodTest I resources/OnMethodTest] [resources/OnMethodTest I] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 6 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetBeforeStatic deleted file mode 100644 index 444b49ea2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldSetBeforeStatic +++ /dev/null @@ -1,25 +0,0 @@ -LSTORE 1 -LLOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -LLOAD 1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic" -] -L1 -FRAME FULL [resources/OnMethodTest J] [J] -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 7 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Line b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Line deleted file mode 100644 index 207a863cd..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Line +++ /dev/null @@ -1,24 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "exception" -LDC 84 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Line$args(Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/Line" -] -L2 -FRAME SAME1 java/lang/Throwable -L3 -LINENUMBER 85 L3 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXSTACK = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDuration b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDuration deleted file mode 100644 index e30e5c444..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDuration +++ /dev/null @@ -1,45 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.$btrace$$level : I -DUP -ISTORE 8 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 6 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -LSTORE 9 -ASTORE 11 -ASTORE 12 -ALOAD 12 -ALOAD 11 -LLOAD 9 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 13 -LLOAD 13 -LCONST_0 -ALOAD 11 -LLOAD 9 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args(JJLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration" -] -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -MAXSTACK = 9 -MAXLOCALS = 15 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDuration2 deleted file mode 100644 index 150ee9f5a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDuration2 +++ /dev/null @@ -1,84 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -DUP -ISTORE 8 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 6 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -LSTORE 9 -ASTORE 11 -ASTORE 12 -ALOAD 12 -ALOAD 11 -LLOAD 9 -LCONST_0 -LSTORE 13 -LCONST_0 -LSTORE 15 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -DUP -ISTORE 17 -IFLE L3 -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I] [resources/OnMethodTest java/lang/String J] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 15 -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I] [resources/OnMethodTest java/lang/String J] -LSTORE 18 -ASTORE 20 -ASTORE 21 -ALOAD 21 -ALOAD 20 -LLOAD 18 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -DUP2 -LSTORE 22 -LLOAD 22 -LCONST_0 -ALOAD 20 -LLOAD 18 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0(JJLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2" -] -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I J java/lang/String resources/OnMethodTest] [J] -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 24 -LLOAD 24 -LCONST_0 -ALOAD 11 -LLOAD 9 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1(JJLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2" -] -L6 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I J java/lang/String resources/OnMethodTest T T] [J] -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a Ljava/lang/String; L0 L7 1 -LOCALVARIABLE b J L0 L7 2 -MAXSTACK = 9 -MAXLOCALS = 26 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDurationSampled deleted file mode 100644 index 08a6155a4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDurationSampled +++ /dev/null @@ -1,51 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -ICONST_0 -ISTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.$btrace$$level : I -DUP -ISTORE 9 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 6 -L2I -ISTORE 8 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 10 -ASTORE 12 -ASTORE 13 -ALOAD 13 -ALOAD 12 -LLOAD 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 14 -LLOAD 14 -LCONST_0 -ALOAD 12 -LLOAD 10 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args(JJLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled" -] -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest] [J] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -MAXSTACK = 9 -MAXLOCALS = 16 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDurationSampledMulti b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDurationSampledMulti deleted file mode 100644 index d53cbe629..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallDurationSampledMulti +++ /dev/null @@ -1,99 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -ICONST_0 -ISTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -DUP -ISTORE 9 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 6 -L2I -ISTORE 8 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 10 -ASTORE 12 -ASTORE 13 -ALOAD 13 -ALOAD 12 -LLOAD 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 14 -LLOAD 14 -LCONST_0 -ALOAD 12 -LLOAD 10 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti" -] -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest] [J] -LCONST_0 -LSTORE 16 -LCONST_0 -LSTORE 18 -ICONST_0 -ISTORE 20 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -DUP -ISTORE 21 -IFLE L4 -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest T T J J I I] [J java/lang/String J] -ICONST_3 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 18 -L2I -ISTORE 20 -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest T T J J I I] [J java/lang/String J] -LSTORE 22 -ASTORE 24 -ALOAD 24 -LLOAD 22 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 25 -LLOAD 25 -LCONST_0 -ALOAD 24 -LLOAD 22 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti" -] -L6 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest T T J J I I J java/lang/String] [J J] -LSTORE 27 -L7 -LINENUMBER 132 L7 -LLOAD 27 -L8 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L8 0 -LOCALVARIABLE a Ljava/lang/String; L0 L8 1 -LOCALVARIABLE b J L0 L8 2 -LOCALVARIABLE i J L7 L8 27 -MAXSTACK = 11 -MAXLOCALS = 29 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallNoArgs deleted file mode 100644 index 129199462..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallNoArgs +++ /dev/null @@ -1,18 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args()V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs" -] -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J] [resources/OnMethodTest java/lang/String J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallSampled b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallSampled deleted file mode 100644 index c315e7321..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallSampled +++ /dev/null @@ -1,53 +0,0 @@ -ICONST_0 -ISTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.$btrace$$level : I -DUP -ISTORE 5 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 4 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 6 -ASTORE 8 -ASTORE 9 -ILOAD 5 -IFLE L3 -L4 -FRAME APPEND [J java/lang/String resources/OnMethodTest] -ILOAD 4 -IFEQ L5 -L3 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -ALOAD 8 -LLOAD 6 -ALOAD 9 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallSampled" -] -L5 -FRAME SAME -ALOAD 9 -ALOAD 8 -LLOAD 6 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a Ljava/lang/String; L0 L6 1 -LOCALVARIABLE b J L0 L6 2 -MAXSTACK = 8 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallSampledAdaptive deleted file mode 100644 index 2e94533b1..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallSampledAdaptive +++ /dev/null @@ -1,53 +0,0 @@ -ICONST_0 -ISTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.$btrace$$level : I -DUP -ISTORE 5 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 4 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 6 -ASTORE 8 -ASTORE 9 -ILOAD 5 -IFLE L3 -L4 -FRAME APPEND [J java/lang/String resources/OnMethodTest] -ILOAD 4 -IFEQ L5 -L3 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -ALOAD 8 -LLOAD 6 -ALOAD 9 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive" -] -L5 -FRAME SAME -ALOAD 9 -ALOAD 8 -LLOAD 6 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a Ljava/lang/String; L0 L6 1 -LOCALVARIABLE b J L0 L6 2 -MAXSTACK = 8 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayIntBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayIntBefore deleted file mode 100644 index 86e5697b2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayIntBefore +++ /dev/null @@ -1,47 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "int" -ICONST_1 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore" -] -L1 -FRAME SAME1 I -L2 -LINENUMBER 110 L2 -ICONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.$btrace$$level : I -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "int" -ICONST_2 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore" -] -L3 -FRAME FULL [resources/OnMethodTest [I] [I I] -L4 -LINENUMBER 111 L4 -L5 -LINENUMBER 112 L5 -L6 -LINENUMBER 113 L6 -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a [I L2 L7 1 -LOCALVARIABLE b [[I L4 L7 2 -LOCALVARIABLE c [Ljava/lang/String; L5 L7 3 -LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 -MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewBefore b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewBefore deleted file mode 100644 index e125047ff..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewBefore +++ /dev/null @@ -1,20 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "java.util.HashMap" -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args(Ljava/lang/Object;Ljava/lang/String;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NewBefore" -] -L1 -FRAME SAME -L2 -LINENUMBER 106 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE m Ljava/util/Map; L2 L3 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NoArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NoArgs deleted file mode 100644 index 502de5e8b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NoArgs +++ /dev/null @@ -1,13 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NoArgs" -] -FRAME SAME \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NoArgsEntryReturn b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NoArgsEntryReturn deleted file mode 100644 index cc7cadaf6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NoArgsEntryReturn +++ /dev/null @@ -1,37 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.$btrace$$level : I -DUP -ISTORE 6 -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn" -] -FRAME APPEND [I] -ILOAD 6 -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn" -] -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 4 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgs deleted file mode 100644 index 8be30e8db..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgs +++ /dev/null @@ -1,17 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args(Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/StaticArgs" -] -FRAME SAME -MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgsSelf deleted file mode 100644 index a357193ac..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgsSelf +++ /dev/null @@ -1,18 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ACONST_NULL -ALOAD 0 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf" -] -FRAME SAME -MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticNoArgs deleted file mode 100644 index 2835fbbc4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticNoArgs +++ /dev/null @@ -1,13 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty()V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/StaticNoArgs" -] -FRAME SAME -MAXSTACK = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticNoArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticNoArgsSelf deleted file mode 100644 index 1207c73d0..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticNoArgsSelf +++ /dev/null @@ -1,14 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ACONST_NULL -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty(Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf" -] -FRAME SAME -MAXSTACK = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncExit b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncExit deleted file mode 100644 index 708f63535..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncExit +++ /dev/null @@ -1,51 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -L6 -LINENUMBER 127 L6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L7 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 2 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/SyncExit" -] -L7 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] -GOTO L8 -ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L9 -DUP -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/SyncExit" -] -L9 -FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 3 -L8 -LINENUMBER 128 L8 -FRAME FULL [resources/OnMethodTest] [] -L5 -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncMExit b/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncMExit deleted file mode 100644 index fa12468a4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncMExit +++ /dev/null @@ -1,51 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -L6 -LINENUMBER 167 L6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L7 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 2 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/SyncMExit" -] -L7 -FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] -GOTO L8 -ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L9 -DUP -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 4 -INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org/openjdk/btrace/runtime/auxiliary/SyncMExit" -] -L9 -FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 3 -L8 -LINENUMBER 168 L8 -FRAME FULL [resources/OnMethodTest] [] -L5 -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE106 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE106 similarity index 55% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE106 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE106 index 23d103185..f02bcd7cf 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE106 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE106 @@ -1,13 +1,16 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "aMethod" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o1(Ljava/lang/Object;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE106" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME LCONST_0 LSTORE 1 @@ -21,28 +24,34 @@ L2 FRAME APPEND [J J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "bMethod" LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o3(Ljava/lang/Object;Ljava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE106" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "bMethod" LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o2(Ljava/lang/Object;Ljava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE106" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME L5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE189 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE189 similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE189 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE189 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE22 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE22 similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE22 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE22 index 88485bca5..8f37f8382 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE22 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE22 @@ -13,14 +13,17 @@ L3 FRAME FULL [resources/issues/BTRACE22 J J D] [D] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE22$tracker(Ljava/lang/Object;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE22" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME1 D L5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE256 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE256 similarity index 58% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE256 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE256 index 43db74306..61d8109b8 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE256 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE256 @@ -4,13 +4,16 @@ INVOKESTATIC java/lang/System.nanoTime ()J LSTORE 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.issues.BTRACE256#doStuff" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE256$entry(Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE256" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME APPEND [J J] INVOKESTATIC java/lang/System.nanoTime ()J LLOAD 3 @@ -20,14 +23,17 @@ L3 FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public void resources.issues.BTRACE256#doStuff" LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE256$exit(Ljava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE256" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME L5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE28 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE28 similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE28 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE28 index fd6e58ebe..cd8eb7fe5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE28 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE28 @@ -1,13 +1,16 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "resources.issues.BTRACE28" LDC "" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE28$tracker(Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE28" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/issues/BTRACE28] [] L2 @@ -20,14 +23,17 @@ ALOAD 7 FRAME FULL [resources/issues/BTRACE28 java/lang/String java/lang/String java/lang/String java/lang/String [B [B java/lang/StringBuilder] [java/lang/Throwable] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L11 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "resources.issues.BTRACE28" LDC "serveResource" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE28$tracker(Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE28" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L11 FRAME SAME L12 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE53 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE53 similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE53 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE53 index 040e292b6..35544513d 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE53 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE53 @@ -10,13 +10,16 @@ L2 FRAME FULL [resources/DerivedClass J J] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE53$onInit(J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE53" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE69 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE69 similarity index 64% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE69 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE69 index d036d5705..488452b0c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE69 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE69 @@ -4,13 +4,16 @@ DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncEntry(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE69" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME APPEND [resources/OnMethodTest resources/OnMethodTest] L7 LINENUMBER 127 L7 @@ -18,13 +21,16 @@ DUP ASTORE 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncExit(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE69" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L8 FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] GOTO L9 @@ -34,13 +40,16 @@ DUP ASTORE 5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L10 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncExit(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE69" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L10 FRAME FULL [resources/OnMethodTest java/lang/Object resources/OnMethodTest T java/lang/Throwable java/lang/Object] [java/lang/Object] ALOAD 4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE87 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE87 similarity index 63% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE87 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE87 index 11f59d0c6..a7755d90b 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE87 +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE87 @@ -1,16 +1,19 @@ ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "containerMethod" ICONST_0 ANEWARRAY java/lang/Object INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE87$o(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE87" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME APPEND [java/util/ArrayList java/util/ArrayList] ALOAD 2 @@ -20,6 +23,8 @@ ASTORE 3 ASTORE 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "containerMethod" ICONST_1 @@ -30,10 +35,11 @@ ALOAD 3 AASTORE INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE87$o(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/BTRACE87" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME APPEND [java/lang/String java/util/ArrayList] ALOAD 4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE_333 b/btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE_333 similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/BTRACE_333 rename to btrace-instr/src/test/resources/instrumentorTestData/issues/BTRACE_333 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/InterestingVarsTest b/btrace-instr/src/test/resources/instrumentorTestData/issues/InterestingVarsTest similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/InterestingVarsTest rename to btrace-instr/src/test/resources/instrumentorTestData/issues/InterestingVarsTest index cd3a8d7c1..b42f4609d 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/InterestingVarsTest +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/InterestingVarsTest @@ -1,12 +1,15 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$InterestingVarsTest$entry(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/InterestingVarsTest" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/TezSplitter b/btrace-instr/src/test/resources/instrumentorTestData/issues/TezSplitter similarity index 96% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/TezSplitter rename to btrace-instr/src/test/resources/instrumentorTestData/issues/TezSplitter index 6e164d484..cbffd870c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/issues/TezSplitter +++ b/btrace-instr/src/test/resources/instrumentorTestData/issues/TezSplitter @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ICONST_4 ANEWARRAY java/lang/Object DUP @@ -21,13 +23,16 @@ ALOAD 4 AASTORE INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TezSplitter$getGroupedSplitsHook([Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TezSplitter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ICONST_5 ANEWARRAY java/lang/Object DUP @@ -53,10 +58,11 @@ ALOAD 5 AASTORE INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$TezSplitter$getGroupedSplitsHook([Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/TezSplitter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME LSTORE 23 LSTORE 25 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AllLines b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/AllLines similarity index 55% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AllLines rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/AllLines index 2c7d12f25..7ee4c79eb 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/AllLines +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/AllLines @@ -1,25 +1,31 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "" LDC 41 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "" LDC 42 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME ALOAD 0 @@ -27,41 +33,50 @@ L3 LINENUMBER 43 L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "" LDC 43 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME L5 LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "" LDC 45 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/lang/String] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "" LDC 46 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME ALOAD 0 @@ -69,15 +84,18 @@ L3 LINENUMBER 47 L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "" LDC 47 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME L5 @@ -85,15 +103,18 @@ LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 LOCALVARIABLE a Ljava/lang/String; L0 L5 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "noargs" LDC 50 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -101,29 +122,35 @@ LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL LDC "noargs$static" LDC 53 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "args" LDC 57 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -135,15 +162,18 @@ LOCALVARIABLE d [I L0 L2 5 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL LDC "args$static" LDC 61 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -154,30 +184,36 @@ LOCALVARIABLE d [I L0 L2 4 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL LDC "callTopLevelStatic" LDC 65 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LINENUMBER 66 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL LDC "callTopLevelStatic" LDC 66 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME APPEND [resources/OnMethodTest] L4 @@ -186,15 +222,18 @@ LOCALVARIABLE b J L0 L4 1 LOCALVARIABLE instance Lresources/OnMethodTest; L2 L4 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL LDC "callTargetStatic" LDC 70 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -203,14 +242,17 @@ LOCALVARIABLE b J L0 L2 1 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "callTopLevel" LDC 74 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME ALOAD 0 @@ -220,15 +262,18 @@ LOCALVARIABLE a Ljava/lang/String; L0 L2 1 LOCALVARIABLE b J L0 L2 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "callTarget" LDC 78 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -238,58 +283,70 @@ LOCALVARIABLE b J L0 L2 2 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "exception" LDC 83 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "exception" LDC 84 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME1 java/lang/Throwable L4 LINENUMBER 85 L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "exception" LDC 85 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME APPEND [java/lang/Throwable] L6 LINENUMBER 87 L6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "exception" LDC 87 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L7 FRAME SAME L8 @@ -298,75 +355,90 @@ LOCALVARIABLE this Lresources/OnMethodTest; L0 L8 0 MAXSTACK = 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "uncaught" LDC 90 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "array" LDC 94 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LINENUMBER 96 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "array" LDC 96 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME APPEND [[I] L4 LINENUMBER 97 L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "array" LDC 97 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME APPEND [I] L6 LINENUMBER 98 L6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "array" LDC 98 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L7 FRAME SAME L8 @@ -376,14 +448,17 @@ LOCALVARIABLE arr [I L2 L8 2 LOCALVARIABLE b I L4 L8 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "field" LDC 101 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME ALOAD 0 @@ -391,45 +466,54 @@ L2 LINENUMBER 102 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "field" LDC 102 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME L4 LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newObject" LDC 105 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LINENUMBER 106 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newObject" LDC 106 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME APPEND [java/util/HashMap] L4 @@ -438,75 +522,90 @@ LOCALVARIABLE m Ljava/util/Map; L2 L4 1 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newArray" LDC 109 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LINENUMBER 110 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newArray" LDC 110 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME APPEND [[I] L4 LINENUMBER 111 L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newArray" LDC 111 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME APPEND [[[I] L6 LINENUMBER 112 L6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newArray" LDC 112 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L7 FRAME APPEND [[Ljava/lang/String;] L8 LINENUMBER 113 L8 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "newArray" LDC 113 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L9 FRAME APPEND [[[Ljava/lang/String;] L10 @@ -518,45 +617,54 @@ LOCALVARIABLE d [[Ljava/lang/String; L8 L10 4 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC 116 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LINENUMBER 117 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC 117 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME APPEND [java/util/HashMap] L4 LINENUMBER 119 L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC 119 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME APPEND [java/util/HashMap] IFEQ L6 @@ -564,30 +672,36 @@ L7 LINENUMBER 120 L7 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC 120 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L8 FRAME SAME L6 LINENUMBER 122 L6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC 122 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L9 FRAME SAME L10 @@ -597,43 +711,52 @@ LOCALVARIABLE d Ljava/util/HashMap; L4 L10 2 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "sync" LDC 125 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME SAME ALOAD 0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L6 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "sync" LDC 126 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L6 FRAME APPEND [resources/OnMethodTest] L7 LINENUMBER 127 L7 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "sync" LDC 127 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L8 FRAME SAME GOTO L9 @@ -641,15 +764,18 @@ L9 LINENUMBER 128 L9 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L10 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "sync" LDC 128 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L10 FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [] L11 @@ -657,14 +783,17 @@ LOCALVARIABLE this Lresources/OnMethodTest; L4 L11 0 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "callTopLevel1" LDC 131 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME ALOAD 0 @@ -672,15 +801,18 @@ L2 LINENUMBER 132 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "callTopLevel1" LDC 132 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME APPEND [J] L4 @@ -690,15 +822,18 @@ LOCALVARIABLE b J L0 L4 2 LOCALVARIABLE i J L2 L4 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "calLTargetX" LDC 136 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -708,15 +843,18 @@ LOCALVARIABLE b J L0 L2 2 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsMultiReturn" LDC 140 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME IFLE L2 @@ -724,74 +862,89 @@ L3 LINENUMBER 141 L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsMultiReturn" LDC 141 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME L2 LINENUMBER 144 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsMultiReturn" LDC 144 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 IFLE L6 L7 LINENUMBER 145 L7 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsMultiReturn" LDC 145 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L8 FRAME SAME L6 LINENUMBER 149 L6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsMultiReturn" LDC 149 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L9 L10 LINENUMBER 150 L10 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L11 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsMultiReturn" LDC 150 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L11 FRAME SAME L12 @@ -802,73 +955,88 @@ LOCALVARIABLE c [Ljava/lang/String; L0 L12 4 LOCALVARIABLE d [I L0 L12 5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "staticField" LDC 161 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 LINENUMBER 162 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "staticField" LDC 162 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME L4 LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "syncM" LDC 165 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME SAME ALOAD 0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L6 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "syncM" LDC 166 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L6 FRAME APPEND [java/lang/Object] L7 LINENUMBER 167 L7 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "syncM" LDC 167 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L8 FRAME SAME GOTO L9 @@ -877,15 +1045,18 @@ L9 LINENUMBER 168 L9 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L10 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "syncM" LDC 168 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L10 FRAME SAME L11 @@ -893,15 +1064,18 @@ LOCALVARIABLE this Lresources/OnMethodTest; L4 L11 0 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "argsTypeMatch" LDC 173 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 @@ -910,58 +1084,70 @@ LOCALVARIABLE l Ljava/util/ArrayList; L0 L2 1 MAXSTACK = 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "caught" LDC 178 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "caught" LDC 179 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME1 java/lang/Throwable L4 LINENUMBER 180 L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "caught" LDC 180 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME APPEND [java/lang/Throwable] L6 LINENUMBER 182 L6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "caught" LDC 182 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AllLines" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L7 FRAME SAME L8 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/AnytypeArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/AnytypeArgs similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/AnytypeArgs rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/AnytypeArgs index 06efd952f..b91597ad0 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/AnytypeArgs +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/AnytypeArgs @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ICONST_4 ANEWARRAY java/lang/Object @@ -25,9 +24,10 @@ ALOAD 5 AASTORE INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args(Ljava/lang/Object;[Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AnytypeArgs" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/AnytypeArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/AnytypeArgsNoSelf similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/AnytypeArgsNoSelf rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/AnytypeArgsNoSelf index 0958df380..5f805f292 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/AnytypeArgsNoSelf +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/AnytypeArgsNoSelf @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ICONST_4 ANEWARRAY java/lang/Object DUP @@ -24,9 +23,10 @@ ALOAD 5 AASTORE INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf([Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Args b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Args similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Args rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/Args index f6a8432c8..af5c2a133 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Args +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Args @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -7,9 +9,10 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Args" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Args2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Args2Sampled similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Args2Sampled rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/Args2Sampled index d55b6715f..7ba9552cb 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Args2Sampled +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Args2Sampled @@ -1,5 +1,10 @@ ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] ISTORE 6 ILOAD 6 IFEQ L0 @@ -7,6 +12,8 @@ L1 FRAME APPEND [I] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -14,10 +21,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Args2Sampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME ILOAD 6 IFEQ L2 @@ -25,6 +33,8 @@ L3 FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -32,10 +42,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Args2Sampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 LINENUMBER 57 L2 FRAME SAME diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration similarity index 72% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration index 944f693e0..7444c760a 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration @@ -10,6 +10,8 @@ L1 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 10 ALOAD 0 @@ -21,10 +23,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME1 J L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2 similarity index 67% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2 rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2 index afff11533..d2bbf59cd 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2 +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2 @@ -10,6 +10,8 @@ L1 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 10 ALOAD 0 @@ -21,14 +23,17 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration2" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME1 J INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 12 ALOAD 0 @@ -40,10 +45,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration2" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J T T] [J] L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2Err b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2Err similarity index 69% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2Err rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2Err index 3da1123e3..d779633ba 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2Err +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2Err @@ -13,15 +13,18 @@ DUP ASTORE 10 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 6 ALOAD 10 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2(Ljava/lang/Object;JLjava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J java/lang/Throwable] [java/lang/Throwable] ATHROW @@ -35,15 +38,18 @@ DUP ASTORE 11 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 6 ALOAD 11 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J T java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2Sampled similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2Sampled rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2Sampled index 8507056d9..c6b8da81e 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDuration2Sampled +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDuration2Sampled @@ -1,7 +1,12 @@ LCONST_0 LSTORE 6 ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] DUP2 LSTORE 8 L2I @@ -9,7 +14,12 @@ ISTORE 10 ILOAD 10 IFEQ L1 ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J +INVOKEDYNAMIC getEndTs(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] LLOAD 8 LSUB LSTORE 6 @@ -17,6 +27,8 @@ L2 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 11 ALOAD 0 @@ -28,10 +40,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J ILOAD 10 @@ -40,6 +53,8 @@ L4 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T T] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 13 ALOAD 0 @@ -51,10 +66,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME SAME1 J L5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationBoxed b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationBoxed similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationBoxed rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationBoxed diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationBoxedErr b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationBoxedErr similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationBoxedErr rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationBoxedErr diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationConstructor b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationConstructor similarity index 67% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationConstructor rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationConstructor index 18f4e9e77..0534e1543 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationConstructor +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationConstructor @@ -10,15 +10,18 @@ L3 FRAME FULL [resources/OnMethodTest java/lang/String J J] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 2 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args(Ljava/lang/Object;JLjava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME L5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationConstructorErr b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationConstructorErr similarity index 73% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationConstructorErr rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationConstructorErr index 96d6fc9c2..5485a2524 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationConstructorErr +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationConstructorErr @@ -19,15 +19,18 @@ DUP ASTORE 5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 1 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME FULL [resources/OnMethodTest J J java/lang/Throwable] [java/lang/Throwable] ATHROW @@ -55,15 +58,18 @@ DUP ASTORE 6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 2 ALOAD 6 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationErr b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationErr similarity index 71% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationErr rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationErr index 8a9140219..fc5f09e70 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationErr +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationErr @@ -12,15 +12,18 @@ DUP ASTORE 10 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 6 ALOAD 10 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationMultiReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationMultiReturn similarity index 65% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationMultiReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationMultiReturn index 130a0e1de..e16e8fe15 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsDurationMultiReturn +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationMultiReturn @@ -10,6 +10,8 @@ L3 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 10 ALOAD 0 @@ -21,10 +23,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 FRAME SAME1 J IFLE L5 @@ -34,6 +37,8 @@ L7 FRAME SAME1 J INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 12 ALOAD 0 @@ -45,10 +50,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L8 FRAME SAME1 J L5 @@ -59,6 +65,8 @@ L10 FRAME SAME1 J INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L11 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 14 ALOAD 0 @@ -70,10 +78,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L11 FRAME SAME1 J L12 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationSampled new file mode 100644 index 000000000..e1abc86cf --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsDurationSampled @@ -0,0 +1,57 @@ +LCONST_0 +LSTORE 6 +ICONST_1 +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +DUP2 +LSTORE 8 +L2I +ISTORE 10 +ILOAD 10 +IFEQ L1 +ICONST_1 +INVOKEDYNAMIC getEndTs(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +LLOAD 8 +LSUB +LSTORE 6 +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [J] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 11 +ALOAD 0 +LLOAD 11 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 J +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 +LOCALVARIABLE d [I L0 L3 5 +MAXSTACK = 12 +MAXLOCALS = 13 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsNoSelf similarity index 59% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsNoSelf rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsNoSelf index 2414fb112..c3731ed96 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsNoSelf +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsNoSelf @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" ALOAD 1 LLOAD 2 @@ -10,9 +9,10 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf(Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturn similarity index 65% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturn index ae346e6f4..1afc254e3 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturn +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturn @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 6 ALOAD 0 @@ -10,10 +12,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnAugmented similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnAugmented rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnAugmented index adb9ca046..4aec24966 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnAugmented +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnAugmented @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LSTORE 6 ALOAD 0 ALOAD 1 @@ -12,10 +11,11 @@ ALOAD 5 LLOAD 6 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnAugmented1 similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnAugmented1 rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnAugmented1 index e12e3dcdf..125a07524 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsReturnAugmented1 +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnAugmented1 @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LSTORE 6 ALOAD 0 LLOAD 6 @@ -12,10 +11,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnBoxed b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnBoxed similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnBoxed rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnBoxed index fe0063998..76ecce034 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnBoxed +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnBoxed @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 6 ALOAD 0 @@ -11,10 +13,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnBoxed$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturnBoxed" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnSampled similarity index 54% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnSampled rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnSampled index 9fbd61aec..207af266c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnSampled +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnSampled @@ -1,5 +1,10 @@ ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] ISTORE 6 ILOAD 6 IFEQ L1 @@ -7,6 +12,8 @@ L2 FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I I] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 7 ALOAD 0 @@ -17,10 +24,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnTypeMatch b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnTypeMatch similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnTypeMatch rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnTypeMatch index 1293b2a86..b3a092f2c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnTypeMatch +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnTypeMatch @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 6 ALOAD 0 @@ -10,10 +12,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnTypeMatch$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturnTypeMatch" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnTypeNoMatch b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnTypeNoMatch similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnTypeNoMatch rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnTypeNoMatch diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnVoid b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnVoid similarity index 57% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnVoid rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnVoid index 431f4435d..40f21025d 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsReturnVoid +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsReturnVoid @@ -1,15 +1,18 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL ASTORE 1 ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnVoid$args(Ljava/lang/Object;Ljava/lang/Void;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsReturnVoid" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampled similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampled rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampled index e6f191025..2e28b0b4b 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampled +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampled @@ -1,5 +1,10 @@ ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] ISTORE 6 ILOAD 6 IFEQ L0 @@ -7,6 +12,8 @@ L1 FRAME APPEND [I] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -14,10 +21,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsSampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME L2 LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampledAdaptive new file mode 100644 index 000000000..763b1f6ea --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampledAdaptive @@ -0,0 +1,48 @@ +ICONST_1 +INVOKEDYNAMIC hitAdaptive(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 6 +ILOAD 6 +IFEQ L0 +L1 +FRAME APPEND [I] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +ILOAD 6 +IFEQ L2 +ICONST_1 +INVOKEDYNAMIC updateEndTs(I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +L2 +FRAME SAME1 J +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 +LOCALVARIABLE d [I L0 L3 5 +MAXSTACK = 6 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampledNoSampling b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampledNoSampling similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampledNoSampling rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampledNoSampling index a45b566ea..b58ea585f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSampledNoSampling +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSampledNoSampling @@ -1,5 +1,10 @@ ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] ISTORE 6 ILOAD 6 IFEQ L0 @@ -7,6 +12,8 @@ L1 FRAME APPEND [I] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -14,13 +21,16 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -28,10 +38,11 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 LINENUMBER 57 L2 FRAME SAME diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsShared b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsShared similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsShared rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsShared index 28b4592fe..f8b81b27f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsShared +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsShared @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -10,9 +9,10 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsShared" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSigMatch b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSigMatch similarity index 54% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSigMatch rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSigMatch index e3bc08fb9..f3e0320b0 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsSigMatch +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsSigMatch @@ -1,24 +1,30 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m3(Ljava/lang/Object;Ljava/util/ArrayList;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m1(Ljava/lang/Object;Ljava/util/List;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 LINENUMBER 173 L1 FRAME SAME diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsUnsafe b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsUnsafe similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsUnsafe rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsUnsafe index dfdd8aaa4..5ade9158a 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArgsUnsafe +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArgsUnsafe @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LLOAD 2 @@ -7,9 +9,10 @@ ALOAD 4 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetAfter similarity index 65% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetAfter index 3a9edbea6..509d2efe6 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetAfter @@ -5,16 +5,19 @@ DUP ISTORE 5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ILOAD 5 ALOAD 4 ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfter$args(Ljava/lang/Object;I[II)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest I [I I [I I] [I] ISTORE 6 L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetAfterAny similarity index 69% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetAfterAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetAfterAny index dfc9bb7ec..1ce2776d5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetAfterAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetAfterAny @@ -5,6 +5,8 @@ DUP ISTORE 5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ILOAD 5 INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; @@ -12,10 +14,11 @@ ALOAD 4 ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest I [I I [I I] [I] ISTORE 6 L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetBefore similarity index 64% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetBefore index 3b47885ab..c020bb7ed 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetBefore @@ -1,19 +1,19 @@ DUP2 ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 4 ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args(Ljava/lang/Object;[II)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] IALOAD ISTORE 5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetBeforeAny similarity index 65% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetBeforeAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetBeforeAny index e4c365578..1cd5081ad 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArrayGetBeforeAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArrayGetBeforeAny @@ -2,15 +2,18 @@ DUP2 ASTORE 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 4 ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] IALOAD ISTORE 5 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetAfter similarity index 57% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetAfter index 77d4f3367..a1cae5de3 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetAfter @@ -5,16 +5,19 @@ ASTORE 6 ILOAD 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 ILOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfter$args(Ljava/lang/Object;[III)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest I [I I I I [I] [] MAXSTACK = 4 MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetAfterAny similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetAfterAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetAfterAny index 8178c71d0..a95086dd6 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetAfterAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetAfterAny @@ -5,6 +5,8 @@ ASTORE 6 ILOAD 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 @@ -12,10 +14,11 @@ ILOAD 4 INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest I [I I I I [I] [] MAXSTACK = 4 MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetBefore similarity index 65% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetBefore index c3e6aa12a..a39b929cd 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetBefore @@ -5,16 +5,19 @@ ASTORE 6 ILOAD 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 ILOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args(Ljava/lang/Object;[III)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetBeforeAny similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetBeforeAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetBeforeAny index de5e1e4bf..4b78e223f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetBeforeAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ArraySetBeforeAny @@ -3,11 +3,10 @@ DUP2 ISTORE 5 ASTORE 6 ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 @@ -15,10 +14,11 @@ ILOAD 4 INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Catch b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Catch similarity index 63% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Catch rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/Catch index d3f800737..fe9a6dad5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Catch +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Catch @@ -1,17 +1,17 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args(Ljava/lang/Object;Ljava/io/IOException;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Catch" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] ASTORE 2 L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/CheckcastAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/CheckcastAfter similarity index 71% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/CheckcastAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/CheckcastAfter index 7bbfbb2db..a38e91ece 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/CheckcastAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/CheckcastAfter @@ -1,16 +1,19 @@ DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" ALOAD 2 LDC "java.util.HashMap" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/CheckcastAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] ASTORE 3 L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/CheckcastBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/CheckcastBefore similarity index 72% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/CheckcastBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/CheckcastBefore index 8e4d5ba87..ce7326c33 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/CheckcastBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/CheckcastBefore @@ -1,16 +1,19 @@ DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" LDC "java.util.HashMap" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/CheckcastBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] CHECKCAST java/util/HashMap ASTORE 3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ConstructorArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ConstructorArgs similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ConstructorArgs rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ConstructorArgs index 731a88e15..4f0815b7c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ConstructorArgs +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ConstructorArgs @@ -1,11 +1,14 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args(Ljava/lang/Object;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ConstructorArgs" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/lang/String] [] \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Error b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Error similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Error rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/Error index 9e87e2937..2895beb9b 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Error +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Error @@ -2,20 +2,20 @@ TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable FRAME SAME1 java/lang/Throwable DUP ASTORE 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "uncaught" ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Error$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Error" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ErrorCaught b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ErrorCaught similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ErrorCaught rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ErrorCaught index 303a7b8b6..94528426f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ErrorCaught +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ErrorCaught @@ -9,15 +9,18 @@ DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "caught" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorCaught$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ErrorCaught" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME FULL [resources/OnMethodTest T java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ErrorDuration b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ErrorDuration similarity index 69% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ErrorDuration rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/ErrorDuration index 768dff09c..7571e8b19 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ErrorDuration +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/ErrorDuration @@ -12,16 +12,19 @@ DUP ASTORE 5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "uncaught" LLOAD 1 ALOAD 5 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ErrorDuration" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest J J java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetAfter similarity index 65% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetAfter index 570125a60..5541d69b5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetAfter @@ -4,16 +4,19 @@ DUP ISTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LDC "field int resources.OnMethodTest#field" ILOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldGetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest resources/OnMethodTest I] [resources/OnMethodTest I] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetAfterStatic similarity index 64% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetAfterStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetAfterStatic index 41146ffd3..5542fe628 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetAfterStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetAfterStatic @@ -2,16 +2,19 @@ DUP2 LSTORE 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ACONST_NULL LDC "static field long resources.OnMethodTest#sField" LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest J] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetBefore similarity index 63% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetBefore index 4ac746b43..c71f10ecf 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetBefore @@ -1,19 +1,19 @@ DUP ASTORE 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LDC "field" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldGetBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest resources/OnMethodTest] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetBeforeStatic similarity index 58% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetBeforeStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetBeforeStatic index 0718885a9..4c28dd554 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldGetBeforeStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldGetBeforeStatic @@ -1,14 +1,17 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ACONST_NULL LDC "sField" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetAfter similarity index 58% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetAfter index 9a1755b04..1105ada1f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetAfter @@ -4,16 +4,19 @@ ASTORE 2 ILOAD 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 2 LDC "field" ILOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldSetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME APPEND [I resources/OnMethodTest] MAXSTACK = 4 MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetAfterStatic similarity index 57% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetAfterStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetAfterStatic index 95080ef6c..563461db8 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetAfterStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetAfterStatic @@ -2,16 +2,19 @@ LSTORE 1 LLOAD 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ACONST_NULL LDC "sField" LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME APPEND [J] MAXSTACK = 5 MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetBefore similarity index 64% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetBefore index 7aaa8ec10..5f08a04a4 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetBefore @@ -4,16 +4,19 @@ ASTORE 2 ILOAD 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 2 LDC "field" ILOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldSetBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest I resources/OnMethodTest] [resources/OnMethodTest I] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetBeforeStatic similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetBeforeStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetBeforeStatic index cda34fd5d..58a420186 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/FieldSetBeforeStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/FieldSetBeforeStatic @@ -2,16 +2,19 @@ LSTORE 1 LLOAD 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ACONST_NULL LDC "sField" LLOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest J] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/InstanceofAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/InstanceofAfter similarity index 71% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/InstanceofAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/InstanceofAfter index a78e1e486..5303c7c6f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/InstanceofAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/InstanceofAfter @@ -2,16 +2,19 @@ DUP ASTORE 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC "java.util.HashMap" ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/InstanceofAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [I] IFEQ L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/InstanceofBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/InstanceofBefore similarity index 72% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/InstanceofBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/InstanceofBefore index 37639540f..cd1d3c346 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/InstanceofBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/InstanceofBefore @@ -1,20 +1,20 @@ DUP ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" LDC "java.util.HashMap" ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/InstanceofBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [java/util/HashMap] IFEQ L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Line b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Line similarity index 60% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Line rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/Line index 965a3f2bd..a9b957de9 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Line +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Line @@ -1,14 +1,17 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "exception" LDC 84 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Line$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Line" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME SAME1 java/lang/Throwable L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchAnnotated b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchAnnotated new file mode 100644 index 000000000..b084b1008 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchAnnotated @@ -0,0 +1,14 @@ +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotated$args(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MatchAnnotated" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchAnnotatedRegex b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchAnnotatedRegex new file mode 100644 index 000000000..433bfaa93 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchAnnotatedRegex @@ -0,0 +1,14 @@ +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotatedRegex$args(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MatchAnnotatedRegex" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchDerived b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchDerived similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchDerived rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchDerived index 47577c880..062719bcb 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MatchDerived +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MatchDerived @@ -1,13 +1,16 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MatchDerived$args(Lresources/AbstractClass;Ljava/lang/String;Ljava/util/Map;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MatchDerived" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCall b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCall similarity index 70% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCall rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCall index 868720f1e..2f4da9c10 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCall +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCall @@ -3,6 +3,8 @@ ASTORE 6 ASTORE 7 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 LLOAD 4 @@ -12,10 +14,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevel" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCall$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCall" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME APPEND [J java/lang/String resources/OnMethodTest] ALOAD 7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDuration b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDuration similarity index 69% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDuration rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDuration index 3887e14b1..67b39ac77 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDuration +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDuration @@ -10,6 +10,8 @@ ALOAD 10 LLOAD 8 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 12 LLOAD 12 @@ -18,10 +20,11 @@ ALOAD 10 LLOAD 8 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args(JJLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallDuration" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDuration2 similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDuration2 rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDuration2 index c5bf485ff..6103a86cd 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDuration2 +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDuration2 @@ -20,6 +20,8 @@ ALOAD 18 LLOAD 16 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 20 LLOAD 20 @@ -28,14 +30,17 @@ ALOAD 18 LLOAD 16 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0(JJLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J J java/lang/String resources/OnMethodTest] [J] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 22 LLOAD 22 @@ -44,10 +49,11 @@ ALOAD 10 LLOAD 8 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1(JJLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J J java/lang/String resources/OnMethodTest T T] [J] L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDurationSampled similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDurationSampled rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDurationSampled index 3418b9cd8..efb6ec502 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDurationSampled +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDurationSampled @@ -1,7 +1,12 @@ LCONST_0 LSTORE 4 ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] DUP2 LSTORE 6 L2I @@ -14,6 +19,8 @@ ALOAD 11 LLOAD 9 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 13 LLOAD 13 @@ -22,10 +29,11 @@ ALOAD 11 LLOAD 9 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args(JJLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDurationSampledMulti b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDurationSampledMulti similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDurationSampledMulti rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDurationSampledMulti index a1b26c114..c3dd093b7 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallDurationSampledMulti +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallDurationSampledMulti @@ -1,7 +1,12 @@ LCONST_0 LSTORE 4 ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] DUP2 LSTORE 6 L2I @@ -14,6 +19,8 @@ ALOAD 11 LLOAD 9 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 13 LLOAD 13 @@ -22,16 +29,22 @@ ALOAD 11 LLOAD 9 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] LCONST_0 LSTORE 15 ICONST_3 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] DUP2 LSTORE 17 L2I @@ -42,6 +55,8 @@ ALOAD 22 LLOAD 20 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 23 LLOAD 23 @@ -50,10 +65,11 @@ ALOAD 22 LLOAD 20 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest T T J J I J java/lang/String] [J J] LSTORE 25 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallNoArgs similarity index 60% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallNoArgs rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallNoArgs index 965e7ad40..983c56c62 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallNoArgs +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallNoArgs @@ -1,11 +1,14 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args()V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J] [resources/OnMethodTest java/lang/String J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturn similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturn index 738ad5a66..e456db6f0 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturn +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturn @@ -4,11 +4,10 @@ ASTORE 7 ALOAD 7 ALOAD 6 LLOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 8 LLOAD 8 @@ -16,10 +15,11 @@ ALOAD 6 LLOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args(JLjava/lang/String;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturnAugmented similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturnAugmented rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturnAugmented index b6d0d131a..85ae09146 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturnAugmented +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturnAugmented @@ -4,21 +4,21 @@ ASTORE 7 ALOAD 7 ALOAD 6 LLOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LSTORE 8 ALOAD 6 LLOAD 4 LLOAD 8 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args(Ljava/lang/String;JJ)J [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturnAugmented1 similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturnAugmented1 rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturnAugmented1 index 28a31eda1..f582807b5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallReturnAugmented1 +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallReturnAugmented1 @@ -4,21 +4,21 @@ ASTORE 7 ALOAD 7 ALOAD 6 LLOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP LSTORE 8 LLOAD 8 ALOAD 6 LLOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args(JLjava/lang/String;J)J [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallSampled similarity index 58% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallSampled rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallSampled index 0bd2972ad..0c3e86493 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallSampled +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallSampled @@ -1,5 +1,10 @@ ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] ISTORE 4 LSTORE 5 ASTORE 7 @@ -10,6 +15,8 @@ L2 FRAME FULL [resources/OnMethodTest java/lang/String J I J java/lang/String resources/OnMethodTest] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 7 LLOAD 5 @@ -19,10 +26,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevel" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallSampled" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME ALOAD 8 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallSampledAdaptive similarity index 58% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallSampledAdaptive rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallSampledAdaptive index fd8c07e8f..d674d2d3c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallSampledAdaptive +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallSampledAdaptive @@ -1,5 +1,10 @@ ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z +INVOKEDYNAMIC hitAdaptive(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] ISTORE 4 LSTORE 5 ASTORE 7 @@ -10,6 +15,8 @@ L2 FRAME FULL [resources/OnMethodTest java/lang/String J I J java/lang/String resources/OnMethodTest] [] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 7 LLOAD 5 @@ -19,10 +26,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevel" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME ALOAD 8 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallStatic similarity index 71% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallStatic index 78caa7fcc..0062d6307 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/MethodCallStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/MethodCallStatic @@ -2,6 +2,8 @@ LSTORE 4 ASTORE 6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 LLOAD 4 @@ -11,10 +13,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevel" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallStatic$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String] [J] ALOAD 6 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NativeWithReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NativeWithReturn similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NativeWithReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NativeWithReturn diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NativeWithoutReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NativeWithoutReturn similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NativeWithoutReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NativeWithoutReturn diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewAfter similarity index 64% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewAfter index 162069f9b..5db8235f8 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewAfter @@ -1,18 +1,18 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LDC "java.util.HashMap" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args(Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/util/HashMap] [java/util/HashMap] ASTORE 2 L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayIntAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayIntAfter similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayIntAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayIntAfter index ecd2b1c6a..45cee86c1 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayIntAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayIntAfter @@ -1,17 +1,17 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntAfter$args(Ljava/lang/Object;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest [I] [[I] ASTORE 2 L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayIntBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayIntBefore similarity index 61% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayIntBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayIntBefore index f5648222c..cb04f959b 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayIntBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayIntBefore @@ -1,29 +1,35 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "int" ICONST_1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 I L2 LINENUMBER 110 L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "int" ICONST_2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest [I] [I I] L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayStringAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayStringAfter similarity index 68% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayStringAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayStringAfter index 51e692b49..a5baed560 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayStringAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayStringAfter @@ -1,17 +1,17 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringAfter$args(Ljava/lang/Object;[Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [[Ljava/lang/String;] ASTORE 4 L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayStringBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayStringBefore similarity index 62% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayStringBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayStringBefore index f715296c2..00a2fc159 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NewArrayStringBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewArrayStringBefore @@ -1,35 +1,35 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "java.lang.String" ICONST_1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest [I [[I] [I] L4 LINENUMBER 112 L4 -ICONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.$btrace$$level : I -IF_ICMPLT L5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "java.lang.String" ICONST_2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [I I] L6 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewBefore similarity index 58% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewBefore index 33f4b38d7..212744270 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NewBefore @@ -1,13 +1,16 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "java.util.HashMap" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args(Ljava/lang/Object;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgs new file mode 100644 index 000000000..19a0dc223 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgs @@ -0,0 +1,13 @@ +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgsEntryReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgsEntryReturn similarity index 57% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgsEntryReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgsEntryReturn index ae232c85d..a3620dc0c 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgsEntryReturn +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgsEntryReturn @@ -1,25 +1,31 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 6 ALOAD 0 LLOAD 6 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn(Ljava/lang/Object;J)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgsEntryReturnNoCapture b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgsEntryReturnNoCapture similarity index 57% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgsEntryReturnNoCapture rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgsEntryReturnNoCapture index 084b3ef21..3c8cfc8d4 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NoArgsEntryReturnNoCapture +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/NoArgsEntryReturnNoCapture @@ -1,22 +1,28 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturnNoCapture$argsEmptyEntry(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturnNoCapture$argsEmptyReturn(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgs similarity index 51% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgs rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgs index b7aba0515..848874918 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgs +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgs @@ -1,14 +1,17 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LLOAD 1 ALOAD 3 ALOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args(Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticArgs" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgsReturn similarity index 63% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgsReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgsReturn index 064b3c3b7..4d5cd6057 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticArgsReturn +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgsReturn @@ -1,8 +1,7 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP DUP2 LSTORE 5 ALOAD 0 @@ -12,10 +11,11 @@ ALOAD 3 ALOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args(Ljava/lang/String;JJ[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME SAME1 J L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgsSelf similarity index 54% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgsSelf rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgsSelf index d223feab2..e078e71d0 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticArgsSelf +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticArgsSelf @@ -1,5 +1,7 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL ALOAD 0 LLOAD 1 @@ -7,9 +9,10 @@ ALOAD 3 ALOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticMethodCall b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticMethodCall similarity index 71% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticMethodCall rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticMethodCall index 939482ecd..3c454f594 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticMethodCall +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticMethodCall @@ -1,11 +1,10 @@ LSTORE 4 ASTORE 6 ASTORE 7 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 6 LLOAD 4 ALOAD 7 @@ -14,10 +13,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevelStatic" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCall$args(Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticMethodCall" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [java/lang/String J resources/OnMethodTest J java/lang/String resources/OnMethodTest] [J] ALOAD 7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticMethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticMethodCallStatic similarity index 69% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticMethodCallStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticMethodCallStatic index cf0a2bf02..16eff8676 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/StaticMethodCallStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticMethodCallStatic @@ -1,10 +1,9 @@ LSTORE 4 ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 6 LLOAD 4 LDC "static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" @@ -12,10 +11,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevelStatic" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCallStatic$args(Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME APPEND [resources/OnMethodTest J java/lang/String] ALOAD 6 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticNoArgs new file mode 100644 index 000000000..0f2311bbf --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticNoArgs @@ -0,0 +1,13 @@ +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty()V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticNoArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticNoArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticNoArgsSelf similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticNoArgsSelf rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticNoArgsSelf index 05b92ba93..50f02e21d 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticNoArgsSelf +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/StaticNoArgsSelf @@ -1,11 +1,14 @@ INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ACONST_NULL INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty(Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME SAME MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncEntry b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncEntry similarity index 73% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncEntry rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncEntry index 77d559a08..bad07b1e9 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncEntry +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncEntry @@ -3,15 +3,18 @@ DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L6 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "sync" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncEntry" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L6 FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] L7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncExit b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncExit similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncExit rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncExit index 23b8d20ad..08fe7d56e 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncExit +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncExit @@ -5,15 +5,18 @@ DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncExit" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L7 FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] GOTO L8 @@ -22,15 +25,18 @@ DUP ASTORE 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" ALOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncExit" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L9 FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] ALOAD 3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncMEntry b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncMEntry similarity index 71% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncMEntry rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncMEntry index d14f44743..0a214cefa 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncMEntry +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncMEntry @@ -3,15 +3,18 @@ DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L6 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "syncM" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncMEntry" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L6 FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] L7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncMExit b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncMExit similarity index 66% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncMExit rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncMExit index 30110e900..6689df831 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/SyncMExit +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/SyncMExit @@ -5,15 +5,18 @@ DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncMExit" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L7 FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] GOTO L8 @@ -22,15 +25,18 @@ DUP ASTORE 4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" ALOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncMExit" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L9 FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] ALOAD 3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Throw b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Throw similarity index 69% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Throw rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/Throw index 22747e3b9..f49d43527 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/Throw +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/Throw @@ -2,16 +2,19 @@ DUP ASTORE 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" LDC "exception" ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Throw$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Throw" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] FRAME FULL [resources/OnMethodTest] [java/io/IOException] diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/AnytypeArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/AnytypeArgs new file mode 100644 index 000000000..e78c60e07 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/AnytypeArgs @@ -0,0 +1,42 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/AnytypeArgs", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ICONST_4 +ANEWARRAY java/lang/Object +DUP +ICONST_0 +ALOAD 1 +AASTORE +DUP +ICONST_1 +LLOAD 2 +INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; +AASTORE +DUP +ICONST_2 +ALOAD 4 +AASTORE +DUP +ICONST_3 +ALOAD 5 +AASTORE +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args(Ljava/lang/Object;[Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/AnytypeArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/AnytypeArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/AnytypeArgsNoSelf new file mode 100644 index 000000000..d47bc504a --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/AnytypeArgsNoSelf @@ -0,0 +1,41 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ICONST_4 +ANEWARRAY java/lang/Object +DUP +ICONST_0 +ALOAD 1 +AASTORE +DUP +ICONST_1 +LLOAD 2 +INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; +AASTORE +DUP +ICONST_2 +ALOAD 4 +AASTORE +DUP +ICONST_3 +ALOAD 5 +AASTORE +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf([Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Args b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Args new file mode 100644 index 000000000..1cae76594 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Args @@ -0,0 +1,27 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Args2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Args2Sampled new file mode 100644 index 000000000..33d3b765a --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Args2Sampled @@ -0,0 +1,109 @@ +ICONST_0 +ISTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled", +-2147483648, +0 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 6 +FRAME APPEND [I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled", +-2147483648, +0 +] +IFNE L1 +ILOAD 6 +IFEQ L2 +L1 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled", +-2147483648, +0 +] +IFNE L3 +ILOAD 6 +IFEQ L4 +L3 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Args2Sampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +LINENUMBER 57 L4 +FRAME SAME +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 +LOCALVARIABLE a Ljava/lang/String; L4 L5 1 +LOCALVARIABLE b J L4 L5 2 +LOCALVARIABLE c [Ljava/lang/String; L4 L5 4 +LOCALVARIABLE d [I L4 L5 5 +MAXSTACK = 6 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration new file mode 100644 index 000000000..9e897a64f --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration @@ -0,0 +1,70 @@ +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 8 +FRAME APPEND [J J] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration", +-2147483648, +0 +] +IFNE L1 +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 8 +LSUB +LSTORE 6 +L1 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 10 +ALOAD 0 +LLOAD 10 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME1 J +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 +LOCALVARIABLE d [I L0 L3 5 +MAXSTACK = 12 +MAXLOCALS = 12 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2 new file mode 100644 index 000000000..257f3b116 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2 @@ -0,0 +1,101 @@ +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 8 +FRAME APPEND [J J] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2", +-2147483648, +0 +] +IFNE L1 +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 8 +LSUB +LSTORE 6 +L1 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 10 +ALOAD 0 +LLOAD 10 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 12 +ALOAD 0 +LLOAD 12 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J T T] [J] +L4 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 +LOCALVARIABLE a Ljava/lang/String; L0 L4 1 +LOCALVARIABLE b J L0 L4 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L4 4 +LOCALVARIABLE d [I L0 L4 5 +MAXSTACK = 12 +MAXLOCALS = 14 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2Err b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2Err new file mode 100644 index 000000000..38f7ec067 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2Err @@ -0,0 +1,87 @@ +TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable +TRYCATCHBLOCK L0 L2 L2 java/lang/Throwable +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 8 +FRAME APPEND [J J] +FRAME SAME1 java/lang/Throwable +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 8 +LSUB +LSTORE 6 +DUP +ASTORE 10 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 6 +ALOAD 10 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2(Ljava/lang/Object;JLjava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J java/lang/Throwable] [java/lang/Throwable] +ATHROW +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [java/lang/Throwable] +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 8 +LSUB +LSTORE 6 +DUP +ASTORE 11 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 6 +ALOAD 11 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J T java/lang/Throwable] [java/lang/Throwable] +ATHROW +MAXSTACK = 5 +MAXLOCALS = 12 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2Sampled new file mode 100644 index 000000000..8fef47571 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDuration2Sampled @@ -0,0 +1,133 @@ +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +ICONST_0 +ISTORE 10 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled", +6, +2147483647 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +DUP2 +LSTORE 8 +L2I +ISTORE 10 +FRAME APPEND [J J I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled", +6, +2147483647 +] +IFNE L1 +ILOAD 10 +IFEQ L2 +ICONST_1 +INVOKEDYNAMIC getEndTs(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +LLOAD 8 +LSUB +LSTORE 6 +L1 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled", +0, +5 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 11 +ALOAD 0 +LLOAD 11 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled", +6, +2147483647 +] +IFNE L3 +ILOAD 10 +IFEQ L4 +L3 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T T] [J] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 13 +ALOAD 0 +LLOAD 13 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME SAME1 J +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +LOCALVARIABLE a Ljava/lang/String; L0 L5 1 +LOCALVARIABLE b J L0 L5 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 +LOCALVARIABLE d [I L0 L5 5 +MAXSTACK = 12 +MAXLOCALS = 15 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationBoxed b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationBoxed similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationBoxed rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationBoxed diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationBoxedErr b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationBoxedErr similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArgsDurationBoxedErr rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationBoxedErr diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationConstructor b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationConstructor new file mode 100644 index 000000000..2a5037e8d --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationConstructor @@ -0,0 +1,61 @@ +LCONST_0 +LSTORE 2 +LCONST_0 +LSTORE 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor", +-2147483648, +0 +] +IFNE L1 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 4 +FRAME FULL [resources/OnMethodTest java/lang/String J J] [] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor", +-2147483648, +0 +] +IFNE L3 +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 4 +LSUB +LSTORE 2 +L3 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 2 +ALOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args(Ljava/lang/Object;JLjava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME SAME +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +LOCALVARIABLE a Ljava/lang/String; L0 L5 1 +MAXSTACK = 4 +MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationConstructorErr b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationConstructorErr new file mode 100644 index 000000000..909da0470 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationConstructorErr @@ -0,0 +1,121 @@ +TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable +L2 +LINENUMBER 41 L2 +LCONST_0 +LSTORE 1 +LCONST_0 +LSTORE 3 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 3 +L0 +LINENUMBER 42 L0 +FRAME FULL [resources/OnMethodTest J J] [] +L3 +LINENUMBER 43 L3 +L1 +FRAME SAME1 java/lang/Throwable +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 3 +LSUB +LSTORE 1 +DUP +ASTORE 5 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 1 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME FULL [resources/OnMethodTest J J java/lang/Throwable] [java/lang/Throwable] +ATHROW +LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 +MAXSTACK = 5 +MAXLOCALS = 6 +TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable +L2 +LINENUMBER 45 L2 +LCONST_0 +LSTORE 2 +LCONST_0 +LSTORE 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 4 +L0 +LINENUMBER 46 L0 +FRAME FULL [resources/OnMethodTest java/lang/String J J] [] +L3 +LINENUMBER 47 L3 +L1 +FRAME SAME1 java/lang/Throwable +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 4 +LSUB +LSTORE 2 +DUP +ASTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 2 +ALOAD 6 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/Throwable] [java/lang/Throwable] +ATHROW +LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 +LOCALVARIABLE a Ljava/lang/String; L2 L1 1 +MAXSTACK = 5 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationErr b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationErr new file mode 100644 index 000000000..e2154ac07 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationErr @@ -0,0 +1,52 @@ +TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 8 +FRAME APPEND [J J] +FRAME SAME1 java/lang/Throwable +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 8 +LSUB +LSTORE 6 +DUP +ASTORE 10 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 6 +ALOAD 10 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J java/lang/Throwable] [java/lang/Throwable] +ATHROW +MAXSTACK = 5 +MAXLOCALS = 11 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationMultiReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationMultiReturn new file mode 100644 index 000000000..386419d39 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationMultiReturn @@ -0,0 +1,143 @@ +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 8 +FRAME APPEND [J J] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn", +-2147483648, +0 +] +IFNE L3 +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 8 +LSUB +LSTORE 6 +L3 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 10 +ALOAD 0 +LLOAD 10 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME SAME1 J +IFLE L5 +L6 +LINENUMBER 145 L6 +L7 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn", +1, +2147483647 +] +IFEQ L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L8 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 12 +ALOAD 0 +LLOAD 12 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L8 +FRAME SAME1 J +L5 +LINENUMBER 149 L5 +L9 +LINENUMBER 150 L9 +L10 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn", +1, +2147483647 +] +IFEQ L11 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L11 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 14 +ALOAD 0 +LLOAD 14 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L11 +FRAME SAME1 J +L12 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L12 0 +LOCALVARIABLE a Ljava/lang/String; L0 L12 1 +LOCALVARIABLE b J L0 L12 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L12 4 +LOCALVARIABLE d [I L0 L12 5 +MAXSTACK = 12 +MAXLOCALS = 16 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationSampled new file mode 100644 index 000000000..86b65b412 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsDurationSampled @@ -0,0 +1,89 @@ +LCONST_0 +LSTORE 6 +LCONST_0 +LSTORE 8 +ICONST_0 +ISTORE 10 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled", +-2147483648, +0 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +DUP2 +LSTORE 8 +L2I +ISTORE 10 +FRAME APPEND [J J I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled", +-2147483648, +0 +] +IFNE L1 +ILOAD 10 +IFEQ L2 +ICONST_1 +INVOKEDYNAMIC getEndTs(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +LLOAD 8 +LSUB +LSTORE 6 +L1 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 11 +ALOAD 0 +LLOAD 11 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME1 J +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 +LOCALVARIABLE d [I L0 L3 5 +MAXSTACK = 12 +MAXLOCALS = 13 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsNoSelf new file mode 100644 index 000000000..b56752172 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsNoSelf @@ -0,0 +1,27 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf(Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturn new file mode 100644 index 000000000..fe7b5273c --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturn @@ -0,0 +1,38 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturn", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 6 +ALOAD 0 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 J +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 +LOCALVARIABLE d [I L0 L2 5 +MAXSTACK = 10 +MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnAugmented new file mode 100644 index 000000000..12fdcbf9a --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnAugmented @@ -0,0 +1,37 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +LSTORE 6 +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +LLOAD 6 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 J +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 +LOCALVARIABLE d [I L0 L2 5 +MAXSTACK = 8 +MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnAugmented1 new file mode 100644 index 000000000..d6b07ba8a --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnAugmented1 @@ -0,0 +1,37 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +LSTORE 6 +ALOAD 0 +LLOAD 6 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 J +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 +LOCALVARIABLE d [I L0 L2 5 +MAXSTACK = 8 +MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnSampled new file mode 100644 index 000000000..37447890b --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsReturnSampled @@ -0,0 +1,71 @@ +ICONST_0 +ISTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled", +-2147483648, +0 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 6 +FRAME APPEND [I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled", +-2147483648, +0 +] +IFNE L1 +ILOAD 6 +IFEQ L2 +L1 +FRAME SAME1 J +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 7 +ALOAD 0 +LLOAD 7 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME1 J +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 +LOCALVARIABLE d [I L0 L3 5 +MAXSTACK = 10 +MAXLOCALS = 9 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampled new file mode 100644 index 000000000..c275ee634 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampled @@ -0,0 +1,69 @@ +ICONST_0 +ISTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampled", +-2147483648, +0 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 6 +FRAME APPEND [I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampled", +-2147483648, +0 +] +IFNE L1 +ILOAD 6 +IFEQ L2 +L1 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampled", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +LINENUMBER 57 L2 +FRAME SAME +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L2 L3 0 +LOCALVARIABLE a Ljava/lang/String; L2 L3 1 +LOCALVARIABLE b J L2 L3 2 +LOCALVARIABLE c [Ljava/lang/String; L2 L3 4 +LOCALVARIABLE d [I L2 L3 5 +MAXSTACK = 6 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampledAdaptive new file mode 100644 index 000000000..f55868689 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampledAdaptive @@ -0,0 +1,80 @@ +ICONST_0 +ISTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive", +-2147483648, +0 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hitAdaptive(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 6 +FRAME APPEND [I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive", +-2147483648, +0 +] +IFNE L1 +ILOAD 6 +IFEQ L2 +L1 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +LINENUMBER 57 L2 +FRAME SAME +ILOAD 6 +IFEQ L3 +ICONST_1 +INVOKEDYNAMIC updateEndTs(I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +L3 +FRAME SAME1 J +L4 +LOCALVARIABLE this Lresources/OnMethodTest; L2 L4 0 +LOCALVARIABLE a Ljava/lang/String; L2 L4 1 +LOCALVARIABLE b J L2 L4 2 +LOCALVARIABLE c [Ljava/lang/String; L2 L4 4 +LOCALVARIABLE d [I L2 L4 5 +MAXSTACK = 6 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampledNoSampling b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampledNoSampling new file mode 100644 index 000000000..a0668f31e --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsSampledNoSampling @@ -0,0 +1,96 @@ +ICONST_0 +ISTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling", +-2147483648, +0 +] +IFNE L0 +ICONST_1 +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 6 +FRAME APPEND [I] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling", +-2147483648, +0 +] +IFNE L1 +ILOAD 6 +IFEQ L2 +L1 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +LINENUMBER 57 L3 +FRAME SAME +L4 +LOCALVARIABLE this Lresources/OnMethodTest; L3 L4 0 +LOCALVARIABLE a Ljava/lang/String; L3 L4 1 +LOCALVARIABLE b J L3 L4 2 +LOCALVARIABLE c [Ljava/lang/String; L3 L4 4 +LOCALVARIABLE d [I L3 L4 5 +MAXSTACK = 6 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsShared b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsShared new file mode 100644 index 000000000..a2cc5e161 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsShared @@ -0,0 +1,27 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsShared", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsShared" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsUnsafe b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsUnsafe new file mode 100644 index 000000000..3bc057e25 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArgsUnsafe @@ -0,0 +1,27 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LLOAD 2 +ALOAD 4 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetAfter similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetAfter index 5b948aca4..13d539b00 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetAfter @@ -1,6 +1,13 @@ DUP2 ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.$btrace$$level : I +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter", +1, +2147483647 +] ICONST_1 ISUB DUP @@ -14,16 +21,19 @@ DUP ISTORE 6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ILOAD 6 ALOAD 4 ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfter$args(Ljava/lang/Object;I[II)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest I [I I [I I I] [I] ISTORE 7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetAfterAny similarity index 55% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetAfterAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetAfterAny index 6a97f89cc..9570c7664 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArrayGetAfterAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetAfterAny @@ -1,6 +1,13 @@ DUP2 ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.$btrace$$level : I +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny", +1, +2147483647 +] ICONST_1 ISUB DUP @@ -14,6 +21,8 @@ DUP ISTORE 6 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ILOAD 6 INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; @@ -21,10 +30,11 @@ ALOAD 4 ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest I [I I [I I I] [I] ISTORE 7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetBefore new file mode 100644 index 000000000..baca472a1 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetBefore @@ -0,0 +1,39 @@ +DUP2 +ASTORE 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 4 +ILOAD 3 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args(Ljava/lang/Object;[II)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] +IALOAD +ISTORE 5 +L3 +LINENUMBER 97 L3 +L4 +LINENUMBER 98 L4 +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +LOCALVARIABLE a I L0 L5 1 +LOCALVARIABLE arr [I L1 L5 2 +LOCALVARIABLE b I L3 L5 5 +MAXSTACK = 5 +MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetBeforeAny new file mode 100644 index 000000000..89702544c --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArrayGetBeforeAny @@ -0,0 +1,39 @@ +DUP2 +ASTORE 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 4 +ILOAD 3 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] +IALOAD +ISTORE 5 +L3 +LINENUMBER 97 L3 +L4 +LINENUMBER 98 L4 +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +LOCALVARIABLE a I L0 L5 1 +LOCALVARIABLE arr [I L1 L5 2 +LOCALVARIABLE b I L3 L5 5 +MAXSTACK = 5 +MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetAfter similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetAfter index 91d5c1181..40d41b189 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetAfter @@ -3,7 +3,14 @@ DUP2 ISTORE 5 ASTORE 6 ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.$btrace$$level : I +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArraySetAfter", +1, +2147483647 +] ICONST_1 ISUB DUP @@ -15,16 +22,19 @@ ILOAD 7 IFLT L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 ILOAD 4 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfter$args(Ljava/lang/Object;[III)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 LINENUMBER 98 L4 FRAME SAME diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetAfterAny similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetAfterAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetAfterAny index dc8bf293c..24fa31aee 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ArraySetAfterAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetAfterAny @@ -3,7 +3,14 @@ DUP2 ISTORE 5 ASTORE 6 ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.$btrace$$level : I +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny", +1, +2147483647 +] ICONST_1 ISUB DUP @@ -15,6 +22,8 @@ ILOAD 7 IFLT L4 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 @@ -22,10 +31,11 @@ ILOAD 4 INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L4 LINENUMBER 98 L4 FRAME SAME diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetBefore new file mode 100644 index 000000000..3bc9a07cb --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetBefore @@ -0,0 +1,40 @@ +ISTORE 4 +DUP2 +ISTORE 5 +ASTORE 6 +ILOAD 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArraySetBefore", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 6 +ILOAD 5 +ILOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args(Ljava/lang/Object;[III)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArraySetBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] +L4 +LINENUMBER 98 L4 +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +LOCALVARIABLE a I L0 L5 1 +LOCALVARIABLE arr [I L1 L5 2 +LOCALVARIABLE b I L2 L5 3 +MAXSTACK = 7 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetBeforeAny similarity index 51% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetBeforeAny rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetBeforeAny index 39099c0e8..e67c06fa4 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/ArraySetBeforeAny +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ArraySetBeforeAny @@ -3,8 +3,19 @@ DUP2 ISTORE 5 ASTORE 6 ILOAD 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny", +1, +2147483647 +] +IFEQ L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 ILOAD 5 @@ -12,10 +23,11 @@ ILOAD 4 INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Catch b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Catch new file mode 100644 index 000000000..1e742b2c1 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Catch @@ -0,0 +1,34 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Catch", +1, +2147483647 +] +IFEQ L2 +DUP +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args(Ljava/lang/Object;Ljava/io/IOException;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Catch" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] +ASTORE 2 +L3 +LINENUMBER 85 L3 +ALOAD 2 +L4 +LINENUMBER 87 L4 +L5 +LOCALVARIABLE e Ljava/io/IOException; L3 L4 2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/CheckcastAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/CheckcastAfter similarity index 54% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/CheckcastAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/CheckcastAfter index 47a02d268..39246c8e5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/CheckcastAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/CheckcastAfter @@ -1,19 +1,28 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/CheckcastAfter", +1, +2147483647 +] +IFEQ L2 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC "java.util.HashMap" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/CheckcastAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] ASTORE 3 L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/CheckcastBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/CheckcastBefore similarity index 55% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/CheckcastBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/CheckcastBefore index 9ed616dcc..19b3aa4f3 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/CheckcastBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/CheckcastBefore @@ -1,19 +1,28 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/CheckcastBefore", +1, +2147483647 +] +IFEQ L2 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" LDC "java.util.HashMap" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/CheckcastBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] CHECKCAST java/util/HashMap ASTORE 3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ConstructorArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ConstructorArgs new file mode 100644 index 000000000..83efe4322 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ConstructorArgs @@ -0,0 +1,23 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ConstructorArgs", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args(Ljava/lang/Object;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ConstructorArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME FULL [resources/OnMethodTest java/lang/String] [] \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Error b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Error new file mode 100644 index 000000000..91fd196da --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Error @@ -0,0 +1,32 @@ +TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable +FRAME SAME1 java/lang/Throwable +DUP +ASTORE 1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Error", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "uncaught" +ALOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Error$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Error" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest java/lang/Throwable] [java/lang/Throwable] +ATHROW +MAXSTACK = 4 +MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ErrorCaught b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ErrorCaught similarity index 51% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ErrorCaught rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ErrorCaught index 3cbc3a68c..fc4850131 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/ErrorCaught +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ErrorCaught @@ -7,20 +7,29 @@ L2 FRAME SAME1 java/lang/Throwable DUP ASTORE 2 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ErrorCaught", +1, +2147483647 +] +IFEQ L5 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "caught" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorCaught$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/ErrorCaught" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L5 FRAME FULL [resources/OnMethodTest T java/lang/Throwable] [java/lang/Throwable] ATHROW diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ErrorDuration b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ErrorDuration new file mode 100644 index 000000000..073dedb96 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/ErrorDuration @@ -0,0 +1,53 @@ +TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable +LCONST_0 +LSTORE 1 +LCONST_0 +LSTORE 3 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ErrorDuration", +-2147483648, +0 +] +IFNE L0 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 3 +FRAME APPEND [J J] +FRAME SAME1 java/lang/Throwable +INVOKESTATIC java/lang/System.nanoTime ()J +LLOAD 3 +LSUB +LSTORE 1 +DUP +ASTORE 5 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ErrorDuration", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "uncaught" +LLOAD 1 +ALOAD 5 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/ErrorDuration" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest J J java/lang/Throwable] [java/lang/Throwable] +ATHROW +MAXSTACK = 6 +MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetAfter similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetAfter index f4d34486f..e172a5441 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/FieldGetAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetAfter @@ -1,6 +1,13 @@ DUP ASTORE 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.$btrace$$level : I +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetAfter", +1, +2147483647 +] ICONST_1 ISUB DUP @@ -14,16 +21,19 @@ DUP ISTORE 3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 LDC "field int resources.OnMethodTest#field" ILOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/FieldGetAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest resources/OnMethodTest I I] [resources/OnMethodTest I] L3 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetAfterStatic new file mode 100644 index 000000000..077ccb064 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetAfterStatic @@ -0,0 +1,42 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic", +1, +2147483647 +] +ICONST_1 +ISUB +DUP +ISTORE 1 +IFLT L1 +L1 +FRAME APPEND [I] +ILOAD 1 +IFLT L2 +DUP2 +LSTORE 2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ACONST_NULL +LDC "static field long resources.OnMethodTest#sField" +LLOAD 2 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest I J] [J] +L3 +LINENUMBER 162 L3 +L4 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 +MAXSTACK = 7 +MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetBefore new file mode 100644 index 000000000..5bdf541d2 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetBefore @@ -0,0 +1,33 @@ +DUP +ASTORE 1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetBefore", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LDC "field" +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest resources/OnMethodTest] +L2 +LINENUMBER 102 L2 +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +MAXSTACK = 5 +MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetBeforeStatic new file mode 100644 index 000000000..d3a2d8cdf --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldGetBeforeStatic @@ -0,0 +1,29 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ACONST_NULL +LDC "sField" +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME +L2 +LINENUMBER 162 L2 +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetAfter new file mode 100644 index 000000000..51936a651 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetAfter @@ -0,0 +1,43 @@ +ISTORE 1 +DUP +ASTORE 2 +ILOAD 1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetAfter", +1, +2147483647 +] +ICONST_1 +ISUB +DUP +ISTORE 3 +IFLT L1 +L1 +FRAME FULL [resources/OnMethodTest I resources/OnMethodTest I] [resources/OnMethodTest I] +ILOAD 3 +IFLT L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 2 +LDC "field" +ILOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetAfter" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +LINENUMBER 102 L2 +FRAME SAME +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +MAXSTACK = 4 +MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetAfterStatic new file mode 100644 index 000000000..85b7cb0f2 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetAfterStatic @@ -0,0 +1,41 @@ +LSTORE 1 +LLOAD 1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic", +1, +2147483647 +] +ICONST_1 +ISUB +DUP +ISTORE 3 +IFLT L1 +L1 +FRAME FULL [resources/OnMethodTest J I] [J] +ILOAD 3 +IFLT L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ACONST_NULL +LDC "sField" +LLOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +LINENUMBER 162 L2 +FRAME SAME +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +MAXSTACK = 5 +MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetBefore new file mode 100644 index 000000000..a49439730 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetBefore @@ -0,0 +1,36 @@ +ISTORE 1 +DUP +ASTORE 2 +ILOAD 1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetBefore", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 2 +LDC "field" +ILOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest I resources/OnMethodTest] [resources/OnMethodTest I] +L2 +LINENUMBER 102 L2 +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +MAXSTACK = 6 +MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetBeforeStatic new file mode 100644 index 000000000..31821fb15 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/FieldSetBeforeStatic @@ -0,0 +1,34 @@ +LSTORE 1 +LLOAD 1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ACONST_NULL +LDC "sField" +LLOAD 1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest J] [J] +L2 +LINENUMBER 162 L2 +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +MAXSTACK = 7 +MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/InstanceofAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/InstanceofAfter similarity index 54% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/InstanceofAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/InstanceofAfter index d69c3d63f..aaea89e91 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/InstanceofAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/InstanceofAfter @@ -1,20 +1,28 @@ DUP ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/InstanceofAfter", +1, +2147483647 +] INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "casts" LDC "java.util.HashMap" ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/InstanceofAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [I] IFEQ L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/InstanceofBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/InstanceofBefore similarity index 55% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/InstanceofBefore rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/InstanceofBefore index 59756da72..ac6f5ffca 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/InstanceofBefore +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/InstanceofBefore @@ -1,17 +1,29 @@ DUP ASTORE 3 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/InstanceofBefore", +1, +2147483647 +] +IFEQ L3 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" LDC "java.util.HashMap" ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/InstanceofBefore" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L3 FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [java/util/HashMap] IFEQ L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Line b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Line new file mode 100644 index 000000000..facad2fb1 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Line @@ -0,0 +1,33 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Line", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "exception" +LDC 84 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Line$args(Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Line" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME SAME1 java/lang/Throwable +L3 +LINENUMBER 85 L3 +L4 +LINENUMBER 87 L4 +L5 +LOCALVARIABLE e Ljava/io/IOException; L3 L4 1 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +MAXSTACK = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MatchDerived b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MatchDerived similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MatchDerived rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MatchDerived diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCall b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCall similarity index 54% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCall rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCall index 0d9eab5ec..c5c1b5e5f 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCall +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCall @@ -1,11 +1,19 @@ LSTORE 4 ASTORE 6 ASTORE 7 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCall", +1, +2147483647 +] +IFEQ L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 LLOAD 4 @@ -15,10 +23,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevel" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCall$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCall" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME APPEND [J java/lang/String resources/OnMethodTest] ALOAD 7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDuration b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDuration new file mode 100644 index 000000000..f95484eed --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDuration @@ -0,0 +1,57 @@ +LCONST_0 +LSTORE 4 +LCONST_0 +LSTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration", +-2147483648, +0 +] +IFNE L1 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 6 +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J J] [resources/OnMethodTest java/lang/String J] +LSTORE 8 +ASTORE 10 +ASTORE 11 +ALOAD 11 +ALOAD 10 +LLOAD 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 12 +LLOAD 12 +LCONST_0 +ALOAD 10 +LLOAD 8 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args(JJLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest] [J] +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +MAXSTACK = 9 +MAXLOCALS = 14 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDuration2 new file mode 100644 index 000000000..bb976c12f --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDuration2 @@ -0,0 +1,108 @@ +LCONST_0 +LSTORE 4 +LCONST_0 +LSTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2", +-2147483648, +0 +] +IFNE L1 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 6 +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J J] [resources/OnMethodTest java/lang/String J] +LSTORE 8 +ASTORE 10 +ASTORE 11 +ALOAD 11 +ALOAD 10 +LLOAD 8 +LCONST_0 +LSTORE 12 +LCONST_0 +LSTORE 14 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2", +-2147483648, +0 +] +IFNE L2 +INVOKESTATIC java/lang/System.nanoTime ()J +LSTORE 14 +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J] [resources/OnMethodTest java/lang/String J] +LSTORE 16 +ASTORE 18 +ASTORE 19 +ALOAD 19 +ALOAD 18 +LLOAD 16 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 20 +LLOAD 20 +LCONST_0 +ALOAD 18 +LLOAD 16 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0(JJLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J J java/lang/String resources/OnMethodTest] [J] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 22 +LLOAD 22 +LCONST_0 +ALOAD 10 +LLOAD 8 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1(JJLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J J java/lang/String resources/OnMethodTest T T] [J] +L5 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 +LOCALVARIABLE a Ljava/lang/String; L0 L5 1 +LOCALVARIABLE b J L0 L5 2 +MAXSTACK = 9 +MAXLOCALS = 24 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDurationSampled new file mode 100644 index 000000000..7a6e21712 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDurationSampled @@ -0,0 +1,68 @@ +LCONST_0 +LSTORE 4 +LCONST_0 +LSTORE 6 +ICONST_0 +ISTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled", +-2147483648, +0 +] +IFNE L1 +ICONST_2 +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +DUP2 +LSTORE 6 +L2I +ISTORE 8 +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] +LSTORE 9 +ASTORE 11 +ASTORE 12 +ALOAD 12 +ALOAD 11 +LLOAD 9 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 13 +LLOAD 13 +LCONST_0 +ALOAD 11 +LLOAD 9 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args(JJLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE a Ljava/lang/String; L0 L3 1 +LOCALVARIABLE b J L0 L3 2 +MAXSTACK = 9 +MAXLOCALS = 15 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDurationSampledMulti b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDurationSampledMulti new file mode 100644 index 000000000..eb2282ba7 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallDurationSampledMulti @@ -0,0 +1,133 @@ +LCONST_0 +LSTORE 4 +LCONST_0 +LSTORE 6 +ICONST_0 +ISTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti", +-2147483648, +0 +] +IFNE L1 +ICONST_2 +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +DUP2 +LSTORE 6 +L2I +ISTORE 8 +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] +LSTORE 9 +ASTORE 11 +ASTORE 12 +ALOAD 12 +ALOAD 11 +LLOAD 9 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti", +1, +2147483647 +] +IFEQ L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 13 +LLOAD 13 +LCONST_0 +ALOAD 11 +LLOAD 9 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L2 +FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] +LCONST_0 +LSTORE 15 +LCONST_0 +LSTORE 17 +ICONST_0 +ISTORE 19 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti", +-2147483648, +0 +] +IFNE L3 +ICONST_3 +INVOKEDYNAMIC hitTimed(I)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +DUP2 +LSTORE 17 +L2I +ISTORE 19 +L3 +FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest T T J J I] [J java/lang/String J] +LSTORE 20 +ASTORE 22 +ALOAD 22 +LLOAD 20 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti", +1, +2147483647 +] +IFEQ L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 23 +LLOAD 23 +LCONST_0 +ALOAD 22 +LLOAD 20 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L4 +FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest T T J J I J java/lang/String] [J J] +LSTORE 25 +L5 +LINENUMBER 132 L5 +LLOAD 25 +L6 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 +LOCALVARIABLE a Ljava/lang/String; L0 L6 1 +LOCALVARIABLE b J L0 L6 2 +LOCALVARIABLE i J L5 L6 25 +MAXSTACK = 11 +MAXLOCALS = 27 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallNoArgs new file mode 100644 index 000000000..75f25dbae --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallNoArgs @@ -0,0 +1,26 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args()V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J] [resources/OnMethodTest java/lang/String J] +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturn new file mode 100644 index 000000000..0582e5e79 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturn @@ -0,0 +1,39 @@ +LSTORE 4 +ASTORE 6 +ASTORE 7 +ALOAD 7 +ALOAD 6 +LLOAD 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallReturn", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 8 +LLOAD 8 +ALOAD 6 +LLOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args(JLjava/lang/String;J)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +MAXSTACK = 7 +MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturnAugmented new file mode 100644 index 000000000..ba2287a76 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturnAugmented @@ -0,0 +1,37 @@ +LSTORE 4 +ASTORE 6 +ASTORE 7 +ALOAD 7 +ALOAD 6 +LLOAD 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +LSTORE 8 +ALOAD 6 +LLOAD 4 +LLOAD 8 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args(Ljava/lang/String;JJ)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturnAugmented1 new file mode 100644 index 000000000..76f506581 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallReturnAugmented1 @@ -0,0 +1,37 @@ +LSTORE 4 +ASTORE 6 +ASTORE 7 +ALOAD 7 +ALOAD 6 +LLOAD 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +LSTORE 8 +LLOAD 8 +ALOAD 6 +LLOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args(JLjava/lang/String;J)J [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallSampled b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallSampled new file mode 100644 index 000000000..623f23b4b --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallSampled @@ -0,0 +1,75 @@ +ICONST_0 +ISTORE 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampled", +-2147483648, +0 +] +IFNE L1 +ICONST_2 +INVOKEDYNAMIC hit(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 4 +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J I] [resources/OnMethodTest java/lang/String J] +LSTORE 5 +ASTORE 7 +ASTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampled", +-2147483648, +0 +] +IFNE L2 +ILOAD 4 +IFEQ L3 +L2 +FRAME APPEND [J java/lang/String resources/OnMethodTest] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampled", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 7 +LLOAD 5 +ALOAD 8 +LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" +LDC "resources.OnMethodTest" +LDC "callTopLevel" +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampled" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME SAME +ALOAD 8 +ALOAD 7 +LLOAD 5 +L4 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 +LOCALVARIABLE a Ljava/lang/String; L0 L4 1 +LOCALVARIABLE b J L0 L4 2 +MAXSTACK = 8 +MAXLOCALS = 9 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallSampledAdaptive new file mode 100644 index 000000000..a521582d1 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallSampledAdaptive @@ -0,0 +1,75 @@ +ICONST_0 +ISTORE 4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive", +-2147483648, +0 +] +IFNE L1 +ICONST_2 +INVOKEDYNAMIC hitAdaptive(I)Z [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.runtimeBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/instr/MethodTracker" +] +ISTORE 4 +L1 +FRAME FULL [resources/OnMethodTest java/lang/String J I] [resources/OnMethodTest java/lang/String J] +LSTORE 5 +ASTORE 7 +ASTORE 8 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive", +-2147483648, +0 +] +IFNE L2 +ILOAD 4 +IFEQ L3 +L2 +FRAME APPEND [J java/lang/String resources/OnMethodTest] +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 7 +LLOAD 5 +ALOAD 8 +LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" +LDC "resources.OnMethodTest" +LDC "callTopLevel" +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME SAME +ALOAD 8 +ALOAD 7 +LLOAD 5 +L4 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 +LOCALVARIABLE a Ljava/lang/String; L0 L4 1 +LOCALVARIABLE b J L0 L4 2 +MAXSTACK = 8 +MAXLOCALS = 9 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallStatic similarity index 53% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallStatic index 8bec540e0..ab3429f35 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/MethodCallStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/MethodCallStatic @@ -1,10 +1,18 @@ LSTORE 4 ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/MethodCallStatic", +1, +2147483647 +] +IFEQ L1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 6 LLOAD 4 @@ -13,10 +21,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevel" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallStatic$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/MethodCallStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L1 FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String] [J] ALOAD 6 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NativeWithReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NativeWithReturn similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NativeWithReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NativeWithReturn diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NativeWithoutReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NativeWithoutReturn similarity index 100% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/NativeWithoutReturn rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NativeWithoutReturn diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewAfter new file mode 100644 index 000000000..8e629dbb2 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewAfter @@ -0,0 +1,33 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewAfter", +1, +2147483647 +] +IFEQ L1 +DUP +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +ALOAD 1 +LDC "java.util.HashMap" +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args(Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewAfter" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME FULL [resources/OnMethodTest java/util/HashMap] [java/util/HashMap] +ASTORE 2 +L2 +LINENUMBER 106 L2 +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE m Ljava/util/Map; L2 L3 2 +MAXSTACK = 4 +MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayIntAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayIntAfter similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayIntAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayIntAfter index 8837b7886..c5a376ac5 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayIntAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayIntAfter @@ -1,14 +1,26 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter", +1, +2147483647 +] +IFEQ L1 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntAfter$args(Ljava/lang/Object;[I)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest [I] [[I] ASTORE 2 L2 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayIntBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayIntBefore new file mode 100644 index 000000000..235b43237 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayIntBefore @@ -0,0 +1,65 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "int" +ICONST_1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 I +L2 +LINENUMBER 110 L2 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "int" +ICONST_2 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME FULL [resources/OnMethodTest [I] [I I] +L4 +LINENUMBER 111 L4 +L5 +LINENUMBER 112 L5 +L6 +LINENUMBER 113 L6 +L7 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 +LOCALVARIABLE a [I L2 L7 1 +LOCALVARIABLE b [[I L4 L7 2 +LOCALVARIABLE c [Ljava/lang/String; L5 L7 3 +LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 +MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayStringAfter b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayStringAfter similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayStringAfter rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayStringAfter index f451872e7..61c461ef6 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/NewArrayStringAfter +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayStringAfter @@ -1,14 +1,26 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter", +1, +2147483647 +] +IFEQ L3 DUP INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 ALOAD 3 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringAfter$args(Ljava/lang/Object;[Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [[Ljava/lang/String;] ASTORE 4 L4 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayStringBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayStringBefore new file mode 100644 index 000000000..c61c8cd4f --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewArrayStringBefore @@ -0,0 +1,61 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore", +1, +2147483647 +] +IFEQ L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L3 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "java.lang.String" +ICONST_1 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L3 +FRAME FULL [resources/OnMethodTest [I [[I] [I] +L4 +LINENUMBER 112 L4 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore", +1, +2147483647 +] +IFEQ L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L5 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "java.lang.String" +ICONST_2 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L5 +FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [I I] +L6 +LINENUMBER 113 L6 +L7 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 +LOCALVARIABLE a [I L1 L7 1 +LOCALVARIABLE b [[I L2 L7 2 +LOCALVARIABLE c [Ljava/lang/String; L4 L7 3 +LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 +MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewBefore b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewBefore new file mode 100644 index 000000000..a79b70b50 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NewBefore @@ -0,0 +1,29 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewBefore", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "java.util.HashMap" +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args(Ljava/lang/Object;Ljava/lang/String;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NewBefore" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME +L2 +LINENUMBER 106 L2 +L3 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 +LOCALVARIABLE m Ljava/util/Map; L2 L3 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NoArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NoArgs new file mode 100644 index 000000000..e0aec31a2 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NoArgs @@ -0,0 +1,22 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgs", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NoArgsEntryReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NoArgsEntryReturn new file mode 100644 index 000000000..326b9b007 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/NoArgsEntryReturn @@ -0,0 +1,52 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 J +L2 +LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 +LOCALVARIABLE a Ljava/lang/String; L0 L2 1 +LOCALVARIABLE b J L0 L2 2 +LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 +LOCALVARIABLE d [I L0 L2 5 +MAXSTACK = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgs new file mode 100644 index 000000000..af206b7a9 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgs @@ -0,0 +1,26 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticArgs", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LLOAD 1 +ALOAD 3 +ALOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args(Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgsReturn new file mode 100644 index 000000000..6bec9b867 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgsReturn @@ -0,0 +1,36 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn", +1, +2147483647 +] +IFEQ L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L1 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +DUP2 +LSTORE 5 +ALOAD 0 +LLOAD 5 +LLOAD 1 +ALOAD 3 +ALOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args(Ljava/lang/String;JJ[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L1 +FRAME SAME1 J +L2 +LOCALVARIABLE a Ljava/lang/String; L0 L2 0 +LOCALVARIABLE b J L0 L2 1 +LOCALVARIABLE c [Ljava/lang/String; L0 L2 3 +LOCALVARIABLE d [I L0 L2 4 +MAXSTACK = 9 +MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgsSelf new file mode 100644 index 000000000..df64b79f5 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticArgsSelf @@ -0,0 +1,27 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ACONST_NULL +ALOAD 0 +LLOAD 1 +ALOAD 3 +ALOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticMethodCall b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticMethodCall similarity index 55% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticMethodCall rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticMethodCall index 386a1b320..4f25af939 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticMethodCall +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticMethodCall @@ -1,8 +1,19 @@ LSTORE 4 ASTORE 6 ASTORE 7 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticMethodCall", +1, +2147483647 +] +IFEQ L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 6 LLOAD 4 ALOAD 7 @@ -11,10 +22,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevelStatic" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCall$args(Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticMethodCall" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [java/lang/String J resources/OnMethodTest J java/lang/String resources/OnMethodTest] [J] ALOAD 7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticMethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticMethodCallStatic similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticMethodCallStatic rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticMethodCallStatic index 55ecd5423..e18abbf49 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/StaticMethodCallStatic +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticMethodCallStatic @@ -1,7 +1,18 @@ LSTORE 4 ASTORE 6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic", +1, +2147483647 +] +IFEQ L2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 6 LLOAD 4 LDC "static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" @@ -9,10 +20,11 @@ LDC "resources.OnMethodTest" LDC "callTopLevelStatic" INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCallStatic$args(Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME APPEND [resources/OnMethodTest J java/lang/String] ALOAD 6 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticNoArgs new file mode 100644 index 000000000..c8a82db68 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticNoArgs @@ -0,0 +1,22 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticNoArgs", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty()V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticNoArgs" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticNoArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticNoArgsSelf new file mode 100644 index 000000000..29ad32bb4 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/StaticNoArgsSelf @@ -0,0 +1,23 @@ +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf", +1, +2147483647 +] +IFEQ L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L0 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ACONST_NULL +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty(Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +FRAME SAME +MAXSTACK = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncEntry b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncEntry similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncEntry rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncEntry index 98855c5f6..100d61d9b 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncEntry +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncEntry @@ -1,20 +1,29 @@ TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncEntry", +1, +2147483647 +] +IFEQ L6 DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L6 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "sync" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncEntry" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L6 FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] L7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncExit b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncExit new file mode 100644 index 000000000..d7866ea47 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncExit @@ -0,0 +1,69 @@ +TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable +L6 +LINENUMBER 127 L6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncExit", +1, +2147483647 +] +IFEQ L7 +DUP +ASTORE 2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "resources.OnMethodTest" +ALOAD 2 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncExit" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L7 +FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] +GOTO L8 +ASTORE 3 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncExit", +1, +2147483647 +] +IFEQ L9 +DUP +ASTORE 4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "resources.OnMethodTest" +ALOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncExit" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L9 +FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] +ALOAD 3 +L8 +LINENUMBER 128 L8 +FRAME FULL [resources/OnMethodTest] [] +L5 +FRAME SAME1 java/lang/Throwable +ATHROW +LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 +MAXSTACK = 4 +MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncMEntry b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncMEntry similarity index 50% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncMEntry rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncMEntry index a68749e13..b84e694d2 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/SyncMEntry +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncMEntry @@ -1,20 +1,29 @@ TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncMEntry", +1, +2147483647 +] +IFEQ L6 DUP ASTORE 2 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L6 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "syncM" ALOAD 2 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/SyncMEntry" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L6 FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] L7 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncMExit b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncMExit new file mode 100644 index 000000000..c3b501b65 --- /dev/null +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/SyncMExit @@ -0,0 +1,69 @@ +TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable +L6 +LINENUMBER 167 L6 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncMExit", +1, +2147483647 +] +IFEQ L7 +DUP +ASTORE 2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L7 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "resources.OnMethodTest" +ALOAD 2 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncMExit" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L7 +FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] +GOTO L8 +ASTORE 3 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncMExit", +1, +2147483647 +] +IFEQ L9 +DUP +ASTORE 4 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I +IFNE L9 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP +ALOAD 0 +LDC "resources.OnMethodTest" +ALOAD 4 +INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/SyncMExit" +] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V +L9 +FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] +ALOAD 3 +L8 +LINENUMBER 168 L8 +FRAME FULL [resources/OnMethodTest] [] +L5 +FRAME SAME1 java/lang/Throwable +ATHROW +LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 +MAXSTACK = 4 +MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Throw b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Throw similarity index 52% rename from btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Throw rename to btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Throw index 9ee724006..6d5b9df78 100644 --- a/btrace-instr/src/test/resources/instrumentorTestData/dynamic/onmethod/leveled/Throw +++ b/btrace-instr/src/test/resources/instrumentorTestData/onmethod/leveled/Throw @@ -1,20 +1,29 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 +INVOKEDYNAMIC levelCheck()I [ +// handle kind 0x6 : INVOKESTATIC +org/openjdk/btrace/indy/IndyDispatcher.levelBootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;II)Ljava/lang/invoke/CallSite; +// arguments: +"org/openjdk/btrace/runtime/auxiliary/Throw", +1, +2147483647 +] +IFEQ L2 DUP ASTORE 1 INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I IFNE L2 +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.guardLinking ()I +POP ALOAD 0 LDC "resources.OnMethodTest" LDC "exception" ALOAD 1 INVOKEDYNAMIC $btrace$org$openjdk$btrace$runtime$auxiliary$Throw$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V [ // handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/Indy.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; +org/openjdk/btrace/indy/IndyDispatcher.bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;)Ljava/lang/invoke/CallSite; // arguments: "org/openjdk/btrace/runtime/auxiliary/Throw" ] +INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.reset ()V L2 FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] FRAME FULL [resources/OnMethodTest] [java/io/IOException] diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/ExportTest b/btrace-instr/src/test/resources/instrumentorTestData/static/ExportTest deleted file mode 100644 index 22300e912..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/ExportTest +++ /dev/null @@ -1,43 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ExportTest$testArgs (Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ExportTest$testArgs(Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="resources.OnMethodTest", method="args") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ExportTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ACONST_NULL -LLOAD 1 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.push (Ljava/util/Deque;Ljava/lang/Object;)V -ALOAD 0 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ExportTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -SWAP -LDC "btrace.traces/ExportTest.name" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.putPerfString (Ljava/lang/String;Ljava/lang/String;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ExportTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ExportTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ExportTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/OnProbeTest b/btrace-instr/src/test/resources/instrumentorTestData/static/OnProbeTest deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/OnTimerTest b/btrace-instr/src/test/resources/instrumentorTestData/static/OnTimerTest deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/ServicesTest b/btrace-instr/src/test/resources/instrumentorTestData/static/ServicesTest deleted file mode 100644 index b884a2044..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/ServicesTest +++ /dev/null @@ -1,69 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "resources.OnMethodTest" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ServicesTest$testFieldInjection (Ljava/lang/String;)V -FRAME SAME -MAXSTACK = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ServicesTest$testFieldInjection(Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="resources.OnMethodTest", method="noargs$static") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ServicesTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -INVOKEDYNAMIC printer()Lorg/openjdk/btrace/utils/PrinterService; [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/ExtensionIndy.bootstrapFieldGet(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org.openjdk.btrace.utils.PrinterService", -"SIMPLE", -"", -0, -"UNSPECIFIED" -] -DUP -ASTORE 1 -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "svc-injection ok: " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKEINTERFACE org/openjdk/btrace/utils/PrinterService.println (Ljava/lang/String;)V (itf) -INVOKEDYNAMIC statsd()Lorg/openjdk/btrace/statsd/Statsd; [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/ExtensionIndy.bootstrapFieldGet(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org.openjdk.btrace.statsd.Statsd", -"SIMPLE", -"", -0, -"UNSPECIFIED" -] -DUP -ASTORE 2 -LDC "btrace.services.test" -LDC "source:onmethod" -INVOKEINTERFACE org/openjdk/btrace/statsd/Statsd.increment (Ljava/lang/String;Ljava/lang/String;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ServicesTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ServicesTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ServicesTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/TLSTest b/btrace-instr/src/test/resources/instrumentorTestData/static/TLSTest deleted file mode 100644 index cd56c3702..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/TLSTest +++ /dev/null @@ -1,44 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TLSTest$testArgs (Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$TLSTest$testArgs(Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="resources.OnMethodTest", method="args") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TLSTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TLSTest.entryTimes : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/util/Deque -LLOAD 1 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.push (Ljava/util/Deque;Ljava/lang/Object;)V -ALOAD 0 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TLSTest.name : Ljava/lang/ThreadLocal; -SWAP -INVOKEVIRTUAL java/lang/ThreadLocal.set (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TLSTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TLSTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TLSTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/TraceAllTest b/btrace-instr/src/test/resources/instrumentorTestData/static/TraceAllTest deleted file mode 100644 index 2bd75298c..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/TraceAllTest +++ /dev/null @@ -1,157 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LDC "public void resources.OnMethodTest#" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LDC "private void resources.OnMethodTest#(java.lang.String)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest java/lang/String] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#noargs" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -MAXSTACK = 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public static void resources.OnMethodTest#noargs$static" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -MAXSTACK = 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public static long resources.OnMethodTest#args$static(java.lang.String, long, java.lang.String[], int[])" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public static long resources.OnMethodTest#callTopLevelStatic(java.lang.String, long)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#callTopLevel(java.lang.String, long)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "private long resources.OnMethodTest#callTarget(java.lang.String, long)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#exception" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#uncaught" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#array(int)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#field" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#newObject" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#newArray" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#casts" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -LDC "public void resources.OnMethodTest#sync" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#callTopLevel1(java.lang.String, long)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "private long resources.OnMethodTest#calLTargetX(java.lang.String, long)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#argsMultiReturn(java.lang.String, long, java.lang.String[], int[])" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#staticField" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -LDC "public void resources.OnMethodTest#syncM" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public java.lang.String resources.OnMethodTest#argsTypeMatch(java.util.ArrayList)" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.OnMethodTest#caught" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall (Ljava/lang/String;)V -FRAME SAME - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$TraceAllTest$doall(Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*/") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;(fqn=true) // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TraceAllTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TraceAllTest.hitCnt : Ljava/util/concurrent/atomic/AtomicLong; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.getAndIncrement (Ljava/util/concurrent/atomic/AtomicLong;)J -POP2 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TraceAllTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TraceAllTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TraceAllTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE106 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE106 deleted file mode 100644 index 0c642fd6a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE106 +++ /dev/null @@ -1,128 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -LDC "aMethod" -INVOKESTATIC resources/issues/BTRACE106.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o1 (Ljava/lang/Object;Ljava/lang/String;)V -FRAME SAME -LCONST_0 -LSTORE 1 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -L2 -FRAME APPEND [J J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "bMethod" -LLOAD 1 -INVOKESTATIC resources/issues/BTRACE106.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o3 (Ljava/lang/Object;Ljava/lang/String;J)V -L3 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LDC "bMethod" -LLOAD 1 -INVOKESTATIC resources/issues/BTRACE106.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o2 (Ljava/lang/Object;Ljava/lang/String;J)V -L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/issues/BTRACE106; L0 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o1(Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="@/.*\\.Deprecated/", method="aMethod") -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ALOAD 1 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o2(Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="@/.*\\.Deprecated/", method="bMethod", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ALOAD 1 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE106$o3(Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="@/.*\\.Deprecated/", method="@/.*\\.Deprecated/", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ALOAD 1 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE106.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE189 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE189 deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE22 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE22 deleted file mode 100644 index 538a2d14a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE22 +++ /dev/null @@ -1,53 +0,0 @@ -LCONST_0 -LSTORE 1 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -DSTORE 5 -DLOAD 5 -DLOAD 5 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -L3 -FRAME FULL [resources/issues/BTRACE22 J J D] [D] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 1 -INVOKESTATIC resources/issues/BTRACE22.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE22$tracker (Ljava/lang/Object;J)V -L4 -FRAME SAME1 D -L5 -LOCALVARIABLE this Lresources/issues/BTRACE22; L0 L5 0 -LOCALVARIABLE d D L1 L5 5 -MAXSTACK = 6 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE22$tracker(Ljava/lang/Object;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.BTRACE22/", method="testDouble", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE22.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE22.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE22.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE22.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE256 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE256 deleted file mode 100644 index 2fa0ac63f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE256 +++ /dev/null @@ -1,102 +0,0 @@ -LCONST_0 -LSTORE 1 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public void resources.issues.BTRACE256#doStuff" -INVOKESTATIC resources/issues/BTRACE256.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE256$entry (Ljava/lang/String;)V -FRAME APPEND [J J] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -L3 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -LDC "public void resources.issues.BTRACE256#doStuff" -LLOAD 1 -INVOKESTATIC resources/issues/BTRACE256.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE256$exit (Ljava/lang/String;J)V -L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/issues/BTRACE256; L0 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE256$entry(Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.BTRACE256/", method="doStuff") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;(fqn=true) // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.swingProfiler : Lorg/openjdk/btrace/core/Profiler; -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Profiling.recordEntry (Lorg/openjdk/btrace/core/Profiler;Ljava/lang/String;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE256$exit(Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.BTRACE256/", method="doStuff", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;(fqn=true) // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.swingProfiler : Lorg/openjdk/btrace/core/Profiler; -ALOAD 0 -LLOAD 1 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Profiling.recordExit (Lorg/openjdk/btrace/core/Profiler;Ljava/lang/String;J)V -INVOKEDYNAMIC sd()Lorg/openjdk/btrace/statsd/Statsd; [ -// handle kind 0x6 : INVOKESTATIC -org/openjdk/btrace/runtime/ExtensionIndy.bootstrapFieldGet(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Integer;Ljava/lang/String;)Ljava/lang/invoke/CallSite; -// arguments: -"org.openjdk.btrace.statsd.Statsd", -"SIMPLE", -"", -0, -"UNSPECIFIED" -] -DUP -ASTORE 3 -LDC "my.metric.b" -LDC "regular,distribution:gaussian" -INVOKEINTERFACE org/openjdk/btrace/statsd/Statsd.increment (Ljava/lang/String;Ljava/lang/String;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE256.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 4 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE28 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE28 deleted file mode 100644 index cfb7fe8cc..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE28 +++ /dev/null @@ -1,65 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LDC "resources.issues.BTRACE28" -LDC "" -INVOKESTATIC resources/issues/BTRACE28.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE28$tracker (Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME FULL [resources/issues/BTRACE28] [] -L2 -LOCALVARIABLE this Lresources/issues/BTRACE28; L0 L2 0 -MAXSTACK = 2 -ASTORE 5 -ASTORE 6 -ASTORE 7 -ALOAD 7 -FRAME FULL [resources/issues/BTRACE28 java/lang/String java/lang/String java/lang/String java/lang/String [B [B java/lang/StringBuilder] [java/lang/Throwable] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L11 -LDC "resources.issues.BTRACE28" -LDC "serveResource" -INVOKESTATIC resources/issues/BTRACE28.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE28$tracker (Ljava/lang/String;Ljava/lang/String;)V -L11 -FRAME SAME -L12 -LOCALVARIABLE this Lresources/issues/BTRACE28; L3 L12 0 -LOCALVARIABLE param1 Ljava/lang/String; L3 L12 1 -LOCALVARIABLE param2 Ljava/lang/String; L3 L12 2 -LOCALVARIABLE resourceType Ljava/lang/String; L4 L12 3 -LOCALVARIABLE contentType Ljava/lang/String; L5 L12 4 -LOCALVARIABLE mainArr [B L6 L12 5 -LOCALVARIABLE byteArr [B L7 L12 6 -LOCALVARIABLE sb Ljava/lang/StringBuilder; L0 L12 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE28$tracker(Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.BTRACE28/", method="/.*/", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE28.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -ALOAD 1 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE28.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE28.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE28.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE53 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE53 deleted file mode 100644 index d75505d5e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE53 +++ /dev/null @@ -1,52 +0,0 @@ -LCONST_0 -LSTORE 1 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -L2 -FRAME FULL [resources/DerivedClass J J] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -LLOAD 1 -INVOKESTATIC resources/DerivedClass.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE53$onInit (J)V -L3 -FRAME SAME -L4 -LOCALVARIABLE this Lresources/DerivedClass; L0 L4 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE53$onInit(J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.DerivedClass/", method="", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE53.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "init: " -LLOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (J)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.strcat (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE53.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE53.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE53.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE69 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE69 deleted file mode 100644 index bd752b46d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE69 +++ /dev/null @@ -1,106 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -TRYCATCHBLOCK L4 L6 L6 java/lang/Throwable -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncEntry (Ljava/lang/Object;)V -FRAME APPEND [resources/OnMethodTest resources/OnMethodTest] -L7 -LINENUMBER 127 L7 -DUP -ASTORE 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L8 -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncExit (Ljava/lang/Object;)V -L8 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] -GOTO L9 -FRAME FULL [resources/OnMethodTest java/lang/Object resources/OnMethodTest] [java/lang/Throwable] -ASTORE 4 -DUP -ASTORE 5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncExit (Ljava/lang/Object;)V -L10 -FRAME FULL [resources/OnMethodTest java/lang/Object resources/OnMethodTest T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 4 -ATHROW -L9 -LINENUMBER 128 L9 -FRAME FULL [resources/OnMethodTest T resources/OnMethodTest resources/OnMethodTest] [] -RETURN -L5 -FRAME FULL [resources/OnMethodTest] [java/lang/Throwable] -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncEntry(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="sync", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_ENTRY, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "after synchronized entry: " -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.identityStr (Ljava/lang/Object;)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Strings.strcat (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE69$onSyncExit(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="sync", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_EXIT)) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "before synchronized exit: " -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.identityStr (Ljava/lang/Object;)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Strings.strcat (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE69.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE87 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE87 deleted file mode 100644 index 07e968120..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE87 +++ /dev/null @@ -1,67 +0,0 @@ -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "containerMethod" -ICONST_0 -ANEWARRAY java/lang/Object -INVOKESTATIC resources/issues/BTRACE87.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE87$o (Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -L2 -FRAME APPEND [java/util/ArrayList java/util/ArrayList] -ALOAD 2 -L3 -LINENUMBER 17 L3 -ASTORE 3 -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LDC "containerMethod" -ICONST_1 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 3 -AASTORE -INVOKESTATIC resources/issues/BTRACE87.$btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE87$o (Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -L4 -FRAME APPEND [java/lang/String java/util/ArrayList] -ALOAD 4 -ALOAD 3 -L5 -LINENUMBER 18 L5 -RETURN -L6 -LOCALVARIABLE this Lresources/issues/BTRACE87; L0 L6 0 -LOCALVARIABLE a Ljava/util/List; L1 L6 1 -MAXSTACK = 6 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$BTRACE87$o(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.BTRACE87/", method="/.*/", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*/", method="/.*/")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE87.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ALOAD 2 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.printArray ([Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE87.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE87.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/BTRACE87.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE_333 b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/BTRACE_333 deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/InterestingVarsTest b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/InterestingVarsTest deleted file mode 100644 index 514aa85b4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/InterestingVarsTest +++ /dev/null @@ -1,34 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -ALOAD 2 -INVOKESTATIC resources/InterestingVarsClass.$btrace$org$openjdk$btrace$runtime$auxiliary$InterestingVarsTest$entry (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -FRAME SAME - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$InterestingVarsTest$entry(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.InterestingVarsClass/", method="initAndStartApp") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InterestingVarsTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InterestingVarsTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InterestingVarsTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InterestingVarsTest.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/TezSplitter b/btrace-instr/src/test/resources/instrumentorTestData/static/issues/TezSplitter deleted file mode 100644 index 4ce2aac95..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/issues/TezSplitter +++ /dev/null @@ -1,474 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -ALOAD 2 -AASTORE -DUP -ICONST_2 -ILOAD 3 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -AASTORE -DUP -ICONST_3 -ALOAD 4 -AASTORE -INVOKESTATIC org/apache/hadoop/mapred/split/TezMapredSplitsGrouper.$btrace$org$openjdk$btrace$runtime$auxiliary$TezSplitter$getGroupedSplitsHook ([Ljava/lang/Object;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ICONST_5 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -ALOAD 2 -AASTORE -DUP -ICONST_2 -ILOAD 3 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -AASTORE -DUP -ICONST_3 -ALOAD 4 -AASTORE -DUP -ICONST_4 -ALOAD 5 -AASTORE -INVOKESTATIC org/apache/hadoop/mapred/split/TezMapredSplitsGrouper.$btrace$org$openjdk$btrace$runtime$auxiliary$TezSplitter$getGroupedSplitsHook ([Ljava/lang/Object;)V -FRAME SAME -LSTORE 23 -LSTORE 25 -LSTORE 27 -LLOAD 25 -LLOAD 27 -LLOAD 27 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map I T T T T T T T T J J J] [] -LLOAD 25 -LLOAD 27 -LLOAD 23 -LLOAD 25 -LLOAD 25 -LLOAD 23 -LLOAD 25 -LLOAD 23 -LLOAD 27 -LLOAD 27 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map I T T T T T T I T J J J] [] -LLOAD 23 -LLOAD 27 -ISTORE 23 -ASTORE 24 -ALOAD 24 -ISTORE 25 -ISTORE 26 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map [Lorg/apache/hadoop/mapred/InputSplit; T T T T T T T T I [Lorg/apache/hadoop/mapred/InputSplit; I I] [] -ILOAD 26 -ILOAD 25 -ALOAD 24 -ILOAD 26 -ASTORE 27 -ALOAD 27 -ASTORE 28 -ALOAD 28 -ALOAD 27 -ILOAD 23 -IINC 23 1 -ALOAD 28 -IINC 26 1 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map] [] -LSTORE 23 -ISTORE 25 -ILOAD 25 -ISTORE 26 -ISTORE 27 -ASTORE 28 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T T T J I I I java/util/Iterator] [] -ALOAD 28 -ALOAD 28 -ILOAD 26 -ASTORE 28 -ISTORE 29 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T [Lorg/apache/hadoop/mapred/InputSplit; I J I I I java/util/Set I] [] -ILOAD 29 -ILOAD 29 -ASTORE 30 -ALOAD 28 -ALOAD 30 -ASTORE 31 -ALOAD 30 -ASTORE 32 -ALOAD 32 -ALOAD 32 -ASTORE 32 -ALOAD 32 -ASTORE 33 -ALOAD 33 -ISTORE 34 -ISTORE 35 -ILOAD 35 -ILOAD 34 -ALOAD 33 -ILOAD 35 -ASTORE 36 -ALOAD 36 -ASTORE 36 -ALOAD 28 -ALOAD 36 -IINC 35 1 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T [Lorg/apache/hadoop/mapred/InputSplit; I J I I I java/util/Set I org/apache/hadoop/mapred/InputSplit org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder [Ljava/lang/String;] [] -ALOAD 28 -ASTORE 33 -ALOAD 33 -ALOAD 33 -ASTORE 34 -ALOAD 34 -ASTORE 35 -ALOAD 35 -ALOAD 31 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T [Lorg/apache/hadoop/mapred/InputSplit; I J I I I java/util/Set I] [] -IINC 29 1 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T T T J I I I java/util/Set] [] -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set] [] -LLOAD 23 -ILOAD 25 -ILOAD 26 -ILOAD 27 -ISTORE 29 -ILOAD 27 -ASTORE 30 -ASTORE 31 -ISTORE 32 -ISTORE 33 -ISTORE 34 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I] [] -ILOAD 29 -IINC 34 1 -ISTORE 35 -ASTORE 36 -ALOAD 36 -ALOAD 36 -ASTORE 37 -ALOAD 30 -ALOAD 31 -ALOAD 37 -ASTORE 38 -ALOAD 37 -ASTORE 39 -ALOAD 39 -ASTORE 40 -ALOAD 40 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I java/util/Iterator java/util/Map$Entry java/lang/String org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder] [] -ALOAD 39 -ISTORE 41 -LSTORE 42 -ISTORE 44 -ALOAD 30 -ALOAD 40 -LLOAD 42 -ALOAD 40 -LSTORE 42 -IINC 44 1 -ALOAD 39 -ALOAD 39 -ASTORE 40 -ALOAD 40 -LLOAD 42 -ALOAD 40 -LLOAD 23 -ILOAD 44 -ILOAD 27 -ALOAD 39 -ILOAD 32 -LLOAD 42 -LLOAD 23 -ILOAD 44 -ILOAD 27 -ALOAD 39 -ILOAD 41 -IINC 35 1 -ALOAD 38 -ASTORE 45 -ALOAD 38 -ASTORE 45 -ILOAD 33 -ALOAD 30 -ASTORE 46 -ALOAD 46 -ALOAD 46 -ASTORE 47 -ALOAD 47 -ASTORE 48 -ALOAD 48 -ALOAD 48 -ASTORE 49 -ALOAD 49 -ISTORE 50 -ISTORE 51 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I java/util/Iterator java/util/Map$Entry java/lang/String org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder I J I [Ljava/lang/String; java/util/Iterator org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder [Ljava/lang/String; [Ljava/lang/String; I I] [] -ILOAD 51 -ILOAD 50 -ALOAD 49 -ILOAD 51 -ASTORE 52 -ALOAD 52 -ALOAD 31 -ALOAD 52 -IINC 51 1 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I java/util/Iterator java/util/Map$Entry java/lang/String org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder I J I [Ljava/lang/String; java/util/Iterator] [] -ALOAD 31 -ALOAD 45 -ASTORE 45 -ALOAD 30 -ALOAD 45 -ILOAD 33 -ALOAD 38 -ALOAD 38 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I java/util/Iterator java/util/Map$Entry java/lang/String org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder I J I [Ljava/lang/String;] [L144 L144 I java/lang/String [Ljava/lang/String;] -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I java/util/Iterator java/util/Map$Entry java/lang/String org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder I J I [Ljava/lang/String;] [L144 L144 I java/lang/String [Ljava/lang/String; java/lang/String] -ASTORE 46 -ALOAD 30 -ASTORE 47 -ALOAD 47 -ALOAD 47 -ASTORE 48 -ALOAD 46 -ALOAD 48 -ALOAD 48 -ALOAD 38 -ALOAD 48 -IINC 29 1 -ALOAD 30 -ALOAD 46 -ALOAD 38 -ALOAD 46 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I] [] -ILOAD 33 -ILOAD 35 -ISTORE 33 -ILOAD 29 -ISTORE 36 -ILOAD 36 -ASTORE 37 -ASTORE 38 -ALOAD 38 -ALOAD 38 -ASTORE 39 -ALOAD 39 -ASTORE 40 -ALOAD 40 -ALOAD 40 -ASTORE 41 -ALOAD 41 -ALOAD 37 -ALOAD 41 -ALOAD 40 -ALOAD 37 -ILOAD 36 -ILOAD 36 -ALOAD 37 -ASTORE 38 -ASTORE 39 -ASTORE 40 -ALOAD 40 -ALOAD 40 -ASTORE 41 -ASTORE 42 -ALOAD 41 -ALOAD 41 -ASTORE 42 -ALOAD 38 -ALOAD 41 -ALOAD 42 -ALOAD 39 -ALOAD 42 -ALOAD 39 -ALOAD 42 -ILOAD 36 -ALOAD 39 -ASTORE 40 -ALOAD 37 -ISTORE 41 -ASTORE 42 -ALOAD 42 -ISTORE 43 -ISTORE 44 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I I java/util/Set java/util/Map java/util/Map java/util/HashSet I [Lorg/apache/hadoop/mapred/InputSplit; I I] [] -ILOAD 44 -ILOAD 43 -ALOAD 42 -ILOAD 44 -ASTORE 45 -ILOAD 41 -ALOAD 37 -ALOAD 45 -IINC 41 -1 -ALOAD 40 -ALOAD 45 -ASTORE 46 -ALOAD 45 -ASTORE 47 -ALOAD 47 -ALOAD 47 -ASTORE 47 -ALOAD 47 -ASTORE 48 -ALOAD 48 -ISTORE 49 -ISTORE 50 -ILOAD 50 -ILOAD 49 -ALOAD 48 -ILOAD 50 -ASTORE 51 -ALOAD 51 -ASTORE 51 -ALOAD 40 -ALOAD 38 -ALOAD 51 -IINC 50 1 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I I java/util/Set java/util/Map java/util/Map java/util/HashSet I [Lorg/apache/hadoop/mapred/InputSplit; I I org/apache/hadoop/mapred/InputSplit org/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder [Ljava/lang/String;] [] -ALOAD 40 -ASTORE 48 -ALOAD 48 -ALOAD 48 -ASTORE 49 -ALOAD 39 -ALOAD 49 -ALOAD 46 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I I java/util/Set java/util/Map java/util/Map java/util/HashSet I [Lorg/apache/hadoop/mapred/InputSplit; I I] [] -IINC 44 1 -ALOAD 37 -ALOAD 39 -FSTORE 42 -FLOAD 42 -LLOAD 23 -FLOAD 42 -LSTORE 53 -ILOAD 27 -FLOAD 42 -ISTORE 45 -LLOAD 55 -LLOAD 55 -LSTORE 23 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I I java/util/Set java/util/Map java/util/Map java/util/HashSet I F T T I T T T T T T T T T J] [] -ILOAD 45 -ILOAD 45 -ISTORE 27 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I I java/util/Set java/util/Map java/util/Map java/util/HashSet I F] [] -ILOAD 34 -ILOAD 29 -ILOAD 35 -LLOAD 23 -ILOAD 27 -FRAME FULL [org/apache/hadoop/mapred/split/TezMapredSplitsGrouper org/apache/hadoop/conf/Configuration [Lorg/apache/hadoop/mapred/InputSplit; I java/lang/String org/apache/hadoop/mapred/split/SplitSizeEstimator I java/lang/String java/lang/String [Ljava/lang/String; I J java/util/Map java/util/List T T T T T T I I J I I I java/util/Set I java/util/List java/util/Set I I I I] [] -ILOAD 32 -ILOAD 35 -ILOAD 25 -ISTORE 32 -ILOAD 34 -ILOAD 29 -ILOAD 35 -ILOAD 34 -ILOAD 29 -ILOAD 35 -ASTORE 35 -ALOAD 35 -ILOAD 29 -ALOAD 35 -LOCALVARIABLE lengthPerGroup J L42 L34 23 -LOCALVARIABLE maxLengthPerGroup J L43 L34 25 -LOCALVARIABLE minLengthPerGroup J L44 L34 27 -LOCALVARIABLE newSplit Lorg/apache/hadoop/mapred/split/TezGroupedSplit; L68 L70 28 -LOCALVARIABLE split Lorg/apache/hadoop/mapred/InputSplit; L66 L70 27 -LOCALVARIABLE i I L63 L60 23 -LOCALVARIABLE location Ljava/lang/String; L91 L94 36 -LOCALVARIABLE holder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder; L98 L99 35 -LOCALVARIABLE location Ljava/lang/String; L97 L99 34 -LOCALVARIABLE splitHolder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder; L85 L96 31 -LOCALVARIABLE locations [Ljava/lang/String; L86 L96 32 -LOCALVARIABLE split Lorg/apache/hadoop/mapred/InputSplit; L83 L96 30 -LOCALVARIABLE loc Ljava/lang/String; L153 L154 52 -LOCALVARIABLE locations [Ljava/lang/String; L149 L150 48 -LOCALVARIABLE splitH Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder; L148 L150 47 -LOCALVARIABLE groupedSplitHolder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder; L162 L168 48 -LOCALVARIABLE location Ljava/lang/String; L120 L173 38 -LOCALVARIABLE holder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder; L121 L173 39 -LOCALVARIABLE splitHolder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder; L122 L173 40 -LOCALVARIABLE oldHeadIndex I L125 L173 41 -LOCALVARIABLE groupLength J L126 L173 42 -LOCALVARIABLE groupNumSplits I L127 L173 44 -LOCALVARIABLE groupLocation [Ljava/lang/String; L141 L173 45 -LOCALVARIABLE groupedSplit Lorg/apache/hadoop/mapred/split/TezGroupedSplit; L159 L173 46 -LOCALVARIABLE entry Ljava/util/Map$Entry; L117 L173 37 -LOCALVARIABLE splitHolder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder; L185 L186 41 -LOCALVARIABLE locHolder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$LocationHolder; L182 L183 40 -LOCALVARIABLE entry Ljava/util/Map$Entry; L181 L183 39 -LOCALVARIABLE rack Ljava/lang/String; L198 L202 42 -LOCALVARIABLE location Ljava/lang/String; L197 L202 41 -LOCALVARIABLE location Ljava/lang/String; L223 L226 51 -LOCALVARIABLE rack Ljava/lang/String; L228 L229 49 -LOCALVARIABLE splitHolder Lorg/apache/hadoop/mapred/split/TezMapredSplitsGrouper$SplitHolder; L217 L214 46 -LOCALVARIABLE locations [Ljava/lang/String; L218 L214 47 -LOCALVARIABLE split Lorg/apache/hadoop/mapred/InputSplit; L209 L214 45 -LOCALVARIABLE newLengthPerGroup J L235 L233 43 -LOCALVARIABLE newNumSplitsInGroup I L236 L233 45 -LOCALVARIABLE numRemainingSplits I L177 L174 36 -LOCALVARIABLE remainingSplits Ljava/util/Set; L178 L174 37 -LOCALVARIABLE locToRackMap Ljava/util/Map; L193 L174 38 -LOCALVARIABLE rackLocations Ljava/util/Map; L194 L174 39 -LOCALVARIABLE rackSet Ljava/util/HashSet; L205 L174 40 -LOCALVARIABLE numRackSplitsToGroup I L206 L174 41 -LOCALVARIABLE rackSplitReduction F L232 L174 42 -LOCALVARIABLE numFullGroupsCreated I L114 L248 35 -LOCALVARIABLE lengthPerGroup J L72 L257 23 -LOCALVARIABLE numNodeLocations I L73 L257 25 -LOCALVARIABLE numSplitsPerLocation I L74 L257 26 -LOCALVARIABLE numSplitsInGroup I L75 L257 27 -LOCALVARIABLE locSet Ljava/util/Set; L80 L257 28 -LOCALVARIABLE splitsProcessed I L105 L257 29 -LOCALVARIABLE group Ljava/util/List; L106 L257 30 -LOCALVARIABLE groupLocationSet Ljava/util/Set; L107 L257 31 -LOCALVARIABLE allowSmallGroups Z L108 L257 32 -LOCALVARIABLE doingRackLocal Z L109 L257 33 -LOCALVARIABLE iterations I L110 L257 34 -LOCALVARIABLE groupedSplits [Lorg/apache/hadoop/mapred/InputSplit; L252 L257 35 -MAXLOCALS = 57 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$TezSplitter$getGroupedSplitsHook([Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="org.apache.hadoop.mapred.split.TezMapredSplitsGrouper", method="getGroupedSplits") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TezSplitter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "here" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TezSplitter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TezSplitter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/TezSplitter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AllLines b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AllLines deleted file mode 100644 index 084fdde2b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AllLines +++ /dev/null @@ -1,690 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "" -LDC 41 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -FRAME FULL [resources/OnMethodTest] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -LDC "" -LDC 42 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME SAME -ALOAD 0 -L3 -LINENUMBER 43 L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LDC "" -LDC 43 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "" -LDC 45 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -FRAME FULL [resources/OnMethodTest java/lang/String] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -LDC "" -LDC 46 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME SAME -ALOAD 0 -L3 -LINENUMBER 47 L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LDC "" -LDC 47 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "noargs" -LDC 50 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ACONST_NULL -LDC "noargs$static" -LDC 53 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "args" -LDC 57 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ACONST_NULL -LDC "args$static" -LDC 61 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE a Ljava/lang/String; L0 L2 0 -LOCALVARIABLE b J L0 L2 1 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 3 -LOCALVARIABLE d [I L0 L2 4 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ACONST_NULL -LDC "callTopLevelStatic" -LDC 65 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LINENUMBER 66 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ACONST_NULL -LDC "callTopLevelStatic" -LDC 66 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME APPEND [resources/OnMethodTest] -L4 -LOCALVARIABLE a Ljava/lang/String; L0 L4 0 -LOCALVARIABLE b J L0 L4 1 -LOCALVARIABLE instance Lresources/OnMethodTest; L2 L4 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ACONST_NULL -LDC "callTargetStatic" -LDC 70 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE a Ljava/lang/String; L0 L2 0 -LOCALVARIABLE b J L0 L2 1 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LDC "callTopLevel" -LDC 74 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -ALOAD 0 -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "callTarget" -LDC 78 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "exception" -LDC 83 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "exception" -LDC 84 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME SAME1 java/lang/Throwable -L4 -LINENUMBER 85 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "exception" -LDC 85 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME APPEND [java/lang/Throwable] -L6 -LINENUMBER 87 L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "exception" -LDC 87 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L7 -FRAME SAME -L8 -LOCALVARIABLE e Ljava/io/IOException; L4 L6 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L8 0 -MAXSTACK = 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "uncaught" -LDC 90 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "array" -LDC 94 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LINENUMBER 96 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "array" -LDC 96 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME APPEND [[I] -L4 -LINENUMBER 97 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "array" -LDC 97 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME APPEND [I] -L6 -LINENUMBER 98 L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "array" -LDC 98 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L7 -FRAME SAME -L8 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L8 0 -LOCALVARIABLE a I L0 L8 1 -LOCALVARIABLE arr [I L2 L8 2 -LOCALVARIABLE b I L4 L8 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LDC "field" -LDC 101 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -ALOAD 0 -L2 -LINENUMBER 102 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "field" -LDC 102 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME SAME -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "newObject" -LDC 105 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LINENUMBER 106 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "newObject" -LDC 106 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME APPEND [java/util/HashMap] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE m Ljava/util/Map; L2 L4 1 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "newArray" -LDC 109 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LINENUMBER 110 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "newArray" -LDC 110 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME APPEND [[I] -L4 -LINENUMBER 111 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "newArray" -LDC 111 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME APPEND [[[I] -L6 -LINENUMBER 112 L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "newArray" -LDC 112 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L7 -FRAME APPEND [[Ljava/lang/String;] -L8 -LINENUMBER 113 L8 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "newArray" -LDC 113 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L9 -FRAME APPEND [[[Ljava/lang/String;] -L10 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L10 0 -LOCALVARIABLE a [I L2 L10 1 -LOCALVARIABLE b [[I L4 L10 2 -LOCALVARIABLE c [Ljava/lang/String; L6 L10 3 -LOCALVARIABLE d [[Ljava/lang/String; L8 L10 4 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "casts" -LDC 116 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LINENUMBER 117 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "casts" -LDC 117 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME APPEND [java/util/HashMap] -L4 -LINENUMBER 119 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "casts" -LDC 119 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME APPEND [java/util/HashMap] -IFEQ L6 -L7 -LINENUMBER 120 L7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L8 -ALOAD 0 -LDC "casts" -LDC 120 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L8 -FRAME SAME -L6 -LINENUMBER 122 L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "casts" -LDC 122 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L9 -FRAME SAME -L10 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L10 0 -LOCALVARIABLE c Ljava/util/Map; L2 L10 1 -LOCALVARIABLE d Ljava/util/HashMap; L4 L10 2 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -LDC "sync" -LDC 125 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME SAME -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LDC "sync" -LDC 126 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L6 -FRAME APPEND [resources/OnMethodTest] -L7 -LINENUMBER 127 L7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L8 -ALOAD 0 -LDC "sync" -LDC 127 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L8 -FRAME SAME -GOTO L9 -L9 -LINENUMBER 128 L9 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -ALOAD 0 -LDC "sync" -LDC 128 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L10 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [] -L11 -LOCALVARIABLE this Lresources/OnMethodTest; L4 L11 0 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LDC "callTopLevel1" -LDC 131 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -ALOAD 0 -L2 -LINENUMBER 132 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "callTopLevel1" -LDC 132 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME APPEND [J] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -LOCALVARIABLE i J L2 L4 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "calLTargetX" -LDC 136 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "argsMultiReturn" -LDC 140 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -IFLE L2 -L3 -LINENUMBER 141 L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LDC "argsMultiReturn" -LDC 141 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L4 -FRAME SAME -L2 -LINENUMBER 144 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "argsMultiReturn" -LDC 144 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -IFLE L6 -L7 -LINENUMBER 145 L7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L8 -ALOAD 0 -LDC "argsMultiReturn" -LDC 145 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L8 -FRAME SAME -L6 -LINENUMBER 149 L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "argsMultiReturn" -LDC 149 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L9 -L10 -LINENUMBER 150 L10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L11 -ALOAD 0 -LDC "argsMultiReturn" -LDC 150 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L11 -FRAME SAME -L12 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L12 0 -LOCALVARIABLE a Ljava/lang/String; L0 L12 1 -LOCALVARIABLE b J L0 L12 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L12 4 -LOCALVARIABLE d [I L0 L12 5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "staticField" -LDC 161 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LINENUMBER 162 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "staticField" -LDC 162 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME SAME -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -LDC "syncM" -LDC 165 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME SAME -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LDC "syncM" -LDC 166 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L6 -FRAME APPEND [java/lang/Object] -L7 -LINENUMBER 167 L7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L8 -ALOAD 0 -LDC "syncM" -LDC 167 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L8 -FRAME SAME -GOTO L9 -FRAME SAME1 java/lang/Throwable -L9 -LINENUMBER 168 L9 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -ALOAD 0 -LDC "syncM" -LDC 168 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L10 -FRAME SAME -L11 -LOCALVARIABLE this Lresources/OnMethodTest; L4 L11 0 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "argsTypeMatch" -LDC 173 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE l Ljava/util/ArrayList; L0 L2 1 -MAXSTACK = 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "caught" -LDC 178 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "caught" -LDC 179 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME SAME1 java/lang/Throwable -L4 -LINENUMBER 180 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "caught" -LDC 180 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME APPEND [java/lang/Throwable] -L6 -LINENUMBER 182 L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "caught" -LDC 182 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args (Ljava/lang/Object;Ljava/lang/String;I)V -L7 -FRAME SAME -RETURN -L8 -LOCALVARIABLE e Ljava/lang/RuntimeException; L4 L6 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L8 0 -MAXSTACK = 4 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$AllLines$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.LINE, line=-1)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AllLines.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AllLines.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AllLines.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AllLines.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AnytypeArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AnytypeArgs deleted file mode 100644 index f2681759e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AnytypeArgs +++ /dev/null @@ -1,54 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -LLOAD 2 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -AASTORE -DUP -ICONST_2 -ALOAD 4 -AASTORE -DUP -ICONST_3 -ALOAD 5 -AASTORE -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args (Ljava/lang/Object;[Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args(Ljava/lang/Object;[Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AnytypeArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AnytypeArgsNoSelf deleted file mode 100644 index 45aa957be..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/AnytypeArgsNoSelf +++ /dev/null @@ -1,51 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -LLOAD 2 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -AASTORE -DUP -ICONST_2 -ALOAD 4 -AASTORE -DUP -ICONST_3 -ALOAD 5 -AASTORE -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf ([Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf([Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args no self" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Args b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Args deleted file mode 100644 index 5221e6120..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Args +++ /dev/null @@ -1,79 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Args$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Args$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (I)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -ICONST_1 -IADD -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.cntr : Ljava/lang/ThreadLocal; -SWAP -INVOKEVIRTUAL java/lang/ThreadLocal.set (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/Args.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (J)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/Args.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X2 -POP -LDC "btrace.traces/onmethod/Args.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.putPerfLong (JLjava/lang/String;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 4 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Args2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Args2Sampled deleted file mode 100644 index 51ce415a4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Args2Sampled +++ /dev/null @@ -1,99 +0,0 @@ -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -ILOAD 6 -IFEQ L0 -L1 -FRAME APPEND [I] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2 (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -ILOAD 6 -IFEQ L2 -L3 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L2 -LINENUMBER 57 L2 -FRAME SAME -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L2 L4 0 -LOCALVARIABLE a Ljava/lang/String; L2 L4 1 -LOCALVARIABLE b J L2 L4 2 -LOCALVARIABLE c [Ljava/lang/String; L2 L4 4 -LOCALVARIABLE d [I L2 L4 5 -MAXSTACK = 6 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration deleted file mode 100644 index e2224ae4f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration +++ /dev/null @@ -1,63 +0,0 @@ -LCONST_0 -LSTORE 6 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -DUP2 -LSTORE 10 -ALOAD 0 -LLOAD 10 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L2 -FRAME SAME1 J -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 -LOCALVARIABLE d [I L0 L3 5 -MAXSTACK = 12 -MAXLOCALS = 12 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2 deleted file mode 100644 index c63460e5b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2 +++ /dev/null @@ -1,108 +0,0 @@ -LCONST_0 -LSTORE 6 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -DUP2 -LSTORE 10 -ALOAD 0 -LLOAD 10 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2 (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L2 -FRAME SAME1 J -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 12 -ALOAD 0 -LLOAD 12 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J T T] [J] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L4 4 -LOCALVARIABLE d [I L0 L4 5 -MAXSTACK = 12 -MAXLOCALS = 14 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2Err b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2Err deleted file mode 100644 index 5d1a01c71..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2Err +++ /dev/null @@ -1,103 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -TRYCATCHBLOCK L0 L2 L2 java/lang/Throwable -LCONST_0 -LSTORE 6 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LLOAD 6 -ALOAD 10 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2 (Ljava/lang/Object;JLjava/lang/Throwable;)V -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J java/lang/Throwable] [java/lang/Throwable] -ATHROW -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 11 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 6 -ALOAD 11 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J T java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 5 -MAXLOCALS = 12 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2Sampled deleted file mode 100644 index d8044b131..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDuration2Sampled +++ /dev/null @@ -1,121 +0,0 @@ -LCONST_0 -LSTORE 6 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -ILOAD 10 -IFEQ L1 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2 (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -ILOAD 10 -IFEQ L3 -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T T] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 13 -ALOAD 0 -LLOAD 13 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L3 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 12 -MAXLOCALS = 15 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationBoxed b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationBoxed deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationBoxedErr b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationBoxedErr deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationConstructor b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationConstructor deleted file mode 100644 index 5a1a13a76..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationConstructor +++ /dev/null @@ -1,53 +0,0 @@ -LCONST_0 -LSTORE 2 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 4 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 4 -LSUB -LSTORE 2 -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 2 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args (Ljava/lang/Object;JLjava/lang/String;)V -L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -MAXSTACK = 4 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args(Ljava/lang/Object;JLjava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationConstructorErr b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationConstructorErr deleted file mode 100644 index f9a10ee4f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationConstructorErr +++ /dev/null @@ -1,94 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -L2 -LINENUMBER 41 L2 -LCONST_0 -LSTORE 1 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -L0 -LINENUMBER 42 L0 -L3 -LINENUMBER 43 L3 -L1 -FRAME FULL [resources/OnMethodTest J J] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -DUP -ASTORE 5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 1 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L4 -FRAME FULL [resources/OnMethodTest J J java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 -MAXSTACK = 5 -MAXLOCALS = 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -L2 -LINENUMBER 45 L2 -LCONST_0 -LSTORE 2 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 4 -L0 -LINENUMBER 46 L0 -L3 -LINENUMBER 47 L3 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 4 -LSUB -LSTORE 2 -DUP -ASTORE 6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 2 -ALOAD 6 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 -LOCALVARIABLE a Ljava/lang/String; L2 L1 1 -MAXSTACK = 5 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationErr b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationErr deleted file mode 100644 index 3e15014ee..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationErr +++ /dev/null @@ -1,54 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -LCONST_0 -LSTORE 6 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LLOAD 6 -ALOAD 10 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 5 -MAXLOCALS = 11 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationMultiReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationMultiReturn deleted file mode 100644 index ff08044ba..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationMultiReturn +++ /dev/null @@ -1,102 +0,0 @@ -LCONST_0 -LSTORE 6 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 10 -ALOAD 0 -LLOAD 10 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME1 J -IFLE L5 -L6 -LINENUMBER 145 L6 -L7 -FRAME SAME1 J -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L8 -DUP2 -LSTORE 12 -ALOAD 0 -LLOAD 12 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L8 -FRAME SAME1 J -L5 -LINENUMBER 149 L5 -L9 -LINENUMBER 150 L9 -L10 -FRAME SAME1 J -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L11 -DUP2 -LSTORE 14 -ALOAD 0 -LLOAD 14 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L11 -FRAME SAME1 J -L12 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L12 0 -LOCALVARIABLE a Ljava/lang/String; L0 L12 1 -LOCALVARIABLE b J L0 L12 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L12 4 -LOCALVARIABLE d [I L0 L12 5 -MAXSTACK = 12 -MAXLOCALS = 16 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="argsMultiReturn", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationSampled deleted file mode 100644 index 5c7fdc21f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsDurationSampled +++ /dev/null @@ -1,71 +0,0 @@ -LCONST_0 -LSTORE 6 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -ILOAD 10 -IFEQ L1 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 -LOCALVARIABLE d [I L0 L3 5 -MAXSTACK = 12 -MAXLOCALS = 13 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const, mean=20) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsNoSelf deleted file mode 100644 index 1e6d2a4b7..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsNoSelf +++ /dev/null @@ -1,39 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf (Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf(Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;(fqn=true) // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args no self" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturn deleted file mode 100644 index baa4c15af..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturn +++ /dev/null @@ -1,51 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 10 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnAugmented deleted file mode 100644 index 9e3b4dbaf..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnAugmented +++ /dev/null @@ -1,52 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 6 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -LLOAD 6 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 8 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 6 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LCONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnAugmented1 deleted file mode 100644 index bca6a763a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnAugmented1 +++ /dev/null @@ -1,55 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 8 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 1 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LLOAD 1 -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnBoxed b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnBoxed deleted file mode 100644 index 74b7d9e46..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnBoxed +++ /dev/null @@ -1,61 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 6 -ALOAD 0 -LLOAD 6 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnBoxed$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 9 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnBoxed$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnBoxed.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "args " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -LDC "value" -ALOAD 0 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Reflective.getLong (Ljava/lang/String;Ljava/lang/Object;)J -INVOKEVIRTUAL java/lang/StringBuilder.append (J)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnBoxed.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnBoxed.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnBoxed.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnSampled deleted file mode 100644 index 06497494e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnSampled +++ /dev/null @@ -1,59 +0,0 @@ -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -ILOAD 6 -IFEQ L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I I] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 7 -ALOAD 0 -LLOAD 7 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 -LOCALVARIABLE d [I L0 L3 5 -MAXSTACK = 10 -MAXLOCALS = 9 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnTypeMatch b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnTypeMatch deleted file mode 100644 index 12c3eb40f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnTypeMatch +++ /dev/null @@ -1,51 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnTypeMatch$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 10 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnTypeMatch$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", type="long (java.lang.String, long, java.lang.String[], int[])", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnTypeMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnTypeMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnTypeMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnTypeMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnTypeNoMatch b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnTypeNoMatch deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnVoid b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnVoid deleted file mode 100644 index f54c54a24..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsReturnVoid +++ /dev/null @@ -1,43 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ACONST_NULL -ASTORE 1 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnVoid$args (Ljava/lang/Object;Ljava/lang/Void;)V -L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -MAXSTACK = 2 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnVoid$args(Ljava/lang/Object;Ljava/lang/Void;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="noargs", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnVoid.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnVoid.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnVoid.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnVoid.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampled deleted file mode 100644 index 0084e69e8..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampled +++ /dev/null @@ -1,63 +0,0 @@ -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -ILOAD 6 -IFEQ L0 -L1 -FRAME APPEND [I] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 6 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampledAdaptive deleted file mode 100644 index f75c77f80..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampledAdaptive +++ /dev/null @@ -1,69 +0,0 @@ -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 6 -ILOAD 6 -IFEQ L0 -L1 -FRAME APPEND [I] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -ILOAD 6 -IFEQ L2 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.updateEndTs (I)V -L2 -FRAME SAME1 J -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L3 4 -LOCALVARIABLE d [I L0 L3 5 -MAXSTACK = 6 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Adaptive) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampledNoSampling b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampledNoSampling deleted file mode 100644 index bbab08a2f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSampledNoSampling +++ /dev/null @@ -1,112 +0,0 @@ -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -ILOAD 6 -IFEQ L0 -L1 -FRAME APPEND [I] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L2 -LINENUMBER 57 L2 -FRAME SAME -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L2 L3 0 -LOCALVARIABLE a Ljava/lang/String; L2 L3 1 -LOCALVARIABLE b J L2 L3 2 -LOCALVARIABLE c [Ljava/lang/String; L2 L3 4 -LOCALVARIABLE d [I L2 L3 5 -MAXSTACK = 6 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsShared b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsShared deleted file mode 100644 index d13c5899d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsShared +++ /dev/null @@ -1,93 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (I)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -ICONST_1 -IADD -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.cntr : Ljava/lang/ThreadLocal; -SWAP -INVOKEVIRTUAL java/lang/ThreadLocal.set (Ljava/lang/Object;)V -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$dumpExported ()V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$dumpExported()V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/ArgsShared.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (J)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$incExported ()V -RETURN -MAXSTACK = 2 -MAXLOCALS = 0 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$incExported()V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/ArgsShared.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X2 -POP -LDC "btrace.traces/onmethod/ArgsShared.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.putPerfLong (JLjava/lang/String;)V (itf) -RETURN -MAXSTACK = 4 -MAXLOCALS = 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSigMatch b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSigMatch deleted file mode 100644 index 79dfb9d91..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsSigMatch +++ /dev/null @@ -1,80 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m3 (Ljava/lang/Object;Ljava/util/ArrayList;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m1 (Ljava/lang/Object;Ljava/util/List;)V -L1 -LINENUMBER 173 L1 -FRAME SAME -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L1 L2 0 -LOCALVARIABLE l Ljava/util/ArrayList; L1 L2 1 -MAXSTACK = 2 - -// access flags 0xA -// signature (Ljava/lang/Object;Ljava/util/List;)V -// declaration: void $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m1(java.lang.Object, java.util.List) -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m1(Ljava/lang/Object;Ljava/util/List;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="argsTypeMatch") -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "m1" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 - -// access flags 0xA -// signature (Ljava/lang/Object;Ljava/util/ArrayList;)V -// declaration: void $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m3(java.lang.Object, java.util.ArrayList) -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSigMatch$m3(Ljava/lang/Object;Ljava/util/ArrayList;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="argsTypeMatch", exactTypeMatch=true) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "m3" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSigMatch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsUnsafe b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsUnsafe deleted file mode 100644 index 39eb6d9e1..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArgsUnsafe +++ /dev/null @@ -1,65 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L2 java/lang/Throwable -TRYCATCHBLOCK L0 L3 L3 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Sys$VM.systemLoadAverage ()D -DSTORE 6 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Sys$VM.processCPUTime ()J -LSTORE 8 -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -DLOAD 6 -INVOKEVIRTUAL java/lang/StringBuilder.append (D)Ljava/lang/StringBuilder; -LDC " # " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -LLOAD 8 -INVOKEVIRTUAL java/lang/StringBuilder.append (J)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -L1 -GOTO L4 -L2 -FRAME SAME1 java/lang/Throwable -ASTORE 6 -LDC "FAILED" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -ALOAD 6 -INVOKEVIRTUAL java/lang/Throwable.getMessage ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -L4 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L3 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetAfter deleted file mode 100644 index 191a9e434..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetAfter +++ /dev/null @@ -1,56 +0,0 @@ -DUP2 -ISTORE 3 -ASTORE 4 -DUP -ISTORE 5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ILOAD 5 -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfter$args (Ljava/lang/Object;I[II)V -FRAME FULL [resources/OnMethodTest I [I I [I I] [I] -ISTORE 6 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 6 -MAXSTACK = 5 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfter$args(Ljava/lang/Object;I[II)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetAfterAny deleted file mode 100644 index c9323a561..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetAfterAny +++ /dev/null @@ -1,57 +0,0 @@ -DUP2 -ISTORE 3 -ASTORE 4 -DUP -ISTORE 5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ILOAD 5 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfterAny$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;I)V -FRAME FULL [resources/OnMethodTest I [I I [I I] [I] -ISTORE 6 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 6 -MAXSTACK = 5 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetBefore deleted file mode 100644 index 9e9963a3e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetBefore +++ /dev/null @@ -1,52 +0,0 @@ -DUP2 -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args (Ljava/lang/Object;[II)V -FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] -IALOAD -ISTORE 5 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 5 -MAXSTACK = 5 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args(Ljava/lang/Object;[II)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetBeforeAny deleted file mode 100644 index 0c34832a2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArrayGetBeforeAny +++ /dev/null @@ -1,52 +0,0 @@ -DUP2 -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args (Ljava/lang/Object;Ljava/lang/Object;I)V -FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] -IALOAD -ISTORE 5 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 5 -MAXSTACK = 5 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetAfter deleted file mode 100644 index 71c223cac..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetAfter +++ /dev/null @@ -1,45 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfter$args (Ljava/lang/Object;[III)V -FRAME FULL [resources/OnMethodTest I [I I I I [I] [] -MAXSTACK = 4 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfter$args(Ljava/lang/Object;[III)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetAfterAny deleted file mode 100644 index 86c4c2128..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetAfterAny +++ /dev/null @@ -1,46 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfterAny$args (Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -FRAME FULL [resources/OnMethodTest I [I I I I [I] [] -MAXSTACK = 4 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetBefore deleted file mode 100644 index 454cfcaa2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetBefore +++ /dev/null @@ -1,53 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args (Ljava/lang/Object;[III)V -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 7 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args(Ljava/lang/Object;[III)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetBeforeAny deleted file mode 100644 index aa946ade5..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ArraySetBeforeAny +++ /dev/null @@ -1,54 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBeforeAny$args (Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 7 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Catch b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Catch deleted file mode 100644 index 6b7d49d44..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Catch +++ /dev/null @@ -1,47 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args (Ljava/lang/Object;Ljava/io/IOException;)V -FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] -ASTORE 2 -L3 -LINENUMBER 85 L3 -ALOAD 2 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args(Ljava/lang/Object;Ljava/io/IOException;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="exception", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CATCH)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/CheckcastAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/CheckcastAfter deleted file mode 100644 index d900825cf..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/CheckcastAfter +++ /dev/null @@ -1,55 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "casts" -ALOAD 2 -LDC "java.util.HashMap" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastAfter$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] -ASTORE 3 -L3 -LINENUMBER 119 L3 -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map java/util/HashMap java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L3 L6 3 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CHECKCAST, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/CheckcastBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/CheckcastBefore deleted file mode 100644 index 60d001752..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/CheckcastBefore +++ /dev/null @@ -1,56 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "resources.OnMethodTest" -LDC "java.util.HashMap" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastBefore$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] -CHECKCAST java/util/HashMap -ASTORE 3 -L3 -LINENUMBER 119 L3 -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map java/util/HashMap java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L3 L6 3 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CHECKCAST)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ConstructorArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ConstructorArgs deleted file mode 100644 index d28d897e0..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ConstructorArgs +++ /dev/null @@ -1,35 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args (Ljava/lang/Object;Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest java/lang/String] [] - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args(Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="") -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "constructor args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Error b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Error deleted file mode 100644 index 4e5cae513..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Error +++ /dev/null @@ -1,46 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -FRAME SAME1 java/lang/Throwable -DUP -ASTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "uncaught" -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Error$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -L2 -FRAME FULL [resources/OnMethodTest java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 4 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Error$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="uncaught", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ErrorCaught b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ErrorCaught deleted file mode 100644 index c8bcc1e62..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ErrorCaught +++ /dev/null @@ -1,52 +0,0 @@ -TRYCATCHBLOCK L0 L2 L2 java/lang/Throwable -L3 -LINENUMBER 180 L3 -L4 -LINENUMBER 182 L4 -RETURN -L2 -FRAME SAME1 java/lang/Throwable -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "caught" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ErrorCaught$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -L5 -FRAME FULL [resources/OnMethodTest T java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE e Ljava/lang/RuntimeException; L3 L4 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -MAXSTACK = 4 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorCaught$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="caught", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ErrorDuration b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ErrorDuration deleted file mode 100644 index b839c30ba..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/ErrorDuration +++ /dev/null @@ -1,56 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -LCONST_0 -LSTORE 1 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -FRAME FULL [resources/OnMethodTest J J] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -DUP -ASTORE 5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "uncaught" -LLOAD 1 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V -L2 -FRAME FULL [resources/OnMethodTest J J java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 6 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="uncaught", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetAfter deleted file mode 100644 index af01f6b3f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetAfter +++ /dev/null @@ -1,51 +0,0 @@ -DUP -ASTORE 1 -DUP -ISTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "field int resources.OnMethodTest#field" -ILOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfter$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest I] [resources/OnMethodTest I] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 6 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/^resources.OnMethodTest$/", field="/^field$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 2 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetAfterStatic deleted file mode 100644 index ed96d1deb..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetAfterStatic +++ /dev/null @@ -1,49 +0,0 @@ -DUP2 -LSTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "static field long resources.OnMethodTest#sField" -LLOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest J] [J] -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 7 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/^resources.OnMethodTest$/", field="/^sField$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 2 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetBefore deleted file mode 100644 index 6a8633b7c..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetBefore +++ /dev/null @@ -1,47 +0,0 @@ -DUP -ASTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "field" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -L1 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest resources/OnMethodTest] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 5 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/.*\\.OnMethodTest/", field="/^field$/")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetBeforeStatic deleted file mode 100644 index 7a3da4bf2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldGetBeforeStatic +++ /dev/null @@ -1,43 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -L1 -FRAME SAME -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/.*\\.OnMethodTest/", field="/^sField$/")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetAfter deleted file mode 100644 index 3beb621bb..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetAfter +++ /dev/null @@ -1,45 +0,0 @@ -ISTORE 1 -DUP -ASTORE 2 -ILOAD 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 2 -LDC "field" -ILOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -FRAME APPEND [I resources/OnMethodTest] -MAXSTACK = 4 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="resources.OnMethodTest", field="/^field$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetAfterStatic deleted file mode 100644 index 4cb2468a5..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetAfterStatic +++ /dev/null @@ -1,43 +0,0 @@ -LSTORE 1 -LLOAD 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -LLOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -FRAME APPEND [J] -MAXSTACK = 5 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="resources.OnMethodTest", field="/^sField$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetBefore deleted file mode 100644 index d21ef460a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetBefore +++ /dev/null @@ -1,50 +0,0 @@ -ISTORE 1 -DUP -ASTORE 2 -ILOAD 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 2 -LDC "field" -ILOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME FULL [resources/OnMethodTest I resources/OnMethodTest] [resources/OnMethodTest I] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 6 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="/.*\\.OnMethodTest/", field="/^field$/")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetBeforeStatic deleted file mode 100644 index 6b37a9c3a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/FieldSetBeforeStatic +++ /dev/null @@ -1,48 +0,0 @@ -LSTORE 1 -LLOAD 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -LLOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest J] [J] -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 7 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="/.*\\.OnMethodTest/", field="/^sField$/")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/InstanceofAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/InstanceofAfter deleted file mode 100644 index 128354128..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/InstanceofAfter +++ /dev/null @@ -1,54 +0,0 @@ -DUP -ASTORE 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "casts" -LDC "java.util.HashMap" -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofAfter$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -L3 -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [I] -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map java/util/HashMap java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L2 L6 2 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.INSTANCEOF, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/InstanceofBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/InstanceofBefore deleted file mode 100644 index bbb0a8589..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/InstanceofBefore +++ /dev/null @@ -1,54 +0,0 @@ -DUP -ASTORE 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "resources.OnMethodTest" -LDC "java.util.HashMap" -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofBefore$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -L3 -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [java/util/HashMap] -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map java/util/HashMap java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L2 L6 2 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.INSTANCEOF)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Line b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Line deleted file mode 100644 index e4b9fda81..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Line +++ /dev/null @@ -1,46 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "exception" -LDC 84 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Line$args (Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME SAME1 java/lang/Throwable -L3 -LINENUMBER 85 L3 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXSTACK = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Line$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.LINE, line=84)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchAnnotated b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchAnnotated deleted file mode 100644 index 76e720c85..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchAnnotated +++ /dev/null @@ -1,35 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotated$args (Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotated$args(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="@org.openjdk.btrace.core.annotations.BTrace", method="@org.openjdk.btrace.core.annotations.Level") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotated.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotated.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotated.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotated.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchAnnotatedRegex b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchAnnotatedRegex deleted file mode 100644 index d993f6720..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchAnnotatedRegex +++ /dev/null @@ -1,35 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotatedRegex$args (Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MatchAnnotatedRegex$args(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="@/.*\\.BTrace/", method="@/org\\.openjdk\\.btrace\\.core\\.annotations\\..*/") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotatedRegex.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotatedRegex.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotatedRegex.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchAnnotatedRegex.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchDerived b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchDerived deleted file mode 100644 index 37d7a3093..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MatchDerived +++ /dev/null @@ -1,37 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -ALOAD 2 -INVOKESTATIC resources/DerivedClass.$btrace$org$openjdk$btrace$runtime$auxiliary$MatchDerived$args (Lresources/AbstractClass;Ljava/lang/String;Ljava/util/Map;)V -FRAME SAME -MAXSTACK = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MatchDerived$args(Lresources/AbstractClass;Ljava/lang/String;Ljava/util/Map;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="+resources.AbstractClass", method="/do(Get|Set)/") -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchDerived.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchDerived.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchDerived.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MatchDerived.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCall b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCall deleted file mode 100644 index e33dfd009..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCall +++ /dev/null @@ -1,57 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 6 -LLOAD 4 -ALOAD 7 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCall$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME APPEND [J java/lang/String resources/OnMethodTest] -ALOAD 7 -ALOAD 6 -LLOAD 4 -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 8 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCall$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDuration b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDuration deleted file mode 100644 index 55fc9ed4e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDuration +++ /dev/null @@ -1,57 +0,0 @@ -LCONST_0 -LSTORE 4 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 6 -LSTORE 8 -ASTORE 10 -ASTORE 11 -ALOAD 11 -ALOAD 10 -LLOAD 8 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 12 -LLOAD 12 -LCONST_0 -ALOAD 10 -LLOAD 8 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args (JJLjava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 9 -MAXLOCALS = 14 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDuration2 deleted file mode 100644 index 452fae5c6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDuration2 +++ /dev/null @@ -1,108 +0,0 @@ -LCONST_0 -LSTORE 4 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 6 -LSTORE 8 -ASTORE 10 -ASTORE 11 -ALOAD 11 -ALOAD 10 -LLOAD 8 -LCONST_0 -LSTORE 12 -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 14 -LSTORE 16 -ASTORE 18 -ASTORE 19 -ALOAD 19 -ALOAD 18 -LLOAD 16 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 20 -LLOAD 20 -LCONST_0 -ALOAD 18 -LLOAD 16 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0 (JJLjava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J J java/lang/String resources/OnMethodTest] [J] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -DUP2 -LSTORE 22 -LLOAD 22 -LCONST_0 -ALOAD 10 -LLOAD 8 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1 (JJLjava/lang/String;J)V -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J J java/lang/String resources/OnMethodTest J J J java/lang/String resources/OnMethodTest T T] [J] -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -MAXSTACK = 9 -MAXLOCALS = 24 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDurationSampled deleted file mode 100644 index 32d6a98ca..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDurationSampled +++ /dev/null @@ -1,62 +0,0 @@ -LCONST_0 -LSTORE 4 -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 6 -L2I -ISTORE 8 -LSTORE 9 -ASTORE 11 -ASTORE 12 -ALOAD 12 -ALOAD 11 -LLOAD 9 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 13 -LLOAD 13 -LCONST_0 -ALOAD 11 -LLOAD 9 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args (JJLjava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 9 -MAXLOCALS = 15 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDurationSampledMulti b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDurationSampledMulti deleted file mode 100644 index e226fbf1e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallDurationSampledMulti +++ /dev/null @@ -1,90 +0,0 @@ -LCONST_0 -LSTORE 4 -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 6 -L2I -ISTORE 8 -LSTORE 9 -ASTORE 11 -ASTORE 12 -ALOAD 12 -ALOAD 11 -LLOAD 9 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 13 -LLOAD 13 -LCONST_0 -ALOAD 11 -LLOAD 9 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args (JJLjava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] -LCONST_0 -LSTORE 15 -ICONST_3 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 17 -L2I -ISTORE 19 -LSTORE 20 -ASTORE 22 -ALOAD 22 -LLOAD 20 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -DUP2 -LSTORE 23 -LLOAD 23 -LCONST_0 -ALOAD 22 -LLOAD 20 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args (JJLjava/lang/String;J)V -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest T T J J I J java/lang/String] [J J] -LSTORE 25 -L3 -LINENUMBER 132 L3 -LLOAD 25 -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -LOCALVARIABLE i J L3 L4 25 -MAXSTACK = 11 -MAXLOCALS = 27 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel1", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="/callTarget.*/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallNoArgs deleted file mode 100644 index 630134eee..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallNoArgs +++ /dev/null @@ -1,36 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args ()V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J] [resources/OnMethodTest java/lang/String J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args()V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget")) -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturn deleted file mode 100644 index 95f1c524b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturn +++ /dev/null @@ -1,51 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 8 -LLOAD 8 -ALOAD 6 -LLOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args (JLjava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 7 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args(JLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturnAugmented deleted file mode 100644 index 3ee98efb6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturnAugmented +++ /dev/null @@ -1,52 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 8 -ALOAD 6 -LLOAD 4 -LLOAD 8 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args (Ljava/lang/String;JJ)J -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args(Ljava/lang/String;JJ)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 3 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LCONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturnAugmented1 deleted file mode 100644 index 409d11b77..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallReturnAugmented1 +++ /dev/null @@ -1,54 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 8 -LLOAD 8 -ALOAD 6 -LLOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args (JLjava/lang/String;J)J -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args(JLjava/lang/String;J)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 0 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LLOAD 0 -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 0 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallSampled deleted file mode 100644 index a6847b58e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallSampled +++ /dev/null @@ -1,65 +0,0 @@ -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 4 -LSTORE 5 -ASTORE 7 -ASTORE 8 -ILOAD 4 -IFEQ L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J I J java/lang/String resources/OnMethodTest] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 7 -LLOAD 5 -ALOAD 8 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME SAME -ALOAD 8 -ALOAD 7 -LLOAD 5 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -MAXSTACK = 8 -MAXLOCALS = 9 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallSampledAdaptive deleted file mode 100644 index ae741742c..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallSampledAdaptive +++ /dev/null @@ -1,65 +0,0 @@ -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 4 -LSTORE 5 -ASTORE 7 -ASTORE 8 -ILOAD 4 -IFEQ L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J I J java/lang/String resources/OnMethodTest] [] -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 7 -LLOAD 5 -ALOAD 8 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME SAME -ALOAD 8 -ALOAD 7 -LLOAD 5 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE a Ljava/lang/String; L0 L3 1 -LOCALVARIABLE b J L0 L3 2 -MAXSTACK = 8 -MAXLOCALS = 9 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Adaptive) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallStatic deleted file mode 100644 index cf99a0884..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/MethodCallStatic +++ /dev/null @@ -1,55 +0,0 @@ -LSTORE 4 -ASTORE 6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 6 -LLOAD 4 -ACONST_NULL -LDC "static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallStatic$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String] [J] -ALOAD 6 -LLOAD 4 -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 10 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallStatic$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTargetStatic")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NativeWithReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NativeWithReturn deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NativeWithoutReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NativeWithoutReturn deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewAfter deleted file mode 100644 index 83046c89a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewAfter +++ /dev/null @@ -1,46 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "java.util.HashMap" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args (Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest java/util/HashMap] [java/util/HashMap] -ASTORE 2 -L2 -LINENUMBER 106 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE m Ljava/util/Map; L2 L3 2 -MAXSTACK = 4 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args(Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newObject", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEW, clazz="/.*/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayIntAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayIntAfter deleted file mode 100644 index 6476fe80e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayIntAfter +++ /dev/null @@ -1,57 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntAfter$args (Ljava/lang/Object;[I)V -FRAME FULL [resources/OnMethodTest [I] [[I] -ASTORE 2 -L2 -LINENUMBER 110 L2 -ASTORE 3 -L3 -LINENUMBER 111 L3 -ASTORE 4 -L4 -LINENUMBER 112 L4 -ASTORE 5 -L5 -LINENUMBER 113 L5 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a [I L2 L6 2 -LOCALVARIABLE b [[I L3 L6 3 -LOCALVARIABLE c [Ljava/lang/String; L4 L6 4 -LOCALVARIABLE d [[Ljava/lang/String; L5 L6 5 -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntAfter$args(Ljava/lang/Object;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="int", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayIntBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayIntBefore deleted file mode 100644 index 38caa4d42..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayIntBefore +++ /dev/null @@ -1,60 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "int" -ICONST_1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME1 I -L2 -LINENUMBER 110 L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "int" -ICONST_2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME FULL [resources/OnMethodTest [I] [I I] -L4 -LINENUMBER 111 L4 -L5 -LINENUMBER 112 L5 -L6 -LINENUMBER 113 L6 -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a [I L2 L7 1 -LOCALVARIABLE b [[I L4 L7 2 -LOCALVARIABLE c [Ljava/lang/String; L5 L7 3 -LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="int")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayStringAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayStringAfter deleted file mode 100644 index f235a9661..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayStringAfter +++ /dev/null @@ -1,51 +0,0 @@ -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringAfter$args (Ljava/lang/Object;[Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [[Ljava/lang/String;] -ASTORE 4 -L4 -LINENUMBER 112 L4 -ASTORE 5 -L5 -LINENUMBER 113 L5 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a [I L1 L6 1 -LOCALVARIABLE b [[I L2 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L6 4 -LOCALVARIABLE d [[Ljava/lang/String; L5 L6 5 -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringAfter$args(Ljava/lang/Object;[Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="/java\\.lang\\.String.*/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayStringBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayStringBefore deleted file mode 100644 index 95a19cd35..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewArrayStringBefore +++ /dev/null @@ -1,56 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "java.lang.String" -ICONST_1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME FULL [resources/OnMethodTest [I [[I] [I] -L4 -LINENUMBER 112 L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "java.lang.String" -ICONST_2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [I I] -L6 -LINENUMBER 113 L6 -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a [I L1 L7 1 -LOCALVARIABLE b [[I L2 L7 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L7 3 -LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="/java\\.lang\\.String.*/")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewBefore deleted file mode 100644 index b87c544c3..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NewBefore +++ /dev/null @@ -1,41 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "java.util.HashMap" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args (Ljava/lang/Object;Ljava/lang/String;)V -L1 -FRAME SAME -L2 -LINENUMBER 106 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE m Ljava/util/Map; L2 L3 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args(Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newObject", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEW, clazz="/.*/")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgs deleted file mode 100644 index 2e75c0c5b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgs +++ /dev/null @@ -1,34 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty (Ljava/lang/Object;)V -FRAME SAME - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgsEntryReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgsEntryReturn deleted file mode 100644 index 202ebb1cc..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgsEntryReturn +++ /dev/null @@ -1,81 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry (Ljava/lang/Object;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 6 -ALOAD 0 -LLOAD 6 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn (Ljava/lang/Object;J)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 5 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "entry" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn(Ljava/lang/Object;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "return" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgsEntryReturnNoCapture b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgsEntryReturnNoCapture deleted file mode 100644 index c1e7a7342..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/NoArgsEntryReturnNoCapture +++ /dev/null @@ -1,76 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturnNoCapture$argsEmptyEntry (Ljava/lang/Object;)V -FRAME SAME -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturnNoCapture$argsEmptyReturn (Ljava/lang/Object;)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturnNoCapture$argsEmptyEntry(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "entry" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturnNoCapture$argsEmptyReturn(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "return" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturnNoCapture.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgs deleted file mode 100644 index 283db6b1e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgs +++ /dev/null @@ -1,36 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args (Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args(Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args$static") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgsReturn deleted file mode 100644 index 296a6aab6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgsReturn +++ /dev/null @@ -1,48 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 5 -ALOAD 0 -LLOAD 5 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args (Ljava/lang/String;JJ[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE a Ljava/lang/String; L0 L2 0 -LOCALVARIABLE b J L0 L2 1 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 3 -LOCALVARIABLE d [I L0 L2 4 -MAXSTACK = 9 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args(Ljava/lang/String;JJ[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args$static", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN)) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgsSelf deleted file mode 100644 index 740226491..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticArgsSelf +++ /dev/null @@ -1,39 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ACONST_NULL -ALOAD 0 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args$static") -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticMethodCall b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticMethodCall deleted file mode 100644 index 2818fdb2b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticMethodCall +++ /dev/null @@ -1,55 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 6 -LLOAD 4 -ALOAD 7 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevelStatic" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCall$args (Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L2 -FRAME FULL [java/lang/String J resources/OnMethodTest J java/lang/String resources/OnMethodTest] [J] -ALOAD 7 -ALOAD 6 -LLOAD 4 -L3 -LOCALVARIABLE a Ljava/lang/String; L0 L3 0 -LOCALVARIABLE b J L0 L3 1 -LOCALVARIABLE instance Lresources/OnMethodTest; L1 L3 3 -MAXSTACK = 9 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCall$args(Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevelStatic", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget")) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 3 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 5 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticMethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticMethodCallStatic deleted file mode 100644 index 6ca623d13..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticMethodCallStatic +++ /dev/null @@ -1,50 +0,0 @@ -LSTORE 4 -ASTORE 6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 6 -LLOAD 4 -LDC "static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevelStatic" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCallStatic$args (Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L2 -FRAME APPEND [resources/OnMethodTest J java/lang/String] -ALOAD 6 -LLOAD 4 -L3 -LOCALVARIABLE a Ljava/lang/String; L0 L3 0 -LOCALVARIABLE b J L0 L3 1 -LOCALVARIABLE instance Lresources/OnMethodTest; L1 L3 3 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCallStatic$args(Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevelStatic", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTargetStatic")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 2 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 4 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticNoArgs deleted file mode 100644 index 116ad04c6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticNoArgs +++ /dev/null @@ -1,32 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty ()V -FRAME SAME -MAXSTACK = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty()V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="noargs$static") -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticNoArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticNoArgsSelf deleted file mode 100644 index 4dbc616c5..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/StaticNoArgsSelf +++ /dev/null @@ -1,35 +0,0 @@ -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ACONST_NULL -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty (Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="noargs$static") -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncEntry b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncEntry deleted file mode 100644 index 0a70989d5..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncEntry +++ /dev/null @@ -1,57 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LDC "sync" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncEntry$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L6 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] -L7 -LINENUMBER 127 L7 -GOTO L8 -FRAME FULL [resources/OnMethodTest java/lang/Object resources/OnMethodTest] [java/lang/Throwable] -ASTORE 3 -ALOAD 3 -L8 -LINENUMBER 128 L8 -FRAME FULL [resources/OnMethodTest T resources/OnMethodTest] [] -L5 -FRAME FULL [resources/OnMethodTest] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="sync", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_ENTRY)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncExit b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncExit deleted file mode 100644 index 4d47a1341..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncExit +++ /dev/null @@ -1,66 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -L6 -LINENUMBER 127 L6 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L7 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] -GOTO L8 -ASTORE 3 -DUP -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L9 -FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 3 -L8 -LINENUMBER 128 L8 -FRAME FULL [resources/OnMethodTest T resources/OnMethodTest] [] -L5 -FRAME FULL [resources/OnMethodTest] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="sync", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_EXIT)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncMEntry b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncMEntry deleted file mode 100644 index 08604c556..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncMEntry +++ /dev/null @@ -1,57 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LDC "syncM" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncMEntry$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L6 -FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] -L7 -LINENUMBER 167 L7 -GOTO L8 -FRAME SAME1 java/lang/Throwable -ASTORE 3 -ALOAD 3 -L8 -LINENUMBER 168 L8 -FRAME FULL [resources/OnMethodTest T java/lang/Object] [] -L5 -FRAME FULL [resources/OnMethodTest] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="syncM", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_ENTRY)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncMExit b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncMExit deleted file mode 100644 index 7be4564ce..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/SyncMExit +++ /dev/null @@ -1,66 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -L6 -LINENUMBER 167 L6 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L7 -FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] -GOTO L8 -ASTORE 3 -DUP -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L9 -FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 3 -L8 -LINENUMBER 168 L8 -FRAME FULL [resources/OnMethodTest T java/lang/Object] [] -L5 -FRAME FULL [resources/OnMethodTest] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="syncM", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_EXIT)) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Throw b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Throw deleted file mode 100644 index c14b150aa..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/Throw +++ /dev/null @@ -1,55 +0,0 @@ -DUP -ASTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "resources.OnMethodTest" -LDC "exception" -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Throw$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V -L2 -FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] -FRAME FULL [resources/OnMethodTest] [java/io/IOException] -ASTORE 2 -L3 -LINENUMBER 85 L3 -ALOAD 2 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXSTACK = 5 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Throw$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="exception", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.THROW)) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 2 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/AnytypeArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/AnytypeArgs deleted file mode 100644 index ed777d9dc..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/AnytypeArgs +++ /dev/null @@ -1,57 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -LLOAD 2 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -AASTORE -DUP -ICONST_2 -ALOAD 4 -AASTORE -DUP -ICONST_3 -ALOAD 5 -AASTORE -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args (Ljava/lang/Object;[Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgs$args(Ljava/lang/Object;[Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/AnytypeArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/AnytypeArgsNoSelf deleted file mode 100644 index 099a57d1b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/AnytypeArgsNoSelf +++ /dev/null @@ -1,54 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ICONST_4 -ANEWARRAY java/lang/Object -DUP -ICONST_0 -ALOAD 1 -AASTORE -DUP -ICONST_1 -LLOAD 2 -INVOKESTATIC java/lang/Long.valueOf (J)Ljava/lang/Long; -AASTORE -DUP -ICONST_2 -ALOAD 4 -AASTORE -DUP -ICONST_3 -ALOAD 5 -AASTORE -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf ([Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$AnytypeArgsNoSelf$argsNoSelf([Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args no self" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/AnytypeArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Args b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Args deleted file mode 100644 index a8e71ee97..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Args +++ /dev/null @@ -1,82 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Args$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Args$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (I)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -ICONST_1 -IADD -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.cntr : Ljava/lang/ThreadLocal; -SWAP -INVOKEVIRTUAL java/lang/ThreadLocal.set (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/leveled/Args.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (J)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/leveled/Args.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X2 -POP -LDC "btrace.traces/onmethod/leveled/Args.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.putPerfLong (JLjava/lang/String;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 4 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Args2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Args2Sampled deleted file mode 100644 index c4ec701e6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Args2Sampled +++ /dev/null @@ -1,123 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2 (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME -ILOAD 7 -IFLE L5 -L6 -FRAME SAME -ILOAD 6 -IFEQ L7 -L5 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L7 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L7 -LINENUMBER 57 L7 -FRAME SAME -L8 -LOCALVARIABLE this Lresources/OnMethodTest; L7 L8 0 -LOCALVARIABLE a Ljava/lang/String; L7 L8 1 -LOCALVARIABLE b J L7 L8 2 -LOCALVARIABLE c [Ljava/lang/String; L7 L8 4 -LOCALVARIABLE d [I L7 L8 5 -MAXSTACK = 6 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Args2Sampled$args2(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Args2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration deleted file mode 100644 index 5d43b477a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration +++ /dev/null @@ -1,79 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L1 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -ILOAD 10 -IFLE L2 -L3 -FRAME SAME1 J -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 12 -MAXLOCALS = 13 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2 deleted file mode 100644 index 88e2e79f1..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2 +++ /dev/null @@ -1,127 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L1 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -ILOAD 10 -IFLE L2 -L3 -FRAME SAME1 J -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME SAME1 J -ILOAD 10 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2 (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME1 J -ILOAD 10 -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -DUP2 -LSTORE 13 -ALOAD 0 -LLOAD 13 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T T] [J] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a Ljava/lang/String; L0 L6 1 -LOCALVARIABLE b J L0 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L6 4 -LOCALVARIABLE d [I L0 L6 5 -MAXSTACK = 12 -MAXLOCALS = 15 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2Err b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2Err deleted file mode 100644 index defd36225..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2Err +++ /dev/null @@ -1,118 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -TRYCATCHBLOCK L0 L2 L2 java/lang/Throwable -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L3 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 11 -ILOAD 10 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -LLOAD 6 -ALOAD 11 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2 (Ljava/lang/Object;JLjava/lang/Throwable;)V -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I] [java/lang/Throwable] -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 12 -ILOAD 10 -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LLOAD 6 -ALOAD 12 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I T java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 5 -MAXLOCALS = 13 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Err$args2(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Err.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2Sampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2Sampled deleted file mode 100644 index 6ee4e3370..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDuration2Sampled +++ /dev/null @@ -1,159 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -ICONST_0 -ISTORE 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.$btrace$$level : I -DUP -ISTORE 11 -LDC 6 -IF_ICMPLT L0 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I I] [] -GOTO L2 -FRAME SAME -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -L2 -LINENUMBER 57 L2 -FRAME SAME -ILOAD 11 -LDC 6 -IF_ICMPLT L3 -L4 -FRAME SAME1 J -GOTO L5 -L3 -FRAME SAME1 J -ILOAD 10 -IFEQ L6 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L5 -FRAME SAME1 J -ILOAD 11 -ICONST_5 -IF_ICMPGT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 12 -ALOAD 0 -LLOAD 12 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2 (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L6 -FRAME SAME1 J -ILOAD 11 -LDC 6 -IF_ICMPLT L7 -L8 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I I T T] [J] -GOTO L9 -L7 -FRAME SAME1 J -ILOAD 10 -IFEQ L10 -L9 -FRAME SAME1 J -ILOAD 11 -ICONST_1 -IF_ICMPLT L10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -DUP2 -LSTORE 14 -ALOAD 0 -LLOAD 14 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L10 -FRAME SAME1 J -L11 -LOCALVARIABLE this Lresources/OnMethodTest; L2 L11 0 -LOCALVARIABLE a Ljava/lang/String; L2 L11 1 -LOCALVARIABLE b J L2 L11 2 -LOCALVARIABLE c [Ljava/lang/String; L2 L11 4 -LOCALVARIABLE d [I L2 L11 5 -MAXSTACK = 12 -MAXLOCALS = 16 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDuration2Sampled$args2(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value="<=5")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDuration2Sampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationBoxed b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationBoxed deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationBoxedErr b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationBoxedErr deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationConstructor b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationConstructor deleted file mode 100644 index 646261f42..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationConstructor +++ /dev/null @@ -1,71 +0,0 @@ -LCONST_0 -LSTORE 2 -LCONST_0 -LSTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.$btrace$$level : I -DUP -ISTORE 6 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J I] [] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 4 -FRAME SAME -L3 -LINENUMBER 47 L3 -ILOAD 6 -IFLE L4 -L5 -FRAME SAME -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 4 -LSUB -LSTORE 2 -L4 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LLOAD 2 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args (Ljava/lang/Object;JLjava/lang/String;)V -L6 -FRAME SAME -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a Ljava/lang/String; L0 L7 1 -MAXSTACK = 4 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructor$args(Ljava/lang/Object;JLjava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructor.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationConstructorErr b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationConstructorErr deleted file mode 100644 index dcf8ae266..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationConstructorErr +++ /dev/null @@ -1,118 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -L2 -LINENUMBER 41 L2 -LCONST_0 -LSTORE 1 -LCONST_0 -LSTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -DUP -ISTORE 5 -IFLE L0 -L3 -FRAME FULL [resources/OnMethodTest J J I] [] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -L0 -LINENUMBER 42 L0 -FRAME SAME -L4 -LINENUMBER 43 L4 -L1 -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -DUP -ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LLOAD 1 -ALOAD 6 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L5 -FRAME FULL [resources/OnMethodTest J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 -MAXSTACK = 5 -MAXLOCALS = 7 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -L2 -LINENUMBER 45 L2 -LCONST_0 -LSTORE 2 -LCONST_0 -LSTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -DUP -ISTORE 6 -IFLE L0 -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J I] [] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 4 -L0 -LINENUMBER 46 L0 -FRAME SAME -L4 -LINENUMBER 47 L4 -L1 -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 4 -LSUB -LSTORE 2 -DUP -ASTORE 7 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LLOAD 2 -ALOAD 7 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L2 L1 0 -LOCALVARIABLE a Ljava/lang/String; L2 L1 1 -MAXSTACK = 5 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationConstructorErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationConstructorErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationErr b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationErr deleted file mode 100644 index 5c3c994a9..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationErr +++ /dev/null @@ -1,66 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L2 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -DUP -ASTORE 11 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LLOAD 6 -ALOAD 11 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args (Ljava/lang/Object;JLjava/lang/Throwable;)V -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 5 -MAXLOCALS = 12 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationErr$args(Ljava/lang/Object;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationErr.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationMultiReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationMultiReturn deleted file mode 100644 index 0479c8336..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationMultiReturn +++ /dev/null @@ -1,129 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -DUP -ISTORE 10 -IFLE L0 -L1 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 8 -FRAME SAME -IFLE L2 -L3 -LINENUMBER 141 L3 -ILOAD 10 -IFLE L4 -L5 -FRAME SAME1 J -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 8 -LSUB -LSTORE 6 -L4 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 11 -ALOAD 0 -LLOAD 11 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L6 -FRAME SAME1 J -L2 -LINENUMBER 144 L2 -IFLE L7 -L8 -LINENUMBER 145 L8 -L9 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L10 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L10 -DUP2 -LSTORE 13 -ALOAD 0 -LLOAD 13 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L10 -FRAME SAME1 J -L7 -LINENUMBER 149 L7 -L11 -LINENUMBER 150 L11 -L12 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L13 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L13 -DUP2 -LSTORE 15 -ALOAD 0 -LLOAD 15 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L13 -FRAME SAME1 J -L14 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L14 0 -LOCALVARIABLE a Ljava/lang/String; L0 L14 1 -LOCALVARIABLE b J L0 L14 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L14 4 -LOCALVARIABLE d [I L0 L14 5 -MAXSTACK = 12 -MAXLOCALS = 17 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationMultiReturn$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="argsMultiReturn", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationMultiReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationSampled deleted file mode 100644 index 9032034be..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsDurationSampled +++ /dev/null @@ -1,89 +0,0 @@ -LCONST_0 -LSTORE 6 -LCONST_0 -LSTORE 8 -ICONST_0 -ISTORE 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.$btrace$$level : I -DUP -ISTORE 11 -IFLE L0 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J [Ljava/lang/String; [I J J I I] [] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 8 -L2I -ISTORE 10 -FRAME SAME -ILOAD 11 -IFLE L2 -L3 -FRAME SAME1 J -ILOAD 10 -IFEQ L4 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.getEndTs (I)J -LLOAD 8 -LSUB -LSTORE 6 -L2 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 12 -ALOAD 0 -LLOAD 12 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args (Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 12 -MAXLOCALS = 14 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsDurationSampled$args(Ljava/lang/Object;JJLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const, mean=20) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsNoSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsNoSelf deleted file mode 100644 index 1271a7c67..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsNoSelf +++ /dev/null @@ -1,42 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -LDC "public long resources.OnMethodTest#args(java.lang.String, long, java.lang.String[], int[])" -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf (Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsNoSelf$argsNoSelf(Ljava/lang/String;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;(fqn=true) // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args no self" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsNoSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturn deleted file mode 100644 index b4c65d8ea..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturn +++ /dev/null @@ -1,54 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 10 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturn$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnAugmented deleted file mode 100644 index 6911e18a4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnAugmented +++ /dev/null @@ -1,55 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 6 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -LLOAD 6 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 8 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[IJ)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 6 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LCONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnAugmented1 deleted file mode 100644 index 05e732b20..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnAugmented1 +++ /dev/null @@ -1,58 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 6 -ALOAD 0 -LLOAD 6 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 8 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnAugmented1$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 1 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LLOAD 1 -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnSampled deleted file mode 100644 index 346dcb551..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsReturnSampled +++ /dev/null @@ -1,75 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME1 J -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME1 J -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -DUP2 -LSTORE 8 -ALOAD 0 -LLOAD 8 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args (Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME1 J -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a Ljava/lang/String; L0 L5 1 -LOCALVARIABLE b J L0 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L5 4 -LOCALVARIABLE d [I L0 L5 5 -MAXSTACK = 10 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsReturnSampled$args(Ljava/lang/Object;JLjava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsReturnSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampled deleted file mode 100644 index 22966be42..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampled +++ /dev/null @@ -1,81 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L4 -LINENUMBER 57 L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -LOCALVARIABLE a Ljava/lang/String; L4 L5 1 -LOCALVARIABLE b J L4 L5 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L5 4 -LOCALVARIABLE d [I L4 L5 5 -MAXSTACK = 6 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampled$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampledAdaptive deleted file mode 100644 index d3e792aa4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampledAdaptive +++ /dev/null @@ -1,87 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.$btrace$$level : I -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L4 -LINENUMBER 57 L4 -FRAME SAME -ILOAD 6 -IFEQ L5 -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.updateEndTs (I)V -L5 -FRAME SAME1 J -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L4 L6 0 -LOCALVARIABLE a Ljava/lang/String; L4 L6 1 -LOCALVARIABLE b J L4 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L6 4 -LOCALVARIABLE d [I L4 L6 5 -MAXSTACK = 6 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Adaptive) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampledNoSampling b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampledNoSampling deleted file mode 100644 index 37701fb47..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsSampledNoSampling +++ /dev/null @@ -1,132 +0,0 @@ -ICONST_0 -ISTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.$btrace$$level : I -DUP -ISTORE 7 -IFLE L0 -L1 -FRAME APPEND [I I] -ICONST_1 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 6 -FRAME SAME -ILOAD 7 -IFLE L2 -L3 -FRAME SAME -ILOAD 6 -IFEQ L4 -L2 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L4 -FRAME SAME -ILOAD 7 -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -L5 -LINENUMBER 57 L5 -FRAME SAME -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L5 L6 0 -LOCALVARIABLE a Ljava/lang/String; L5 L6 1 -LOCALVARIABLE b J L5 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L5 L6 4 -LOCALVARIABLE d [I L5 L6 5 -MAXSTACK = 6 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsNoSampling(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsSampledNoSampling$argsSampled(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsSampledNoSampling.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsShared b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsShared deleted file mode 100644 index ab738d457..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsShared +++ /dev/null @@ -1,96 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -LDC "this = " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -ALOAD 0 -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/Object;)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (I)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.cntr : Ljava/lang/ThreadLocal; -INVOKEVIRTUAL java/lang/ThreadLocal.get ()Ljava/lang/Object; -CHECKCAST java/lang/Integer -INVOKEVIRTUAL java/lang/Integer.intValue ()I -ICONST_1 -IADD -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.cntr : Ljava/lang/ThreadLocal; -SWAP -INVOKEVIRTUAL java/lang/ThreadLocal.set (Ljava/lang/Object;)V -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$dumpExported ()V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$dumpExported()V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/leveled/ArgsShared.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.str (J)Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$incExported ()V -RETURN -MAXSTACK = 2 -MAXLOCALS = 0 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsShared$incExported()V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -LDC "btrace.traces/onmethod/leveled/ArgsShared.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.getPerfLong (Ljava/lang/String;)J (itf) -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsShared.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X2 -POP -LDC "btrace.traces/onmethod/leveled/ArgsShared.exported" -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.putPerfLong (JLjava/lang/String;)V (itf) -RETURN -MAXSTACK = 4 -MAXLOCALS = 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsUnsafe b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsUnsafe deleted file mode 100644 index 26cffbb8d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArgsUnsafe +++ /dev/null @@ -1,68 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -ALOAD 1 -LLOAD 2 -ALOAD 4 -ALOAD 5 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArgsUnsafe$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L2 java/lang/Throwable -TRYCATCHBLOCK L0 L3 L3 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Sys$VM.systemLoadAverage ()D -DSTORE 6 -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils$Sys$VM.processCPUTime ()J -LSTORE 8 -NEW java/lang/StringBuilder -DUP -INVOKESPECIAL java/lang/StringBuilder. ()V -DLOAD 6 -INVOKEVIRTUAL java/lang/StringBuilder.append (D)Ljava/lang/StringBuilder; -LDC " # " -INVOKEVIRTUAL java/lang/StringBuilder.append (Ljava/lang/String;)Ljava/lang/StringBuilder; -LLOAD 8 -INVOKEVIRTUAL java/lang/StringBuilder.append (J)Ljava/lang/StringBuilder; -INVOKEVIRTUAL java/lang/StringBuilder.toString ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -L1 -GOTO L4 -L2 -FRAME SAME1 java/lang/Throwable -ASTORE 6 -LDC "FAILED" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -ALOAD 6 -INVOKEVIRTUAL java/lang/Throwable.getMessage ()Ljava/lang/String; -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -L4 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L3 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArgsUnsafe.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 10 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetAfter deleted file mode 100644 index f2bc45443..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetAfter +++ /dev/null @@ -1,66 +0,0 @@ -DUP2 -ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 5 -IFLT L2 -FRAME FULL [resources/OnMethodTest I [I I [I I] [[I I] -IALOAD -ILOAD 5 -IFLT L3 -DUP -ISTORE 6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ILOAD 6 -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfter$args (Ljava/lang/Object;I[II)V -L3 -FRAME FULL [resources/OnMethodTest I [I I [I I I] [I] -ISTORE 7 -L4 -LINENUMBER 97 L4 -L5 -LINENUMBER 98 L5 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a I L0 L6 1 -LOCALVARIABLE arr [I L1 L6 2 -LOCALVARIABLE b I L4 L6 7 -MAXSTACK = 5 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfter$args(Ljava/lang/Object;I[II)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetAfterAny deleted file mode 100644 index a58980779..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetAfterAny +++ /dev/null @@ -1,67 +0,0 @@ -DUP2 -ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 5 -IFLT L2 -FRAME FULL [resources/OnMethodTest I [I I [I I] [[I I] -IALOAD -ILOAD 5 -IFLT L3 -DUP -ISTORE 6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ILOAD 6 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfterAny$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;I)V -L3 -FRAME FULL [resources/OnMethodTest I [I I [I I I] [I] -ISTORE 7 -L4 -LINENUMBER 97 L4 -L5 -LINENUMBER 98 L5 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a I L0 L6 1 -LOCALVARIABLE arr [I L1 L6 2 -LOCALVARIABLE b I L4 L6 7 -MAXSTACK = 5 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetBefore deleted file mode 100644 index 298a3a799..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetBefore +++ /dev/null @@ -1,55 +0,0 @@ -DUP2 -ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args (Ljava/lang/Object;[II)V -FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] -IALOAD -ISTORE 5 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 5 -MAXSTACK = 5 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBefore$args(Ljava/lang/Object;[II)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetBeforeAny deleted file mode 100644 index 0541ba4a3..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArrayGetBeforeAny +++ /dev/null @@ -1,55 +0,0 @@ -DUP2 -ASTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 4 -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args (Ljava/lang/Object;Ljava/lang/Object;I)V -FRAME FULL [resources/OnMethodTest I [I I [I] [[I I] -IALOAD -ISTORE 5 -L3 -LINENUMBER 97 L3 -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L3 L5 5 -MAXSTACK = 5 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArrayGetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_GET), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArrayGetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetAfter deleted file mode 100644 index 18d768118..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetAfter +++ /dev/null @@ -1,62 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 7 -IFLT L3 -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I I] [[I I I] -ILOAD 7 -IFLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfter$args (Ljava/lang/Object;[III)V -L4 -LINENUMBER 98 L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 5 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfter$args(Ljava/lang/Object;[III)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetAfterAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetAfterAny deleted file mode 100644 index 592a90a65..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetAfterAny +++ /dev/null @@ -1,63 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 7 -IFLT L3 -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I I] [[I I I] -ILOAD 7 -IFLT L4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L4 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfterAny$args (Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -L4 -LINENUMBER 98 L4 -FRAME SAME -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 5 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetAfterAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetAfterAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetBefore deleted file mode 100644 index 2d1738c84..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetBefore +++ /dev/null @@ -1,56 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args (Ljava/lang/Object;[III)V -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 7 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBefore$args(Ljava/lang/Object;[III)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetBeforeAny b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetBeforeAny deleted file mode 100644 index 4ce492d33..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ArraySetBeforeAny +++ /dev/null @@ -1,57 +0,0 @@ -ISTORE 4 -DUP2 -ISTORE 5 -ASTORE 6 -ILOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 6 -ILOAD 5 -ILOAD 4 -INVOKESTATIC java/lang/Integer.valueOf (I)Ljava/lang/Integer; -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBeforeAny$args (Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -L3 -FRAME FULL [resources/OnMethodTest I [I I I I [I] [[I I I] -L4 -LINENUMBER 98 L4 -L5 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -LOCALVARIABLE a I L0 L5 1 -LOCALVARIABLE arr [I L1 L5 2 -LOCALVARIABLE b I L2 L5 3 -MAXSTACK = 7 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ArraySetBeforeAny$args(Ljava/lang/Object;Ljava/lang/Object;ILjava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="array", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ARRAY_SET), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ArraySetBeforeAny.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Catch b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Catch deleted file mode 100644 index ca08a75f6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Catch +++ /dev/null @@ -1,50 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args (Ljava/lang/Object;Ljava/io/IOException;)V -FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] -ASTORE 2 -L3 -LINENUMBER 85 L3 -ALOAD 2 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Catch$args(Ljava/lang/Object;Ljava/io/IOException;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="exception", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CATCH), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Catch.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/CheckcastAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/CheckcastAfter deleted file mode 100644 index e7bf0cd37..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/CheckcastAfter +++ /dev/null @@ -1,58 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "casts" -LDC "java.util.HashMap" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastAfter$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] -ASTORE 3 -L3 -LINENUMBER 119 L3 -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map T java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L3 L6 3 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CHECKCAST, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/CheckcastBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/CheckcastBefore deleted file mode 100644 index 22d49dcb2..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/CheckcastBefore +++ /dev/null @@ -1,59 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "resources.OnMethodTest" -LDC "java.util.HashMap" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastBefore$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap] [java/util/HashMap] -CHECKCAST java/util/HashMap -ASTORE 3 -L3 -LINENUMBER 119 L3 -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map T java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L3 L6 3 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$CheckcastBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CHECKCAST), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/CheckcastBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ConstructorArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ConstructorArgs deleted file mode 100644 index ad8d0be2e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ConstructorArgs +++ /dev/null @@ -1,38 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args (Ljava/lang/Object;Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest java/lang/String] [] - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ConstructorArgs$args(Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "constructor args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ConstructorArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Error b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Error deleted file mode 100644 index c924c7698..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Error +++ /dev/null @@ -1,49 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -FRAME SAME1 java/lang/Throwable -DUP -ASTORE 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "uncaught" -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Error$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -L2 -FRAME FULL [resources/OnMethodTest java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 4 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Error$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="uncaught", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Error.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ErrorCaught b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ErrorCaught deleted file mode 100644 index 72a684348..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ErrorCaught +++ /dev/null @@ -1,55 +0,0 @@ -TRYCATCHBLOCK L0 L2 L2 java/lang/Throwable -L3 -LINENUMBER 180 L3 -L4 -LINENUMBER 182 L4 -RETURN -L2 -FRAME SAME1 java/lang/Throwable -DUP -ASTORE 2 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "caught" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ErrorCaught$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -L5 -FRAME FULL [resources/OnMethodTest T java/lang/Throwable] [java/lang/Throwable] -ATHROW -LOCALVARIABLE e Ljava/lang/RuntimeException; L3 L4 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -MAXSTACK = 4 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorCaught$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="caught", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorCaught.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ErrorDuration b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ErrorDuration deleted file mode 100644 index 5bb3e18fe..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/ErrorDuration +++ /dev/null @@ -1,68 +0,0 @@ -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -LCONST_0 -LSTORE 1 -LCONST_0 -LSTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.$btrace$$level : I -DUP -ISTORE 5 -IFLE L0 -L2 -FRAME APPEND [J J I] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 3 -FRAME SAME -FRAME SAME1 java/lang/Throwable -INVOKESTATIC java/lang/System.nanoTime ()J -LLOAD 3 -LSUB -LSTORE 1 -DUP -ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "uncaught" -LLOAD 1 -ALOAD 6 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V -L3 -FRAME FULL [resources/OnMethodTest J J I java/lang/Throwable] [java/lang/Throwable] -ATHROW -MAXSTACK = 6 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$ErrorDuration$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="uncaught", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.ERROR), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 2 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/ErrorDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetAfter deleted file mode 100644 index e3a846a47..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetAfter +++ /dev/null @@ -1,61 +0,0 @@ -DUP -ASTORE 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 2 -IFLT L1 -L1 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest I] [resources/OnMethodTest resources/OnMethodTest] -ILOAD 2 -IFLT L2 -DUP -ISTORE 3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 1 -LDC "field int resources.OnMethodTest#field" -ILOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfter$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest I I] [resources/OnMethodTest I] -L3 -LINENUMBER 102 L3 -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -MAXSTACK = 6 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/^resources.OnMethodTest$/", field="/^field$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 2 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetAfterStatic deleted file mode 100644 index 44c8f36fd..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetAfterStatic +++ /dev/null @@ -1,59 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 1 -IFLT L1 -L1 -FRAME APPEND [I] -ILOAD 1 -IFLT L2 -DUP2 -LSTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ACONST_NULL -LDC "static field long resources.OnMethodTest#sField" -LLOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -L2 -FRAME FULL [resources/OnMethodTest I J] [J] -L3 -LINENUMBER 162 L3 -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -MAXSTACK = 7 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/^resources.OnMethodTest$/", field="/^sField$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 2 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetBefore deleted file mode 100644 index 08e6914c6..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetBefore +++ /dev/null @@ -1,50 +0,0 @@ -DUP -ASTORE 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "field" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -L1 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest resources/OnMethodTest] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 5 -MAXLOCALS = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/.*\\.OnMethodTest/", field="/^field$/"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetBeforeStatic deleted file mode 100644 index 7f5121c4e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldGetBeforeStatic +++ /dev/null @@ -1,46 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -L1 -FRAME SAME -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldGetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_GET, clazz="/.*\\.OnMethodTest/", field="/^sField$/"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldGetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetAfter deleted file mode 100644 index 4eac58e0b..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetAfter +++ /dev/null @@ -1,59 +0,0 @@ -ISTORE 1 -DUP -ASTORE 2 -ILOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 3 -IFLT L1 -L1 -FRAME FULL [resources/OnMethodTest I resources/OnMethodTest I] [resources/OnMethodTest I] -ILOAD 3 -IFLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ALOAD 2 -LDC "field" -ILOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -L2 -LINENUMBER 102 L2 -FRAME SAME -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 4 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfter$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="resources.OnMethodTest", field="/^field$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetAfterStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetAfterStatic deleted file mode 100644 index e1990d452..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetAfterStatic +++ /dev/null @@ -1,57 +0,0 @@ -LSTORE 1 -LLOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.$btrace$$level : I -ICONST_1 -ISUB -DUP -ISTORE 3 -IFLT L1 -L1 -FRAME FULL [resources/OnMethodTest J I] [J] -ILOAD 3 -IFLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -ACONST_NULL -LDC "sField" -LLOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -L2 -LINENUMBER 162 L2 -FRAME SAME -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetAfterStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="resources.OnMethodTest", field="/^sField$/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetAfterStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetBefore deleted file mode 100644 index fd8cb0f3f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetBefore +++ /dev/null @@ -1,53 +0,0 @@ -ISTORE 1 -DUP -ASTORE 2 -ILOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 2 -LDC "field" -ILOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME FULL [resources/OnMethodTest I resources/OnMethodTest] [resources/OnMethodTest I] -L2 -LINENUMBER 102 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 6 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBefore$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="/.*\\.OnMethodTest/", field="/^field$/"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetBeforeStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetBeforeStatic deleted file mode 100644 index 7577d87bb..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/FieldSetBeforeStatic +++ /dev/null @@ -1,51 +0,0 @@ -LSTORE 1 -LLOAD 1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ACONST_NULL -LDC "sField" -LLOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest J] [J] -L2 -LINENUMBER 162 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -MAXSTACK = 7 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$FieldSetBeforeStatic$args(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="staticField", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.FIELD_SET, clazz="/.*\\.OnMethodTest/", field="/^sField$/"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/FieldSetBeforeStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/InstanceofAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/InstanceofAfter deleted file mode 100644 index 281928649..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/InstanceofAfter +++ /dev/null @@ -1,57 +0,0 @@ -DUP -ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "casts" -LDC "java.util.HashMap" -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofAfter$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -L3 -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [I] -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map java/util/HashMap java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L2 L6 2 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofAfter$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.INSTANCEOF, where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/InstanceofBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/InstanceofBefore deleted file mode 100644 index 8f345da73..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/InstanceofBefore +++ /dev/null @@ -1,57 +0,0 @@ -DUP -ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "resources.OnMethodTest" -LDC "java.util.HashMap" -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofBefore$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -L3 -FRAME FULL [resources/OnMethodTest java/util/HashMap java/util/HashMap java/util/HashMap] [java/util/HashMap] -IFEQ L4 -L5 -LINENUMBER 120 L5 -L4 -LINENUMBER 122 L4 -FRAME FULL [resources/OnMethodTest java/util/Map java/util/HashMap java/util/HashMap] [] -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE c Ljava/util/Map; L1 L6 1 -LOCALVARIABLE d Ljava/util/HashMap; L2 L6 2 -MAXSTACK = 5 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$InstanceofBefore$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="casts", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.INSTANCEOF), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/InstanceofBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Line b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Line deleted file mode 100644 index 4f014d0ba..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Line +++ /dev/null @@ -1,49 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "exception" -LDC 84 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Line$args (Ljava/lang/Object;Ljava/lang/String;I)V -L2 -FRAME SAME1 java/lang/Throwable -L3 -LINENUMBER 85 L3 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 1 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXSTACK = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Line$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="field", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.LINE, line=84), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Line.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MatchDerived b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MatchDerived deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCall b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCall deleted file mode 100644 index b84bf7bd8..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCall +++ /dev/null @@ -1,60 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 6 -LLOAD 4 -ALOAD 7 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCall$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME APPEND [J java/lang/String resources/OnMethodTest] -ALOAD 7 -ALOAD 6 -LLOAD 4 -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 8 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCall$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDuration b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDuration deleted file mode 100644 index b96c89fa0..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDuration +++ /dev/null @@ -1,70 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.$btrace$$level : I -DUP -ISTORE 8 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 6 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -LSTORE 9 -ASTORE 11 -ASTORE 12 -ALOAD 12 -ALOAD 11 -LLOAD 9 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 13 -LLOAD 13 -LCONST_0 -ALOAD 11 -LLOAD 9 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args (JJLjava/lang/String;J)V -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest] [J] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -MAXSTACK = 9 -MAXLOCALS = 15 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration$args(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDuration2 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDuration2 deleted file mode 100644 index 764739584..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDuration2 +++ /dev/null @@ -1,134 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -DUP -ISTORE 8 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 6 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I] [resources/OnMethodTest java/lang/String J] -LSTORE 9 -ASTORE 11 -ASTORE 12 -ALOAD 12 -ALOAD 11 -LLOAD 9 -LCONST_0 -LSTORE 13 -LCONST_0 -LSTORE 15 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -DUP -ISTORE 17 -IFLE L3 -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I] [resources/OnMethodTest java/lang/String J] -INVOKESTATIC java/lang/System.nanoTime ()J -LSTORE 15 -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I] [resources/OnMethodTest java/lang/String J] -LSTORE 18 -ASTORE 20 -ASTORE 21 -ALOAD 21 -ALOAD 20 -LLOAD 18 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -DUP2 -LSTORE 22 -LLOAD 22 -LCONST_0 -ALOAD 20 -LLOAD 18 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0 (JJLjava/lang/String;J)V -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I J java/lang/String resources/OnMethodTest] [J] -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 24 -LLOAD 24 -LCONST_0 -ALOAD 11 -LLOAD 9 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1 (JJLjava/lang/String;J)V -L6 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I J java/lang/String resources/OnMethodTest J J I J java/lang/String resources/OnMethodTest T T] [J] -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a Ljava/lang/String; L0 L7 1 -LOCALVARIABLE b J L0 L7 2 -MAXSTACK = 9 -MAXLOCALS = 26 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args0(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDuration2$args1(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDuration2.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDurationSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDurationSampled deleted file mode 100644 index 0bf8a6de8..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDurationSampled +++ /dev/null @@ -1,77 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -ICONST_0 -ISTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.$btrace$$level : I -DUP -ISTORE 9 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 6 -L2I -ISTORE 8 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 10 -ASTORE 12 -ASTORE 13 -ALOAD 13 -ALOAD 12 -LLOAD 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 14 -LLOAD 14 -LCONST_0 -ALOAD 12 -LLOAD 10 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args (JJLjava/lang/String;J)V -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest] [J] -L4 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L4 0 -LOCALVARIABLE a Ljava/lang/String; L0 L4 1 -LOCALVARIABLE b J L0 L4 2 -MAXSTACK = 9 -MAXLOCALS = 16 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampled$args(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDurationSampledMulti b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDurationSampledMulti deleted file mode 100644 index e1eeab415..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallDurationSampledMulti +++ /dev/null @@ -1,120 +0,0 @@ -LCONST_0 -LSTORE 4 -LCONST_0 -LSTORE 6 -ICONST_0 -ISTORE 8 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -DUP -ISTORE 9 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 6 -L2I -ISTORE 8 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 10 -ASTORE 12 -ASTORE 13 -ALOAD 13 -ALOAD 12 -LLOAD 10 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -DUP2 -LSTORE 14 -LLOAD 14 -LCONST_0 -ALOAD 12 -LLOAD 10 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args (JJLjava/lang/String;J)V -L3 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest] [J] -LCONST_0 -LSTORE 16 -LCONST_0 -LSTORE 18 -ICONST_0 -ISTORE 20 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -DUP -ISTORE 21 -IFLE L4 -L5 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest T T J J I I] [J java/lang/String J] -ICONST_3 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitTimed (I)J -DUP2 -LSTORE 18 -L2I -ISTORE 20 -L4 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest T T J J I I] [J java/lang/String J] -LSTORE 22 -ASTORE 24 -ALOAD 24 -LLOAD 22 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -DUP2 -LSTORE 25 -LLOAD 25 -LCONST_0 -ALOAD 24 -LLOAD 22 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args (JJLjava/lang/String;J)V -L6 -FRAME FULL [resources/OnMethodTest java/lang/String J J J I I J java/lang/String resources/OnMethodTest T T J J I I J java/lang/String] [J J] -LSTORE 27 -L7 -LINENUMBER 132 L7 -LLOAD 27 -L8 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L8 0 -LOCALVARIABLE a Ljava/lang/String; L0 L8 1 -LOCALVARIABLE b J L0 L8 2 -LOCALVARIABLE i J L7 L8 27 -MAXSTACK = 11 -MAXLOCALS = 29 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallDurationSampledMulti$args(JJLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel1", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="/callTarget.*/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Duration;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallDurationSampledMulti.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallNoArgs deleted file mode 100644 index 12d217f6f..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallNoArgs +++ /dev/null @@ -1,40 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args ()V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J] [resources/OnMethodTest java/lang/String J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallNoArgs$args()V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturn deleted file mode 100644 index 9fead4f0a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturn +++ /dev/null @@ -1,54 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 8 -LLOAD 8 -ALOAD 6 -LLOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args (JLjava/lang/String;J)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 7 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturn$args(JLjava/lang/String;J)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturnAugmented b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturnAugmented deleted file mode 100644 index ace84dda5..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturnAugmented +++ /dev/null @@ -1,55 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 8 -ALOAD 6 -LLOAD 4 -LLOAD 8 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args (Ljava/lang/String;JJ)J -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented$args(Ljava/lang/String;JJ)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 3 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LCONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturnAugmented1 b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturnAugmented1 deleted file mode 100644 index 2480db1e1..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallReturnAugmented1 +++ /dev/null @@ -1,57 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -ALOAD 7 -ALOAD 6 -LLOAD 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -LSTORE 8 -LLOAD 8 -ALOAD 6 -LLOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args (JLjava/lang/String;J)J -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String resources/OnMethodTest] [J] -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallReturnAugmented1$args(JLjava/lang/String;J)J -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -LLOAD 0 -LRETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -LLOAD 0 -LCONST_1 -LADD -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -LLOAD 0 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallReturnAugmented1.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -LRETURN -MAXSTACK = 4 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallSampled b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallSampled deleted file mode 100644 index e4b920876..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallSampled +++ /dev/null @@ -1,82 +0,0 @@ -ICONST_0 -ISTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.$btrace$$level : I -DUP -ISTORE 5 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hit (I)Z -ISTORE 4 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 6 -ASTORE 8 -ASTORE 9 -ILOAD 5 -IFLE L3 -L4 -FRAME APPEND [J java/lang/String resources/OnMethodTest] -ILOAD 4 -IFEQ L5 -L3 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -ALOAD 8 -LLOAD 6 -ALOAD 9 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L5 -FRAME SAME -ALOAD 9 -ALOAD 8 -LLOAD 6 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a Ljava/lang/String; L0 L6 1 -LOCALVARIABLE b J L0 L6 2 -MAXSTACK = 8 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampled$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Const) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampled.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallSampledAdaptive b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallSampledAdaptive deleted file mode 100644 index 774434c85..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallSampledAdaptive +++ /dev/null @@ -1,82 +0,0 @@ -ICONST_0 -ISTORE 4 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.$btrace$$level : I -DUP -ISTORE 5 -IFLE L1 -L2 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -ICONST_2 -INVOKESTATIC org/openjdk/btrace/instr/MethodTracker.hitAdaptive (I)Z -ISTORE 4 -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J I I] [resources/OnMethodTest java/lang/String J] -LSTORE 6 -ASTORE 8 -ASTORE 9 -ILOAD 5 -IFLE L3 -L4 -FRAME APPEND [J java/lang/String resources/OnMethodTest] -ILOAD 4 -IFEQ L5 -L3 -FRAME SAME -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.$btrace$$level : I -ICONST_1 -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -ALOAD 8 -LLOAD 6 -ALOAD 9 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L5 -FRAME SAME -ALOAD 9 -ALOAD 8 -LLOAD 6 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a Ljava/lang/String; L0 L6 1 -LOCALVARIABLE b J L0 L6 2 -MAXSTACK = 8 -MAXLOCALS = 10 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallSampledAdaptive$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -@Lorg/openjdk/btrace/core/annotations/Sampled;(kind=Lorg/openjdk/btrace/core/annotations/Sampled$Sampler;.Adaptive) // invisible -// annotable parameter count: 7 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 5 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 6 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallSampledAdaptive.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 8 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallStatic deleted file mode 100644 index d8d12e572..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/MethodCallStatic +++ /dev/null @@ -1,56 +0,0 @@ -LSTORE 4 -ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 6 -LLOAD 4 -LDC "static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevel" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallStatic$args (Ljava/lang/Object;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L1 -FRAME FULL [resources/OnMethodTest java/lang/String J J java/lang/String] [J] -ALOAD 6 -LLOAD 4 -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -MAXSTACK = 9 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$MethodCallStatic$args(Ljava/lang/Object;Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevel", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTargetStatic"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 3 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 5 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/MethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NativeWithReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NativeWithReturn deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NativeWithoutReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NativeWithoutReturn deleted file mode 100644 index e69de29bb..000000000 diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewAfter deleted file mode 100644 index e0269d410..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewAfter +++ /dev/null @@ -1,49 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -LDC "java.util.HashMap" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args (Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest java/util/HashMap] [java/util/HashMap] -ASTORE 2 -L2 -LINENUMBER 106 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE m Ljava/util/Map; L2 L3 2 -MAXSTACK = 4 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewAfter$args(Ljava/lang/Object;Ljava/util/Map;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newObject", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEW, clazz="/.*/", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayIntAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayIntAfter deleted file mode 100644 index 3b80ee5ce..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayIntAfter +++ /dev/null @@ -1,60 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntAfter$args (Ljava/lang/Object;[I)V -FRAME FULL [resources/OnMethodTest [I] [[I] -ASTORE 2 -L2 -LINENUMBER 110 L2 -ASTORE 3 -L3 -LINENUMBER 111 L3 -ASTORE 4 -L4 -LINENUMBER 112 L4 -ASTORE 5 -L5 -LINENUMBER 113 L5 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a [I L2 L6 2 -LOCALVARIABLE b [[I L3 L6 3 -LOCALVARIABLE c [Ljava/lang/String; L4 L6 4 -LOCALVARIABLE d [[Ljava/lang/String; L5 L6 5 -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntAfter$args(Ljava/lang/Object;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="int", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayIntBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayIntBefore deleted file mode 100644 index 5954c784a..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayIntBefore +++ /dev/null @@ -1,66 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "int" -ICONST_1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L1 -FRAME SAME1 I -L2 -LINENUMBER 110 L2 -ICONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.$btrace$$level : I -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "int" -ICONST_2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME FULL [resources/OnMethodTest [I] [I I] -L4 -LINENUMBER 111 L4 -L5 -LINENUMBER 112 L5 -L6 -LINENUMBER 113 L6 -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a [I L2 L7 1 -LOCALVARIABLE b [[I L4 L7 2 -LOCALVARIABLE c [Ljava/lang/String; L5 L7 3 -LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayIntBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="int"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayIntBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayStringAfter b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayStringAfter deleted file mode 100644 index 79bd25416..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayStringAfter +++ /dev/null @@ -1,54 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -DUP -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -ALOAD 3 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringAfter$args (Ljava/lang/Object;[Ljava/lang/String;)V -FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [[Ljava/lang/String;] -ASTORE 4 -L4 -LINENUMBER 112 L4 -ASTORE 5 -L5 -LINENUMBER 113 L5 -L6 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L6 0 -LOCALVARIABLE a [I L1 L6 1 -LOCALVARIABLE b [[I L2 L6 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L6 4 -LOCALVARIABLE d [[Ljava/lang/String; L5 L6 5 -MAXSTACK = 3 -MAXLOCALS = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringAfter$args(Ljava/lang/Object;[Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="java.lang.String", where=Lorg/openjdk/btrace/core/annotations/Where;.AFTER), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringAfter.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayStringBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayStringBefore deleted file mode 100644 index 2489dfc7d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewArrayStringBefore +++ /dev/null @@ -1,62 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L3 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L3 -ALOAD 0 -LDC "java.lang.String" -ICONST_1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L3 -FRAME FULL [resources/OnMethodTest [I [[I] [I] -L4 -LINENUMBER 112 L4 -ICONST_1 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.$btrace$$level : I -IF_ICMPLT L5 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L5 -ALOAD 0 -LDC "java.lang.String" -ICONST_2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args (Ljava/lang/Object;Ljava/lang/String;I)V -L5 -FRAME FULL [resources/OnMethodTest [I [[I [Ljava/lang/String;] [I I] -L6 -LINENUMBER 113 L6 -L7 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L7 0 -LOCALVARIABLE a [I L1 L7 1 -LOCALVARIABLE b [[I L2 L7 2 -LOCALVARIABLE c [Ljava/lang/String; L4 L7 3 -LOCALVARIABLE d [[Ljava/lang/String; L6 L7 4 -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewArrayStringBefore$args(Ljava/lang/Object;Ljava/lang/String;I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newArray", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEWARRAY, clazz="java.lang.String"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewArrayStringBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewBefore b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewBefore deleted file mode 100644 index b807d736c..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NewBefore +++ /dev/null @@ -1,44 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -LDC "java.util.HashMap" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args (Ljava/lang/Object;Ljava/lang/String;)V -L1 -FRAME SAME -L2 -LINENUMBER 106 L2 -L3 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L3 0 -LOCALVARIABLE m Ljava/util/Map; L2 L3 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NewBefore$args(Ljava/lang/Object;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="newObject", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.NEW, clazz="/.*/"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 2 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NewBefore.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 2 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NoArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NoArgs deleted file mode 100644 index 41185cf48..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NoArgs +++ /dev/null @@ -1,37 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty (Ljava/lang/Object;)V -FRAME SAME - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgs$argsEmpty(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NoArgsEntryReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NoArgsEntryReturn deleted file mode 100644 index 23902f577..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/NoArgsEntryReturn +++ /dev/null @@ -1,85 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.$btrace$$level : I -DUP -ISTORE 6 -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry (Ljava/lang/Object;)V -FRAME APPEND [I] -ILOAD 6 -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -ALOAD 0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn (Ljava/lang/Object;)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L2 0 -LOCALVARIABLE a Ljava/lang/String; L0 L2 1 -LOCALVARIABLE b J L0 L2 2 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 4 -LOCALVARIABLE d [I L0 L2 5 -MAXSTACK = 4 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyEntry(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "entry" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$NoArgsEntryReturn$argsEmptyReturn(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "return" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/NoArgsEntryReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgs deleted file mode 100644 index aadecf772..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgs +++ /dev/null @@ -1,39 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ALOAD 0 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args (Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgs$args(Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args$static", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 5 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgsReturn b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgsReturn deleted file mode 100644 index 34ce3e548..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgsReturn +++ /dev/null @@ -1,51 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.$btrace$$level : I -ICONST_1 -IF_ICMPLT L1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L1 -DUP2 -LSTORE 5 -ALOAD 0 -LLOAD 5 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args (Ljava/lang/String;JJ[Ljava/lang/String;[I)V -L1 -FRAME SAME1 J -L2 -LOCALVARIABLE a Ljava/lang/String; L0 L2 0 -LOCALVARIABLE b J L0 L2 1 -LOCALVARIABLE c [Ljava/lang/String; L0 L2 3 -LOCALVARIABLE d [I L0 L2 4 -MAXSTACK = 9 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsReturn$args(Ljava/lang/String;JJ[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args$static", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.RETURN), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Return;() // parameter 1 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsReturn.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgsSelf deleted file mode 100644 index a9738cfb4..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticArgsSelf +++ /dev/null @@ -1,42 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ACONST_NULL -ALOAD 0 -LLOAD 1 -ALOAD 3 -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args (Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -FRAME SAME -MAXSTACK = 6 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticArgsSelf$args(Ljava/lang/Object;Ljava/lang/String;J[Ljava/lang/String;[I)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="args$static", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticMethodCall b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticMethodCall deleted file mode 100644 index d50ffb524..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticMethodCall +++ /dev/null @@ -1,58 +0,0 @@ -LSTORE 4 -ASTORE 6 -ASTORE 7 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 6 -LLOAD 4 -ALOAD 7 -LDC "special long resources.OnMethodTest#callTarget(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevelStatic" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCall$args (Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L2 -FRAME FULL [java/lang/String J resources/OnMethodTest J java/lang/String resources/OnMethodTest] [J] -ALOAD 7 -ALOAD 6 -LLOAD 4 -L3 -LOCALVARIABLE a Ljava/lang/String; L0 L3 0 -LOCALVARIABLE b J L0 L3 1 -LOCALVARIABLE instance Lresources/OnMethodTest; L1 L3 3 -MAXSTACK = 9 -MAXLOCALS = 8 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCall$args(Ljava/lang/String;JLjava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevelStatic", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTarget"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 6 (visible) -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 3 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 4 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 5 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCall.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 7 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticMethodCallStatic b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticMethodCallStatic deleted file mode 100644 index 6f6848e8d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticMethodCallStatic +++ /dev/null @@ -1,53 +0,0 @@ -LSTORE 4 -ASTORE 6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 6 -LLOAD 4 -LDC "static long resources.OnMethodTest#callTargetStatic(java.lang.String, long)" -LDC "resources.OnMethodTest" -LDC "callTopLevelStatic" -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCallStatic$args (Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -L2 -FRAME APPEND [resources/OnMethodTest J java/lang/String] -ALOAD 6 -LLOAD 4 -L3 -LOCALVARIABLE a Ljava/lang/String; L0 L3 0 -LOCALVARIABLE b J L0 L3 1 -LOCALVARIABLE instance Lresources/OnMethodTest; L1 L3 3 -MAXLOCALS = 7 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticMethodCallStatic$args(Ljava/lang/String;JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="callTopLevelStatic", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.CALL, clazz="/.*\\.OnMethodTest/", method="callTargetStatic"), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 5 (visible) -@Lorg/openjdk/btrace/core/annotations/TargetMethodOrField;(fqn=true) // parameter 2 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 3 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 4 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticMethodCallStatic.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 6 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticNoArgs b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticNoArgs deleted file mode 100644 index c4e5eea19..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticNoArgs +++ /dev/null @@ -1,35 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty ()V -FRAME SAME -MAXSTACK = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgs$argsEmpty()V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="noargs$static", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgs.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 0 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticNoArgsSelf b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticNoArgsSelf deleted file mode 100644 index 4601b588e..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/StaticNoArgsSelf +++ /dev/null @@ -1,38 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.$btrace$$level : I -ICONST_1 -IF_ICMPLT L0 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L0 -ACONST_NULL -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty (Ljava/lang/Object;)V -FRAME SAME -MAXSTACK = 2 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$StaticNoArgsSelf$argsEmpty(Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="noargs$static", enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 1 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args empty" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/StaticNoArgsSelf.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 1 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncEntry b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncEntry deleted file mode 100644 index 5d2372589..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncEntry +++ /dev/null @@ -1,58 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LDC "sync" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncEntry$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L6 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] -L7 -LINENUMBER 127 L7 -GOTO L8 -ASTORE 3 -ALOAD 3 -L8 -LINENUMBER 128 L8 -L5 -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="sync", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_ENTRY), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncExit b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncExit deleted file mode 100644 index 82c479eec..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncExit +++ /dev/null @@ -1,72 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -L6 -LINENUMBER 127 L6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L7 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L7 -FRAME FULL [resources/OnMethodTest resources/OnMethodTest resources/OnMethodTest] [resources/OnMethodTest] -GOTO L8 -ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L9 -DUP -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L9 -FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 3 -L8 -LINENUMBER 128 L8 -FRAME FULL [resources/OnMethodTest] [] -L5 -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="sync", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_EXIT), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncMEntry b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncMEntry deleted file mode 100644 index 68a411106..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncMEntry +++ /dev/null @@ -1,58 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.$btrace$$level : I -ICONST_1 -IF_ICMPLT L6 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L6 -ALOAD 0 -LDC "syncM" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncMEntry$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L6 -FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] -L7 -LINENUMBER 167 L7 -GOTO L8 -ASTORE 3 -ALOAD 3 -L8 -LINENUMBER 168 L8 -L5 -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 4 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMEntry$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="syncM", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_ENTRY), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMEntry.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncMExit b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncMExit deleted file mode 100644 index 79e7d2d58..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/SyncMExit +++ /dev/null @@ -1,72 +0,0 @@ -TRYCATCHBLOCK L4 L5 L5 java/lang/Throwable -L6 -LINENUMBER 167 L6 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L7 -DUP -ASTORE 2 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L7 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 2 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L7 -FRAME FULL [resources/OnMethodTest java/lang/Object java/lang/Object] [java/lang/Object] -GOTO L8 -ASTORE 3 -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.$btrace$$level : I -ICONST_1 -IF_ICMPLT L9 -DUP -ASTORE 4 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L9 -ALOAD 0 -LDC "resources.OnMethodTest" -ALOAD 4 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -L9 -FRAME FULL [resources/OnMethodTest java/lang/Object T java/lang/Throwable java/lang/Object] [java/lang/Object] -ALOAD 3 -L8 -LINENUMBER 168 L8 -FRAME FULL [resources/OnMethodTest] [] -L5 -FRAME SAME1 java/lang/Throwable -ATHROW -LOCALVARIABLE this Lresources/OnMethodTest; L4 L5 0 -MAXSTACK = 4 -MAXLOCALS = 5 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$SyncMExit$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="syncM", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.SYNC_EXIT), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 3 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 2 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/SyncMExit.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 3 \ No newline at end of file diff --git a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Throw b/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Throw deleted file mode 100644 index 4b064833d..000000000 --- a/btrace-instr/src/test/resources/instrumentorTestData/static/onmethod/leveled/Throw +++ /dev/null @@ -1,58 +0,0 @@ -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.$btrace$$level : I -ICONST_1 -IF_ICMPLT L2 -DUP -ASTORE 1 -INVOKESTATIC org/openjdk/btrace/runtime/LinkingFlag.get ()I -IFNE L2 -ALOAD 0 -LDC "resources.OnMethodTest" -LDC "exception" -ALOAD 1 -INVOKESTATIC resources/OnMethodTest.$btrace$org$openjdk$btrace$runtime$auxiliary$Throw$args (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V -L2 -FRAME FULL [resources/OnMethodTest java/io/IOException] [java/io/IOException] -FRAME FULL [resources/OnMethodTest] [java/io/IOException] -ASTORE 2 -L3 -LINENUMBER 85 L3 -ALOAD 2 -L4 -LINENUMBER 87 L4 -L5 -LOCALVARIABLE e Ljava/io/IOException; L3 L4 2 -LOCALVARIABLE this Lresources/OnMethodTest; L0 L5 0 -MAXSTACK = 5 -MAXLOCALS = 3 - -// access flags 0xA -private static $btrace$org$openjdk$btrace$runtime$auxiliary$Throw$args(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V -@Lorg/openjdk/btrace/core/annotations/OnMethod;(clazz="/.*\\.OnMethodTest/", method="exception", location=@Lorg/openjdk/btrace/core/annotations/Location;(value=Lorg/openjdk/btrace/core/annotations/Kind;.THROW), enableAt=@Lorg/openjdk/btrace/core/annotations/Level;(value=">=1")) -// annotable parameter count: 4 (visible) -@Lorg/openjdk/btrace/core/annotations/Self;() // parameter 0 -@Lorg/openjdk/btrace/core/annotations/ProbeClassName;() // parameter 1 -@Lorg/openjdk/btrace/core/annotations/ProbeMethodName;() // parameter 2 -@Lorg/openjdk/btrace/core/annotations/TargetInstance;() // parameter 3 -TRYCATCHBLOCK L0 L1 L1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKESTATIC org/openjdk/btrace/runtime/BTraceRuntimeAccess.enter (Lorg/openjdk/btrace/core/BTraceRuntimeBridge;)Z -IFNE L0 -RETURN -L0 -FRAME SAME -LDC "args" -INVOKESTATIC org/openjdk/btrace/core/BTraceUtils.println (Ljava/lang/Object;)V -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -L1 -FRAME SAME1 java/lang/Throwable -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -DUP_X1 -SWAP -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.handleException (Ljava/lang/Throwable;)V (itf) -GETSTATIC org/openjdk/btrace/runtime/auxiliary/Throw.runtime : Lorg/openjdk/btrace/core/BTraceRuntimeBridge; -INVOKEINTERFACE org/openjdk/btrace/core/BTraceRuntimeBridge.leave ()V (itf) -RETURN -MAXSTACK = 3 -MAXLOCALS = 4 \ No newline at end of file diff --git a/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeAccessImpl.java b/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeAccessImpl.java index 883dcf95f..a043429cd 100644 --- a/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeAccessImpl.java +++ b/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeAccessImpl.java @@ -43,6 +43,15 @@ public final class BTraceRuntimeAccessImpl implements BTraceRuntimeAccess.Delegate { private static final BTraceRuntimeAccessImpl INSTANCE = new BTraceRuntimeAccessImpl(); + // Auxiliary.class.getPackage() returns null on JDK 8 when the class is dynamically defined + // on the bootstrap classloader (the VM package table is only populated for file-loaded classes) + private static final String AUXILIARY_PKG; + + static { + String name = Auxiliary.class.getName(); + AUXILIARY_PKG = name.substring(0, name.lastIndexOf('.')).replace('.', '/'); + } + static final class RTWrapper { private BTraceRuntime.Impl rt = null; @@ -140,11 +149,11 @@ static String getClientNameInternal(String forClassName) { int idx = forClassName.lastIndexOf('/'); if (idx > -1) { forClassName = - Auxiliary.class.getPackage().getName().replace('.', '/') + AUXILIARY_PKG + "/" + forClassName.substring(idx + 1); } else { - forClassName = Auxiliary.class.getPackage().getName().replace('.', '/') + "/" + forClassName; + forClassName = AUXILIARY_PKG + "/" + forClassName; } if (!BTraceRuntimeAccess.isUniqueClientClassNames()) { diff --git a/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeImpl_8.java b/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeImpl_8.java index f523fbb74..dd5faf2c1 100644 --- a/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeImpl_8.java +++ b/btrace-runtime/src/main/java/org/openjdk/btrace/runtime/BTraceRuntimeImpl_8.java @@ -139,10 +139,9 @@ public Class defineClass(byte[] code, boolean mustBeBootstrap) { if (callerClassName == null || !callerClassName.startsWith("org.openjdk.btrace.")) { throw new SecurityException("unsafe defineClass"); } - ClassLoader loader = null; - if (!mustBeBootstrap) { - loader = new ClassLoader(null) {}; - } + // mustBeBootstrap=false: define in the agent classloader so probe classes share the + // same classloader as BTrace runtime types (no longer requires bootstrap visibility). + ClassLoader loader = mustBeBootstrap ? null : BTraceRuntimeImpl_8.class.getClassLoader(); Class cl = unsafe.defineClass(getClassName(), code, 0, code.length, loader, null); unsafe.ensureClassInitialized(cl); return cl; @@ -195,12 +194,28 @@ public void newPerfCounter(Object value, String name, String desc) { @CallerSensitive @Override public ClassLoader getCallerClassLoader(int stackDec) { - return Reflection.getCallerClass(stackDec + 1).getClassLoader(); + int depth = stackDec + 1; + Class cls; + while ((cls = Reflection.getCallerClass(depth)) != null) { + if (!cls.getName().startsWith("org.openjdk.btrace.runtime.auxiliary.")) { + return cls.getClassLoader(); + } + depth++; + } + return null; } @Override public Class getCallerClass(int stackDec) { - return Reflection.getCallerClass(stackDec + 1); + int depth = stackDec + 1; + Class cls; + while ((cls = Reflection.getCallerClass(depth)) != null) { + if (!cls.getName().startsWith("org.openjdk.btrace.runtime.auxiliary.")) { + return cls; + } + depth++; + } + return null; } @Override diff --git a/btrace-runtime/src/main/java11/org/openjdk/btrace/runtime/BTraceRuntimeImpl_11.java b/btrace-runtime/src/main/java11/org/openjdk/btrace/runtime/BTraceRuntimeImpl_11.java index 93a1f0c7c..a2b8c1eb0 100644 --- a/btrace-runtime/src/main/java11/org/openjdk/btrace/runtime/BTraceRuntimeImpl_11.java +++ b/btrace-runtime/src/main/java11/org/openjdk/btrace/runtime/BTraceRuntimeImpl_11.java @@ -269,30 +269,36 @@ public void newPerfCounter(Object value, String name, String desc) { @Override public ClassLoader getCallerClassLoader(int stackDec) { - AtomicInteger cont = new AtomicInteger(stackDec); - AtomicReference cl = new AtomicReference<>(null); - StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) - .forEach( - f -> { - if (cont.getAndDecrement() == 0) { - cl.compareAndSet(null, f.getDeclaringClass().getClassLoader()); - } - }); - return cl.get(); + return StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) + .walk( + frames -> + frames + .filter( + f -> + !f.getDeclaringClass() + .getName() + .startsWith("org.openjdk.btrace.runtime.auxiliary.")) + .skip(stackDec) + .findFirst() + .map(f -> f.getDeclaringClass().getClassLoader()) + .orElse(null)); } @Override public Class getCallerClass(int stackDec) { - AtomicInteger cont = new AtomicInteger(stackDec); - AtomicReference> cl = new AtomicReference<>(null); - StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) - .forEach( - f -> { - if (cont.getAndDecrement() == 0) { - cl.compareAndSet(null, f.getDeclaringClass()); - } - }); - return cl.get(); + return StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) + .walk( + frames -> + frames + .filter( + f -> + !f.getDeclaringClass() + .getName() + .startsWith("org.openjdk.btrace.runtime.auxiliary.")) + .skip(stackDec) + .findFirst() + .map(StackWalker.StackFrame::getDeclaringClass) + .orElse(null)); } @Override diff --git a/btrace-runtime/src/main/java15/org/openjdk/btrace/runtime/Indy.java b/btrace-runtime/src/main/java15/org/openjdk/btrace/runtime/Indy.java deleted file mode 100644 index 653938155..000000000 --- a/btrace-runtime/src/main/java15/org/openjdk/btrace/runtime/Indy.java +++ /dev/null @@ -1,42 +0,0 @@ -package org.openjdk.btrace.runtime; - -import org.openjdk.btrace.core.HandlerRepository; - -import java.lang.invoke.CallSite; -import java.lang.invoke.ConstantCallSite; -import java.lang.invoke.MethodHandle; -import java.lang.invoke.MethodHandles; -import java.lang.invoke.MethodType; - -/** Invoke-dynamic linking support class */ -public final class Indy { - // Indy must reside in bootstrap but the HandlerRepository implementation is in agent area. - // This field will be dynamically set from the actual HandlerRepository implementation class - // static initializer. - public static volatile HandlerRepository repository = null; - - public static CallSite bootstrap( - MethodHandles.Lookup caller, String name, MethodType type, String probeClassName) - throws Exception { - assert repository != null; - MethodHandle mh; - try { - byte[] classData = - repository.getProbeHandler( - caller.lookupClass().getName(), probeClassName, name, type.toMethodDescriptorString()); - - caller = - caller.defineHiddenClass(classData, false, MethodHandles.Lookup.ClassOption.NESTMATE); - mh = caller.findStatic(caller.lookupClass(), name.substring(name.lastIndexOf("$") + 1), type); - } catch (Throwable t) { - // if unable to properly link just ignore the instrumentation - MethodHandle noopHandle = - MethodHandles.lookup().findStatic(Indy.class, "noop", MethodType.methodType(void.class)); - mh = MethodHandles.dropArguments(noopHandle, 0, type.parameterArray()); - } - - return new ConstantCallSite(mh); - } - - public static void noop() {} -} diff --git a/btrace-runtime/src/main/java9/org/openjdk/btrace/runtime/BTraceRuntimeImpl_9.java b/btrace-runtime/src/main/java9/org/openjdk/btrace/runtime/BTraceRuntimeImpl_9.java index b54c30c38..4364e1b24 100644 --- a/btrace-runtime/src/main/java9/org/openjdk/btrace/runtime/BTraceRuntimeImpl_9.java +++ b/btrace-runtime/src/main/java9/org/openjdk/btrace/runtime/BTraceRuntimeImpl_9.java @@ -217,30 +217,36 @@ public void newPerfCounter(Object value, String name, String desc) { @Override public ClassLoader getCallerClassLoader(int stackDec) { - AtomicInteger cont = new AtomicInteger(stackDec); - AtomicReference cl = new AtomicReference<>(null); - StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) - .forEach( - f -> { - if (cont.getAndDecrement() == 0) { - cl.compareAndSet(null, f.getDeclaringClass().getClassLoader()); - } - }); - return cl.get(); + return StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) + .walk( + frames -> + frames + .filter( + f -> + !f.getDeclaringClass() + .getName() + .startsWith("org.openjdk.btrace.runtime.auxiliary.")) + .skip(stackDec) + .findFirst() + .map(f -> f.getDeclaringClass().getClassLoader()) + .orElse(null)); } @Override public Class getCallerClass(int stackDec) { - AtomicInteger cont = new AtomicInteger(stackDec); - AtomicReference> cl = new AtomicReference<>(null); - StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) - .forEach( - f -> { - if (cont.getAndDecrement() == 0) { - cl.compareAndSet(null, f.getDeclaringClass()); - } - }); - return cl.get(); + return StackWalker.getInstance(StackWalker.Option.RETAIN_CLASS_REFERENCE) + .walk( + frames -> + frames + .filter( + f -> + !f.getDeclaringClass() + .getName() + .startsWith("org.openjdk.btrace.runtime.auxiliary.")) + .skip(stackDec) + .findFirst() + .map(StackWalker.StackFrame::getDeclaringClass) + .orElse(null)); } @Override diff --git a/docs/architecture/MaskedJarArchitecture.md b/docs/architecture/MaskedJarArchitecture.md index 498c48de3..46b512c1d 100644 --- a/docs/architecture/MaskedJarArchitecture.md +++ b/docs/architecture/MaskedJarArchitecture.md @@ -22,20 +22,17 @@ The previous multi-JAR approach (`btrace-agent.jar`, `btrace-boot.jar`, `btrace- ``` btrace.jar (~2.9 MB) -├── org/openjdk/btrace/boot/*.class # Entry point (Loader, MaskedClassLoader, MaskedJarUtils) -├── org/openjdk/btrace/core/*.class # Bootstrap: core API (~42 classes) -├── org/openjdk/btrace/core/extensions/*.class # Bootstrap: extension API -├── org/openjdk/btrace/core/types/*.class # Bootstrap: type definitions -├── org/openjdk/btrace/core/jfr/*.class # Bootstrap: JFR integration -├── org/openjdk/btrace/runtime/*.class # Bootstrap: runtime support -├── org/openjdk/btrace/libs/org/slf4j/** # Bootstrap: relocated SLF4J -├── META-INF/btrace/agent/*.classdata # Masked: agent classes +├── org/openjdk/btrace/boot/*.class # Entry point (Loader, MaskedClassLoader, MaskedJarUtils) +├── org/openjdk/btrace/indy/IndyDispatcher.class # Bootstrap: INVOKEDYNAMIC dispatch +├── org/openjdk/btrace/runtime/LinkingFlag.class # Bootstrap: re-entrancy guard +├── org/openjdk/btrace/core/HandlerRepository.class # Bootstrap: handler resolution interface +├── META-INF/btrace/agent/*.classdata # Masked: agent classes + BTrace runtime API + probe anchor ├── META-INF/btrace/client/*.classdata # Masked: client classes -├── META-INF/btrace/shared/*.classdata # Masked: shared classes (ASM, protocol, etc.) +├── META-INF/btrace/shared/*.classdata # Masked: shared classes (ASM, protocol, annotations, SLF4J) └── META-INF/MANIFEST.MF ``` -**Bootstrap classes** (~112 total): Only the core API, runtime support, and SLF4J logging are stored as regular `.class` files. These are visible to the bootstrap classloader because the manifest declares `Boot-Class-Path: .`. +**Bootstrap classes** (~4 total): Only the classes required by the INVOKEDYNAMIC dispatch mechanism are stored as regular `.class` files. These are visible to the bootstrap classloader because the manifest declares `Boot-Class-Path: .`. **Masked classes** (~1600+): Agent, client, and shared classes are stored as `.classdata` files under `META-INF/btrace/`. The JVM's class loading ignores these files entirely. They are loaded on demand by `MaskedClassLoader`. @@ -76,7 +73,7 @@ Each mode creates a `MaskedClassLoader` for the appropriate section (agent or cl **Agent mode classloader hierarchy:** ``` -Bootstrap CL (core API, runtime, Loader) +Bootstrap CL (IndyDispatcher, LinkingFlag, HandlerRepository, AnyType, Loader) └── MaskedClassLoader[agent] (parent=null) Loads from: META-INF/btrace/agent/*.classdata Fallback: META-INF/btrace/shared/*.classdata @@ -86,7 +83,7 @@ Using `null` as the parent ensures bootstrap-visible classes (like `BTraceRuntim **Client mode classloader hierarchy:** ``` -Bootstrap CL (core API, runtime, Loader) +Bootstrap CL (IndyDispatcher, LinkingFlag, HandlerRepository, AnyType, Loader) └── System CL └── MaskedClassLoader[client] (parent=System CL) Loads from: META-INF/btrace/client/*.classdata @@ -114,16 +111,12 @@ Utility class for detecting masked JARs. A JAR is identified as masked by the pr A build-only module that defines which classes belong in the bootstrap section via a `bootIncludes` filter closure. This filter is used by the `btraceJar` task in `btrace-dist/build.gradle` to separate classes into `.class` (bootstrap) vs `.classdata` (masked) during JAR assembly. **Bootstrap inclusion criteria:** -- `org/openjdk/btrace/core/` — core API (excluding Messages) -- `org/openjdk/btrace/runtime/` — runtime support -- `org/openjdk/btrace/core/extensions/` — extension API -- `org/openjdk/btrace/libs/org/slf4j/` — relocated SLF4J (logging from bootstrap code) - -**Explicitly excluded from bootstrap:** -- ASM classes (loaded via shared section) -- JCTools queues (loaded via shared section) -- Communication protocol classes -- Annotation and handler classes +- `org/openjdk/btrace/indy/` — `IndyDispatcher`: bootstrap method for all INVOKEDYNAMIC probe/runtime dispatch +- `org/openjdk/btrace/runtime/LinkingFlag` — re-entrancy guard used by `IndyDispatcher` and `LinkerInstrumentor` +- `org/openjdk/btrace/core/HandlerRepository.class` — interface referenced directly by `IndyDispatcher` +- `org/openjdk/btrace/core/types/AnyType` (+ inner classes) — `GETSTATIC AnyType.VOID` emitted into instrumented target classes + +All other BTrace classes live in the masked sections (agent, client, or shared). ## Build Process diff --git a/docs/plans/DistributionRestructuring.md b/docs/plans/DistributionRestructuring.md index ffe31dec7..a9302adfe 100644 --- a/docs/plans/DistributionRestructuring.md +++ b/docs/plans/DistributionRestructuring.md @@ -1,6 +1,6 @@ # Plan: InvokeDynamic Isolation (Distribution Phase 3) -**Status:** Not Started +**Status:** Complete **Target:** v3.x (long-term) **Prerequisites:** Masked JAR architecture (completed, see [MaskedJarArchitecture.md](../architecture/MaskedJarArchitecture.md)) @@ -43,12 +43,12 @@ btrace-bootstrap-minimal.jar (~50 KB) ## Implementation Outline -1. Create `IndyDispatcher` bootstrap class with `CallSite` factory methods -2. Modify `Instrumentor` to emit `INVOKEDYNAMIC` instead of `INVOKESTATIC` for BTrace runtime calls -3. Move runtime API out of bootstrap into agent-isolated classloader -4. Update `MaskedClassLoader` to serve as the isolated runtime CL -5. Remove bootstrap classes except `IndyDispatcher` -6. Comprehensive testing: all instrumentation tests must pass with new dispatch +1. ~~Create `IndyDispatcher` bootstrap class with `CallSite` factory methods~~ ✓ Done +2. ~~Modify `Instrumentor` to emit `INVOKEDYNAMIC` instead of `INVOKESTATIC` for BTrace runtime calls~~ ✓ Done +3. ~~Move runtime API out of bootstrap into agent-isolated classloader~~ ✓ Done +4. ~~Update `MaskedClassLoader` to serve as the isolated runtime CL~~ ✓ Done (already IS agent CL) +5. ~~Remove bootstrap classes except IndyDispatcher, LinkingFlag, HandlerRepository~~ ✓ Done +6. ~~Comprehensive testing: all instrumentation tests must pass with new dispatch~~ ✓ Done (938 unit tests + BTraceFunctionalTests pass; 5 remaining failures are Docker/JBang infrastructure) ## References diff --git a/scripts/update-jdk-versions.sh b/scripts/update-jdk-versions.sh deleted file mode 100755 index a57aeab38..000000000 --- a/scripts/update-jdk-versions.sh +++ /dev/null @@ -1,99 +0,0 @@ -#!/usr/bin/env bash -# -# Checks for newer JDK versions on SDKMan and updates workflow files. -# Exit 0 = changes made, exit 1 = no changes needed, exit 2 = error. -# -set -euo pipefail - -SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" - -CONTINUOUS="$REPO_ROOT/.github/workflows/continuous.yml" -RELEASE="$REPO_ROOT/.github/workflows/release.yml" - -SDKMAN_API="https://api.sdkman.io/2/candidates/java/linuxx64/versions/all" - -# Portable in-place sed (works on both GNU and BSD sed) -sed_i() { - local expr=$1; shift - for f in "$@"; do - sed -i.bak "$expr" "$f" && rm -f "$f.bak" - done -} - -echo "Fetching SDKMan version list..." >&2 -ALL_VERSIONS=$(curl -sf "$SDKMAN_API") || { - echo "ERROR: Failed to fetch SDKMan version list" >&2 - exit 2 -} - -VERSION_LIST=$(printf '%s' "$ALL_VERSIONS" | tr ',' '\n' | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') - -# Find the latest Temurin GA release for a given major version. -# Handles both X.0.N-tem and bare X-tem identifiers. -latest_temurin_ga() { - local major=$1 - printf '%s\n' "$VERSION_LIST" | grep -E "^${major}(\\.0\\.[0-9]+)?-tem$" | sort -V | tail -1 -} - -# Find the latest OpenJDK EA build for a given major version. -latest_ea_open() { - local major=$1 - printf '%s\n' "$VERSION_LIST" | grep -E "^${major}\\.ea\\.[0-9]+-open$" | sort -t. -k3 -n | tail -1 -} - -# --- Extract current versions --- - -# Test matrix from continuous.yml (superset of release.yml) -MATRIX_VERSIONS=$(grep 'java:.*\[' "$CONTINUOUS" | head -1 \ - | sed 's/.*\[//;s/\].*//' | tr ',' '\n' \ - | sed 's/^[[:space:]]*//;s/[[:space:]]*$//') - -# Build JDK from the "echo 'y' | sdk install java" line -BUILD_JDK=$(grep "echo 'y' | sdk install java" "$CONTINUOUS" | head -1 \ - | sed "s/.*sdk install java //" | tr -d "[:space:]") - -# --- Resolve and apply updates --- - -CHANGES=() - -for ver in $MATRIX_VERSIONS; do - if [[ "$ver" =~ ^([0-9]+)(\.0\.[0-9]+)?-tem$ ]]; then - major="${BASH_REMATCH[1]}" - latest=$(latest_temurin_ga "$major") - if [[ -n "$latest" && "$latest" != "$ver" ]]; then - CHANGES+=("$ver -> $latest") - # Only replace on matrix lines to avoid substring matches (e.g. 25-tem inside 11.0.25-tem) - sed_i "/java:.*\[/s|${ver}|${latest}|g" "$CONTINUOUS" "$RELEASE" - fi - elif [[ "$ver" =~ ^([0-9]+)\.ea\.([0-9]+)-open$ ]]; then - major="${BASH_REMATCH[1]}" - latest=$(latest_ea_open "$major") - if [[ -n "$latest" && "$latest" != "$ver" ]]; then - CHANGES+=("$ver -> $latest") - sed_i "/java:.*\[/s|${ver}|${latest}|g" "$CONTINUOUS" "$RELEASE" - fi - fi -done - -# Update build JDK if stale -if [[ -n "$BUILD_JDK" && "$BUILD_JDK" =~ ^([0-9]+) ]]; then - build_major="${BASH_REMATCH[1]}" - latest_build=$(latest_temurin_ga "$build_major") - if [[ -n "$latest_build" && "$latest_build" != "$BUILD_JDK" ]]; then - CHANGES+=("build JDK: $BUILD_JDK -> $latest_build") - sed_i "s|sdk install java ${BUILD_JDK}|sdk install java ${latest_build}|g" "$CONTINUOUS" "$RELEASE" - fi -fi - -# --- Report results --- - -if [[ ${#CHANGES[@]} -eq 0 ]]; then - echo "All JDK versions are up to date." >&2 - exit 1 -fi - -for change in "${CHANGES[@]}"; do - echo "- $change" -done -exit 0