aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2020-11-30 14:58:02 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2020-11-30 14:58:02 +0100
commit6cc4962b60d451e918e338ccca98afda99f49f6e (patch)
treeaf98468492c063ea74d53307678786339447cb5e
parent965b795b87c59ed45cc7f16a62301dbae65b1627 (diff)
downloadbusybox-6cc4962b60d451e918e338ccca98afda99f49f6e.tar.gz
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>
-rw-r--r--archival/libarchive/decompress_gunzip.c4
-rw-r--r--miscutils/bc.c2
-rw-r--r--miscutils/i2c_tools.c4
-rw-r--r--networking/ifconfig.c4
-rw-r--r--networking/inetd.c2
-rw-r--r--networking/netstat.c2
-rw-r--r--networking/nslookup.c4
-rw-r--r--networking/traceroute.c4
-rw-r--r--util-linux/blockdev.c2
9 files changed, 14 insertions, 14 deletions
diff --git a/archival/libarchive/decompress_gunzip.c b/archival/libarchive/decompress_gunzip.c
index 03049cc9b..eb3b64930 100644
--- a/archival/libarchive/decompress_gunzip.c
+++ b/archival/libarchive/decompress_gunzip.c
@@ -194,14 +194,14 @@ struct cp_ext {
};
/* Copy lengths and extra bits for literal codes 257..285 */
/* note: see note #13 above about the 258 in this list. */
-static const struct cp_ext lit = {
+static const struct cp_ext lit ALIGN2 = {
/*257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 */
/*0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 */
{ 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 99, 99 } /* 99 == invalid */
};
/* Copy offsets and extra bits for distance codes 0..29 */
-static const struct cp_ext dist = {
+static const struct cp_ext dist ALIGN2 = {
/*0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 */
{ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577 },
{ 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13 }
diff --git a/miscutils/bc.c b/miscutils/bc.c
index 4d987325e..f339b895c 100644
--- a/miscutils/bc.c
+++ b/miscutils/bc.c
@@ -517,7 +517,7 @@ struct BcLexKeyword {
};
#define LEX_KW_ENTRY(a, b) \
{ .name8 = a /*, .posix = b */ }
-static const struct BcLexKeyword bc_lex_kws[20] = {
+static const struct BcLexKeyword bc_lex_kws[20] ALIGN8 = {
LEX_KW_ENTRY("auto" , 1), // 0
LEX_KW_ENTRY("break" , 1), // 1
LEX_KW_ENTRY("continue", 0), // 2 note: this one has no terminating NUL
diff --git a/miscutils/i2c_tools.c b/miscutils/i2c_tools.c
index 09364e396..57cac5d47 100644
--- a/miscutils/i2c_tools.c
+++ b/miscutils/i2c_tools.c
@@ -1052,7 +1052,7 @@ struct adap_desc {
const char *algo;
};
-static const struct adap_desc adap_descs[] = {
+static const struct adap_desc adap_descs[] ALIGN_PTR = {
{ .funcs = "dummy", .algo = "Dummy bus", },
{ .funcs = "isa", .algo = "ISA bus", },
{ .funcs = "i2c", .algo = "I2C adapter", },
@@ -1064,7 +1064,7 @@ struct i2c_func {
const char* name;
};
-static const struct i2c_func i2c_funcs_tab[] = {
+static const struct i2c_func i2c_funcs_tab[] ALIGN_PTR = {
{ .value = I2C_FUNC_I2C,
.name = "I2C" },
{ .value = I2C_FUNC_SMBUS_QUICK,
diff --git a/networking/ifconfig.c b/networking/ifconfig.c
index 3c9a2dfb3..c3e448be0 100644
--- a/networking/ifconfig.c
+++ b/networking/ifconfig.c
@@ -247,7 +247,7 @@ struct options {
* 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 @@ static const struct arg1opt Arg1Opt[] = {
{ "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 44b1ac700..9f5a436d6 100644
--- a/networking/inetd.c
+++ b/networking/inetd.c
@@ -361,7 +361,7 @@ struct builtin {
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 3ab7b0d21..807800a62 100644
--- a/networking/netstat.c
+++ b/networking/netstat.c
@@ -114,7 +114,7 @@ enum {
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 759de5c83..dda22de0e 100644
--- a/networking/nslookup.c
+++ b/networking/nslookup.c
@@ -273,7 +273,7 @@ struct query {
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 @@ static const struct {
{ 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 34d2a09dd..7dde10524 100644
--- a/networking/traceroute.c
+++ b/networking/traceroute.c
@@ -536,7 +536,7 @@ send_probe(int seq, int ttl)
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 @@ pr_type(unsigned char t)
"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",
diff --git a/util-linux/blockdev.c b/util-linux/blockdev.c
index e60bbe609..20a031377 100644
--- a/util-linux/blockdev.c
+++ b/util-linux/blockdev.c
@@ -60,7 +60,7 @@ static const char bdcmd_names[] ALIGN1 =
"flushbufs" "\0"
"rereadpt" "\0"
;
-static const uint32_t bdcmd_ioctl[] = {
+static const uint32_t bdcmd_ioctl[] ALIGN4 = {
BLKROSET, //setro
BLKROSET, //setrw
BLKROGET, //getro