Commit 018f39ef authored by Anton Khirnov's avatar Anton Khirnov

FATE: add CPUFLAGS variable, mapping to -cpuflags avconv option.

parent 4138cd29
...@@ -75,10 +75,12 @@ meaning only while running the regression tests. ...@@ -75,10 +75,12 @@ meaning only while running the regression tests.
@item THREADS @item THREADS
Specify how many threads to use while running regression tests, it is Specify how many threads to use while running regression tests, it is
quite useful to detect thread-related regressions. quite useful to detect thread-related regressions.
@item CPUFLAGS
Specify a mask to be applied to autodetected CPU flags.
@end table @end table
@example @example
make V=1 SAMPLES=/var/fate/samples THREADS=2 fate make V=1 SAMPLES=/var/fate/samples THREADS=2 CPUFLAGS=mmx fate
@end example @end example
@chapter Automated Tests @chapter Automated Tests
......
...@@ -116,7 +116,7 @@ fate: $(FATE) ...@@ -116,7 +116,7 @@ fate: $(FATE)
$(FATE): avconv$(EXESUF) $(FATE_UTILS:%=tests/%$(HOSTEXESUF)) $(FATE): avconv$(EXESUF) $(FATE_UTILS:%=tests/%$(HOSTEXESUF))
@echo "TEST $(@:fate-%=%)" @echo "TEST $(@:fate-%=%)"
$(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' $(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' '$(CPUFLAGS)'
fate-list: fate-list:
@printf '%s\n' $(sort $(FATE)) @printf '%s\n' $(sort $(FATE))
......
...@@ -17,6 +17,7 @@ ref=${7:-"${base}/ref/fate/${test}"} ...@@ -17,6 +17,7 @@ ref=${7:-"${base}/ref/fate/${test}"}
fuzz=$8 fuzz=$8
threads=${9:-1} threads=${9:-1}
thread_type=${10:-frame+slice} thread_type=${10:-frame+slice}
cpuflags=${11:-all}
outdir="tests/data/fate" outdir="tests/data/fate"
outfile="${outdir}/${test}" outfile="${outdir}/${test}"
...@@ -50,7 +51,7 @@ run(){ ...@@ -50,7 +51,7 @@ run(){
} }
avconv(){ avconv(){
run avconv -nostats -threads $threads -thread_type $thread_type "$@" run avconv -nostats -threads $threads -thread_type $thread_type -cpuflags $cpuflags "$@"
} }
framecrc(){ framecrc(){
...@@ -76,7 +77,7 @@ pcm(){ ...@@ -76,7 +77,7 @@ pcm(){
regtest(){ regtest(){
t="${test#$2-}" t="${test#$2-}"
ref=${base}/ref/$2/$t ref=${base}/ref/$2/$t
${base}/${1}-regression.sh $t $2 $3 "$target_exec" "$target_path" "$threads" "$thread_type" ${base}/${1}-regression.sh $t $2 $3 "$target_exec" "$target_path" "$threads" "$thread_type" "$cpuflags"
} }
codectest(){ codectest(){
......
...@@ -10,6 +10,7 @@ raw_src_dir=$3 ...@@ -10,6 +10,7 @@ raw_src_dir=$3
target_exec=$4 target_exec=$4
target_path=$5 target_path=$5
threads=${6:-1} threads=${6:-1}
cpuflags=${8:-all}
datadir="./tests/data" datadir="./tests/data"
target_datadir="${target_path}/${datadir}" target_datadir="${target_path}/${datadir}"
...@@ -43,7 +44,7 @@ echov(){ ...@@ -43,7 +44,7 @@ echov(){
. $(dirname $0)/md5.sh . $(dirname $0)/md5.sh
AVCONV_OPTS="-nostats -y" AVCONV_OPTS="-nostats -y -cpuflags $cpuflags"
COMMON_OPTS="-flags +bitexact -idct simple -sws_flags +accurate_rnd+bitexact" COMMON_OPTS="-flags +bitexact -idct simple -sws_flags +accurate_rnd+bitexact"
DEC_OPTS="$COMMON_OPTS -threads $threads" DEC_OPTS="$COMMON_OPTS -threads $threads"
ENC_OPTS="$COMMON_OPTS -threads 1 -dct fastint" ENC_OPTS="$COMMON_OPTS -threads 1 -dct fastint"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment