public class com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest
super_class: java.lang.Object
{
public static com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule runWithPolyglot;
descriptor: Lcom/oracle/truffle/tck/TruffleRunner$RunWithPolyglotRule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
RuntimeVisibleAnnotations:
org.junit.ClassRule()
private static final java.nio.file.Path testBase;
descriptor: Ljava/nio/file/Path;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public java.nio.file.Path value;
descriptor: Ljava/nio/file/Path;
flags: (0x0001) ACC_PUBLIC
RuntimeVisibleAnnotations:
org.junit.runners.Parameterized$Parameter(value = 0)
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=0, args_size=0
0: new com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule
dup
invokespecial com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule.<init>:()V
putstatic com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.runWithPolyglot:Lcom/oracle/truffle/tck/TruffleRunner$RunWithPolyglotRule;
1: getstatic com.oracle.truffle.llvm.tests.options.TestOptions.TEST_SUITE_PATH:Ljava/lang/String;
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc "bitcodeformat"
aastore
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
putstatic com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.testBase:Ljava/nio/file/Path;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest;
protected java.util.Map<java.lang.String, java.lang.String> getContextOptions();
descriptor: ()Ljava/util/Map;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest;
Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
protected java.util.function.Function<org.graalvm.polyglot.Context$Builder, com.oracle.truffle.llvm.tests.pipe.CaptureOutput> getCaptureOutput();
descriptor: ()Ljava/util/function/Function;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest.lambda$0(Lorg/graalvm/polyglot/Context$Builder;)Lcom/oracle/truffle/llvm/tests/pipe/CaptureOutput; (6)
(Lorg/graalvm/polyglot/Context$Builder;)Lcom/oracle/truffle/llvm/tests/pipe/CaptureOutput;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest;
Signature: ()Ljava/util/function/Function<Lorg/graalvm/polyglot/Context$Builder;Lcom/oracle/truffle/llvm/tests/pipe/CaptureOutput;>;
private void runCandidate(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " does not exist."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
1: aload 1
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
invokevirtual java.io.File.exists:()Z
2: invokestatic org.junit.Assert.assertTrue:(Ljava/lang/String;Z)V
3: aload 1
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
iconst_0
anewarray java.lang.String
4: aload 0
invokevirtual com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.getContextOptions:()Ljava/util/Map;
aload 0
invokevirtual com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.getCaptureOutput:()Ljava/util/function/Function;
5: invokestatic com.oracle.truffle.llvm.tests.util.ProcessUtil.executeSulongTestMain:(Ljava/io/File;[Ljava/lang/String;Ljava/util/Map;Ljava/util/function/Function;)Lcom/oracle/truffle/llvm/tests/util/ProcessUtil$ProcessResult;
astore 2
start local 2 6: aload 2
invokevirtual com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult.getReturnValue:()I
istore 3
start local 3 7: lconst_0
iload 3
i2l
invokestatic org.junit.Assert.assertEquals:(JJ)V
8: ldc "Hello, World!\n"
aload 2
invokevirtual com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult.getStdOutput:()Ljava/lang/String;
invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest;
0 10 1 candidateBinary Ljava/nio/file/Path;
6 10 2 result Lcom/oracle/truffle/llvm/tests/util/ProcessUtil$ProcessResult;
7 10 3 sulongRet I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
candidateBinary
public static java.util.Collection<java.lang.Object[]> data();
descriptor: ()Ljava/util/Collection;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=0
0: invokestatic com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.getBlacklist:()Ljava/util/Set;
astore 0
start local 0 1: getstatic com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.testBase:Ljava/nio/file/Path;
invokestatic java.nio.file.Files.list:(Ljava/nio/file/Path;)Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest.lambda$1(Ljava/nio/file/Path;)[Ljava/lang/Object; (6)
(Ljava/nio/file/Path;)[Ljava/lang/Object;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Collection
astore 1
start local 1 2: aload 1
aload 0
invokedynamic test(Ljava/util/Set;)Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
com/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest.lambda$2(Ljava/util/Set;[Ljava/lang/Object;)Z (6)
([Ljava/lang/Object;)Z
invokeinterface java.util.Collection.removeIf:(Ljava/util/function/Predicate;)Z
pop
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 4 0 blacklist Ljava/util/Set<Ljava/lang/String;>;
2 4 1 testlist Ljava/util/Collection<[Ljava/lang/Object;>;
Exceptions:
throws java.io.IOException
Signature: ()Ljava/util/Collection<[Ljava/lang/Object;>;
RuntimeVisibleAnnotations:
org.junit.runners.Parameterized$Parameters(name = "{0}")
protected static java.util.Set<java.lang.String> getBlacklist();
descriptor: ()Ljava/util/Set;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=5, locals=1, args_size=0
0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 0
start local 0 1: invokestatic com.oracle.truffle.llvm.tests.Platform.isAArch64:()Z
ifeq 5
2: aload 0
iconst_2
anewarray java.lang.String
dup
iconst_0
3: ldc "hello-linux-link-fembed-bitcode"
aastore
dup
iconst_1
ldc "hello-linux-link-fembed-bitcode.so"
aastore
4: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
pop
5: StackMap locals: java.util.Set
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 6 0 blacklist Ljava/util/Set<Ljava/lang/String;>;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public void checkOS();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: ldc "Linux only test"
invokestatic com.oracle.truffle.llvm.tests.Platform.isDarwin:()Z
ifeq 1
aload 0
getfield com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.value:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
ldc "linux-link"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack: java.lang.String
1: iconst_1
StackMap locals: com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest
StackMap stack: java.lang.String int
2: invokestatic org.junit.Assume.assumeTrue:(Ljava/lang/String;Z)V
3: ldc "Darwin only test"
invokestatic com.oracle.truffle.llvm.tests.Platform.isDarwin:()Z
ifne 4
aload 0
getfield com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.value:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
ldc "darwin-link"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 4
iconst_0
goto 5
StackMap locals:
StackMap stack: java.lang.String
4: iconst_1
StackMap locals: com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest
StackMap stack: java.lang.String int
5: invokestatic org.junit.Assume.assumeTrue:(Ljava/lang/String;Z)V
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest;
RuntimeVisibleAnnotations:
org.junit.Before()
public void checkNumbers();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getstatic com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.testBase:Ljava/nio/file/Path;
aload 0
getfield com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.value:Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.resolve:(Ljava/nio/file/Path;)Ljava/nio/file/Path;
invokevirtual com.oracle.truffle.llvm.tests.bitcodeformat.BitcodeFormatTest.runCandidate:(Ljava/nio/file/Path;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/llvm/tests/bitcodeformat/BitcodeFormatTest;
Exceptions:
throws java.io.IOException
RuntimeVisibleAnnotations:
org.junit.Test()
private static com.oracle.truffle.llvm.tests.pipe.CaptureOutput lambda$0(org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/polyglot/Context$Builder;)Lcom/oracle/truffle/llvm/tests/pipe/CaptureOutput;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.llvm.tests.pipe.CaptureNativeOutput
dup
invokespecial com.oracle.truffle.llvm.tests.pipe.CaptureNativeOutput.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 c Lorg/graalvm/polyglot/Context$Builder;
private static java.lang.Object[] lambda$1(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)[Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
aastore
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 f Ljava/nio/file/Path;
private static boolean lambda$2(java.util.Set, java.lang.Object[]);
descriptor: (Ljava/util/Set;[Ljava/lang/Object;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
aload 1
iconst_0
aaload
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ireturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 t [Ljava/lang/Object;
}
SourceFile: "BitcodeFormatTest.java"
InnerClasses:
public final ProcessResult = com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult of com.oracle.truffle.llvm.tests.util.ProcessUtil
public final RunWithPolyglotRule = com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule of com.oracle.truffle.tck.TruffleRunner
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
public abstract Parameter = org.junit.runners.Parameterized$Parameter of org.junit.runners.Parameterized
public abstract Parameters = org.junit.runners.Parameterized$Parameters of org.junit.runners.Parameterized
RuntimeVisibleAnnotations:
org.junit.runner.RunWith(value = Lorg/junit/runners/Parameterized;)