aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2017-06-16 10:39:15 -0400
committerArnaldo Carvalho de Melo <acme@redhat.com>2017-06-19 14:27:07 -0400
commitc9f5da742fa3dfebc49d03deb312522e5db643ed (patch)
tree35df8ff32fab60ca01c5f8e6cec479fa36d4dcf9
parent9dd4ca470e03334f95cc96529ba090921aac8eab (diff)
tools: Adopt __packed from kernel sources
To have a more compact way to ask the compiler to not insert alignment paddings in a struct, making tools/ look more like kernel source code. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: http://lkml.kernel.org/n/tip-byp46nr7hsxvvyc9oupfb40q@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r--tools/include/linux/compiler-gcc.h2
-rw-r--r--tools/perf/util/genelf_debug.c5
2 files changed, 5 insertions, 2 deletions
diff --git a/tools/include/linux/compiler-gcc.h b/tools/include/linux/compiler-gcc.h
index c13e6f7d5a2a..0f57a48272ab 100644
--- a/tools/include/linux/compiler-gcc.h
+++ b/tools/include/linux/compiler-gcc.h
@@ -22,6 +22,8 @@
22 22
23#define noinline __attribute__((noinline)) 23#define noinline __attribute__((noinline))
24 24
25#define __packed __attribute__((packed))
26
25#define __noreturn __attribute__((noreturn)) 27#define __noreturn __attribute__((noreturn))
26 28
27#define __printf(a, b) __attribute__((format(printf, a, b))) 29#define __printf(a, b) __attribute__((format(printf, a, b)))
diff --git a/tools/perf/util/genelf_debug.c b/tools/perf/util/genelf_debug.c
index 5980f7d256b1..40789d8603d0 100644
--- a/tools/perf/util/genelf_debug.c
+++ b/tools/perf/util/genelf_debug.c
@@ -11,6 +11,7 @@
11 * @remark Copyright 2007 OProfile authors 11 * @remark Copyright 2007 OProfile authors
12 * @author Philippe Elie 12 * @author Philippe Elie
13 */ 13 */
14#include <linux/compiler.h>
14#include <sys/types.h> 15#include <sys/types.h>
15#include <stdio.h> 16#include <stdio.h>
16#include <getopt.h> 17#include <getopt.h>
@@ -125,7 +126,7 @@ struct debug_line_header {
125 * and filesize, last entry is followed by en empty string. 126 * and filesize, last entry is followed by en empty string.
126 */ 127 */
127 /* follow the first program statement */ 128 /* follow the first program statement */
128} __attribute__((packed)); 129} __packed;
129 130
130/* DWARF 2 spec talk only about one possible compilation unit header while 131/* DWARF 2 spec talk only about one possible compilation unit header while
131 * binutils can handle two flavours of dwarf 2, 32 and 64 bits, this is not 132 * binutils can handle two flavours of dwarf 2, 32 and 64 bits, this is not
@@ -138,7 +139,7 @@ struct compilation_unit_header {
138 uhalf version; 139 uhalf version;
139 uword debug_abbrev_offset; 140 uword debug_abbrev_offset;
140 ubyte pointer_size; 141 ubyte pointer_size;
141} __attribute__((packed)); 142} __packed;
142 143
143#define DW_LNS_num_opcode (DW_LNS_set_isa + 1) 144#define DW_LNS_num_opcode (DW_LNS_set_isa + 1)
144 145