Skip to content

Commit d2deb63

Browse files
committed
[GR-14165] Fix too strict NFI testcase.
PullRequest: graal/3027
2 parents 4814450 + b0578fe commit d2deb63

File tree

2 files changed

+17
-9
lines changed

2 files changed

+17
-9
lines changed

truffle/src/com.oracle.truffle.nfi.test/src/com/oracle/truffle/nfi/test/interop/NativeVector.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,12 +76,12 @@ private static Unsafe getUnsafe() {
7676

7777
@TruffleBoundary
7878
public void transitionToNative() {
79-
assert !isPointer() : "is already transitioned";
79+
if (!isPointer()) {
80+
nativeStorage = unsafe.allocateMemory(vector.length * Double.BYTES);
8081

81-
nativeStorage = unsafe.allocateMemory(vector.length * Double.BYTES);
82-
83-
for (int i = 0; i < vector.length; i++) {
84-
set(i, vector[i]);
82+
for (int i = 0; i < vector.length; i++) {
83+
set(i, vector[i]);
84+
}
8585
}
8686
}
8787

truffle/src/com.oracle.truffle.tck/src/com/oracle/truffle/tck/TruffleTestInvoker.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
2+
* Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
33
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
44
*
55
* The Universal Permissive License (UPL), Version 1.0
@@ -169,7 +169,9 @@ private static class TruffleFrameworkMethod extends FrameworkMethod {
169169

170170
for (int i = 0; i < paramCount; i++) {
171171
Inject testRootNode = findRootNodeAnnotation(method.getParameterAnnotations()[i]);
172-
nodeConstructors[i] = getNodeConstructor(testRootNode, testClass);
172+
if (testRootNode != null) {
173+
nodeConstructors[i] = getNodeConstructor(testRootNode, testClass);
174+
}
173175
}
174176
}
175177

@@ -189,7 +191,9 @@ RootNode[] createTestRootNodes(Object test) {
189191

190192
RootNode[] ret = new RootNode[nodeConstructors.length];
191193
for (int i = 0; i < ret.length; i++) {
192-
ret[i] = nodeConstructors[i].apply(test);
194+
if (nodeConstructors[i] != null) {
195+
ret[i] = nodeConstructors[i].apply(test);
196+
}
193197
}
194198
return ret;
195199
}
@@ -209,7 +213,11 @@ public void evaluate() throws Throwable {
209213
try (C testContext = createTestContext(testName)) {
210214
ArrayList<T> callTargets = new ArrayList<>(testNodes.length);
211215
for (RootNode testNode : testNodes) {
212-
callTargets.add(createTestCallTarget(testContext, testNode));
216+
if (testNode != null) {
217+
callTargets.add(createTestCallTarget(testContext, testNode));
218+
} else {
219+
callTargets.add(null);
220+
}
213221
}
214222

215223
Object[] args = callTargets.toArray();

0 commit comments

Comments
 (0)