| Index: crosstest/runtests.sh
|
| diff --git a/crosstest/runtests.sh b/crosstest/runtests.sh
|
| index c76cdefd56036bdf105b3d1812f8fd50d04fae94..a8b05033563fcf925608bffde5da9698d38f04ec 100755
|
| --- a/crosstest/runtests.sh
|
| +++ b/crosstest/runtests.sh
|
| @@ -10,140 +10,164 @@ set -eux
|
| PATH="../pydir:${PATH}"
|
| OPTLEVELS="m1 2"
|
| ATTRIBUTES="sse2 sse4.1"
|
| +SANDBOX="0 1"
|
| OUTDIR=Output
|
| # Clean the output directory to avoid reusing stale results.
|
| rm -rf "${OUTDIR}"
|
| mkdir -p "${OUTDIR}"
|
|
|
| -for optlevel in ${OPTLEVELS} ; do
|
| +for sb in ${SANDBOX} ; do
|
| + for optlevel in ${OPTLEVELS} ; do
|
| for attribute in ${ATTRIBUTES} ; do
|
|
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=simple_loop.c \
|
| - --driver=simple_loop_main.c \
|
| - --output=simple_loop_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=mem_intrin.cpp \
|
| - --driver=mem_intrin_main.cpp \
|
| - --output=mem_intrin_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_arith.cpp \
|
| - --test=test_arith_frem.ll \
|
| - --test=test_arith_sqrt.ll \
|
| - --driver=test_arith_main.cpp \
|
| - --output=test_arith_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_bitmanip.cpp --test=test_bitmanip_intrin.ll \
|
| - --driver=test_bitmanip_main.cpp \
|
| - --output=test_bitmanip_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_calling_conv.cpp \
|
| - --driver=test_calling_conv_main.cpp \
|
| - --output=test_calling_conv_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_cast.cpp --test=test_cast_to_u1.ll \
|
| - --test=test_cast_vectors.ll \
|
| - --driver=test_cast_main.cpp \
|
| - --output=test_cast_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_fcmp.pnacl.ll \
|
| - --driver=test_fcmp_main.cpp \
|
| - --output=test_fcmp_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_global.cpp \
|
| - --driver=test_global_main.cpp \
|
| - --output=test_global_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_icmp.cpp --test=test_icmp_i1vec.ll \
|
| - --driver=test_icmp_main.cpp \
|
| - --output=test_icmp_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_select.ll \
|
| - --driver=test_select_main.cpp \
|
| - --output=test_select_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_stacksave.c \
|
| - --driver=test_stacksave_main.c \
|
| - --output=test_stacksave_O${optlevel}_${attribute}
|
| -
|
| - # Compile the non-subzero object files straight from source
|
| - # since the native LLVM backend does not understand how to
|
| - # lower NaCl-specific intrinsics.
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ \
|
| - --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_sync_atomic.cpp \
|
| - --crosstest-bitcode=0 \
|
| - --driver=test_sync_atomic_main.cpp \
|
| - --output=test_sync_atomic_O${optlevel}_${attribute}
|
| -
|
| - crosstest.py -O${optlevel} --mattr ${attribute} \
|
| - --prefix=Subzero_ --target=x8632 \
|
| - --dir="${OUTDIR}" \
|
| - --test=test_vector_ops.ll \
|
| - --driver=test_vector_ops_main.cpp \
|
| - --output=test_vector_ops_O${optlevel}_${attribute}
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=simple_loop.c \
|
| + --driver=simple_loop_main.c \
|
| + --output=simple_loop_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=mem_intrin.cpp \
|
| + --driver=mem_intrin_main.cpp \
|
| + --output=mem_intrin_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_arith.cpp \
|
| + --test=test_arith_frem.ll \
|
| + --test=test_arith_sqrt.ll \
|
| + --driver=test_arith_main.cpp \
|
| + --output=test_arith_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_bitmanip.cpp --test=test_bitmanip_intrin.ll \
|
| + --driver=test_bitmanip_main.cpp \
|
| + --output=test_bitmanip_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_calling_conv.cpp \
|
| + --driver=test_calling_conv_main.cpp \
|
| + --output=test_calling_conv_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_cast.cpp --test=test_cast_to_u1.ll \
|
| + --test=test_cast_vectors.ll \
|
| + --driver=test_cast_main.cpp \
|
| + --output=test_cast_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_fcmp.pnacl.ll \
|
| + --driver=test_fcmp_main.cpp \
|
| + --output=test_fcmp_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_global.cpp \
|
| + --driver=test_global_main.cpp \
|
| + --output=test_global_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_icmp.cpp --test=test_icmp_i1vec.ll \
|
| + --driver=test_icmp_main.cpp \
|
| + --output=test_icmp_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_select.ll \
|
| + --driver=test_select_main.cpp \
|
| + --output=test_select_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_stacksave.c \
|
| + --driver=test_stacksave_main.c \
|
| + --output=test_stacksave_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + # Compile the non-subzero object files straight from source
|
| + # since the native LLVM backend does not understand how to
|
| + # lower NaCl-specific intrinsics.
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_sync_atomic.cpp \
|
| + --crosstest-bitcode=0 \
|
| + --driver=test_sync_atomic_main.cpp \
|
| + --output=test_sync_atomic_sb${sb}_O${optlevel}_${attribute}
|
| +
|
| + crosstest.py -O${optlevel} --mattr ${attribute} \
|
| + --prefix=Subzero_ \
|
| + --target=x8632 \
|
| + --sandbox=${sb} \
|
| + --dir="${OUTDIR}" \
|
| + --test=test_vector_ops.ll \
|
| + --driver=test_vector_ops_main.cpp \
|
| + --output=test_vector_ops_sb${sb}_O${optlevel}_${attribute}
|
|
|
| done
|
| + done
|
| done
|
|
|
| -for optlevel in ${OPTLEVELS} ; do
|
| +for sb in ${SANDBOX} ; do
|
| + if [ $sb = 0 ] ; then
|
| + PREFIX=
|
| + else
|
| + PREFIX="../../../../run.py -q"
|
| + fi
|
| + for optlevel in ${OPTLEVELS} ; do
|
| for attribute in ${ATTRIBUTES}; do
|
| - "${OUTDIR}"/simple_loop_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/mem_intrin_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_arith_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_bitmanip_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_calling_conv_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_cast_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_fcmp_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_global_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_icmp_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_select_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_stacksave_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_sync_atomic_O${optlevel}_${attribute}
|
| - "${OUTDIR}"/test_vector_ops_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/simple_loop_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/mem_intrin_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_arith_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_bitmanip_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_calling_conv_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_cast_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_fcmp_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_global_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_icmp_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_select_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_stacksave_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_sync_atomic_sb${sb}_O${optlevel}_${attribute}
|
| + ${PREFIX} "${OUTDIR}"/test_vector_ops_sb${sb}_O${optlevel}_${attribute}
|
| done
|
| + done
|
| done
|
|
|