optimize 16- and 32-bit moves
function old new delta udhcpd_main 1239 1257 +18 udhcp_add_simple_option 93 92 -1 buffer_read_le_u32 19 18 -1 unpack_gz_stream_with_info 526 520 -6 dnsd_main 1470 1463 -7 udhcp_run_script 1208 1186 -22 send_ACK 255 229 -26 arping_main 1661 1623 -38 send_offer 470 428 -42 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/8 up/down: 18/-143) Total: -125 bytes
This commit is contained in:
@ -503,7 +503,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
|
||||
/* still selecting - this server looks bad */
|
||||
}
|
||||
/* it IS unaligned sometimes, don't "optimize" */
|
||||
server_addr = get_unaligned_u32p((uint32_t*)temp);
|
||||
move_from_unaligned32(server_addr, temp);
|
||||
xid = packet.xid;
|
||||
requested_ip = packet.yiaddr;
|
||||
|
||||
@ -525,7 +525,7 @@ int udhcpc_main(int argc UNUSED_PARAM, char **argv)
|
||||
lease_seconds = 60 * 60;
|
||||
} else {
|
||||
/* it IS unaligned sometimes, don't "optimize" */
|
||||
lease_seconds = get_unaligned_u32p((uint32_t*)temp);
|
||||
move_from_unaligned32(lease_seconds, temp);
|
||||
lease_seconds = ntohl(lease_seconds);
|
||||
lease_seconds &= 0x0fffffff; /* paranoia: must not be prone to overflows */
|
||||
if (lease_seconds < 10) /* and not too small */
|
||||
|
Reference in New Issue
Block a user