[pypy-svn] r16766 - in pypy/release/0.7.x/pypy: doc translator
cfbolz at codespeak.net
cfbolz at codespeak.net
Sat Aug 27 15:03:04 CEST 2005
Author: cfbolz
Date: Sat Aug 27 15:03:03 2005
New Revision: 16766
Modified:
pypy/release/0.7.x/pypy/doc/getting-started.txt
pypy/release/0.7.x/pypy/translator/translator.py
Log:
(cfbolz, ericvrp
fixed printing of llvm code
Modified: pypy/release/0.7.x/pypy/doc/getting-started.txt
==============================================================================
--- pypy/release/0.7.x/pypy/doc/getting-started.txt (original)
+++ pypy/release/0.7.x/pypy/doc/getting-started.txt Sat Aug 27 15:03:03 2005
@@ -360,10 +360,17 @@
return type and the arguments of the entry function has to be an int, float or
bool. To try it do::
+ >>> t = Translator(test.my_gcd)
+ >>> a = t.annotate([int, int])
+ >>> a.simplify()
+ >>> t.specialize()
>>> print t.llvm()
+
+ <... really huge amount of LLVM code ...>
+
>>> f = t.llvmcompile(optimize=True)
- >>> f(28)
- 1
+ >>> f(15, 10)
+ 5
In contrast to the C backend this works only for fully annotated and
specialized graphs.
Modified: pypy/release/0.7.x/pypy/translator/translator.py
==============================================================================
--- pypy/release/0.7.x/pypy/translator/translator.py (original)
+++ pypy/release/0.7.x/pypy/translator/translator.py Sat Aug 27 15:03:03 2005
@@ -202,9 +202,12 @@
from pypy.translator.llvm.genllvm import GenLLVM
if self.annotator is None:
raise ValueError, "function has to be annotated."
- gen = GenLLVM(translator)
+ gen = GenLLVM(self)
filename = gen.gen_llvm_source()
- return filename
+ f = open(filename, "r")
+ result = f.read()
+ f.close()
+ return result
def generatecode(self, gencls, input_arg_types, func):
if input_arg_types is None:
More information about the Pypy-commit
mailing list