Browse Source

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>
Arnaldo Carvalho de Melo 8 years ago
parent
commit
c9f5da742f
2 changed files with 5 additions and 2 deletions
  1. 2 0
      tools/include/linux/compiler-gcc.h
  2. 3 2
      tools/perf/util/genelf_debug.c

+ 2 - 0
tools/include/linux/compiler-gcc.h

@@ -22,6 +22,8 @@
 
 #define  noinline	__attribute__((noinline))
 
+#define __packed	__attribute__((packed))
+
 #define __noreturn	__attribute__((noreturn))
 
 #define __printf(a, b)	__attribute__((format(printf, a, b)))

+ 3 - 2
tools/perf/util/genelf_debug.c

@@ -11,6 +11,7 @@
  * @remark Copyright 2007 OProfile authors
  * @author Philippe Elie
  */
+#include <linux/compiler.h>
 #include <sys/types.h>
 #include <stdio.h>
 #include <getopt.h>
@@ -125,7 +126,7 @@ struct debug_line_header {
 	 * and filesize, last entry is followed by en empty string.
 	 */
 	/* follow the first program statement */
-} __attribute__((packed));
+} __packed;
 
 /* DWARF 2 spec talk only about one possible compilation unit header while
  * binutils can handle two flavours of dwarf 2, 32 and 64 bits, this is not
@@ -138,7 +139,7 @@ struct compilation_unit_header {
 	uhalf version;
 	uword debug_abbrev_offset;
 	ubyte pointer_size;
-} __attribute__((packed));
+} __packed;
 
 #define DW_LNS_num_opcode (DW_LNS_set_isa + 1)