Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1312525
| From | Ben Hutchings <ben@decadent.org.uk> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table |
| Date | 2016-01-19 22:40 +0100 |
| Message-ID | <qSMam-56x-15@gated-at.bofh.it> (permalink) |
| References | <qSMam-56x-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
[Multipart message — attachments visible in raw view] - view raw
gcc 5 doesn't seem to care about these, but gcc 6 does and that
results in a build failure.
Fixes: bbbe6bf6037d ("perf tools: Introduce regs_query_register_offset() ...")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
tools/perf/arch/x86/util/dwarf-regs.c | 38 ++++++++++++++++-------------------
1 file changed, 17 insertions(+), 21 deletions(-)
diff --git a/tools/perf/arch/x86/util/dwarf-regs.c b/tools/perf/arch/x86/util/dwarf-regs.c
index 9223c16..fe1e516 100644
--- a/tools/perf/arch/x86/util/dwarf-regs.c
+++ b/tools/perf/arch/x86/util/dwarf-regs.c
@@ -55,26 +55,10 @@ struct pt_regs_offset {
#define REG_OFFSET_END {.name = NULL, .offset = 0}
+/* TODO: switching by dwarf address size */
#ifdef __x86_64__
-# define REG_OFFSET_NAME_64(n, r) {.name = n, .offset = offsetof(struct pt_regs, r)}
-# define REG_OFFSET_NAME_32(n, r) {.name = n, .offset = -1}
-#else
-# define REG_OFFSET_NAME_64(n, r) {.name = n, .offset = -1}
-# define REG_OFFSET_NAME_32(n, r) {.name = n, .offset = offsetof(struct pt_regs, r)}
-#endif
-
-static const struct pt_regs_offset x86_32_regoffset_table[] = {
- REG_OFFSET_NAME_32("%ax", eax),
- REG_OFFSET_NAME_32("%cx", ecx),
- REG_OFFSET_NAME_32("%dx", edx),
- REG_OFFSET_NAME_32("%bx", ebx),
- REG_OFFSET_NAME_32("$stack", esp), /* Stack address instead of %sp */
- REG_OFFSET_NAME_32("%bp", ebp),
- REG_OFFSET_NAME_32("%si", esi),
- REG_OFFSET_NAME_32("%di", edi),
- REG_OFFSET_END,
-};
+#define REG_OFFSET_NAME_64(n, r) {.name = n, .offset = offsetof(struct pt_regs, r)}
static const struct pt_regs_offset x86_64_regoffset_table[] = {
REG_OFFSET_NAME_64("%ax", rax),
REG_OFFSET_NAME_64("%dx", rdx),
@@ -94,12 +78,24 @@ static const struct pt_regs_offset x86_64_regoffset_table[] = {
REG_OFFSET_NAME_64("%r15", r15),
REG_OFFSET_END,
};
-
-/* TODO: switching by dwarf address size */
-#ifdef __x86_64__
#define regoffset_table x86_64_regoffset_table
+
#else
+
+#define REG_OFFSET_NAME_32(n, r) {.name = n, .offset = offsetof(struct pt_regs, r)}
+static const struct pt_regs_offset x86_32_regoffset_table[] = {
+ REG_OFFSET_NAME_32("%ax", eax),
+ REG_OFFSET_NAME_32("%cx", ecx),
+ REG_OFFSET_NAME_32("%dx", edx),
+ REG_OFFSET_NAME_32("%bx", ebx),
+ REG_OFFSET_NAME_32("$stack", esp), /* Stack address instead of %sp */
+ REG_OFFSET_NAME_32("%bp", ebp),
+ REG_OFFSET_NAME_32("%si", esi),
+ REG_OFFSET_NAME_32("%di", edi),
+ REG_OFFSET_END,
+};
#define regoffset_table x86_32_regoffset_table
+
#endif
/* Minus 1 for the ending REG_OFFSET_END */
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH perf 0/4] Build fixes for gcc 6 Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 22:40 +0100
[PATCH perf 4/4] perf tests: Delete mis-indented dead code that causes build failure with gcc 6 Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 22:40 +0100
[PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 22:40 +0100
Re: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-20 15:00 +0100
Re: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table "Wangnan (F)" <wangnan0@huawei.com> - 2016-01-21 05:50 +0100
Re: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-21 16:40 +0100
Re: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-21 16:50 +0100
Re: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table "Wangnan (F)" <wangnan0@huawei.com> - 2016-01-22 02:40 +0100
RE: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> - 2016-01-22 07:00 +0100
Re: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table "Wangnan (F)" <wangnan0@huawei.com> - 2016-01-22 07:30 +0100
RE: [PATCH perf 3/4] perf tools: Fix unused variables: x86_{32,64}_regoffset_table 平松雅巳 / HIRAMATU,MASAMI <masami.hiramatsu.pt@hitachi.com> - 2016-01-22 09:10 +0100
[PATCH perf 2/4] perf top: Fix behaviour of Shift-Tab in annotated view with nothing focussed Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 22:40 +0100
[PATCH perf 1/4] perf tools: Fix wrong indentation and build failure with gcc 6 Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 22:40 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Markus Trippelsdorf <markus@trippelsdorf.de> - 2016-01-19 22:50 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 23:00 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Ben Hutchings <ben@decadent.org.uk> - 2016-01-19 23:10 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Markus Trippelsdorf <markus@trippelsdorf.de> - 2016-01-19 23:10 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-19 23:30 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Markus Trippelsdorf <markus@trippelsdorf.de> - 2016-01-19 23:40 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-20 14:30 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Arnaldo Carvalho de Melo <acme@kernel.org> - 2016-01-19 23:40 +0100
Re: [PATCH perf 0/4] Build fixes for gcc 6 Markus Trippelsdorf <markus@trippelsdorf.de> - 2016-01-19 23:50 +0100
csiph-web