*: introduce and use FAST_FUNC: regparm on i386, otherwise no-on
text data bss dec hex filename
808035 611 6868 815514 c719a busybox_old
804472 611 6868 811951 c63af busybox_unstripped
diff --git a/libbb/llist.c b/libbb/llist.c
index 4b3971b..094c652 100644
--- a/libbb/llist.c
+++ b/libbb/llist.c
@@ -13,7 +13,7 @@
#include "libbb.h"
/* Add data to the start of the linked list. */
-void llist_add_to(llist_t **old_head, void *data)
+void FAST_FUNC llist_add_to(llist_t **old_head, void *data)
{
llist_t *new_head = xmalloc(sizeof(llist_t));
@@ -23,7 +23,7 @@
}
/* Add data to the end of the linked list. */
-void llist_add_to_end(llist_t **list_head, void *data)
+void FAST_FUNC llist_add_to_end(llist_t **list_head, void *data)
{
llist_t *new_item = xmalloc(sizeof(llist_t));
@@ -42,7 +42,7 @@
}
/* Remove first element from the list and return it */
-void *llist_pop(llist_t **head)
+void* FAST_FUNC llist_pop(llist_t **head)
{
void *data, *next;
@@ -58,7 +58,7 @@
}
/* Unlink arbitrary given element from the list */
-void llist_unlink(llist_t **head, llist_t *elm)
+void FAST_FUNC llist_unlink(llist_t **head, llist_t *elm)
{
llist_t *crt;
@@ -80,7 +80,7 @@
/* Recursively free all elements in the linked list. If freeit != NULL
* call it on each datum in the list */
-void llist_free(llist_t *elm, void (*freeit) (void *data))
+void FAST_FUNC llist_free(llist_t *elm, void (*freeit) (void *data))
{
while (elm) {
void *data = llist_pop(&elm);
@@ -92,7 +92,7 @@
#ifdef UNUSED
/* Reverse list order. */
-llist_t *llist_rev(llist_t *list)
+llist_t* FAST_FUNC llist_rev(llist_t *list)
{
llist_t *rev = NULL;