1
我很樂意使用llvm來優化我的python代碼。我閱讀了一些教程,但我還沒有想出如何,讓我們說,從Python代碼導出類對象到llvm。我學會了如何在llvm-py中創建一個函數,但是類並不是我的力量。如何將python中的Class對象轉換爲llvm?
這裏是我想在LLVM代碼來創建類的實例:
class Char():
def __init__(self,c):
self.c=c
def next(self,line,p):
try:
return self.c==line[p]
except:
return False
def next_rep(self,line,p):
try:
return self.c==line[p],p
except:
return False,p
我會感謝任何幫助!
一個粗略的調查表明,llvm-py只是一個用一些python nicet創建llvm代碼的工具。它不是一個Python編譯器。也許看看[pypy](http://pypy.org/),它有一個llvm後端。 [This fork](https://bitbucket.org/mjacob/pypy-llvm/src/bbae9b5448ef/pypy/translator/llvm/genllvm.py)似乎仍在積極開發之中,並且有一些代碼。 – 2012-07-10 13:16:18
感謝您的建議,但事情是,我正在生成確定性有限自動機,我希望這些自動機更快。所以我認爲在llvm bitcode中生成它們會很好。我想在Python代碼中使用它們...所以,也許我應該問 - 我如何使用llvm-py來重寫llvm位代碼。 – Jendas 2012-07-10 13:47:21
爲什麼llvm?瓶頸在哪裏? – 2012-07-10 14:26:58