[pypy-svn] r16477 - pypy/dist/pypy/translator/llvm2
ericvrp at codespeak.net
ericvrp at codespeak.net
Thu Aug 25 13:57:56 CEST 2005
Author: ericvrp
Date: Thu Aug 25 13:57:56 2005
New Revision: 16477
Modified:
pypy/dist/pypy/translator/llvm2/genllvm.py
Log:
fixed cconv for declares
Modified: pypy/dist/pypy/translator/llvm2/genllvm.py
==============================================================================
--- pypy/dist/pypy/translator/llvm2/genllvm.py (original)
+++ pypy/dist/pypy/translator/llvm2/genllvm.py Thu Aug 25 13:57:56 2005
@@ -57,9 +57,8 @@
ll_lines.append(line)
#patch calls to function that we just declared fastcc
- ll_lines2 = []
+ ll_lines2, calltag, declaretag = [], 'call ', 'declare '
for line in ll_lines:
- calltag = 'call '
i = line.find(calltag)
if i >= 0:
cconv = 'ccc'
@@ -68,6 +67,13 @@
cconv = 'fastcc'
break
line = "%scall %s %s" % (line[:i], cconv, line[i+len(calltag):])
+ if line[:len(declaretag)] == declaretag:
+ cconv = 'ccc'
+ for funcname in funcnames.keys():
+ if line.find(funcname) >= 0:
+ cconv = 'fastcc'
+ break
+ line = "declare %s %s" % (cconv, line[len(declaretag):])
ll_lines2.append(line)
llcode = '\n'.join(ll_lines2)
More information about the Pypy-commit
mailing list