[pypy-svn] r35942 - pypy/dist/pypy/translator/llvm
mwh at codespeak.net
mwh at codespeak.net
Thu Dec 21 19:22:29 CET 2006
Author: mwh
Date: Thu Dec 21 19:22:28 2006
New Revision: 35942
Modified:
pypy/dist/pypy/translator/llvm/buildllvm.py
Log:
a quick hack job to enable compiling llvm via c using gcc's profile directed
optimization. is it possible to test this stuff some how?
Modified: pypy/dist/pypy/translator/llvm/buildllvm.py
==============================================================================
--- pypy/dist/pypy/translator/llvm/buildllvm.py (original)
+++ pypy/dist/pypy/translator/llvm/buildllvm.py Thu Dec 21 19:22:28 2006
@@ -104,15 +104,28 @@
else:
cmds.append("llc %s.bc -march=c -f -o %s.c" % (b, b))
if exe_name:
- cmd = "gcc %s.c -c -O3 -pipe" % b
- if profile:
- cmd += ' -pg'
+ if genllvm.config.translation.profopt is not None:
+ cmd = "gcc -fprofile-generate %s.c -c -O3 -pipe -o %s.o" % (b, b)
+ cmds.append(cmd)
+ cmd = "gcc -fprofile-generate %s.o %s %s -lm -pipe -o %s_gen" % \
+ (b, gc_libs_path, gc_libs, exe_name)
+ cmds.append(cmd)
+ cmds.append("./%s_gen %s"%(exe_name, genllvm.config.translation.profopt))
+ cmds.append(cmd)
+ cmd = "gcc -fprofile-use %s.c -c -O3 -pipe -o %s.o" % (b, b)
+ cmds.append(cmd)
+ cmd = "gcc -fprofile-use %s.o %s %s -lm -pipe -o %s" % \
+ (b, gc_libs_path, gc_libs, exe_name)
else:
- cmd += ' -fomit-frame-pointer'
- cmds.append(cmd)
- cmd = "gcc %s.o %s %s -lm -pipe -o %s" % (b, gc_libs_path, gc_libs, exe_name)
- if profile:
- cmd += ' -pg'
+ cmd = "gcc %s.c -c -O3 -pipe" % b
+ if profile:
+ cmd += ' -pg'
+ else:
+ cmd += ' -fomit-frame-pointer'
+ cmds.append(cmd)
+ cmd = "gcc %s.o %s %s -lm -pipe -o %s" % (b, gc_libs_path, gc_libs, exe_name)
+ if profile:
+ cmd += ' -pg'
cmds.append(cmd)
source_files.append("%s.c" % b)
More information about the Pypy-commit
mailing list