btf_encoder: Adopt btf__encode_datasec_type() as btf_encoder__add_datasec()
As it is just prep work to call libbpf's btf__add_datasec() for variables using pahole's data structures populated from another format, normally DWARF. So that we can eventually ditch the btf_encoder__verbose and btf_gen_float globals, making them members of 'struct btf_encoder'. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
b0f71fabde
commit
cc646d93d1
|
@ -455,7 +455,7 @@ int btf_encoder__encode(struct btf_encoder *encoder, const char *detached_filena
|
|||
int err;
|
||||
|
||||
if (gobuffer__size(&encoder->percpu_secinfo) != 0)
|
||||
btf__encode_datasec_type(encoder->btf, PERCPU_SECTION, &encoder->percpu_secinfo);
|
||||
btf_encoder__add_datasec(encoder, PERCPU_SECTION, &encoder->percpu_secinfo);
|
||||
|
||||
if (detached_filename == NULL)
|
||||
err = btf__encode_in_elf(encoder->btf, encoder->filename, 0);
|
||||
|
|
3
libbtf.c
3
libbtf.c
|
@ -540,9 +540,10 @@ int32_t btf__encode_var_secinfo(struct gobuffer *buf, uint32_t type,
|
|||
return gobuffer__add(buf, &si, sizeof(si));
|
||||
}
|
||||
|
||||
int32_t btf__encode_datasec_type(struct btf *btf, const char *section_name,
|
||||
int32_t btf_encoder__add_datasec(struct btf_encoder *encoder, const char *section_name,
|
||||
struct gobuffer *var_secinfo_buf)
|
||||
{
|
||||
struct btf *btf = encoder->btf;
|
||||
size_t sz = gobuffer__size(var_secinfo_buf);
|
||||
uint16_t nr_var_secinfo = sz / sizeof(struct btf_var_secinfo);
|
||||
struct btf_var_secinfo *last_vsi, *vsi;
|
||||
|
|
2
libbtf.h
2
libbtf.h
|
@ -32,6 +32,6 @@ int btf_encoder__add_enum_val(struct btf_encoder *encoder, const char *name, int
|
|||
int32_t btf_encoder__add_func_proto(struct btf_encoder *encoder, struct cu *cu, struct ftype *ftype, uint32_t type_id_off);
|
||||
int32_t btf_encoder__add_var(struct btf_encoder *encoder, uint32_t type, const char *name, uint32_t linkage);
|
||||
int32_t btf__encode_var_secinfo(struct gobuffer *buf, uint32_t type, uint32_t offset, uint32_t size);
|
||||
int32_t btf__encode_datasec_type(struct btf *btf, const char *section_name, struct gobuffer *var_secinfo_buf);
|
||||
int32_t btf_encoder__add_datasec(struct btf_encoder *encoder, const char *section_name, struct gobuffer *var_secinfo_buf);
|
||||
|
||||
#endif /* _LIBBTF_H */
|
||||
|
|
Loading…
Reference in New Issue