Repository navigation
Expand file tree
/
Copy pathtest4.lst
More file actions
132 lines (89 loc) · 4.05 KB
/
Copy pathtest4.lst
File metadata and controls
132 lines (89 loc) · 4.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
# Test data for VCL test bench
# This list contains test cases for half-precision floating point vectors
# Use:
# ./runtest.sh test4.lst
# choose compiler
$compiler=1
# maximum instruction set supported by this compiler
$compilermax=12
# set mode
$mode=64
# testbench file:
#$testbench=../testbench4/testbench4.cpp
$testbench=/mnt/c/_Public/VectorClass/testbench4/testbench4.cpp
# directory for include files
#$include=../src2
$include=/mnt/c/_Public/VectorClass/src2
# Intel emulator
$emulator=/home/agner/emulator/sde/sde
# output file name
$outfile=test4.txt
# seed for random number generator
$seed=3
# Test permute functions
# testbench file:
$testbench=/mnt/c/_Public/VectorClass/testbench2/testbench2.cpp
# List test cases:
# test case, vector type, return type, instruction set
# permute functions
# =================
# permute8
1 , Vec8s Vec8h , , 4 10 12 , permute8 , 5+6+7+0+1+2+3+4 , # rotate
1 , Vec8s Vec8h , , 2 10 12 , permute8 , 0+1+2+3+4+-1+6+7 , # no permute, zero
1 , Vec8h , , 10 11 12 , permute8 , 1+1+1+1+1+1+1+1 , # broadcast
1 , Vec8h , , 9 10 12 , permute8 , 0+-1+1+-1+2+-1+3+-1 , # zero extension
# permute16
1 , Vec16s Vec16h , , 2 10 12 , permute16 , 11+12+13+14+15+0+1+2+3+4+5+6+7+8+9+10 , # rotate
1 , Vec16h , , 5 10 12 , permute16 , 0+1+2+3+4+5+6+7+8+9+10+11+12+-1+-1+15 , # no permute, zero
1 , Vec16h , , 10 12 , permute16 , 6+7+8+9+10+11+12+13+14+15+-1+-1+-1+-1+-1+-1 , # shift left
# permute32
1 , Vec32s Vec32h , , 8 10 12 , permute32 , 5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+0+1+2+3+4 , # 512-bit rotate
1 , Vec32h , , 4 8 10 , permute32 , 0+1+2+3+4+-1+-1+-1+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31 , # no permute, zero
# blend functions
# ===============
# blend8
2 , Vec8i Vec8h Vec8f , , 7 8 10 12 , blend8 , 0+8+1+9+4+12+5+13 , # unpckl a+b
2 , Vec8h , , 9 10 12 , blend8 , 3+5+V_DC+-1+14+V_DC+0+6 , # all random
# blend16
2 , Vec16h , , 5 10 12 , blend16 , 0+1+18+19+4+21+6+7+8+9+10+11+12+13+30+15 , # blend without permute
2 , Vec16h , , 10 11 12 , blend16 , 0+16+1+17+2+18+3+19+8+24+9+25+10+26+11+27 # unpcklo
# lookup functions
# ================
# lookup with one index vector and one data vector
3 , Vec8s , Vec8h , 5 9 10 12 , lookup8 ,
3 , Vec16s , Vec16h , 2 8 10 12 , lookup16 ,
3 , Vec32s , Vec32h , 5 10 11 12 , lookup32 ,
# lookup with one index vector and two data vectors
4 , Vec8s , Vec8h , 3 10 12 , lookup16 ,
# lookup w. table
6 , Vec8s , Vec8h , 3 8 9 10 12 , lookup ,
6 , Vec16s , Vec16h , 5 10 11 12 , lookup ,
6 , Vec32s , Vec32h , 4 8 10 12 , lookup ,
# *******************************************************************
# Test everything else
# testbench file:
# *******************************************************************
#$testbench=../testbench4/testbench4.cpp
$testbench=/mnt/c/_Public/VectorClass/testbench4/testbench4.cpp
# List test cases:
# test case, vector type, return type, instruction set
# floating point types
1 2 3 4 8 9 10 11 12 13 14 15 16 17 18 200 201 202 , Vec8h Vec16h Vec32h , , 2 7 8 9 10 12
612 613 614 615 616 , Vec8h Vec16h Vec32h , , 4 8 9 10 11 12
# type conversion
620 , Vec16s, Vec16h, 7 10 11 12
621 , Vec16us, Vec16h, 6 10 12
622 , Vec16h, Vec16f, 5 10 12
623 , Vec16f, Vec16h, 3 10 12
624 , Vec8h Vec16h, , 2 4 8 9 10 12
# boolean result
210 211 212 213 214 300 301 302 303 304 305 306 , Vec8h , Vec8hb , 2 7 8 9 10 12
210 211 212 213 214 300 301 302 303 304 305 306 , Vec16h , Vec16hb , 3 10 11 12
210 211 212 213 214 300 301 302 303 304 305 306 , Vec32h , Vec32hb , 4 6 10 12
#integer result
505 506 540 , Vec8h , Vec8s , 2 10 12
505 506 540 , Vec16h , Vec16s , 4 10 12
505 506 540 , Vec32h , Vec32s , 6 10 11 12
# math
507 508 509 510 519 520 521 530 531 532 541 , Vec8h Vec16h Vec32h , , 2 7 10 11 12
542 550 551 552 553 560 561 562 563 570 571 572 573 , Vec8h Vec16h Vec32h , , 5 8 9 10 12