Lines Matching +full:1 +full:- +full:d
1 // SPDX-License-Identifier: GPL-2.0-only
39 '.', 't', 'e', 'x', 't', 0, /* 1 */
43 …'.', 'n', 'o', 't', 'e', '.', 'g', 'n', 'u', '.', 'b', 'u', 'i', 'l', 'd', '-', 'i', 'd', 0, /* 33…
44 '.', 'd', 'e', 'b', 'u', 'g', '_', 'l', 'i', 'n', 'e', 0, /* 52 */
45 '.', 'd', 'e', 'b', 'u', 'g', '_', 'i', 'n', 'f', 'o', 0, /* 64 */
46 '.', 'd', 'e', 'b', 'u', 'g', '_', 'a', 'b', 'b', 'r', 'e', 'v', 0, /* 76 */
47 '.', 'e', 'h', '_', 'f', 'r', 'a', 'm', 'e', '_', 'h', 'd', 'r', 0, /* 90 */
52 Elf_Note desc; /* descsz: size of build-id, must be multiple of 4 */
66 { .st_name = 1, /* index in sym_string table */
68 .st_shndx = 1,
79 Elf_Data *d; in jit_add_eh_frame_info() local
82 uint64_t unwinding_table_size = unwinding_size - unwinding_header_size; in jit_add_eh_frame_info()
90 return -1; in jit_add_eh_frame_info()
93 d = elf_newdata(scn); in jit_add_eh_frame_info()
94 if (!d) { in jit_add_eh_frame_info()
96 return -1; in jit_add_eh_frame_info()
99 d->d_align = 8; in jit_add_eh_frame_info()
100 d->d_off = 0LL; in jit_add_eh_frame_info()
101 d->d_buf = unwinding; in jit_add_eh_frame_info()
102 d->d_type = ELF_T_BYTE; in jit_add_eh_frame_info()
103 d->d_size = unwinding_table_size; in jit_add_eh_frame_info()
104 d->d_version = EV_CURRENT; in jit_add_eh_frame_info()
109 return -1; in jit_add_eh_frame_info()
112 shdr->sh_name = 104; in jit_add_eh_frame_info()
113 shdr->sh_type = SHT_PROGBITS; in jit_add_eh_frame_info()
114 shdr->sh_addr = base_offset; in jit_add_eh_frame_info()
115 shdr->sh_flags = SHF_ALLOC; in jit_add_eh_frame_info()
116 shdr->sh_entsize = 0; in jit_add_eh_frame_info()
124 return -1; in jit_add_eh_frame_info()
127 d = elf_newdata(scn); in jit_add_eh_frame_info()
128 if (!d) { in jit_add_eh_frame_info()
130 return -1; in jit_add_eh_frame_info()
133 d->d_align = 4; in jit_add_eh_frame_info()
134 d->d_off = 0LL; in jit_add_eh_frame_info()
135 d->d_buf = unwinding + unwinding_table_size; in jit_add_eh_frame_info()
136 d->d_type = ELF_T_BYTE; in jit_add_eh_frame_info()
137 d->d_size = unwinding_header_size; in jit_add_eh_frame_info()
138 d->d_version = EV_CURRENT; in jit_add_eh_frame_info()
143 return -1; in jit_add_eh_frame_info()
146 shdr->sh_name = 90; in jit_add_eh_frame_info()
147 shdr->sh_type = SHT_PROGBITS; in jit_add_eh_frame_info()
148 shdr->sh_addr = base_offset + unwinding_table_size; in jit_add_eh_frame_info()
149 shdr->sh_flags = SHF_ALLOC; in jit_add_eh_frame_info()
150 shdr->sh_entsize = 0; in jit_add_eh_frame_info()
158 * sym: function name (for native code - used as the symbol)
169 Elf_Data *d; in jit_write_elf() local
177 int retval = -1; in jit_write_elf()
181 return -1; in jit_write_elf()
199 ehdr->e_ident[EI_DATA] = GEN_ELF_ENDIAN; in jit_write_elf()
200 ehdr->e_ident[EI_CLASS] = GEN_ELF_CLASS; in jit_write_elf()
201 ehdr->e_machine = GEN_ELF_ARCH; in jit_write_elf()
202 ehdr->e_type = ET_DYN; in jit_write_elf()
203 ehdr->e_entry = GEN_ELF_TEXT_OFFSET; in jit_write_elf()
204 ehdr->e_version = EV_CURRENT; in jit_write_elf()
205 ehdr->e_shstrndx= unwinding ? 4 : 2; /* shdr index for section name */ in jit_write_elf()
210 phdr = elf_newphdr(e, 1); in jit_write_elf()
229 d = elf_newdata(scn); in jit_write_elf()
230 if (!d) { in jit_write_elf()
235 d->d_align = 16; in jit_write_elf()
236 d->d_off = 0LL; in jit_write_elf()
237 d->d_buf = (void *)code; in jit_write_elf()
238 d->d_type = ELF_T_BYTE; in jit_write_elf()
239 d->d_size = csize; in jit_write_elf()
240 d->d_version = EV_CURRENT; in jit_write_elf()
248 shdr->sh_name = 1; in jit_write_elf()
249 shdr->sh_type = SHT_PROGBITS; in jit_write_elf()
250 shdr->sh_addr = GEN_ELF_TEXT_OFFSET; in jit_write_elf()
251 shdr->sh_flags = SHF_EXECINSTR | SHF_ALLOC; in jit_write_elf()
252 shdr->sh_entsize = 0; in jit_write_elf()
264 retval = -1; in jit_write_elf()
276 d = elf_newdata(scn); in jit_write_elf()
277 if (!d) { in jit_write_elf()
282 d->d_align = 1; in jit_write_elf()
283 d->d_off = 0LL; in jit_write_elf()
284 d->d_buf = shd_string_table; in jit_write_elf()
285 d->d_type = ELF_T_BYTE; in jit_write_elf()
286 d->d_size = sizeof(shd_string_table); in jit_write_elf()
287 d->d_version = EV_CURRENT; in jit_write_elf()
295 shdr->sh_name = 7; /* offset of '.shstrtab' in shd_string_table */ in jit_write_elf()
296 shdr->sh_type = SHT_STRTAB; in jit_write_elf()
297 shdr->sh_flags = 0; in jit_write_elf()
298 shdr->sh_entsize = 0; in jit_write_elf()
303 symtab[1].st_size = csize; in jit_write_elf()
304 symtab[1].st_value = GEN_ELF_TEXT_OFFSET; in jit_write_elf()
312 d = elf_newdata(scn); in jit_write_elf()
313 if (!d) { in jit_write_elf()
318 d->d_align = 8; in jit_write_elf()
319 d->d_off = 0LL; in jit_write_elf()
320 d->d_buf = symtab; in jit_write_elf()
321 d->d_type = ELF_T_SYM; in jit_write_elf()
322 d->d_size = sizeof(symtab); in jit_write_elf()
323 d->d_version = EV_CURRENT; in jit_write_elf()
331 shdr->sh_name = 17; /* offset of '.symtab' in shd_string_table */ in jit_write_elf()
332 shdr->sh_type = SHT_SYMTAB; in jit_write_elf()
333 shdr->sh_flags = 0; in jit_write_elf()
334 shdr->sh_entsize = sizeof(Elf_Sym); in jit_write_elf()
335 shdr->sh_link = unwinding ? 6 : 4; /* index of .strtab section */ in jit_write_elf()
339 * 2 = 1 for 0 in 1st entry, 1 for the 0 at end of symbol for 2nd entry in jit_write_elf()
342 strsym = calloc(1, symlen); in jit_write_elf()
347 strcpy(strsym + 1, sym); in jit_write_elf()
355 d = elf_newdata(scn); in jit_write_elf()
356 if (!d) { in jit_write_elf()
361 d->d_align = 1; in jit_write_elf()
362 d->d_off = 0LL; in jit_write_elf()
363 d->d_buf = strsym; in jit_write_elf()
364 d->d_type = ELF_T_BYTE; in jit_write_elf()
365 d->d_size = symlen; in jit_write_elf()
366 d->d_version = EV_CURRENT; in jit_write_elf()
374 shdr->sh_name = 25; /* offset in shd_string_table */ in jit_write_elf()
375 shdr->sh_type = SHT_STRTAB; in jit_write_elf()
376 shdr->sh_flags = 0; in jit_write_elf()
377 shdr->sh_entsize = 0; in jit_write_elf()
380 * setup build-id section in jit_write_elf()
388 d = elf_newdata(scn); in jit_write_elf()
389 if (!d) { in jit_write_elf()
395 * build-id generation in jit_write_elf()
403 d->d_align = 4; in jit_write_elf()
404 d->d_off = 0LL; in jit_write_elf()
405 d->d_buf = &bnote; in jit_write_elf()
406 d->d_type = ELF_T_BYTE; in jit_write_elf()
407 d->d_size = sizeof(bnote); in jit_write_elf()
408 d->d_version = EV_CURRENT; in jit_write_elf()
416 shdr->sh_name = 33; /* offset in shd_string_table */ in jit_write_elf()
417 shdr->sh_type = SHT_NOTE; in jit_write_elf()
418 shdr->sh_addr = 0x0; in jit_write_elf()
419 shdr->sh_flags = SHF_ALLOC; in jit_write_elf()
420 shdr->sh_size = sizeof(bnote); in jit_write_elf()
421 shdr->sh_entsize = 0; in jit_write_elf()