[Soot-list] Problems running Paddle
Tillmann
tirunkel at informatik.uni-bremen.de
Fri Nov 11 09:10:31 EST 2011
Hi Hamid,
thanks again!
the resulting libjeddbuddy seems to have the same problems as my first
one (Exception below [2]). The System.loadLibrary()-Funktion works
without exceptions, so i assume that the 64bit-library is properly
loaded (if i try to load the 32bit precompiled one, i've got an
appropriate exception).
After that i've tried to work on an other project which is smaller
(about 100 LOC). The exception i got is below [1] .
Maybe there is a problem in my Soot-Lifecycle, but the invocation of the
paddle-framework is exactly positioned where i former invoked spark or
the CHA-Analysis (after PackManager.v().runPacks();).
[1]
Exception in thread "main" java.lang.RuntimeException: no object with
number 6
at soot.util.ArrayNumberer.get(ArrayNumberer.java:56)
at soot.util.JeddNumberer.get(JeddNumberer.java:37)
at
jedd.internal.RelationContainer$MultiRelationIterator.curCubeToObject(RelationContainer.java:229)
at
jedd.internal.RelationContainer$MultiRelationIterator.newCube(RelationContainer.java:225)
at
jedd.internal.RelationContainer$MultiRelationIterator.<init>(RelationContainer.java:200)
at jedd.internal.RelationContainer.iterator(RelationContainer.java:184)
at
soot.jimple.paddle.queue.Rsrcm_stmt_kind_tgtmBDD$1.next(Rsrcm_stmt_kind_tgtmBDD.java:79)
at
soot.jimple.paddle.TradCallEdgeHandler.update(TradCallEdgeHandler.java:47)
at
soot.jimple.paddle.DependencyManager.update(DependencyManager.java:76)
at soot.jimple.paddle.OFCGScene.solve(OFCGScene.java:168)
at soot.jimple.paddle.OFCGConfig.solve(OFCGConfig.java:35)
at soot.jimple.paddle.PaddleScene.solve(PaddleScene.java:1390)
at
soot.jimple.paddle.PaddleTransformer.solve(PaddleTransformer.java:99)
[2]
Exception in thread "main" java.lang.RuntimeException: Value 16384 was
too large in domain soot.jimple.paddle.bdddomains.SigDomain!
at jedd.internal.Domain.setBits(Domain.java:62)
at jedd.internal.Jedd.literal(Jedd.java:158)
at soot.jimple.paddle.BDDVirtualCalls.<init>(BDDVirtualCalls.java:38)
at soot.jimple.paddle.BDDFactory.VirtualCalls(BDDFactory.java:199)
at soot.jimple.paddle.OFCGScene.build(OFCGScene.java:241)
at soot.jimple.paddle.OFCGScene.setup(OFCGScene.java:91)
at soot.jimple.paddle.OFCGConfig.setup(OFCGConfig.java:30)
at soot.jimple.paddle.PaddleScene.setup(PaddleScene.java:1321)
at
soot.jimple.paddle.PaddleTransformer.setup(PaddleTransformer.java:84)
at
de.tirunkel.da.analysis.AnalysisAggregator.run(AnalysisAggregator.java:297)
at de.tirunkel.da.main.Controller.main(Controller.java:149)
at de.tirunkel.da.main.SimulatedStart.main(SimulatedStart.java:29)
Am 11.11.2011 14:06, schrieb Hamid A. Toussi:
> Hello Tillman,
>
> I have found my original script that build the libjeddbuddy.so. In
> particular, we don't need any C++ file so using GNU C++ compiler (g++)
> is unnecessary. The following should be straightforward. You don't
> need to generate the wrappers since they are already in the jedd
> distribution.
>
> You don't need to use swig as long as you stick with the current
> jedd's interface since the wrappers are already generated.
>
> buddy_cfiles="bddio.c bddop.c bvec.c cache.c fdd.c imatrix.c kernel.c \
> pairs.c prime.c reorder.c tree.c"
>
> jedd_files="jedd-0.4/runtime/generated/jbuddy_wrap.c
> jedd-0.4/runtime/csrc/jbuddy.c"
>
>
> gcc -c -fPIC -Wall -g3 $buddy_cfiles $jedd_files -I./
> -Ijedd-0.4/runtime/generated -Ijedd-0.4/runtime/csrc
> -I/home/hamid/ibm-java-x86_64-60/include
> -I/home/hamid/ibm-java-x86_64-60/include/linux
>
>
> objs="bddio.o bddop.o bvec.o cache.o fdd.o imatrix.o kernel.o \
> pairs.o prime.o reorder.o tree.o jbuddy_wrap.o jbuddy.o"
> ld -G $objs -o libjeddbuddy.so
More information about the Soot-list
mailing list