• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright © 2016 Rob Clark <robclark@freedesktop.org>
3  * Copyright © 2018 Google, Inc.
4  * SPDX-License-Identifier: MIT
5  */
6 
7 #ifndef FD6_CONST_H
8 #define FD6_CONST_H
9 
10 #include "fd6_emit.h"
11 
12 template <chip CHIP>
13 struct fd_ringbuffer *fd6_build_tess_consts(struct fd6_emit *emit) assert_dt;
14 template <chip CHIP>
15 unsigned fd6_user_consts_cmdstream_size(const struct ir3_shader_variant *v);
16 
17 template <chip CHIP, fd6_pipeline_type PIPELINE>
18 struct fd_ringbuffer *fd6_build_user_consts(struct fd6_emit *emit) assert_dt;
19 
20 template <chip CHIP, fd6_pipeline_type PIPELINE>
21 struct fd_ringbuffer *
22 fd6_build_driver_params(struct fd6_emit *emit) assert_dt;
23 
24 template <chip CHIP>
25 void fd6_emit_cs_driver_params(struct fd_context *ctx,
26                                struct fd_ringbuffer *ring,
27                                struct fd6_compute_state *cs,
28                                const struct pipe_grid_info *info) assert_dt;
29 template <chip CHIP>
30 void fd6_emit_cs_user_consts(struct fd_context *ctx,
31                              struct fd_ringbuffer *ring,
32                              struct fd6_compute_state *cs) assert_dt;
33 template <chip CHIP>
34 void fd6_emit_immediates(const struct ir3_shader_variant *v,
35                          struct fd_ringbuffer *ring) assert_dt;
36 template <chip CHIP>
37 void fd6_emit_link_map(struct fd_context *ctx,
38                        const struct ir3_shader_variant *producer,
39                        const struct ir3_shader_variant *consumer,
40                        struct fd_ringbuffer *ring) assert_dt;
41 
42 #endif /* FD6_CONST_H */
43