/third_party/elfutils/backends/ |
H A D | common-reloc.c | 1 /* Common code for ebl reloc functions. 39 #define RELOC_TYPES STRINGIFIED_PASTE (BACKEND, reloc.def) 44 /* Provide a table of reloc type names, in a PIC-friendly fashion. */ 86 EBLHOOK(reloc_type_name) (int reloc, in reloc_type_name() argument 91 reloc = RELOC_TYPE_ID (reloc); in reloc_type_name() 94 if (reloc >= 0 && reloc < nreloc && EBLHOOK(reloc_nameidx)[reloc] != 0) in reloc_type_name() 95 return reloc_namestr[EBLHOOK(reloc_nameidx)[reloc]]; in reloc_type_name() 100 reloc_type_check(int reloc) reloc_type_check() argument 110 reloc_valid_use(Elf *elf, int reloc) reloc_valid_use() argument 129 copy_reloc_p(int reloc) copy_reloc_p() argument 136 none_reloc_p(int reloc) none_reloc_p() argument 143 relative_reloc_p(int reloc) relative_reloc_p() argument [all...] |
/third_party/mesa3d/src/broadcom/clif/ |
H A D | clif_dump.c | 162 struct reloc_worklist_entry *reloc, in clif_dump_gl_shader_state_record() 188 for (int i = 0; i < reloc->shader_state.num_attrs; i++) { in clif_dump_gl_shader_state_record() 200 list_for_each_entry_safe(struct reloc_worklist_entry, reloc, in clif_process_worklist() 203 if (!clif_lookup_vaddr(clif, reloc->addr, &vaddr)) { in clif_process_worklist() 205 reloc->addr); in clif_process_worklist() 209 switch (reloc->type) { in clif_process_worklist() 211 clif_dump_cl(clif, reloc->addr, reloc->cl.end, true); in clif_process_worklist() 218 clif_dump_cl(clif, reloc->addr, in clif_process_worklist() 219 reloc in clif_process_worklist() 161 clif_dump_gl_shader_state_record(struct clif_dump *clif, struct reloc_worklist_entry *reloc, void *vaddr, bool including_gs) clif_dump_gl_shader_state_record() argument 314 struct reloc_worklist_entry *reloc = relocs[i]; clif_dump_buffers() local [all...] |
H A D | v3dx_dump.c | 34 #define __gen_address_offset(reloc) (*reloc) 35 #define __gen_emit_reloc(cl, reloc) 85 struct reloc_worklist_entry *reloc = in clif_dump_packet() local 89 if (reloc) { in clif_dump_packet() 90 reloc->shader_state.num_attrs = in clif_dump_packet() 103 struct reloc_worklist_entry *reloc = in clif_dump_packet() local 107 if (reloc) { in clif_dump_packet() 108 reloc->shader_state.num_attrs = in clif_dump_packet() 180 struct reloc_worklist_entry *reloc in clif_dump_packet() local [all...] |
/third_party/mesa3d/src/freedreno/drm/ |
H A D | freedreno_ringbuffer_sp_reloc.h | 35 const struct fd_reloc *reloc) in emit_reloc_common() 37 (*ring->cur++) = (uint32_t)reloc->iova; in emit_reloc_common() 39 (*ring->cur++) = (uint32_t)(reloc->iova >> 32); in emit_reloc_common() 44 const struct fd_reloc *reloc) in fd_ringbuffer_sp_emit_reloc_nonobj() 46 X(emit_reloc_common)(ring, reloc); in fd_ringbuffer_sp_emit_reloc_nonobj() 54 fd_submit_append_bo(fd_submit, reloc->bo); in fd_ringbuffer_sp_emit_reloc_nonobj() 58 const struct fd_reloc *reloc) in fd_ringbuffer_sp_emit_reloc_obj() 60 X(emit_reloc_common)(ring, reloc); in fd_ringbuffer_sp_emit_reloc_obj() 72 if (!fd_ringbuffer_references_bo(ring, reloc->bo)) { in fd_ringbuffer_sp_emit_reloc_obj() 73 APPEND(&fd_ring->u, reloc_bos, fd_bo_ref(reloc in fd_ringbuffer_sp_emit_reloc_obj() 34 emit_reloc_common(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) emit_reloc_common() argument 43 fd_ringbuffer_sp_emit_reloc_nonobj(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_sp_emit_reloc_nonobj() argument 57 fd_ringbuffer_sp_emit_reloc_obj(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_sp_emit_reloc_obj() argument [all...] |
H A D | freedreno_ringbuffer.h | 129 void (*emit_reloc)(struct fd_ringbuffer *ring, const struct fd_reloc *reloc); 207 /* We always mark BOs for write, instead of tracking it across reloc 220 fd_ringbuffer_reloc(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) in fd_ringbuffer_reloc() argument 222 ring->funcs->emit_reloc(ring, reloc); in fd_ringbuffer_reloc() 299 struct fd_reloc reloc = { in OUT_RELOC() 307 fd_ringbuffer_reloc(ring, &reloc); in OUT_RELOC()
|
/third_party/mesa3d/src/freedreno/drm/virtio/ |
H A D | virtio_ringbuffer.h | 39 const struct fd_reloc *reloc) in emit_reloc_common() 41 (*ring->cur++) = (uint32_t)reloc->iova; in emit_reloc_common() 43 (*ring->cur++) = (uint32_t)(reloc->iova >> 32); in emit_reloc_common() 48 const struct fd_reloc *reloc) in virtio_ringbuffer_emit_reloc_nonobj() 50 X(emit_reloc_common)(ring, reloc); in virtio_ringbuffer_emit_reloc_nonobj() 58 virtio_submit_append_bo(virtio_submit, reloc->bo); in virtio_ringbuffer_emit_reloc_nonobj() 62 const struct fd_reloc *reloc) in virtio_ringbuffer_emit_reloc_obj() 64 X(emit_reloc_common)(ring, reloc); in virtio_ringbuffer_emit_reloc_obj() 76 if (!virtio_ringbuffer_references_bo(ring, reloc->bo)) { in virtio_ringbuffer_emit_reloc_obj() 77 APPEND(&virtio_ring->u, reloc_bos, fd_bo_ref(reloc in virtio_ringbuffer_emit_reloc_obj() 38 emit_reloc_common(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) emit_reloc_common() argument 47 virtio_ringbuffer_emit_reloc_nonobj(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) virtio_ringbuffer_emit_reloc_nonobj() argument 61 virtio_ringbuffer_emit_reloc_obj(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) virtio_ringbuffer_emit_reloc_obj() argument [all...] |
/third_party/mesa3d/src/gallium/drivers/nouveau/nv30/ |
H A D | nv30_vertprog.c | 91 struct nv30_shader_reloc *reloc = vp->branch_relocs.data; in nv30_vertprog_validate() local 92 unsigned nr_reloc = vp->branch_relocs.size / sizeof(*reloc); in nv30_vertprog_validate() 109 inst = vp->insns[reloc->location].data; in nv30_vertprog_validate() 110 target = vp->exec->start + reloc->target; in nv30_vertprog_validate() 114 reloc++; in nv30_vertprog_validate() 118 inst = vp->insns[reloc->location].data; in nv30_vertprog_validate() 119 target = vp->exec->start + reloc->target; in nv30_vertprog_validate() 125 reloc++; in nv30_vertprog_validate() 134 struct nv30_shader_reloc *reloc = vp->const_relocs.data; in nv30_vertprog_validate() local 135 unsigned nr_reloc = vp->const_relocs.size / sizeof(*reloc); in nv30_vertprog_validate() [all...] |
H A D | nvfx_vertprog.c | 126 struct nvfx_relocation reloc; in emit_src() local 143 reloc.location = vp->nr_insns - 1; in emit_src() 144 reloc.target = src.reg.index; in emit_src() 145 util_dynarray_append(&vp->const_relocs, struct nvfx_relocation, reloc); in emit_src() 469 struct nvfx_relocation reloc; in nvfx_vertprog_parse_instruction() local 692 reloc.location = vpc->vp->nr_insns; in nvfx_vertprog_parse_instruction() 693 reloc.target = finst->Label.Label + 1; in nvfx_vertprog_parse_instruction() 694 util_dynarray_append(&vpc->label_relocs, struct nvfx_relocation, reloc); in nvfx_vertprog_parse_instruction() 703 reloc.location = vpc->vp->nr_insns; in nvfx_vertprog_parse_instruction() 704 reloc in nvfx_vertprog_parse_instruction() [all...] |
/third_party/mesa3d/src/broadcom/vulkan/ |
H A D | v3dv_cl.h | 50 pack_emit_reloc(void *cl, const void *reloc) {} in pack_emit_reloc() argument 54 #define __gen_address_offset(reloc) (((reloc)->bo ? (reloc)->bo->offset : 0) + \ 55 (reloc)->offset) 71 struct v3dv_cl_reloc reloc = in __unpack_address() local 73 return reloc; in __unpack_address() 85 struct v3dv_cl_reloc reloc = { in v3dv_cl_address() local 89 return reloc; in v3dv_cl_address() 212 cl_pack_emit_reloc(struct v3dv_cl *cl, const struct v3dv_cl_reloc *reloc) in cl_pack_emit_reloc() argument [all...] |
/third_party/mesa3d/src/gallium/drivers/v3d/ |
H A D | v3d_cl.h | 53 #define __gen_address_offset(reloc) (((reloc)->bo ? (reloc)->bo->offset : 0) + \ 54 (reloc)->offset) 61 struct v3d_cl_reloc reloc = in __unpack_address() local 63 return reloc; in __unpack_address() 188 struct v3d_cl_reloc reloc = { in cl_address() local 192 return reloc; in cl_address() 286 cl_pack_emit_reloc(struct v3d_cl *cl, const struct v3d_cl_reloc *reloc) in cl_pack_emit_reloc() argument 288 if (reloc in cl_pack_emit_reloc() [all...] |
/third_party/libdrm/radeon/ |
H A D | radeon_cs_gem.c | 180 struct cs_reloc_gem *reloc; in cs_gem_write_reloc() local 208 reloc = (struct cs_reloc_gem*)&csg->relocs[idx]; in cs_gem_write_reloc() 209 if (reloc->handle == bo->handle) { in cs_gem_write_reloc() 212 * set we only need to check that if previous reloc as the read in cs_gem_write_reloc() 217 if (write_domain && (reloc->read_domain & write_domain)) { in cs_gem_write_reloc() 218 reloc->read_domain = 0; in cs_gem_write_reloc() 219 reloc->write_domain = write_domain; in cs_gem_write_reloc() 220 } else if (read_domain & reloc->write_domain) { in cs_gem_write_reloc() 221 reloc->read_domain = 0; in cs_gem_write_reloc() 223 if (write_domain != reloc in cs_gem_write_reloc() [all...] |
/third_party/mesa3d/src/nouveau/codegen/ |
H A D | nv50_ir_serialize.cpp | 76 blob_write_uint32(blob, 0); // reloc count 0 in nv50_ir_prog_info_out_serialize() 78 nv50_ir::RelocInfo *reloc = (nv50_ir::RelocInfo *)info_out->bin.relocData; in nv50_ir_prog_info_out_serialize() local 79 blob_write_uint32(blob, reloc->count); in nv50_ir_prog_info_out_serialize() 80 blob_write_uint32(blob, reloc->codePos); in nv50_ir_prog_info_out_serialize() 81 blob_write_uint32(blob, reloc->libPos); in nv50_ir_prog_info_out_serialize() 82 blob_write_uint32(blob, reloc->dataPos); in nv50_ir_prog_info_out_serialize() 83 blob_write_bytes(blob, reloc->entry, sizeof(*reloc->entry) * reloc->count); in nv50_ir_prog_info_out_serialize() 181 nv50_ir::RelocInfo *reloc in nv50_ir_prog_info_out_deserialize() local [all...] |
/third_party/mesa3d/src/gallium/winsys/svga/drm/ |
H A D | vmw_context.c | 218 struct vmw_buffer_relocation *reloc = &vswc->region.relocs[i]; in vmw_swc_flush() local 221 if(!vmw_gmr_bufmgr_region_ptr(reloc->buffer, &ptr)) in vmw_swc_flush() 224 ptr.offset += reloc->offset; in vmw_swc_flush() 226 if (reloc->is_mob) { in vmw_swc_flush() 227 if (reloc->mob.id) in vmw_swc_flush() 228 *reloc->mob.id = ptr.gmrId; in vmw_swc_flush() 229 if (reloc->mob.offset_into_mob) in vmw_swc_flush() 230 *reloc->mob.offset_into_mob = ptr.offset; in vmw_swc_flush() 235 *reloc->region.where = ptr; in vmw_swc_flush() 393 struct vmw_buffer_relocation *reloc; in vmw_swc_region_relocation() local 431 struct vmw_buffer_relocation *reloc; vmw_swc_mob_relocation() local [all...] |
/third_party/elfutils/libebl/ |
H A D | libebl.h | 88 extern const char *ebl_reloc_type_name (Ebl *ebl, int reloc, 92 extern bool ebl_reloc_type_check (Ebl *ebl, int reloc); 95 extern bool ebl_reloc_valid_use (Ebl *ebl, int reloc); 101 extern Elf_Type ebl_reloc_simple_type (Ebl *ebl, int reloc, int *addsub); 105 extern bool ebl_gotpc_reloc_check (Ebl *ebl, int reloc); 189 /* Check whether a section type is a valid reloc target. */ 197 extern bool ebl_copy_reloc_p (Ebl *ebl, int reloc); 200 extern bool ebl_none_reloc_p (Ebl *ebl, int reloc); 203 extern bool ebl_relative_reloc_p (Ebl *ebl, int reloc);
|
H A D | eblrelocvaliduse.c | 38 ebl_reloc_valid_use (Ebl *ebl, int reloc) in ebl_reloc_valid_use() argument 40 return ebl != NULL ? ebl->reloc_valid_use (ebl->elf, reloc) : false; in ebl_reloc_valid_use()
|
H A D | eblcopyrelocp.c | 38 ebl_copy_reloc_p (Ebl *ebl, int reloc) in ebl_copy_reloc_p() argument 40 return ebl->copy_reloc_p (reloc); in ebl_copy_reloc_p()
|
H A D | eblgotpcreloccheck.c | 39 ebl_gotpc_reloc_check (Ebl *ebl, int reloc) in ebl_gotpc_reloc_check() argument 41 return ebl != NULL ? ebl->gotpc_reloc_check (ebl->elf, reloc) : false; in ebl_gotpc_reloc_check()
|
/third_party/mesa3d/src/broadcom/compiler/ |
H A D | v3d33_vpm_setup.c | 29 #define __gen_address_offset(reloc) (*reloc) 30 #define __gen_emit_reloc(cl, reloc)
|
/third_party/mesa3d/src/gallium/drivers/vc4/ |
H A D | vc4_cl.h | 52 #define __gen_address_offset(reloc) ((reloc)->offset) 212 struct vc4_cl_reloc reloc = { in cl_address() local 216 return reloc; in cl_address() 280 cl_pack_emit_reloc(struct vc4_cl *cl, const struct vc4_cl_reloc *reloc) in cl_pack_emit_reloc() argument 282 *(uint32_t *)cl->reloc_next = vc4_gem_hindex(cl->job, reloc->bo); in cl_pack_emit_reloc()
|
/third_party/elfio/tests/ |
H A D | ELFIOTest.cpp | 278 const_relocation_section_accessor reloc( reader, sec ); in TEST() 279 EXPECT_EQ( reloc.get_entries_num(), 1 ); in TEST() 281 checkRelocation( &reloc, 0, 0x08049568, 0x0, "__gmon_start__", in TEST() 391 const_relocation_section_accessor reloc( reader, sec ); in TEST() 392 EXPECT_EQ( reloc.get_entries_num(), 1 ); in TEST() 394 checkRelocation( &reloc, 0, 0x00600828, 0x0, "__gmon_start__", in TEST() 464 const_relocation_section_accessor reloc( reader, sec ); in TEST() 465 EXPECT_EQ( reloc.get_entries_num(), 2 ); in TEST() 467 checkRelocation( &reloc, 0, 0x00000005, 0x0, "", R_X86_64_32, 0, 0 ); in TEST() 468 checkRelocation( &reloc, in TEST() [all...] |
/third_party/libdrm/freedreno/msm/ |
H A D | msm_ringbuffer.c | 37 * a backing bo, and a reloc table. 45 /* reloc's table: */ 59 * that is global to the submit ioctl call. The reloc's table is tracked 410 ERROR_MSG(" reloc[%d]: submit_offset=%u, or=%08x, shift=%d, reloc_idx=%u" in dump_submit() 439 /* stateobj rb's could have reloc's to other stateobj rb's which didn't in handle_stateobj_relocs() 485 /* for each of the cmd's fix up their reloc's: */ in msm_ringbuffer_flush() 492 /* for reusable stateobjs, the reloc table has reloc_idx that in msm_ringbuffer_flush() 564 struct drm_msm_gem_submit_reloc *reloc; in msm_ringbuffer_emit_reloc() local 569 reloc = &cmd->relocs[idx]; in msm_ringbuffer_emit_reloc() 571 reloc in msm_ringbuffer_emit_reloc() [all...] |
/third_party/mesa3d/src/gallium/winsys/radeon/drm/ |
H A D | radeon_drm_cs.c | 40 The adding is skipped if the reloc is already present in the list, but it 51 cs_write_reloc(cs, buf) just writes a reloc that has been added using 248 /* Put this reloc in the hash list. in radeon_lookup_buffer() 268 struct drm_radeon_cs_reloc *reloc; in radeon_lookup_or_add_real_buffer() local 309 reloc = &csc->relocs[csc->num_relocs]; in radeon_lookup_or_add_real_buffer() 310 reloc->handle = bo->handle; in radeon_lookup_or_add_real_buffer() 311 reloc->read_domains = 0; in radeon_lookup_or_add_real_buffer() 312 reloc->write_domain = 0; in radeon_lookup_or_add_real_buffer() 313 reloc->flags = 0; in radeon_lookup_or_add_real_buffer() 387 struct drm_radeon_cs_reloc *reloc; in radeon_drm_cs_add_buffer() local [all...] |
/third_party/libdrm/etnaviv/ |
H A D | etnaviv_cmd_stream.c | 251 struct drm_etnaviv_gem_submit_reloc *reloc; in etna_cmd_stream_reloc() local 255 reloc = &priv->submit.relocs[idx]; in etna_cmd_stream_reloc() 257 reloc->reloc_idx = bo2idx(stream, r->bo, r->flags); in etna_cmd_stream_reloc() 258 reloc->reloc_offset = r->offset; in etna_cmd_stream_reloc() 259 reloc->submit_offset = stream->offset * 4; /* in bytes */ in etna_cmd_stream_reloc() 260 reloc->flags = 0; in etna_cmd_stream_reloc()
|
/third_party/mesa3d/src/etnaviv/drm/ |
H A D | etnaviv_cmd_stream.c | 261 struct drm_etnaviv_gem_submit_reloc *reloc; in etna_cmd_stream_reloc() local 268 reloc = &priv->submit.relocs[idx]; in etna_cmd_stream_reloc() 270 reloc->reloc_idx = bo_idx; in etna_cmd_stream_reloc() 271 reloc->reloc_offset = r->offset; in etna_cmd_stream_reloc() 272 reloc->submit_offset = stream->offset * 4; /* in bytes */ in etna_cmd_stream_reloc() 273 reloc->flags = 0; in etna_cmd_stream_reloc()
|
/third_party/libdrm/freedreno/ |
H A D | freedreno_ringbuffer.c | 92 * the IB source) as it's parent before emitting reloc's, to ensure 146 const struct fd_reloc *reloc) in fd_ringbuffer_reloc() 149 ring->funcs->emit_reloc(ring, reloc); in fd_ringbuffer_reloc() 153 const struct fd_reloc *reloc) in fd_ringbuffer_reloc2() 155 ring->funcs->emit_reloc(ring, reloc); in fd_ringbuffer_reloc2() 145 fd_ringbuffer_reloc(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_reloc() argument 152 fd_ringbuffer_reloc2(struct fd_ringbuffer *ring, const struct fd_reloc *reloc) fd_ringbuffer_reloc2() argument
|