Mercurial > hg > truffle
comparison graal/com.oracle.max.cri/src/com/oracle/max/cri/ci/CiFrame.java @ 5129:51111665eda6
Support for recording a leaf graph id for each deoptimization point in the debug info.
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Wed, 21 Mar 2012 10:47:02 +0100 |
parents | a03f3fd16b22 |
children | 2fac5abf145f |
comparison
equal
deleted
inserted
replaced
5128:e2da6471a9a1 | 5129:51111665eda6 |
---|---|
63 /** | 63 /** |
64 * The number of locks in the values array. | 64 * The number of locks in the values array. |
65 */ | 65 */ |
66 public final int numLocks; | 66 public final int numLocks; |
67 | 67 |
68 public final long leafGraphId; | |
69 | |
68 public final boolean rethrowException; | 70 public final boolean rethrowException; |
69 | 71 |
70 public final boolean duringCall; | 72 public final boolean duringCall; |
71 | 73 |
72 /** | 74 /** |
79 * @param values the frame state {@link #values} | 81 * @param values the frame state {@link #values} |
80 * @param numLocals the number of local variables | 82 * @param numLocals the number of local variables |
81 * @param numStack the depth of the stack | 83 * @param numStack the depth of the stack |
82 * @param numLocks the number of locked objects | 84 * @param numLocks the number of locked objects |
83 */ | 85 */ |
84 public CiFrame(CiFrame caller, RiResolvedMethod method, int bci, boolean rethrowException, boolean duringCall, CiValue[] values, int numLocals, int numStack, int numLocks) { | 86 public CiFrame(CiFrame caller, RiResolvedMethod method, int bci, boolean rethrowException, boolean duringCall, CiValue[] values, int numLocals, int numStack, int numLocks, long leafGraphId) { |
85 super(caller, method, bci); | 87 super(caller, method, bci); |
86 assert values != null; | 88 assert values != null; |
87 this.rethrowException = rethrowException; | 89 this.rethrowException = rethrowException; |
90 this.duringCall = duringCall; | |
88 this.values = values; | 91 this.values = values; |
89 this.numLocks = numLocks; | |
90 this.numLocals = numLocals; | 92 this.numLocals = numLocals; |
91 this.numStack = numStack; | 93 this.numStack = numStack; |
92 this.duringCall = duringCall; | 94 this.numLocks = numLocks; |
95 this.leafGraphId = leafGraphId; | |
93 assert !rethrowException || numStack == 1 : "must have exception on top of the stack"; | 96 assert !rethrowException || numStack == 1 : "must have exception on top of the stack"; |
94 } | 97 } |
95 | 98 |
96 /** | 99 /** |
97 * Gets the value representing the specified local variable. | 100 * Gets the value representing the specified local variable. |