a2ddff037b98993f15cc88a4178f8ba192cf06df
[mesa.git] / src / freedreno / .gitlab-ci / genoutput.sh
1 #!/bin/bash
2
3 # This file contains all of the cmdlines used to generate output
4 # for the test step in the CI pipeline. It can also be used to
5 # regenerate reference output
6
7 set -x
8 set -e
9
10 # input/output directories:
11 base=src/freedreno
12 traces=$base/.gitlab-ci/traces
13 output=$base/.gitlab-ci/out
14
15 # use the --update arg to update reference output:
16 if [ "$1" = "--update" ]; then
17 output=src/freedreno/.gitlab-ci/reference
18 fi
19
20 mkdir -p $output
21
22 # binary locations:
23 cffdump=./install/bin/cffdump
24 crashdec=./install/bin/crashdec
25
26 # helper to filter out paths that can change depending on
27 # who is building:
28 basepath=`dirname $0`
29 basepath=`dirname $basepath`
30 basepath=`pwd $basepath`
31 filter() {
32 out=$1
33 grep -vF "$basepath" > $out
34 }
35
36 #
37 # The Tests:
38 #
39
40 # dump only a single frame, and single tile pass, to keep the
41 # reference output size managable
42 $cffdump --frame 0 --once $traces/fd-clouds.rd.gz | filter $output/fd-clouds.log
43 $cffdump --frame 0 --once $traces/es2gears-a320.rd.gz | filter $output/es2gears-a320.log
44 $cffdump --frame 1 --once $traces/glxgears-a420.rd.gz | filter $output/glxgears-a420.log
45 $cffdump --once $traces/dEQP-GLES2.functional.texture.specification.basic_teximage2d.rgba16f_2d.rd.gz | filter $output/dEQP-GLES2.functional.texture.specification.basic_teximage2d.rgba16f_2d.log
46 $cffdump --frame 0 --once $traces/dEQP-VK.draw.indirect_draw.indexed.indirect_draw_count.triangle_list.rd.gz | filter $output/dEQP-VK.draw.indirect_draw.indexed.indirect_draw_count.triangle_list.log
47
48 # test a lua script to ensure we don't break scripting API:
49 $cffdump --script $base/decode/scripts/parse-submits.lua $traces/shadow.rd.gz | filter $output/shadow.log
50
51 $crashdec -sf $traces/crash.devcore | filter $output/crash.log
52