Some time ago, I promised to replace the C code in the udp library of Stanislav (on loper-os.org) with assembly code.
I've finally done so for 64bit intel linux.
This release is divided in two parts, (a) to replace the string to ip address functions with pure ada functions and (b) to replace the C calls with assembly equivalents. For other platforms (b) will need to be changed and the tree forked at that point.
The replacement of the string to ip address functions only works for the most common way to write ip-addresses12.
- The patch: udp_string_to_ip.vpatch.
- The signature: udp_string_to_ip.vpatch.ave1.sig.
Next, the actual replacement of the C functions. This adds an extra module to provide Ada versions of some of the linux syscalls. Note that some of the code is a bit non-Ada, I wanted to keep the interfaces to the original C functions intact.
- The patch: udp_x86_64_asm.vpatch.
- The signature: udp_x86_64_asm.vpatch.ave1.sig.
Finally, my signatures for the earlier patches.
- Signature 1: udp_genesis.kv.vpatch.ave1.sig.
- Signature 2: udp_errata.asciilifeform.kv.vpatch.ave1.sig.