/third_party/mesa3d/src/gallium/drivers/r300/ |
D | r300_context.c | 42 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 …]
|
D | r300_blit.c | 53 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 …]
|
D | r300_flush.c | 37 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 …]
|
D | r300_emit.h | 33 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 …]
|
D | r300_render.c | 72 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 …]
|
D | r300_hyperz.c | 41 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 …]
|
D | r300_state.c | 56 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 …]
|
D | r300_render_stencilref.c | 49 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 …]
|
D | r300_emit.c | 38 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 …]
|
D | r300_query.c | 36 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 …]
|
D | r300_state_derived.c | 53 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 …]
|
D | r300_context.h | 640 #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 …]
|
D | r300_screen_buffer.c | 35 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 …]
|
D | r300_resource.c | 42 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()
|
D | r300_fs.c | 146 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 …]
|
D | r300_vs.c | 39 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 …]
|
D | r300_render_translate.c | 28 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()
|
D | r300_transfer.c | 107 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()
|
D | r300_vs.h | 59 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/ |
D | 7.10.2.rst | 155 - 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 …]
|
D | 21.3.3.rst | 59 - 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.
|
D | 7.6.rst | 48 - 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
|
D | 7.9.1.rst | 141 - 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 …]
|
D | 7.10.rst | 167 - 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/ |
D | radeon_code.h | 246 struct r300_fragment_program_code r300; member 290 uint32_t r300[R300_VS_MAX_FC_OPS]; member
|