Home
last modified time | relevance | path

Searched refs:r300 (Results 1 – 25 of 73) sorted by relevance

123

/third_party/mesa3d/src/gallium/drivers/r300/
Dr300_context.c42 static void r300_release_referenced_objects(struct r300_context *r300) in r300_release_referenced_objects() argument
45 (struct pipe_framebuffer_state*)r300->fb_state.state; in r300_release_referenced_objects()
47 (struct r300_textures_state*)r300->textures_state.state; in r300_release_referenced_objects()
59 if (r300->texkill_sampler) { in r300_release_referenced_objects()
61 (struct pipe_sampler_view**)&r300->texkill_sampler, in r300_release_referenced_objects()
66 pipe_vertex_buffer_unreference(&r300->dummy_vb); in r300_release_referenced_objects()
67 pb_reference(&r300->vbo, NULL); in r300_release_referenced_objects()
69 r300->context.delete_depth_stencil_alpha_state(&r300->context, in r300_release_referenced_objects()
70 r300->dsa_decompress_zmask); in r300_release_referenced_objects()
75 struct r300_context* r300 = r300_context(context); in r300_destroy_context() local
[all …]
Dr300_blit.c53 static void r300_blitter_begin(struct r300_context* r300, enum r300_blitter_op op) in r300_blitter_begin() argument
55 if ((op & R300_STOP_QUERY) && r300->query_current) { in r300_blitter_begin()
56 r300->blitter_saved_query = r300->query_current; in r300_blitter_begin()
57 r300_stop_query(r300); in r300_blitter_begin()
63 util_blitter_save_blend(r300->blitter, r300->blend_state.state); in r300_blitter_begin()
64 util_blitter_save_depth_stencil_alpha(r300->blitter, r300->dsa_state.state); in r300_blitter_begin()
65 util_blitter_save_stencil_ref(r300->blitter, &(r300->stencil_ref)); in r300_blitter_begin()
66 util_blitter_save_rasterizer(r300->blitter, r300->rs_state.state); in r300_blitter_begin()
67 util_blitter_save_fragment_shader(r300->blitter, r300->fs.state); in r300_blitter_begin()
68 util_blitter_save_vertex_shader(r300->blitter, r300->vs_state.state); in r300_blitter_begin()
[all …]
Dr300_flush.c37 static void r300_flush_and_cleanup(struct r300_context *r300, unsigned flags, in r300_flush_and_cleanup() argument
42 r300_emit_hyperz_end(r300); in r300_flush_and_cleanup()
43 r300_emit_query_end(r300); in r300_flush_and_cleanup()
44 if (r300->screen->caps.is_r500) in r300_flush_and_cleanup()
45 r500_emit_index_bias(r300, 0); in r300_flush_and_cleanup()
49 CS_LOCALS(r300); in r300_flush_and_cleanup()
55 r300->flush_counter++; in r300_flush_and_cleanup()
56 r300->rws->cs_flush(&r300->cs, flags, fence); in r300_flush_and_cleanup()
57 r300->dirty_hw = 0; in r300_flush_and_cleanup()
60 foreach_atom(r300, atom) { in r300_flush_and_cleanup()
[all …]
Dr300_emit.h33 void r300_emit_vertex_arrays(struct r300_context* r300, int offset,
36 void r300_emit_blend_state(struct r300_context* r300,
39 void r300_emit_blend_color_state(struct r300_context* r300,
42 void r300_emit_clip_state(struct r300_context* r300,
45 void r300_emit_dsa_state(struct r300_context* r300,
48 void r300_emit_hyperz_state(struct r300_context *r300,
51 void r300_emit_hyperz_end(struct r300_context *r300);
53 void r300_emit_fs(struct r300_context* r300, unsigned size, void *state);
55 void r300_emit_fs_constants(struct r300_context* r300, unsigned size, void *state);
57 void r300_emit_fs_rc_constant_state(struct r300_context* r300, unsigned size, void *state);
[all …]
Dr300_render.c72 static uint32_t r300_provoking_vertex_fixes(struct r300_context *r300, in r300_provoking_vertex_fixes() argument
75 struct r300_rs_state* rs = (struct r300_rs_state*)r300->rs_state.state; in r300_provoking_vertex_fixes()
117 void r500_emit_index_bias(struct r300_context *r300, int index_bias) in r500_emit_index_bias() argument
119 CS_LOCALS(r300); in r500_emit_index_bias()
127 static void r300_emit_draw_init(struct r300_context *r300, unsigned mode, in r300_emit_draw_init() argument
130 CS_LOCALS(r300); in r300_emit_draw_init()
136 r300_provoking_vertex_fixes(r300, mode)); in r300_emit_draw_init()
149 static void r300_split_index_bias(struct r300_context *r300, int index_bias, in r300_split_index_bias() argument
152 struct pipe_vertex_buffer *vb, *vbufs = r300->vertex_buffer; in r300_split_index_bias()
153 struct pipe_vertex_element *velem = r300->velems->velem; in r300_split_index_bias()
[all …]
Dr300_hyperz.c41 static enum r300_hiz_func r300_get_hiz_func(struct r300_context *r300) in r300_get_hiz_func() argument
43 struct r300_dsa_state *dsa = r300->dsa_state.state; in r300_get_hiz_func()
63 static unsigned r300_get_sc_hz_max(struct r300_context *r300) in r300_get_sc_hz_max() argument
65 struct r300_dsa_state *dsa = r300->dsa_state.state; in r300_get_sc_hz_max()
71 static boolean r300_is_hiz_func_valid(struct r300_context *r300) in r300_is_hiz_func_valid() argument
73 struct r300_dsa_state *dsa = r300->dsa_state.state; in r300_is_hiz_func_valid()
76 if (r300->hiz_func == HIZ_FUNC_NONE) in r300_is_hiz_func_valid()
80 if (r300->hiz_func == HIZ_FUNC_MAX && in r300_is_hiz_func_valid()
85 if (r300->hiz_func == HIZ_FUNC_MIN && in r300_is_hiz_func_valid()
98 static boolean r300_hiz_allowed(struct r300_context *r300) in r300_hiz_allowed() argument
[all …]
Dr300_state.c56 r300_mark_atom_dirty(r300, &(atom)); \
528 struct r300_context* r300 = r300_context(pipe); in r300_bind_blend_state() local
530 boolean last_alpha_to_one = r300->alpha_to_one; in r300_bind_blend_state()
531 boolean last_alpha_to_coverage = r300->alpha_to_coverage; in r300_bind_blend_state()
533 UPDATE_STATE(state, r300->blend_state); in r300_bind_blend_state()
538 r300->alpha_to_one = blend->state.alpha_to_one; in r300_bind_blend_state()
539 r300->alpha_to_coverage = blend->state.alpha_to_coverage; in r300_bind_blend_state()
541 if (r300->alpha_to_one != last_alpha_to_one && r300->msaa_enable && in r300_bind_blend_state()
542 r300->fs_status == FRAGMENT_SHADER_VALID) { in r300_bind_blend_state()
543 r300->fs_status = FRAGMENT_SHADER_MAYBE_DIRTY; in r300_bind_blend_state()
[all …]
Dr300_render_stencilref.c49 static boolean r300_stencilref_needed(struct r300_context *r300) in r300_stencilref_needed() argument
51 struct r300_dsa_state *dsa = (struct r300_dsa_state*)r300->dsa_state.state; in r300_stencilref_needed()
55 r300->stencil_ref.ref_value[0] != r300->stencil_ref.ref_value[1]); in r300_stencilref_needed()
59 static void r300_stencilref_begin(struct r300_context *r300) in r300_stencilref_begin() argument
61 struct r300_stencilref_context *sr = r300->stencilref_fallback; in r300_stencilref_begin()
62 struct r300_rs_state *rs = (struct r300_rs_state*)r300->rs_state.state; in r300_stencilref_begin()
63 struct r300_dsa_state *dsa = (struct r300_dsa_state*)r300->dsa_state.state; in r300_stencilref_begin()
68 sr->ref_value_front = r300->stencil_ref.ref_value[0]; in r300_stencilref_begin()
73 r300_mark_atom_dirty(r300, &r300->rs_state); in r300_stencilref_begin()
77 static void r300_stencilref_switch_side(struct r300_context *r300) in r300_stencilref_switch_side() argument
[all …]
Dr300_emit.c38 void r300_emit_blend_state(struct r300_context* r300, in r300_emit_blend_state() argument
43 (struct pipe_framebuffer_state*)r300->fb_state.state; in r300_emit_blend_state()
45 CS_LOCALS(r300); in r300_emit_blend_state()
63 void r300_emit_blend_color_state(struct r300_context* r300, in r300_emit_blend_color_state() argument
67 CS_LOCALS(r300); in r300_emit_blend_color_state()
72 void r300_emit_clip_state(struct r300_context* r300, in r300_emit_clip_state() argument
76 CS_LOCALS(r300); in r300_emit_clip_state()
81 void r300_emit_dsa_state(struct r300_context* r300, unsigned size, void* state) in r300_emit_dsa_state() argument
85 (struct pipe_framebuffer_state*)r300->fb_state.state; in r300_emit_dsa_state()
86 boolean is_r500 = r300->screen->caps.is_r500; in r300_emit_dsa_state()
[all …]
Dr300_query.c36 struct r300_context *r300 = r300_context(pipe); in r300_create_query() local
37 struct r300_screen *r300screen = r300->screen; in r300_create_query()
62 q->buf = r300->rws->buffer_create(r300->rws, in r300_create_query()
83 void r300_resume_query(struct r300_context *r300, in r300_resume_query() argument
86 r300->query_current = query; in r300_resume_query()
87 r300_mark_atom_dirty(r300, &r300->query_start); in r300_resume_query()
93 struct r300_context* r300 = r300_context(pipe); in r300_begin_query() local
99 if (r300->query_current != NULL) { in r300_begin_query()
107 r300_resume_query(r300, q); in r300_begin_query()
111 void r300_stop_query(struct r300_context *r300) in r300_stop_query() argument
[all …]
Dr300_state_derived.c53 static void r300_draw_emit_attrib(struct r300_context* r300, in r300_draw_emit_attrib() argument
57 struct r300_vertex_shader* vs = r300->vs_state.state; in r300_draw_emit_attrib()
61 output = draw_find_shader_output(r300->draw, in r300_draw_emit_attrib()
64 draw_emit_vertex_attr(&r300->vertex_info, emit, output); in r300_draw_emit_attrib()
67 static void r300_draw_emit_all_attribs(struct r300_context* r300) in r300_draw_emit_all_attribs() argument
69 struct r300_vertex_shader* vs = r300->vs_state.state; in r300_draw_emit_all_attribs()
75 r300_draw_emit_attrib(r300, EMIT_4F, vs_outputs->pos); in r300_draw_emit_all_attribs()
82 r300_draw_emit_attrib(r300, EMIT_1F_PSIZE, vs_outputs->psize); in r300_draw_emit_all_attribs()
88 r300_draw_emit_attrib(r300, EMIT_4F, vs_outputs->color[i]); in r300_draw_emit_all_attribs()
95 r300_draw_emit_attrib(r300, EMIT_4F, vs_outputs->bcolor[i]); in r300_draw_emit_all_attribs()
[all …]
Dr300_context.h640 #define foreach_atom(r300, atom) \ argument
641 for (atom = &r300->gpu_flush; atom != (&r300->query_start)+1; atom++)
643 #define foreach_dirty_atom(r300, atom) \ argument
644 for (atom = r300->first_dirty; atom != r300->last_dirty; atom++)
667 static inline struct r300_fragment_shader *r300_fs(struct r300_context *r300) in r300_fs() argument
669 return (struct r300_fragment_shader*)r300->fs.state; in r300_fs()
672 static inline void r300_mark_atom_dirty(struct r300_context *r300, in r300_mark_atom_dirty() argument
677 if (!r300->first_dirty) { in r300_mark_atom_dirty()
678 r300->first_dirty = atom; in r300_mark_atom_dirty()
679 r300->last_dirty = atom+1; in r300_mark_atom_dirty()
[all …]
Dr300_screen_buffer.c35 void r300_upload_index_buffer(struct r300_context *r300, in r300_upload_index_buffer() argument
44 u_upload_data(r300->uploader, in r300_upload_index_buffer()
89 struct r300_context *r300 = r300_context(context); in r300_buffer_transfer_map() local
90 struct radeon_winsys *rws = r300->screen->rws; in r300_buffer_transfer_map()
95 transfer = slab_alloc(&r300->pool_transfers); in r300_buffer_transfer_map()
113 if (r300->rws->cs_is_buffer_referenced(&r300->cs, rbuf->buf, RADEON_USAGE_READWRITE) || in r300_buffer_transfer_map()
114 !r300->rws->buffer_wait(r300->rws, rbuf->buf, 0, RADEON_USAGE_READWRITE)) { in r300_buffer_transfer_map()
119 new_buf = r300->rws->buffer_create(r300->rws, rbuf->b.width0, in r300_buffer_transfer_map()
129 for (i = 0; i < r300->nr_vertex_buffers; i++) { in r300_buffer_transfer_map()
130 if (r300->vertex_buffer[i].buffer.resource == &rbuf->b) { in r300_buffer_transfer_map()
[all …]
Dr300_resource.c42 void r300_init_resource_functions(struct r300_context *r300) in r300_init_resource_functions() argument
44 r300->context.buffer_map = r300_buffer_transfer_map; in r300_init_resource_functions()
45 r300->context.texture_map = r300_texture_transfer_map; in r300_init_resource_functions()
46 r300->context.transfer_flush_region = u_default_transfer_flush_region; in r300_init_resource_functions()
47 r300->context.buffer_unmap = r300_buffer_transfer_unmap; in r300_init_resource_functions()
48 r300->context.texture_unmap = r300_texture_transfer_unmap; in r300_init_resource_functions()
49 r300->context.buffer_subdata = u_default_buffer_subdata; in r300_init_resource_functions()
50 r300->context.texture_subdata = u_default_texture_subdata; in r300_init_resource_functions()
51 r300->context.create_surface = r300_create_surface; in r300_init_resource_functions()
52 r300->context.surface_destroy = r300_surface_destroy; in r300_init_resource_functions()
Dr300_fs.c146 struct r300_context* r300, in get_external_state() argument
149 struct r300_textures_state *texstate = r300->textures_state.state; in get_external_state()
152 state->alpha_to_one = r300->alpha_to_one && r300->msaa_enable; in get_external_state()
209 struct r300_context* r300,
214 struct r300_context* r300, in r300_dummy_fragment_shader() argument
233 r300_translate_fragment_shader(r300, shader, state.tokens); in r300_dummy_fragment_shader()
239 struct r300_context *r300, in r300_emit_fs_code_to_buffer() argument
250 if (r300->screen->caps.is_r500) { in r300_emit_fs_code_to_buffer()
298 struct r300_fragment_program_code *code = &generic_code->code.r300; in r300_emit_fs_code_to_buffer()
310 (r300->screen->caps.is_r400 ? 2 * (iterations + 1): 0) + in r300_emit_fs_code_to_buffer()
[all …]
Dr300_vs.c39 struct r300_context *r300, in r300_shader_read_vs_outputs() argument
91 if (r300->screen->caps.has_tcl) { in r300_shader_read_vs_outputs()
173 void r300_init_vs_outputs(struct r300_context *r300, in r300_init_vs_outputs() argument
177 r300_shader_read_vs_outputs(r300, &vs->info, &vs->outputs); in r300_init_vs_outputs()
181 struct r300_context* r300, in r300_dummy_vertex_shader() argument
201 r300_init_vs_outputs(r300, shader); in r300_dummy_vertex_shader()
202 r300_translate_vertex_shader(r300, shader); in r300_dummy_vertex_shader()
205 void r300_translate_vertex_shader(struct r300_context *r300, in r300_translate_vertex_shader() argument
216 DBG_ON(r300, DBG_VP) ? compiler.Base.Debug |= RC_DBG_LOG : 0; in r300_translate_vertex_shader()
217 DBG_ON(r300, DBG_P_STAT) ? compiler.Base.Debug |= RC_DBG_STATS : 0; in r300_translate_vertex_shader()
[all …]
Dr300_render_translate.c28 void r300_translate_index_buffer(struct r300_context *r300, in r300_translate_index_buffer() argument
40 u_upload_alloc(r300->uploader, 0, count * 2, 4, in r300_translate_index_buffer()
44 &r300->context, info, PIPE_MAP_UNSYNCHRONIZED, index_offset, in r300_translate_index_buffer()
54 u_upload_alloc(r300->uploader, 0, count * 2, 4, in r300_translate_index_buffer()
57 util_rebuild_ushort_elts_to_userptr(&r300->context, info, in r300_translate_index_buffer()
69 u_upload_alloc(r300->uploader, 0, count * 4, 4, in r300_translate_index_buffer()
72 util_rebuild_uint_elts_to_userptr(&r300->context, info, in r300_translate_index_buffer()
Dr300_transfer.c107 struct r300_context *r300 = r300_context(ctx); in r300_texture_transfer_map() local
115 r300->rws->cs_is_buffer_referenced(&r300->cs, tex->buf, RADEON_USAGE_READWRITE); in r300_texture_transfer_map()
120 !r300->rws->buffer_wait(r300->rws, tex->buf, 0, RADEON_USAGE_READWRITE); in r300_texture_transfer_map()
139 if (r300->blitter->running) { in r300_texture_transfer_map()
218 map = r300->rws->buffer_map(r300->rws, trans->linear_texture->buf, in r300_texture_transfer_map()
219 &r300->cs, usage); in r300_texture_transfer_map()
230 map = r300->rws->buffer_map(r300->rws, tex->buf, &r300->cs, usage); in r300_texture_transfer_map()
Dr300_vs.h59 void r300_init_vs_outputs(struct r300_context *r300,
62 void r300_translate_vertex_shader(struct r300_context *r300,
65 void r300_draw_init_vertex_shader(struct r300_context *r300,
/third_party/mesa3d/docs/relnotes/
D7.10.2.rst155 - r300/compiler: fix the saturate modifier when applied to TEX
157 - r300/compiler: fix translating the src negate bits in pair_translate
158 - r300/compiler: Abs doesn't cancel Negate (in the conversion to native
160 - r300/compiler: TEX instructions don't support negation on source
162 - r300/compiler: do not set TEX_IGNORE_UNCOVERED on r500
163 - r300/compiler: saturate Z before the shadow comparison
164 - r300/compiler: fix equal and notequal shadow compare functions
165 - r300/compiler: remove unused variables
170 - r300/compiler: propagate SaturateMode down to the result of shadow
172 - r300/compiler: apply the texture swizzle to shadow pass and fail
[all …]
D21.3.3.rst59 - r300: Fix mis-optimization turning -1 - x into 1 - x.
60 - r300: Move the instruction filter for r500_transform_IF() to the top.
61 - r300: Ensure that immediates have matching negate flags too.
62 - r300: Also consider ALU condition modifiers for loop DCE.
63 - r300: Disable loop unrolling on r500.
64 - r300/vs: Allocate temps we see a use as a source, too.
65 - r300/vs: Fix flow control processing just after an endloop.
D7.6.rst48 - Rewritten radeon/r200/r300 driver using a buffer manager
49 - radeon/r200/r300 GL_EXT_framebuffer_object support when used with
51 - radeon/r200/r300 support for GL_ARB_occlusion_query
52 - r300 driver supports OpenGL 1.5
53 - r300 driver support for GL_EXT_vertex_array_bgra, GL_EXT_texture_sRGB
D7.9.1.rst141 - gallium/egl: fix r300 vs r600 loading
334 - r300/compiler: fix rc_rewrite_depth_out for it to work with any
341 - r300/compiler: fix swizzle lowering with a presubtract source operand
346 - r300/compiler: disable the rename_regs pass for loops
392 - r300/compiler: Make sure presubtract sources use supported swizzles
393 - r300/compiler: Fix register allocator's handling of loops
394 - r300/compiler: Fix instruction scheduling within IF blocks
395 - r300/compiler: Use zero as the register index for unused sources
396 - r300/compiler: Ignore alpha dest register when replicating the result
397 - r300/compiler: Use correct swizzles for all presubtract sources
[all …]
D7.10.rst167 - gallium/egl: fix r300 vs r600 loading
448 - r300: set gl_texture_image::TexFormat field in r300SetTexBuffer2()
860 - util/r300g: split the r300 index buffer modifier functions out to
2263 - r300/compiler: fix projective mapping of 2D NPOT textures
2264 - r300/compiler: do not use copy propagation if SaturateMode is used
2265 - r300/compiler: fix shadow sampling with swizzled coords
2269 gallium/r300,r600
2313 - r300/compiler: fix rc_rewrite_depth_out for it to work with any
2315 - r300/compiler: remove duplicate function rc_mask_to_swz
2316 - r300/compiler: add a function for swizzling a mask
[all …]
/third_party/mesa3d/src/gallium/drivers/r300/compiler/
Dradeon_code.h246 struct r300_fragment_program_code r300; member
290 uint32_t r300[R300_VS_MAX_FC_OPS]; member

123