decrease padding: gcc-9.3.1 slaps 32-byte alignment on arrays willy-nilly
text data bss dec hex filename
1021236 559 5052 1026847 fab1f busybox_old
1021120 559 5052 1026731 faaab busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/networking/ifconfig.c b/networking/ifconfig.c
index 3c9a2df..c3e448b 100644
--- a/networking/ifconfig.c
+++ b/networking/ifconfig.c
@@ -247,7 +247,7 @@
* Set up the tables. Warning! They must have corresponding order!
*/
-static const struct arg1opt Arg1Opt[] = {
+static const struct arg1opt Arg1Opt[] ALIGN_PTR = {
{ "SIFMETRIC", SIOCSIFMETRIC, ifreq_offsetof(ifr_metric) },
{ "SIFMTU", SIOCSIFMTU, ifreq_offsetof(ifr_mtu) },
{ "SIFTXQLEN", SIOCSIFTXQLEN, ifreq_offsetof(ifr_qlen) },
@@ -277,7 +277,7 @@
{ "SIFADDR", SIOCSIFADDR, ifreq_offsetof(ifr_addr) },
};
-static const struct options OptArray[] = {
+static const struct options OptArray[] ALIGN_PTR = {
{ "metric", N_ARG, ARG_METRIC, 0 },
{ "mtu", N_ARG, ARG_MTU, 0 },
{ "txqueuelen", N_ARG, ARG_TXQUEUELEN, 0 },
diff --git a/networking/inetd.c b/networking/inetd.c
index 44b1ac7..9f5a436 100644
--- a/networking/inetd.c
+++ b/networking/inetd.c
@@ -361,7 +361,7 @@
void (*bi_dgram_fn)(int, servtab_t *) FAST_FUNC;
};
-static const struct builtin builtins[] = {
+static const struct builtin builtins[] ALIGN_PTR = {
#if ENABLE_FEATURE_INETD_SUPPORT_BUILTIN_ECHO
{ "echo", 1, echo_stream, echo_dg },
#endif
diff --git a/networking/netstat.c b/networking/netstat.c
index 3ab7b0d..807800a 100644
--- a/networking/netstat.c
+++ b/networking/netstat.c
@@ -114,7 +114,7 @@
TCP_CLOSING, /* now a valid state */
};
-static const char *const tcp_state[] = {
+static const char *const tcp_state[] ALIGN_PTR = {
"",
"ESTABLISHED",
"SYN_SENT",
diff --git a/networking/nslookup.c b/networking/nslookup.c
index 759de5c..dda22de 100644
--- a/networking/nslookup.c
+++ b/networking/nslookup.c
@@ -273,7 +273,7 @@
static const struct {
unsigned char type;
char name[7];
-} qtypes[] = {
+} qtypes[] ALIGN1 = {
{ ns_t_soa, "SOA" },
{ ns_t_ns, "NS" },
{ ns_t_a, "A" },
@@ -288,7 +288,7 @@
{ ns_t_any, "ANY" },
};
-static const char *const rcodes[] = {
+static const char *const rcodes[] ALIGN_PTR = {
"NOERROR", // 0
"FORMERR", // 1
"SERVFAIL", // 2
diff --git a/networking/traceroute.c b/networking/traceroute.c
index 34d2a09..7dde105 100644
--- a/networking/traceroute.c
+++ b/networking/traceroute.c
@@ -536,7 +536,7 @@
static const char *
pr_type(unsigned char t)
{
- static const char *const ttab[] = {
+ static const char *const ttab[] ALIGN_PTR = {
"Echo Reply", "ICMP 1", "ICMP 2", "Dest Unreachable",
"Source Quench", "Redirect", "ICMP 6", "ICMP 7",
"Echo", "Router Advert", "Router Solicit", "Time Exceeded",
@@ -544,7 +544,7 @@
"Info Reply", "Mask Request", "Mask Reply"
};
# if ENABLE_TRACEROUTE6
- static const char *const ttab6[] = {
+ static const char *const ttab6[] ALIGN_PTR = {
[0] = "Error", "Dest Unreachable", "Packet Too Big", "Time Exceeded",
[4] = "Param Problem",
[8] = "Echo Request", "Echo Reply", "Membership Query", "Membership Report",