tools/perf/util/symbol-elf.c | 8 ++++++++ 1 file changed, 8 insertions(+)
We can see the following definitions in bfd/elfnn-loongarch.c:
#define PLT_HEADER_INSNS 8
#define PLT_HEADER_SIZE (PLT_HEADER_INSNS * 4)
#define PLT_ENTRY_INSNS 4
#define PLT_ENTRY_SIZE (PLT_ENTRY_INSNS * 4)
so plt header size is 32 and plt entry size is 16 on LoongArch,
let us add LoongArch case in get_plt_sizes().
Link: https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=bfd/elfnn-loongarch.c
Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
---
v2: Add EM_LOONGARCH definition to avoid build error
tools/perf/util/symbol-elf.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c
index b2ed9cc..b3dbf6c 100644
--- a/tools/perf/util/symbol-elf.c
+++ b/tools/perf/util/symbol-elf.c
@@ -35,6 +35,10 @@
#define EM_AARCH64 183 /* ARM 64 bit */
#endif
+#ifndef EM_LOONGARCH
+#define EM_LOONGARCH 258
+#endif
+
#ifndef ELF32_ST_VISIBILITY
#define ELF32_ST_VISIBILITY(o) ((o) & 0x03)
#endif
@@ -411,6 +415,10 @@ static bool get_plt_sizes(struct dso *dso, GElf_Ehdr *ehdr, GElf_Shdr *shdr_plt,
*plt_header_size = 32;
*plt_entry_size = 16;
return true;
+ case EM_LOONGARCH:
+ *plt_header_size = 32;
+ *plt_entry_size = 16;
+ return true;
case EM_SPARC:
*plt_header_size = 48;
*plt_entry_size = 12;
--
2.1.0
Acked-by: Huacai Chen <chenhuacai@loongson.cn> On Tue, May 23, 2023 at 5:57 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote: > > We can see the following definitions in bfd/elfnn-loongarch.c: > > #define PLT_HEADER_INSNS 8 > #define PLT_HEADER_SIZE (PLT_HEADER_INSNS * 4) > > #define PLT_ENTRY_INSNS 4 > #define PLT_ENTRY_SIZE (PLT_ENTRY_INSNS * 4) > > so plt header size is 32 and plt entry size is 16 on LoongArch, > let us add LoongArch case in get_plt_sizes(). > > Link: https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=bfd/elfnn-loongarch.c > Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> > --- > > v2: Add EM_LOONGARCH definition to avoid build error > > tools/perf/util/symbol-elf.c | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c > index b2ed9cc..b3dbf6c 100644 > --- a/tools/perf/util/symbol-elf.c > +++ b/tools/perf/util/symbol-elf.c > @@ -35,6 +35,10 @@ > #define EM_AARCH64 183 /* ARM 64 bit */ > #endif > > +#ifndef EM_LOONGARCH > +#define EM_LOONGARCH 258 > +#endif > + > #ifndef ELF32_ST_VISIBILITY > #define ELF32_ST_VISIBILITY(o) ((o) & 0x03) > #endif > @@ -411,6 +415,10 @@ static bool get_plt_sizes(struct dso *dso, GElf_Ehdr *ehdr, GElf_Shdr *shdr_plt, > *plt_header_size = 32; > *plt_entry_size = 16; > return true; > + case EM_LOONGARCH: > + *plt_header_size = 32; > + *plt_entry_size = 16; > + return true; > case EM_SPARC: > *plt_header_size = 48; > *plt_entry_size = 12; > -- > 2.1.0 > >
Hi Arnaldo, On 05/23/2023 06:26 PM, Huacai Chen wrote: > Acked-by: Huacai Chen <chenhuacai@loongson.cn> > > On Tue, May 23, 2023 at 5:57 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote: >> >> We can see the following definitions in bfd/elfnn-loongarch.c: >> >> #define PLT_HEADER_INSNS 8 >> #define PLT_HEADER_SIZE (PLT_HEADER_INSNS * 4) >> >> #define PLT_ENTRY_INSNS 4 >> #define PLT_ENTRY_SIZE (PLT_ENTRY_INSNS * 4) >> >> so plt header size is 32 and plt entry size is 16 on LoongArch, >> let us add LoongArch case in get_plt_sizes(). >> >> Link: https://sourceware.org/git/?p=binutils-gdb.git;a=blob;f=bfd/elfnn-loongarch.c >> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> >> --- >> >> v2: Add EM_LOONGARCH definition to avoid build error >> >> tools/perf/util/symbol-elf.c | 8 ++++++++ >> 1 file changed, 8 insertions(+) >> >> diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c >> index b2ed9cc..b3dbf6c 100644 >> --- a/tools/perf/util/symbol-elf.c >> +++ b/tools/perf/util/symbol-elf.c >> @@ -35,6 +35,10 @@ >> #define EM_AARCH64 183 /* ARM 64 bit */ >> #endif >> >> +#ifndef EM_LOONGARCH >> +#define EM_LOONGARCH 258 >> +#endif >> + >> #ifndef ELF32_ST_VISIBILITY >> #define ELF32_ST_VISIBILITY(o) ((o) & 0x03) >> #endif >> @@ -411,6 +415,10 @@ static bool get_plt_sizes(struct dso *dso, GElf_Ehdr *ehdr, GElf_Shdr *shdr_plt, >> *plt_header_size = 32; >> *plt_entry_size = 16; >> return true; >> + case EM_LOONGARCH: >> + *plt_header_size = 32; >> + *plt_entry_size = 16; >> + return true; >> case EM_SPARC: >> *plt_header_size = 48; >> *plt_entry_size = 12; >> -- >> 2.1.0 Are you OK with this change? Could you please pick it up in your tree? Thanks, Tiezhu
On 06/08/2023 03:01 PM, Tiezhu Yang wrote: > Hi Arnaldo, > > On 05/23/2023 06:26 PM, Huacai Chen wrote: >> Acked-by: Huacai Chen <chenhuacai@loongson.cn> >> >> On Tue, May 23, 2023 at 5:57 PM Tiezhu Yang <yangtiezhu@loongson.cn> >> wrote: >>> >>> We can see the following definitions in bfd/elfnn-loongarch.c: ... > > Are you OK with this change? > Could you please pick it up in your tree? Ping. What is the status of this patch? Any more comments? Is there a chance to merge it for this coming merge window? Thanks, Tiezhu
Hello, On Tue, Jun 20, 2023 at 9:36 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote: > > > > On 06/08/2023 03:01 PM, Tiezhu Yang wrote: > > Hi Arnaldo, > > > > On 05/23/2023 06:26 PM, Huacai Chen wrote: > >> Acked-by: Huacai Chen <chenhuacai@loongson.cn> > >> > >> On Tue, May 23, 2023 at 5:57 PM Tiezhu Yang <yangtiezhu@loongson.cn> > >> wrote: > >>> > >>> We can see the following definitions in bfd/elfnn-loongarch.c: > > ... > > > > > Are you OK with this change? > > Could you please pick it up in your tree? > > Ping. What is the status of this patch? Any more comments? > Is there a chance to merge it for this coming merge window? Sorry for the late reply, I'll apply it to the perf-tools-next tree. Thanks, Namhyung
On Thu, Jun 22, 2023 at 3:33 PM Namhyung Kim <namhyung@kernel.org> wrote: > > Hello, > > On Tue, Jun 20, 2023 at 9:36 PM Tiezhu Yang <yangtiezhu@loongson.cn> wrote: > > > > > > > > On 06/08/2023 03:01 PM, Tiezhu Yang wrote: > > > Hi Arnaldo, > > > > > > On 05/23/2023 06:26 PM, Huacai Chen wrote: > > >> Acked-by: Huacai Chen <chenhuacai@loongson.cn> > > >> > > >> On Tue, May 23, 2023 at 5:57 PM Tiezhu Yang <yangtiezhu@loongson.cn> > > >> wrote: > > >>> > > >>> We can see the following definitions in bfd/elfnn-loongarch.c: > > > > ... > > > > > > > > Are you OK with this change? > > > Could you please pick it up in your tree? > > > > Ping. What is the status of this patch? Any more comments? > > Is there a chance to merge it for this coming merge window? > > Sorry for the late reply, I'll apply it to the perf-tools-next tree. Applied to perf-tools-next, thanks!
© 2016 - 2026 Red Hat, Inc.