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:
@@ -253,7 +253,7 @@ static int process_packet(uint8_t *buf)
|
||||
goto empty_packet;
|
||||
}
|
||||
v32 = a.s_addr; /* in case long != int */
|
||||
memcpy(answstr, &v32, 4);
|
||||
move_to_unaligned32(answstr, v32);
|
||||
outr_rlen = 4; // uint32_t IP
|
||||
} else
|
||||
outr_rlen = strlen((char *)answstr) + 1; // a host name
|
||||
|
Reference in New Issue
Block a user