Mercurial > hg > graal-compiler
comparison graal/com.oracle.truffle.api.test/src/com/oracle/truffle/api/test/FrameSlotTypeSpecializationTest.java @ 12405:139b84d713bc
Truffle API adjustments: Simplify frame handling. Introduce cast for MaterializedFrame objects.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Mon, 14 Oct 2013 23:28:10 +0200 |
parents | df1d665ca846 |
children | ac5b0f31f7a2 |
comparison
equal
deleted
inserted
replaced
12404:47eb670c1634 | 12405:139b84d713bc |
---|---|
113 | 113 |
114 @Override | 114 @Override |
115 Object execute(VirtualFrame frame) { | 115 Object execute(VirtualFrame frame) { |
116 Object o = value.execute(frame); | 116 Object o = value.execute(frame); |
117 if (o instanceof Integer) { | 117 if (o instanceof Integer) { |
118 try { | 118 frame.setInt(slot, (Integer) o); |
119 frame.setInt(slot, (Integer) o); | 119 } else { |
120 } catch (FrameSlotTypeException e) { | 120 frame.setObject(slot, o); |
121 // fall through | 121 this.replace(new ObjectAssignLocal(slot, value)); |
122 } | |
123 } | 122 } |
124 frame.setObject(slot, o); | |
125 this.replace(new ObjectAssignLocal(slot, value)); | |
126 return null; | 123 return null; |
127 } | 124 } |
128 } | 125 } |
129 | 126 |
130 class ObjectAssignLocal extends FrameSlotNode { | 127 class ObjectAssignLocal extends FrameSlotNode { |