public abstract class com.oracle.truffle.llvm.tests.BaseSingleTestHarness extends com.oracle.truffle.llvm.tests.BaseTestHarness
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.llvm.tests.BaseSingleTestHarness
super_class: com.oracle.truffle.llvm.tests.BaseTestHarness
{
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lcom/oracle/truffle/llvm/tests/BaseSingleTestHarness;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic com.oracle.truffle.llvm.tests.BaseSingleTestHarness.$assertionsDisabled:Z
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 com.oracle.truffle.llvm.tests.BaseTestHarness.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/llvm/tests/BaseSingleTestHarness;
public void test();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=16, args_size=1
start local 0 0: aconst_null
astore 2
aconst_null
astore 3
1: aload 0
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getTestDirectory:()Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.FileVisitOption
invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
astore 4
start local 4 2: aload 4
getstatic com.oracle.truffle.llvm.tests.BaseSingleTestHarness.isExecutable:Ljava/util/function/Predicate;
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)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.List
astore 5
start local 5 3: getstatic com.oracle.truffle.llvm.tests.BaseSingleTestHarness.$assertionsDisabled:Z
ifne 4
aload 5
invokeinterface java.util.List.size:()I
iconst_1
if_icmpeq 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness top java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.List
StackMap stack:
aload 5
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.nio.file.Path
astore 1
end local 5 start local 1 5: aload 4
ifnull 11
aload 4
invokeinterface java.util.stream.Stream.close:()V
goto 11
end local 1 StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness top java.lang.Throwable java.lang.Throwable java.util.stream.Stream
StackMap stack: java.lang.Throwable
6: astore 2
aload 4
ifnull 7
aload 4
invokeinterface java.util.stream.Stream.close:()V
end local 4 StackMap locals:
StackMap stack:
7: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 3
aload 2
ifnonnull 9
aload 3
astore 2
goto 10
StackMap locals:
StackMap stack:
9: aload 2
aload 3
if_acmpeq 10
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
10: aload 2
athrow
start local 1 11: StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness java.nio.file.Path
StackMap stack:
aconst_null
astore 2
aconst_null
astore 3
12: aload 0
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getTestDirectory:()Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.FileVisitOption
invokestatic java.nio.file.Files.walk:(Ljava/nio/file/Path;[Ljava/nio/file/FileVisitOption;)Ljava/util/stream/Stream;
astore 4
start local 4 13: aload 4
getstatic com.oracle.truffle.llvm.tests.BaseSingleTestHarness.isFile:Ljava/util/function/Predicate;
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
getstatic com.oracle.truffle.llvm.tests.BaseSingleTestHarness.isSulong:Ljava/util/function/Predicate;
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)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.List
astore 5
start local 5 14: new java.lang.StringBuilder
dup
aload 1
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
aload 1
invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getArguments:(Ljava/nio/file/Path;)[Ljava/lang/String;
invokestatic java.util.Arrays.stream:([Ljava/lang/Object;)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;
java/lang/String.valueOf(Ljava/lang/Object;)Ljava/lang/String; (6)
(Ljava/lang/String;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
ldc " "
invokestatic java.util.stream.Collectors.joining:(Ljava/lang/CharSequence;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 15: aload 6
invokestatic com.oracle.truffle.llvm.tests.util.ProcessUtil.executeNativeCommand:(Ljava/lang/String;)Lcom/oracle/truffle/llvm/tests/util/ProcessUtil$ProcessResult;
astore 7
start local 7 16: aload 7
invokevirtual com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult.getStdOutput:()Ljava/lang/String;
astore 8
start local 8 17: aload 7
invokevirtual com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult.getReturnValue:()I
istore 9
start local 9 18: aload 5
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 36
StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.List java.lang.String com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult java.lang.String int top java.util.Iterator
StackMap stack:
19: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.nio.file.Path
astore 10
start local 10 20: aload 0
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.filterFileName:()Ljava/util/function/Predicate;
aload 10
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
ifne 22
21: goto 36
22: StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.List java.lang.String com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult java.lang.String int java.nio.file.Path java.util.Iterator
StackMap stack:
aload 10
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
ifne 24
23: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
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;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
24: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
aload 0
aload 10
invokeinterface java.nio.file.Path.getParent:()Ljava/nio/file/Path;
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getArguments:(Ljava/nio/file/Path;)[Ljava/lang/String;
aload 0
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getContextOptions:()Ljava/util/Map;
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/BaseSingleTestHarness.lambda$1(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;
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 12
start local 12 25: aload 12
invokevirtual com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult.getReturnValue:()I
istore 13
start local 13 26: aload 12
invokevirtual com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult.getStdOutput:()Ljava/lang/String;
astore 14
start local 14 27: iload 13
iload 13
sipush 255
iand
if_icmpeq 29
28: new java.lang.StringBuilder
dup
ldc "Broken unittest "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getTestDirectory:()Ljava/nio/file/Path;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ". Test exits with invalid value."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.junit.Assert.fail:(Ljava/lang/String;)V
29: StackMap locals: com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult int java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 10
invokeinterface java.nio.file.Path.getFileName:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual com.oracle.truffle.llvm.tests.BaseSingleTestHarness.getTestDirectory:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toAbsolutePath:()Ljava/nio/file/Path;
invokeinterface java.nio.file.Path.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 15
start local 15 30: new java.lang.StringBuilder
dup
aload 15
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " failed. Posix return value missmatch."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iload 9
i2l
31: iload 13
i2l
32: invokestatic org.junit.Assert.assertEquals:(Ljava/lang/String;JJ)V
33: new java.lang.StringBuilder
dup
aload 15
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " failed. Output (stdout) missmatch."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 8
34: aload 14
35: invokestatic org.junit.Assert.assertEquals:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 15 end local 14 end local 13 end local 12 end local 10 36: StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream java.util.List java.lang.String com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult java.lang.String int top java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 19
end local 9 end local 8 end local 7 end local 6 end local 5 37: aload 4
ifnull 43
aload 4
invokeinterface java.util.stream.Stream.close:()V
goto 43
StackMap locals: com.oracle.truffle.llvm.tests.BaseSingleTestHarness java.nio.file.Path java.lang.Throwable java.lang.Throwable java.util.stream.Stream
StackMap stack: java.lang.Throwable
38: astore 2
aload 4
ifnull 39
aload 4
invokeinterface java.util.stream.Stream.close:()V
end local 4 StackMap locals:
StackMap stack:
39: aload 2
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
40: astore 3
aload 2
ifnonnull 41
aload 3
astore 2
goto 42
StackMap locals:
StackMap stack:
41: aload 2
aload 3
if_acmpeq 42
aload 2
aload 3
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
42: aload 2
athrow
43: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lcom/oracle/truffle/llvm/tests/BaseSingleTestHarness;
5 6 1 referenceFile Ljava/nio/file/Path;
11 44 1 referenceFile Ljava/nio/file/Path;
2 7 4 files Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
3 5 5 executables Ljava/util/List<Ljava/nio/file/Path;>;
13 39 4 files Ljava/util/stream/Stream<Ljava/nio/file/Path;>;
14 37 5 testCandidates Ljava/util/List<Ljava/nio/file/Path;>;
15 37 6 command Ljava/lang/String;
16 37 7 processResult Lcom/oracle/truffle/llvm/tests/util/ProcessUtil$ProcessResult;
17 37 8 referenceStdOut Ljava/lang/String;
18 37 9 referenceReturnValue I
20 36 10 candidate Ljava/nio/file/Path;
25 36 12 out Lcom/oracle/truffle/llvm/tests/util/ProcessUtil$ProcessResult;
26 36 13 sulongResult I
27 36 14 sulongStdOut Ljava/lang/String;
30 36 15 testName Ljava/lang/String;
Exception table:
from to target type
2 5 6 any
1 8 8 any
13 37 38 any
12 40 40 any
Exceptions:
throws java.io.IOException
RuntimeVisibleAnnotations:
org.junit.Test()
protected abstract java.lang.String[] getArguments(java.nio.file.Path);
descriptor: (Ljava/nio/file/Path;)[Ljava/lang/String;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
testCandidate
private static com.oracle.truffle.llvm.tests.pipe.CaptureOutput lambda$1(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;
}
SourceFile: "BaseSingleTestHarness.java"
InnerClasses:
public final ProcessResult = com.oracle.truffle.llvm.tests.util.ProcessUtil$ProcessResult of com.oracle.truffle.llvm.tests.util.ProcessUtil
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