*: slap on a few ALIGN1/2s where appropriate
The result of looking at "grep -F -B2 '*fill*' busybox_unstripped.map" text data bss dec hex filename 829901 4086 1904 835891 cc133 busybox_before 829665 4086 1904 835655 cc047 busybox Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
663d1da1e6
commit
3e134ebf6a
@ -6,4 +6,4 @@
|
||||
#include "libbb.h"
|
||||
#include "bb_archive.h"
|
||||
|
||||
const char cpio_TRAILER[] = "TRAILER!!!";
|
||||
const char cpio_TRAILER[] ALIGN1 = "TRAILER!!!";
|
||||
|
@ -896,7 +896,7 @@ static NOINLINE int lzo_decompress(const header_t *h)
|
||||
* chksum_out
|
||||
* The rest is identical.
|
||||
*/
|
||||
static const unsigned char lzop_magic[9] = {
|
||||
static const unsigned char lzop_magic[9] ALIGN1 = {
|
||||
0x89, 0x4c, 0x5a, 0x4f, 0x00, 0x0d, 0x0a, 0x1a, 0x0a
|
||||
};
|
||||
|
||||
|
@ -487,7 +487,7 @@ int unzip_main(int argc, char **argv)
|
||||
if (overwrite == O_PROMPT)
|
||||
overwrite = O_NEVER;
|
||||
} else {
|
||||
static const char extn[][5] = { ".zip", ".ZIP" };
|
||||
static const char extn[][5] ALIGN1 = { ".zip", ".ZIP" };
|
||||
char *ext = src_fn + strlen(src_fn);
|
||||
int src_fd;
|
||||
|
||||
|
@ -318,7 +318,7 @@ enum {
|
||||
#define MI_ENTRY(N,T,F,B,M) N "\0"
|
||||
|
||||
/* Mode names given on command line */
|
||||
static const char mode_name[] =
|
||||
static const char mode_name[] ALIGN1 =
|
||||
MI_ENTRY("evenp", combination, REV | OMIT, 0, 0 )
|
||||
MI_ENTRY("parity", combination, REV | OMIT, 0, 0 )
|
||||
MI_ENTRY("oddp", combination, REV | OMIT, 0, 0 )
|
||||
@ -681,7 +681,7 @@ enum {
|
||||
#define CI_ENTRY(n,s,o) n "\0"
|
||||
|
||||
/* Name given on command line */
|
||||
static const char control_name[] =
|
||||
static const char control_name[] ALIGN1 =
|
||||
CI_ENTRY("intr", CINTR, VINTR )
|
||||
CI_ENTRY("quit", CQUIT, VQUIT )
|
||||
CI_ENTRY("erase", CERASE, VERASE )
|
||||
@ -723,7 +723,7 @@ static const char control_name[] =
|
||||
#undef CI_ENTRY
|
||||
#define CI_ENTRY(n,s,o) { s, o },
|
||||
|
||||
static const struct control_info control_info[] = {
|
||||
static const struct control_info control_info[] ALIGN2 = {
|
||||
/* This should be verbatim cut-n-paste copy of the above CI_ENTRYs */
|
||||
CI_ENTRY("intr", CINTR, VINTR )
|
||||
CI_ENTRY("quit", CQUIT, VQUIT )
|
||||
|
@ -149,14 +149,14 @@ const uint32_t e2attr_flags_value[] = {
|
||||
EXT2_TOPDIR_FL
|
||||
};
|
||||
|
||||
const char e2attr_flags_sname[] =
|
||||
const char e2attr_flags_sname[] ALIGN1 =
|
||||
#ifdef ENABLE_COMPRESSION
|
||||
"BZXE"
|
||||
#endif
|
||||
"I"
|
||||
"suSDiadAcjtT";
|
||||
|
||||
static const char e2attr_flags_lname[] =
|
||||
static const char e2attr_flags_lname[] ALIGN1 =
|
||||
#ifdef ENABLE_COMPRESSION
|
||||
"Compressed_File" "\0"
|
||||
"Compressed_Dirty_File" "\0"
|
||||
|
@ -473,7 +473,7 @@ static int parse_subst_cmd(sed_cmd_t *sed_cmd, const char *substr)
|
||||
*/
|
||||
static const char *parse_cmd_args(sed_cmd_t *sed_cmd, const char *cmdstr)
|
||||
{
|
||||
static const char cmd_letters[] = "saicrw:btTydDgGhHlnNpPqx={}";
|
||||
static const char cmd_letters[] ALIGN1 = "saicrw:btTydDgGhHlnNpPqx={}";
|
||||
enum {
|
||||
IDX_s = 0,
|
||||
IDX_a,
|
||||
|
@ -251,7 +251,7 @@ enum {
|
||||
// cmds modifying text[]
|
||||
// vda: removed "aAiIs" as they switch us into insert mode
|
||||
// and remembering input for replay after them makes no sense
|
||||
static const char modifying_cmds[] = "cCdDJoOpPrRxX<>~";
|
||||
static const char modifying_cmds[] ALIGN1 = "cCdDJoOpPrRxX<>~";
|
||||
#endif
|
||||
|
||||
enum {
|
||||
|
@ -194,7 +194,7 @@ static char *make_tempdir(void)
|
||||
* Since we unmount it at once, we can mount it anywhere.
|
||||
* Try a few locations which are likely ti exist.
|
||||
*/
|
||||
static const char dirs[] = "/mnt\0""/tmp\0""/boot\0""/proc\0";
|
||||
static const char dirs[] ALIGN1 = "/mnt\0""/tmp\0""/boot\0""/proc\0";
|
||||
const char *try_dir = dirs;
|
||||
while (mount("none", try_dir, "tmpfs", MS_SILENT, "size=16m") != 0) {
|
||||
try_dir += strlen(try_dir) + 1;
|
||||
|
@ -87,9 +87,9 @@ const char* FAST_FUNC bb_mode_string(mode_t mode)
|
||||
|
||||
/* The previous version used "0pcCd?bB-?l?s???". However, the '0', 'C',
|
||||
* and 'B' types don't appear to be available on linux. So I removed them. */
|
||||
static const char type_chars[16] = "?pc?d?b?-?l?s???";
|
||||
static const char type_chars[16] ALIGN1 = "?pc?d?b?-?l?s???";
|
||||
/********************************** 0123456789abcdef */
|
||||
static const char mode_chars[7] = "rwxSTst";
|
||||
static const char mode_chars[7] ALIGN1 = "rwxSTst";
|
||||
|
||||
const char* FAST_FUNC bb_mode_string(mode_t mode)
|
||||
{
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
#include "libbb.h"
|
||||
|
||||
/* static const uint8_t ascii64[] =
|
||||
/* static const uint8_t ascii64[] ALIGN1 =
|
||||
* "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
|
||||
*/
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
/* Believe it or not, but some arches have more than 32 SIGs!
|
||||
* HPPA: SIGSTKFLT == 36. */
|
||||
|
||||
static const char signals[][7] = {
|
||||
static const char signals[][7] ALIGN1 = {
|
||||
// SUSv3 says kill must support these, and specifies the numerical values,
|
||||
// http://www.opengroup.org/onlinepubs/009695399/utilities/kill.html
|
||||
// {0, "EXIT"}, {1, "HUP"}, {2, "INT"}, {3, "QUIT"},
|
||||
|
@ -29,7 +29,7 @@
|
||||
# include <sys/timex.h>
|
||||
#endif
|
||||
|
||||
static const uint16_t statlist_bit[] = {
|
||||
static const uint16_t statlist_bit[] ALIGN2 = {
|
||||
STA_PLL,
|
||||
STA_PPSFREQ,
|
||||
STA_PPSTIME,
|
||||
@ -45,7 +45,7 @@ static const uint16_t statlist_bit[] = {
|
||||
STA_CLOCKERR,
|
||||
0
|
||||
};
|
||||
static const char statlist_name[] =
|
||||
static const char statlist_name[] ALIGN1 =
|
||||
"PLL" "\0"
|
||||
"PPSFREQ" "\0"
|
||||
"PPSTIME" "\0"
|
||||
@ -61,7 +61,7 @@ static const char statlist_name[] =
|
||||
"CLOCKERR"
|
||||
;
|
||||
|
||||
static const char ret_code_descript[] =
|
||||
static const char ret_code_descript[] ALIGN1 =
|
||||
"clock synchronized" "\0"
|
||||
"insert leap second" "\0"
|
||||
"delete leap second" "\0"
|
||||
|
@ -40,7 +40,7 @@
|
||||
#if ENABLE_FEATURE_EJECT_SCSI
|
||||
static void eject_scsi(const char *dev)
|
||||
{
|
||||
static const char sg_commands[3][6] = {
|
||||
static const char sg_commands[3][6] ALIGN1 = {
|
||||
{ ALLOW_MEDIUM_REMOVAL, 0, 0, 0, 0, 0 },
|
||||
{ START_STOP, 0, 0, 0, 1, 0 },
|
||||
{ START_STOP, 0, 0, 0, 2, 0 }
|
||||
|
@ -41,7 +41,7 @@ enum {
|
||||
IOPRIO_CLASS_IDLE
|
||||
};
|
||||
|
||||
static const char to_prio[] = "none\0realtime\0best-effort\0idle";
|
||||
static const char to_prio[] ALIGN1 = "none\0realtime\0best-effort\0idle";
|
||||
|
||||
#define IOPRIO_CLASS_SHIFT 13
|
||||
|
||||
|
@ -257,7 +257,7 @@ enum print_mode
|
||||
#define CTL_CLOSE (1 << 3)
|
||||
#define CTL_NODIE (1 << 4)
|
||||
|
||||
static const char serial_types[] =
|
||||
static const char serial_types[] ALIGN1 =
|
||||
"unknown\0" /* 0 */
|
||||
"8250\0" /* 1 */
|
||||
"16450\0" /* 2 */
|
||||
@ -288,7 +288,7 @@ static const char serial_types[] =
|
||||
# define MAX_SERIAL_TYPE 13
|
||||
#endif
|
||||
|
||||
static const char commands[] =
|
||||
static const char commands[] ALIGN1 =
|
||||
"spd_normal\0"
|
||||
"spd_hi\0"
|
||||
"spd_vhi\0"
|
||||
@ -404,8 +404,8 @@ static const uint16_t setbits[CMD_FLAG_LAST + 1] =
|
||||
ASYNC_LOW_LATENCY
|
||||
};
|
||||
|
||||
static const char STR_INFINITE[] = "infinite";
|
||||
static const char STR_NONE[] = "none";
|
||||
#define STR_INFINITE "infinite"
|
||||
#define STR_NONE "none"
|
||||
|
||||
static const char *uart_type(int type)
|
||||
{
|
||||
|
@ -62,7 +62,7 @@ static unsigned nud_state_a2n(char *arg)
|
||||
"stale\0" "incomplete\0" "delay\0" "probe\0"
|
||||
"failed\0"
|
||||
;
|
||||
static uint8_t nuds[] = {
|
||||
static uint8_t nuds[] ALIGN1 = {
|
||||
NUD_PERMANENT,NUD_REACHABLE, NUD_NOARP,NUD_NONE,
|
||||
NUD_STALE, NUD_INCOMPLETE,NUD_DELAY,NUD_PROBE,
|
||||
NUD_FAILED
|
||||
|
@ -84,7 +84,7 @@ ETH_P_IP
|
||||
|
||||
/* Keep declarations above and below in sync! */
|
||||
|
||||
static const char llproto_names[] =
|
||||
static const char llproto_names[] ALIGN1 =
|
||||
#define __PF(f,n) #n "\0"
|
||||
__PF(LOOP,loop)
|
||||
__PF(PUP,pup)
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
const char* FAST_FUNC ll_type_n2a(int type, char *buf)
|
||||
{
|
||||
static const char arphrd_name[] =
|
||||
static const char arphrd_name[] ALIGN1 =
|
||||
/* 0, */ "generic" "\0"
|
||||
/* ARPHRD_LOOPBACK, */ "loopback" "\0"
|
||||
/* ARPHRD_ETHER, */ "ether" "\0"
|
||||
@ -105,7 +105,7 @@ const char* FAST_FUNC ll_type_n2a(int type, char *buf)
|
||||
|
||||
/* Keep these arrays in sync! */
|
||||
|
||||
static const uint16_t arphrd_type[] = {
|
||||
static const uint16_t arphrd_type[] ALIGN2 = {
|
||||
0, /* "generic" "\0" */
|
||||
ARPHRD_LOOPBACK, /* "loopback" "\0" */
|
||||
ARPHRD_ETHER, /* "ether" "\0" */
|
||||
|
@ -94,9 +94,9 @@ exceptional conditions.
|
||||
#endif
|
||||
+#ifdef TIOCPKT
|
||||
+ int control;
|
||||
+ static const char lflow_on[] =
|
||||
+ static const char lflow_on[] ALIGN1 =
|
||||
+ {IAC, SB, TELOPT_LFLOW, LFLOW_ON, IAC, SE};
|
||||
+ static const char lflow_off[] =
|
||||
+ static const char lflow_off[] ALIGN1 =
|
||||
+ {IAC, SB, TELOPT_LFLOW, LFLOW_OFF, IAC, SE};
|
||||
+# define RESERVED sizeof(lflow_on)
|
||||
+#else
|
||||
|
@ -109,7 +109,7 @@ enum {
|
||||
/*** Script execution code ***/
|
||||
|
||||
/* get a rough idea of how long an option will be (rounding up...) */
|
||||
static const uint8_t len_of_option_as_string[] = {
|
||||
static const uint8_t len_of_option_as_string[] ALIGN1 = {
|
||||
[OPTION_IP ] = sizeof("255.255.255.255 "),
|
||||
[OPTION_IP_PAIR ] = sizeof("255.255.255.255 ") * 2,
|
||||
[OPTION_STATIC_ROUTES ] = sizeof("255.255.255.255/32 255.255.255.255 "),
|
||||
|
@ -146,10 +146,10 @@ struct host_info {
|
||||
char *host;
|
||||
int port;
|
||||
};
|
||||
static const char P_FTP[] = "ftp";
|
||||
static const char P_HTTP[] = "http";
|
||||
static const char P_FTP[] ALIGN1 = "ftp";
|
||||
static const char P_HTTP[] ALIGN1 = "http";
|
||||
#if ENABLE_FEATURE_WGET_OPENSSL || ENABLE_FEATURE_WGET_SSL_HELPER
|
||||
static const char P_HTTPS[] = "https";
|
||||
static const char P_HTTPS[] ALIGN1 = "https";
|
||||
#endif
|
||||
|
||||
#if ENABLE_FEATURE_WGET_LONG_OPTIONS
|
||||
|
@ -265,9 +265,9 @@ static int mult_lvl_cmp(void* a, void* b)
|
||||
static NOINLINE int read_cpu_jiffy(FILE *fp, jiffy_counts_t *p_jif)
|
||||
{
|
||||
#if !ENABLE_FEATURE_TOP_SMP_CPU
|
||||
static const char fmt[] = "cpu %llu %llu %llu %llu %llu %llu %llu %llu";
|
||||
static const char fmt[] ALIGN1 = "cpu %llu %llu %llu %llu %llu %llu %llu %llu";
|
||||
#else
|
||||
static const char fmt[] = "cp%*s %llu %llu %llu %llu %llu %llu %llu %llu";
|
||||
static const char fmt[] ALIGN1 = "cp%*s %llu %llu %llu %llu %llu %llu %llu %llu";
|
||||
#endif
|
||||
int ret;
|
||||
|
||||
@ -519,7 +519,7 @@ enum {
|
||||
|
||||
static void parse_meminfo(unsigned long meminfo[MI_MAX])
|
||||
{
|
||||
static const char fields[] =
|
||||
static const char fields[] ALIGN1 =
|
||||
"MemTotal\0"
|
||||
"MemFree\0"
|
||||
"MemShared\0"
|
||||
|
@ -2750,7 +2750,7 @@ pwdcmd(int argc UNUSED_PARAM, char **argv UNUSED_PARAM)
|
||||
#else
|
||||
# define SIT_ITEM(a,b,c,d) (a | (b << 4) | (c << 8))
|
||||
#endif
|
||||
static const uint16_t S_I_T[] = {
|
||||
static const uint16_t S_I_T[] ALIGN2 = {
|
||||
#if ENABLE_ASH_ALIAS
|
||||
SIT_ITEM(CSPCL , CIGN , CIGN , CIGN ), /* 0, PEOA */
|
||||
#endif
|
||||
@ -2852,7 +2852,7 @@ SIT(int c, int syntax)
|
||||
|
||||
#else /* !USE_SIT_FUNCTION */
|
||||
|
||||
static const uint8_t syntax_index_table[] = {
|
||||
static const uint8_t syntax_index_table[] ALIGN1 = {
|
||||
/* BASESYNTAX_DQSYNTAX_SQSYNTAX_ARISYNTAX */
|
||||
/* 0 */ CWORD_CWORD_CWORD_CWORD,
|
||||
/* 1 */ CWORD_CWORD_CWORD_CWORD,
|
||||
@ -7977,7 +7977,7 @@ static char *funcstring; /* block to allocate strings from */
|
||||
#define EV_TESTED 02 /* exit status is checked; ignore -e flag */
|
||||
#define EV_BACKCMD 04 /* command executing within back quotes */
|
||||
|
||||
static const uint8_t nodesize[N_NUMBER] = {
|
||||
static const uint8_t nodesize[N_NUMBER] ALIGN1 = {
|
||||
[NCMD ] = SHELL_ALIGN(sizeof(struct ncmd)),
|
||||
[NPIPE ] = SHELL_ALIGN(sizeof(struct npipe)),
|
||||
[NREDIR ] = SHELL_ALIGN(sizeof(struct nredir)),
|
||||
|
@ -328,7 +328,7 @@ enum {
|
||||
};
|
||||
|
||||
/* "-": treat args as parameters of option with ASCII code 1 */
|
||||
static const char ulimit_opt_string[] = "-HSa"
|
||||
static const char ulimit_opt_string[] ALIGN1 = "-HSa"
|
||||
#ifdef RLIMIT_FSIZE
|
||||
"f::"
|
||||
#endif
|
||||
|
@ -42,7 +42,7 @@
|
||||
* Extra space at the end is a hack to print space separator in file listing.
|
||||
* Let's hope no one ever passes space as an option char :)
|
||||
*/
|
||||
static const char bit_to_char[] = "rhsvda67 ";
|
||||
static const char bit_to_char[] ALIGN1 = "rhsvda67 ";
|
||||
|
||||
static inline unsigned long get_flag(char c)
|
||||
{
|
||||
|
@ -377,7 +377,7 @@ static const int32_t mount_options[] = {
|
||||
/* "remount" */ MS_REMOUNT // action flag
|
||||
};
|
||||
|
||||
static const char mount_option_str[] =
|
||||
static const char mount_option_str[] ALIGN1 =
|
||||
IF_FEATURE_MOUNT_LOOP(
|
||||
"loop\0"
|
||||
)
|
||||
@ -1003,7 +1003,7 @@ enum {
|
||||
# define EDQUOT ENOSPC
|
||||
#endif
|
||||
/* Convert each NFSERR_BLAH into EBLAH */
|
||||
static const uint8_t nfs_err_stat[] = {
|
||||
static const uint8_t nfs_err_stat[] ALIGN1 = {
|
||||
1, 2, 5, 6, 13, 17,
|
||||
19, 20, 21, 22, 27, 28,
|
||||
30, 63, 66, 69, 70, 71
|
||||
@ -1016,7 +1016,7 @@ typedef uint8_t nfs_err_type;
|
||||
#else
|
||||
typedef uint16_t nfs_err_type;
|
||||
#endif
|
||||
static const nfs_err_type nfs_err_errnum[] = {
|
||||
static const nfs_err_type nfs_err_errnum[] ALIGN2 = {
|
||||
EPERM , ENOENT , EIO , ENXIO , EACCES, EEXIST,
|
||||
ENODEV, ENOTDIR , EISDIR , EINVAL, EFBIG , ENOSPC,
|
||||
EROFS , ENAMETOOLONG, ENOTEMPTY, EDQUOT, ESTALE, EREMOTE
|
||||
|
@ -128,7 +128,7 @@ static const struct namespace_descr ns_list[] = {
|
||||
/*
|
||||
* Upstream nsenter doesn't support the short option for --preserve-credentials
|
||||
*/
|
||||
static const char opt_str[] = "U::i::u::n::p::m::""t+S+G+r::w::F";
|
||||
static const char opt_str[] ALIGN1 = "U::i::u::n::p::m::""t+S+G+r::w::F";
|
||||
|
||||
#if ENABLE_FEATURE_NSENTER_LONG_OPTS
|
||||
static const char nsenter_longopts[] ALIGN1 =
|
||||
|
@ -137,7 +137,7 @@ static const struct namespace_descr ns_list[] = {
|
||||
* we are forced to use "fake" letters for them.
|
||||
* '+': stop at first non-option.
|
||||
*/
|
||||
static const char opt_str[] = "+muinpU""fr""\xfd::""\xfe:""\xff:";
|
||||
static const char opt_str[] ALIGN1 = "+muinpU""fr""\xfd::""\xfe:""\xff:";
|
||||
static const char unshare_longopts[] ALIGN1 =
|
||||
"mount\0" Optional_argument "\xf0"
|
||||
"uts\0" Optional_argument "\xf1"
|
||||
|
@ -24,7 +24,7 @@
|
||||
#define SB_LABEL_SIZE 32
|
||||
#define SB_JOURNAL_BUCKETS 256U
|
||||
|
||||
static const char bcache_magic[] = {
|
||||
static const char bcache_magic[] ALIGN1 = {
|
||||
0xc6, 0x85, 0x73, 0xf6, 0x4e, 0x1a, 0x45, 0xca,
|
||||
0x82, 0x65, 0xf5, 0x7f, 0x48, 0xba, 0x6d, 0x81
|
||||
};
|
||||
|
@ -40,7 +40,7 @@
|
||||
#define LUKS_SALTSIZE 32
|
||||
#define LUKS_NUMKEYS 8
|
||||
|
||||
static const uint8_t LUKS_MAGIC[] = { 'L','U','K','S', 0xba, 0xbe };
|
||||
static const uint8_t LUKS_MAGIC[] ALIGN1 = { 'L','U','K','S', 0xba, 0xbe };
|
||||
|
||||
struct luks_phdr {
|
||||
uint8_t magic[LUKS_MAGIC_L];
|
||||
|
Loading…
Reference in New Issue
Block a user