Mercurial > hg > graal-compiler
comparison graal/com.oracle.truffle.api/src/com/oracle/truffle/api/impl/DefaultCallNode.java @ 15089:448338c9ce96
Truffle: Made inlining context-insensitive again to reduce complexity.
author | Christian Humer <christian.humer@gmail.com> |
---|---|
date | Mon, 14 Apr 2014 18:25:23 +0200 |
parents | f675818d9ad0 |
children | 607e33885130 |
comparison
equal
deleted
inserted
replaced
15088:d3add9b82b71 | 15089:448338c9ce96 |
---|---|
32 | 32 |
33 public class DefaultCallNode extends CallNode implements MaterializedFrameNotify { | 33 public class DefaultCallNode extends CallNode implements MaterializedFrameNotify { |
34 | 34 |
35 @CompilationFinal private FrameAccess outsideFrameAccess = FrameAccess.NONE; | 35 @CompilationFinal private FrameAccess outsideFrameAccess = FrameAccess.NONE; |
36 | 36 |
37 private boolean inliningForced; | |
38 | |
37 public DefaultCallNode(CallTarget target) { | 39 public DefaultCallNode(CallTarget target) { |
38 super(target); | 40 super(target); |
39 } | 41 } |
40 | 42 |
41 @Override | 43 @Override |
64 public void setOutsideFrameAccess(FrameAccess outsideFrameAccess) { | 66 public void setOutsideFrameAccess(FrameAccess outsideFrameAccess) { |
65 this.outsideFrameAccess = outsideFrameAccess; | 67 this.outsideFrameAccess = outsideFrameAccess; |
66 } | 68 } |
67 | 69 |
68 @Override | 70 @Override |
69 public void inline() { | 71 public void forceInlining() { |
72 inliningForced = true; | |
70 } | 73 } |
71 | 74 |
72 @Override | 75 @Override |
73 public CallTarget getSplitCallTarget() { | 76 public CallTarget getSplitCallTarget() { |
74 return null; | 77 return null; |
78 public boolean split() { | 81 public boolean split() { |
79 return false; | 82 return false; |
80 } | 83 } |
81 | 84 |
82 @Override | 85 @Override |
86 public boolean isInlined() { | |
87 return false; | |
88 } | |
89 | |
90 @Override | |
83 public boolean isSplittable() { | 91 public boolean isSplittable() { |
84 return false; | 92 return false; |
85 } | 93 } |
86 | 94 |
87 @Override | 95 @Override |
88 public boolean isInlined() { | 96 public boolean isInliningForced() { |
89 return false; | 97 return inliningForced; |
90 } | 98 } |
91 | 99 |
92 @Override | 100 @Override |
93 public boolean isInlinable() { | 101 public boolean isInlinable() { |
94 return false; | 102 return false; |