2 * Copyright (C) 2020 Collabora Ltd.
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 * Authors (Collabora):
24 * Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
29 unsigned bi_class_props
[BI_NUM_CLASSES
] = {
30 [BI_ADD
] = BI_GENERIC
| BI_MODS
| BI_SCHED_ALL
,
31 [BI_ATEST
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
32 [BI_BRANCH
] = BI_SCHED_HI_LATENCY
,
33 [BI_CMP
] = BI_GENERIC
| BI_MODS
| BI_SCHED_ALL
,
34 [BI_BLEND
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
35 [BI_BITWISE
] = BI_GENERIC
| BI_SCHED_ALL
,
36 [BI_CONVERT
] = BI_SCHED_ALL
| BI_SWIZZLABLE
,
37 [BI_CSEL
] = BI_SCHED_FMA
,
38 [BI_DISCARD
] = BI_SCHED_HI_LATENCY
,
39 [BI_FMA
] = BI_ROUNDMODE
| BI_SCHED_FMA
,
40 [BI_FREXP
] = BI_SCHED_ALL
,
41 [BI_ISUB
] = BI_GENERIC
| BI_SCHED_ALL
,
42 [BI_LOAD
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
43 [BI_LOAD_UNIFORM
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
44 [BI_LOAD_ATTR
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
45 [BI_LOAD_VAR
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
46 [BI_LOAD_VAR_ADDRESS
] = BI_SCHED_HI_LATENCY
,
47 [BI_MINMAX
] = BI_GENERIC
| BI_SCHED_ALL
,
48 [BI_MOV
] = BI_MODS
| BI_SCHED_ALL
,
49 [BI_SHIFT
] = BI_SCHED_ALL
,
50 [BI_STORE
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
51 [BI_STORE_VAR
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
52 [BI_SPECIAL
] = BI_SCHED_ADD
| BI_SCHED_SLOW
,
53 [BI_SWIZZLE
] = BI_SCHED_ALL
| BI_SWIZZLABLE
,
54 [BI_TEX
] = BI_SCHED_HI_LATENCY
| BI_VECTOR
,
55 [BI_ROUND
] = BI_GENERIC
| BI_ROUNDMODE
| BI_SCHED_ALL
,