| #! /bin/sh |
| |
| # set -x |
| |
| : ${LN_S:="ln -s"} |
| |
| # rm -f Makefile Makefile.md README.md qtmd.h qtmdb.s qtmdc.c qtmds.s configuration |
| rm -f qtmdc.c qtmds.s configuration |
| |
| case $1 in |
| axp*) |
| : "DEC AXP" |
| case $1 in |
| axp-osf1*) |
| : "Compile using /bin/cc under OSF 1.x." |
| # ${LN_S} md/axp.1.Makefile Makefile.md |
| ;; |
| axp-osf2*) |
| : "Compile using /bin/cc under OSF 2.x." |
| # ${LN_S} md/axp.1.Makefile Makefile.md |
| ;; |
| *) |
| : "Compile using GNU CC." |
| # ${LN_S} md/axp.Makefile Makefile.md |
| ;; |
| esac |
| |
| # ${LN_S} md/axp.h qtmd.h |
| ${LN_S} md/axp.c qtmdc.c |
| ${LN_S} md/axp.s qtmds.s |
| # ${LN_S} md/axp_b.s qtmdb.s |
| # ${LN_S} md/axp.README README.md |
| iter_init=1000000000 |
| iter_runone=10000000 |
| iter_blockint=10000000 |
| iter_blockfloat=10000000 |
| iter_vainit0=10000000 |
| iter_vainit2=10000000 |
| iter_vainit4=10000000 |
| iter_vainit8=10000000 |
| iter_vastart0=10000000 |
| iter_vastart2=10000000 |
| iter_vastart4=10000000 |
| iter_vastart8=10000000 |
| iter_bench_call_reg=10000000 |
| iter_bench_call_imm=10000000 |
| iter_bench_add=100000000 |
| iter_bench_load=100000000 |
| ;; |
| |
| hppa*) |
| : "HP's PA-RISC 1.1 processors." |
| |
| case $1 in |
| hppa-cnx-spp*) |
| : "Convex SPP (PA-RISC 1.1 processors)." |
| # ${LN_S} md/hppa-cnx.Makefile Makefile.md |
| ;; |
| *) |
| # ${LN_S} md/hppa.Makefile Makefile.md |
| ;; |
| esac |
| |
| # ${LN_S} md/hppa.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| ${LN_S} md/hppa.s qtmds.s |
| # ${LN_S} md/hppa_b.s qtmdb.s |
| iter_init=10000000 |
| iter_runone=1000000 |
| iter_blockint=1000000 |
| iter_blockfloat=1000000 |
| iter_vainit0=1000000 |
| iter_vainit2=1000000 |
| iter_vainit4=1000000 |
| iter_vainit8=1000000 |
| iter_vastart0=1000000 |
| iter_vastart2=1000000 |
| iter_vastart4=1000000 |
| iter_vastart8=1000000 |
| iter_bench_call_reg=10000000 |
| iter_bench_call_imm=10000000 |
| iter_bench_add=100000000 |
| iter_bench_load=100000000 |
| ;; |
| |
| x86_64*) |
| case $1 in |
| iX86-ss*) |
| : "Assembler comments '//'" |
| sed 's/\/\*/\/\//' < md/i386_64.s > qtmds.s |
| ;; |
| |
| *) |
| ${LN_S} md/iX86_64.s qtmds.s |
| ;; |
| esac |
| : "Intel X386 64-bit and compatibles" |
| # ${LN_S} md/null.c qtmdc.c |
| iter_init=10000000 |
| iter_runone=1000000 |
| iter_blockint=1000000 |
| iter_blockfloat=1000000 |
| iter_vainit0=1000000 |
| iter_vainit2=1000000 |
| iter_vainit4=1000000 |
| iter_vainit8=1000000 |
| iter_vastart0=1000000 |
| iter_vastart2=1000000 |
| iter_vastart4=1000000 |
| iter_vastart8=1000000 |
| iter_bench_call_reg=1000000 |
| iter_bench_call_imm=1000000 |
| iter_bench_add=100000000 |
| iter_bench_load=10000000 |
| ;; |
| |
| iX86*) |
| case $1 in |
| iX86-ss*) |
| : "Assembler comments '//'" |
| sed 's/\/\*/\/\//' < md/i386.s > qtmds.s |
| # sed 's/\/\*/\/\//' < md/i386_b.s > qtmdb.s |
| ;; |
| |
| *) |
| ${LN_S} md/i386.s qtmds.s |
| # ${LN_S} md/i386_b.s qtmdb.s |
| ;; |
| esac |
| : "Intel 80386 and compatibles (not '286...)" |
| # ${LN_S} md/default.Makefile Makefile.md |
| # ${LN_S} md/i386.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| # ${LN_S} md/i386.README README.md |
| iter_init=10000000 |
| iter_runone=1000000 |
| iter_blockint=1000000 |
| iter_blockfloat=1000000 |
| iter_vainit0=1000000 |
| iter_vainit2=1000000 |
| iter_vainit4=1000000 |
| iter_vainit8=1000000 |
| iter_vastart0=1000000 |
| iter_vastart2=1000000 |
| iter_vastart4=1000000 |
| iter_vastart8=1000000 |
| iter_bench_call_reg=1000000 |
| iter_bench_call_imm=1000000 |
| iter_bench_add=100000000 |
| iter_bench_load=10000000 |
| ;; |
| |
| |
| m68k) |
| : "Motorola 68000 family -- incomplete!" |
| # ${LN_S} md/default.Makefile Makefile.md |
| # ${LN_S} md/m68k.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| ${LN_S} md/m68k.s qtmds.s |
| # ${LN_S} md/m68k_b.s qtmdb.s |
| # ${LN_S} md/null.README README.md |
| ;; |
| |
| m88k) |
| : "Motorola 88000 family" |
| # ${LN_S} md/m88k.Makefile Makefile.md |
| # ${LN_S} md/m88k.h qtmd.h |
| ${LN_S} md/m88k.c qtmdc.c |
| ${LN_S} md/m88k.s qtmds.s |
| # ${LN_S} md/m88k_b.s qtmdb.s |
| # ${LN_S} md/null.README README.md |
| iter_init=1000000 |
| iter_runone=100000 |
| iter_blockint=100000 |
| iter_blockfloat=100000 |
| iter_vainit0=100000 |
| iter_vainit2=100000 |
| iter_vainit4=100000 |
| iter_vainit8=100000 |
| iter_vastart0=100000 |
| iter_vastart2=100000 |
| iter_vastart4=100000 |
| iter_vastart8=100000 |
| iter_bench_call_reg=100000000 |
| iter_bench_call_imm=100000000 |
| iter_bench_add=1000000000 |
| iter_bench_load=100000000 |
| ;; |
| |
| mips*) |
| : "MIPS R2000 and R3000." |
| |
| case $1 in |
| mips-irix5*) |
| : "Silicon Graphics Irix with dynamic linking" |
| : "Use mips for irix4." |
| ${LN_S} md/mips-irix5.s qtmds.s |
| ;; |
| *) |
| ${LN_S} md/mips.s qtmds.s |
| ;; |
| esac |
| |
| # ${LN_S} md/default.Makefile Makefile.md |
| # ${LN_S} md/mips.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| # ${LN_S} md/mips_b.s qtmdb.s |
| # ${LN_S} md/null.README README.md |
| iter_init=10000000 |
| iter_runone=10000000 |
| iter_blockint=10000000 |
| iter_blockfloat=10000000 |
| iter_vainit0=1000000 |
| iter_vainit2=1000000 |
| iter_vainit4=1000000 |
| iter_vainit8=1000000 |
| iter_vastart0=1000000 |
| iter_vastart2=1000000 |
| iter_vastart4=1000000 |
| iter_vastart8=1000000 |
| iter_bench_call_reg=100000000 |
| iter_bench_call_imm=100000000 |
| iter_bench_add=1000000000 |
| iter_bench_load=100000000 |
| ;; |
| |
| sparc*) |
| : "SPARC processors" |
| case $1 in |
| sparc-os2*) |
| sed 's/_qt_/qt_/' md/sparc.s > qtmds.s |
| # sed 's/_b_/b_/' md/sparc_b.s > qtmdb.s |
| # ${LN_S} md/solaris.README README.md |
| ;; |
| *) |
| ${LN_S} md/sparc.s qtmds.s |
| # ${LN_S} md/sparc_b.s qtmdb.s |
| # ${LN_S} md/null.README README.md |
| ;; |
| esac |
| |
| ${LN_S} md/default.Makefile Makefile.md |
| # ${LN_S} md/sparc.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| iter_init=10000000 |
| iter_runone=1000000 |
| iter_blockint=1000000 |
| iter_blockfloat=1000000 |
| iter_vainit0=1000000 |
| iter_vainit2=1000000 |
| iter_vainit4=1000000 |
| iter_vainit8=1000000 |
| iter_vastart0=1000000 |
| iter_vastart2=1000000 |
| iter_vastart4=1000000 |
| iter_vastart8=1000000 |
| iter_bench_call_reg=10000000 |
| iter_bench_call_imm=10000000 |
| iter_bench_add=100000000 |
| iter_bench_load=100000000 |
| ;; |
| |
| vax*) |
| : "DEC VAX processors." |
| # ${LN_S} md/default.Makefile Makefile.md |
| # ${LN_S} md/vax.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| ${LN_S} md/vax.s qtmds.s |
| # ${LN_S} md/vax_b.s qtmdb.s |
| # ${LN_S} md/null.README README.md |
| iter_init=1000000 |
| iter_runone=100000 |
| iter_blockint=100000 |
| iter_blockfloat=100000 |
| iter_vainit0=100000 |
| iter_vainit2=100000 |
| iter_vainit4=100000 |
| iter_vainit8=100000 |
| iter_vastart0=100000 |
| iter_vastart2=100000 |
| iter_vastart4=100000 |
| iter_vastart8=100000 |
| iter_bench_call_reg=10000000 |
| iter_bench_call_imm=10000000 |
| iter_bench_add=10000000 |
| iter_bench_load=1000000 |
| ;; |
| |
| ksr1) |
| : "Kendall Square Research model KSR-1." |
| : "Varargs is not currently supported." |
| # ${LN_S} md/ksr1.Makefile Makefile.md |
| # ${LN_S} md/ksr1.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| ${LN_S} md/ksr1.s qtmds.s |
| # ${LN_S} md/ksr1_b.s qtmdb.s |
| # ${LN_S} md/null.README README.md |
| iter_init=1000000 |
| iter_runone=100000 |
| iter_blockint=100000 |
| iter_blockfloat=100000 |
| iter_vainit0=100000 |
| iter_vainit2=100000 |
| iter_vainit4=100000 |
| iter_vainit8=100000 |
| iter_vastart0=100000 |
| iter_vastart2=100000 |
| iter_vastart4=100000 |
| iter_vastart8=100000 |
| iter_bench_call_reg=10000000 |
| iter_bench_call_imm=10000000 |
| iter_bench_add=10000000 |
| iter_bench_load=1000000 |
| ;; |
| |
| powerpc*) |
| : "PowerPC IBM/Motorola processors." |
| |
| case $1 in |
| powerpc-apple-macosx*) |
| : "PowerPC using Mach Application Binary Interface" |
| : "NOTICE: Darwin assembler syntax is used:" |
| : " (i.e. registers are named rx not %rx)" |
| ${LN_S} md/default.Makefile Makefile.md |
| # ${LN_S} md/powerpc_mach.h qtmd.h |
| ${LN_S} md/powerpc_mach.s qtmds.s |
| ;; |
| powerpc-linux*) |
| : "PowerPC using System V Application Binary Interface" |
| : " (e.g. LinuxPPC)" |
| : "Use powerpc-darwin for MacOS X and other systems based on Mac |
| h ABI" |
| # ${LN_S} md/powerpc_sys5.h qtmd.h |
| ${LN_S} md/powerpc_sys5.s qtmds.s |
| ;; |
| *) |
| echo "Unknown configuration" |
| echo "See md/powerpc.README for documentation" |
| echo "Use powerpc-darwin for MacOS X and other systems based on |
| Mach ABI" |
| echo "Use powerpc-linux for Linux and other systems based on Sys |
| tem V ABI" |
| exit 1 |
| ;; |
| |
| esac |
| |
| ${LN_S} md/powerpc.c qtmdc.c |
| ${LN_S} md/powerpc.README README.md |
| ;; |
| |
| |
| pthreads*) |
| : Posix thread support rather than Quick threads. |
| # ${LN_S} md/hppa.h qtmd.h |
| # ${LN_S} md/null.c qtmdc.c |
| # ${LN_S} md/null.s qtmds.s |
| # ${LN_S} md/hppa_b.s qtmdb.s |
| # cp md/pthreads.Makefile Makefile |
| exit 0 |
| ;; |
| |
| clean) |
| : Deconfigure |
| exit 0 |
| ;; |
| |
| *) |
| echo "Unknown configuration" |
| exit 1 |
| ;; |
| esac |
| |
| # cat Makefile.md Makefile.base > Makefile |
| |
| echo set config_machine=$1 >> configuration |
| echo set config_init=$iter_init >> configuration |
| echo set config_runone=$iter_runone >> configuration |
| echo set config_blockint=$iter_blockint >> configuration |
| echo set config_blockfloat=$iter_blockfloat >> configuration |
| echo set config_vainit0=$iter_vainit0 >> configuration |
| echo set config_vainit2=$iter_vainit2 >> configuration |
| echo set config_vainit4=$iter_vainit4 >> configuration |
| echo set config_vainit8=$iter_vainit8 >> configuration |
| echo set config_vastart0=$iter_vastart0 >> configuration |
| echo set config_vastart2=$iter_vastart2 >> configuration |
| echo set config_vastart4=$iter_vastart4 >> configuration |
| echo set config_vastart8=$iter_vastart8 >> configuration |
| echo set config_bcall_reg=$iter_bench_call_reg >> configuration |
| echo set config_bcall_imm=$iter_bench_call_imm >> configuration |
| echo set config_b_add=$iter_bench_add >> configuration |
| echo set config_b_load=$iter_bench_load >> configuration |