From 6aba69051063a892780bd2ce11f03e0917c670af Mon Sep 17 00:00:00 2001 From: chiba Date: Sat, 12 Nov 2011 16:06:24 +0000 Subject: added javassist.bytecode.analysis.ControlFlow git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@601 30ef5769-5b8d-40dd-aea6-55b5d6557bb3 --- .../javassist/bytecode/analysis/ControlFlow.java | 7 ++++++ .../bytecode/analysis/DomTreePrinter.java | 26 ++++++++++++++++++++++ 2 files changed, 33 insertions(+) (limited to 'src') diff --git a/src/main/javassist/bytecode/analysis/ControlFlow.java b/src/main/javassist/bytecode/analysis/ControlFlow.java index 5b3027aa..3f50182a 100644 --- a/src/main/javassist/bytecode/analysis/ControlFlow.java +++ b/src/main/javassist/bytecode/analysis/ControlFlow.java @@ -175,6 +175,13 @@ public class ControlFlow { * we deal with JSR as a non-branch instruction. */ public static class Block extends BasicBlock { + /** + * A field that can be freely used for storing extra data. + * A client program of this control-flow analyzer can append + * an additional attribute to a Block object. + */ + public Object clientData = null; + int index; MethodInfo method; Block[] entrances; diff --git a/src/test/test/javassist/bytecode/analysis/DomTreePrinter.java b/src/test/test/javassist/bytecode/analysis/DomTreePrinter.java index f5418c50..7c2c8bdd 100644 --- a/src/test/test/javassist/bytecode/analysis/DomTreePrinter.java +++ b/src/test/test/javassist/bytecode/analysis/DomTreePrinter.java @@ -24,4 +24,30 @@ public class DomTreePrinter { } return array[0]; } + + public int dummy2(int n, int[] array) { + int i = 0; + while (i < n) { + if (array[i] > 0) + break; + if (array[i++] > -1) + continue; + array[0]++; + array[1]++; + } + return array[0]; + } + + public int dummy3(int n, int[] array) { + int i = 0; + do { + if (array[i] > 0) + break; + if (array[i++] > -1) + continue; + array[0]++; + array[1]++; + } while (i < n); + return array[0]; + } } -- cgit v1.2.3