Skip to content
Snippets Groups Projects
Commit dfde06bd authored by Gero Leinemann's avatar Gero Leinemann
Browse files

Fixed compilation issues for generic cases of RCallNode PIC

parent 9f3c79d9
Branches
No related tags found
No related merge requests found
...@@ -459,7 +459,10 @@ public abstract class RCallNode extends RNode { ...@@ -459,7 +459,10 @@ public abstract class RCallNode extends RNode {
} }
@Override @Override
@SlowPath
public Object execute(VirtualFrame frame, RFunction currentFunction) { public Object execute(VirtualFrame frame, RFunction currentFunction) {
CompilerDirectives.transferToInterpreter();
if (lastCallTarget == currentFunction.getTarget() && lastMatchedArgs != null) { if (lastCallTarget == currentFunction.getTarget() && lastMatchedArgs != null) {
// poor man's caching succeeded - same function: no re-match needed // poor man's caching succeeded - same function: no re-match needed
Object[] argsObject = RArguments.create(currentFunction, getSourceSection(), lastMatchedArgs.doExecuteArray(frame), lastMatchedArgs.getNames()); Object[] argsObject = RArguments.create(currentFunction, getSourceSection(), lastMatchedArgs.doExecuteArray(frame), lastMatchedArgs.getNames());
...@@ -639,7 +642,7 @@ public abstract class RCallNode extends RNode { ...@@ -639,7 +642,7 @@ public abstract class RCallNode extends RNode {
@Override @Override
@SlowPath @SlowPath
public Object execute(VirtualFrame frame, RFunction currentFunction) { public Object execute(VirtualFrame frame, RFunction currentFunction) {
CompilerAsserts.neverPartOfCompilation(); CompilerDirectives.transferToInterpreter();
// Function and arguments may change every call: Flatt'n'Match on SlowPath! :-/ // Function and arguments may change every call: Flatt'n'Match on SlowPath! :-/
UnrolledVariadicArguments argsValuesAndNames = suppliedArgs.executeFlatten(frame); UnrolledVariadicArguments argsValuesAndNames = suppliedArgs.executeFlatten(frame);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment