ar71xx: change the unaligned access hack to assume an alignment of 2 bytes, slightly improves performance and code size

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34912 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
Felix Fietkau
2012-12-28 21:30:24 +00:00
parent 52db048af3
commit 2066816243

View File

@@ -57,7 +57,7 @@
__be32 daddr;
/*The options start here. */
-};
+} __packed;
+} __packed __attribute__((aligned(2)));
#ifdef __KERNEL__
#include <linux/skbuff.h>
@@ -68,7 +68,7 @@
struct in6_addr saddr;
struct in6_addr daddr;
-};
+} __packed;
+} __packed __attribute__((aligned(2)));
#ifdef __KERNEL__
/*
@@ -79,7 +79,7 @@
__sum16 check;
__be16 urg_ptr;
-};
+} __packed;
+} __packed __attribute__((aligned(2)));
/*
* The union cast uses a gcc extension to avoid aliasing problems
@@ -90,7 +90,7 @@
__be16 len;
__sum16 check;
-};
+} __packed;
+} __packed __attribute__((aligned(2)));
/* UDP socket options */
#define UDP_CORK 1 /* Never send partially complete segments */