../llvm/configure --enable-optimized --disable-assertions
####
mkdir /home/llvm/ # Home directory for LLVM versions
cd /home/llvm/ # change directory to LLVM HOME
mkdir llvm-3.2.src/ # make directory for version
cd llvm-3.2.src/ # change directory for LLVM verson
# Creates the 'llvm' directory in /home/llvm/llvm-3.2.src/
# This gives the directory structure for the build process
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
cd llvm/tools # where to install clang
# Creates the 'clang' directory in /home/llvm/llvm-3.2.src/llvm/tools/
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
cd ../projects/ # where to install compiler-rt
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt
cd ..
mkdir build/
cd build/
## Update: added --enable-jit to next line to always enable
../llvm/configure --enable-optimized --disable-assertions --enable-jit
## Update: next line was missing 'make' first, then 'make check-all' to test
make
make check-all
### note: using clang: '/home/llvm/llvm-3.1.src/build/Release/bin/clang'
make update
/home/llvm/llvm-3.1.src/build# ./Release/bin/clang -v
clang version 3.2 (trunk 163314)
Target: i386-pc-linux-gnu
Thread model: posix
/home/llvm/llvm-3.1.src/build# make install
make -C runtime install-bytecode
make install
####
cd /home/pyr/PRODUCTS/perl/perllvm
email7:/home/pyr/PRODUCTS/perl/perllvm# clang -v
clang version 3.2 (trunk 163323)
Target: i386-pc-linux-gnu
Thread model: posix
tar -xf./perl-5.16.0.tar
cd perl-5.16.0
./Configure -des -Dprefix=/usr/opt/perllVm -Dusethreads -Dcc=clang -Dccflags='-O2'
make
make tests
make install
####
email7:/home/pyr/PRODUCTS/perl/perllvm# cat BrowserUK_991333.pl
#!perl -sw
use strict;
use 5.010;
use Time::HiRes qw[ time ];
no warnings 'recursion';
sub Ack {
my( $M, $N ) = @_;
return $N + 1 if $M == 0;
return Ack( $M - 1, 1 ) if $N == 0;
return Ack( $M - 1, Ack( $M, $N - 1 ) );
}
my $start = time;
say Ack( @ARGV );
say 'Took: ', time() - $start;
email7:/home/pyr/PRODUCTS/perl/perllvm# perl5.10.0 -sw BrowserUK_991333.pl 3 9
4093
Took: 15.1458311080933
email7:/home/pyr/PRODUCTS/perl/perllvm# perl5.16.0 -sw BrowserUK_991333.pl 3 9
4093
Took: 15.2425358295441
email7:/home/pyr/PRODUCTS/perl/perllvm# perllvm -sw BrowserUK_991333.pl 3 9
4093
Took: 14.7814569950104
email7:/home/pyr/Git/FB# time perl5.16.0 FBtest.plx
## Start: VSZ-8008_KB-0 RSS-5108_KB-0 BLOCK: 2048/8/2048 ( 1,000,000 )
...
## End: VSZ-50332 RSS-47468 Diff:42324|42360_KB-0 BLOCK: 2048
real 15m5.879s
user 14m24.102s
sys 0m38.442s
email7:/home/pyr/Git/FB# time perllvm FBtest.plx
## Start: VSZ-8008_KB-0 RSS-5108_KB-0 BLOCK: 2048/8/2048 ( 1,000,000 )
...
## End: VSZ-50332 RSS-47468 Diff:42324|42360_KB-0 BLOCK: 2048
real 15m33.238s
user 14m45.243s
sys 0m41.359s