projects
/
org.ibex.classgen.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
af3a087
)
stack overflow checking
author
brian
<brian@brianweb.net>
Sun, 3 Jul 2005 20:35:55 +0000
(20:35 +0000)
committer
brian
<brian@brianweb.net>
Sun, 3 Jul 2005 20:35:55 +0000
(20:35 +0000)
darcs-hash:
20050703203555
-24bed-
6830336c6205eb9ab4208f81e216f34099de3424
.gz
src/org/ibex/classgen/JSSA.java
patch
|
blob
|
history
diff --git
a/src/org/ibex/classgen/JSSA.java
b/src/org/ibex/classgen/JSSA.java
index
92d31f0
..
c16f5e6
100644
(file)
--- a/
src/org/ibex/classgen/JSSA.java
+++ b/
src/org/ibex/classgen/JSSA.java
@@
-73,8
+73,14
@@
public class JSSA extends MethodGen implements CGConst {
/** JVM stack pointer */
private int sp = 0;
/** JVM stack pointer */
private int sp = 0;
- private Expr push(Expr e) { return stack[sp++] = e; }
- private Expr pop() { return stack[--sp]; }
+ private Expr push(Expr e) {
+ if(sp == stack.length-1) throw new IllegalStateException("stack overflow");
+ return stack[sp++] = e;
+ }
+ private Expr pop() {
+ if(sp == 0) throw new IllegalStateException("stack underflow");
+ return stack[--sp];
+ }
// SSA-node classes /////////////////////////////////////////////////////////////////////////////////////////
// SSA-node classes /////////////////////////////////////////////////////////////////////////////////////////