BUILD: remove obsolete support for -mregparm / USE_REGPARM

This used to be a minor optimization on ix86 where registers are scarce
and the calling convention not very efficient, but this platform is not
relevant enough anymore to warrant all this dirt in the code for the sake
of saving 1 or 2% of performance. Modern platforms don't use this at all
since their calling convention already defaults to using several registers
so better get rid of this once for all.
diff --git a/ebtree/eb32sctree.c b/ebtree/eb32sctree.c
index e703434..14e5980 100644
--- a/ebtree/eb32sctree.c
+++ b/ebtree/eb32sctree.c
@@ -26,7 +26,7 @@
 /* This function is used to build a tree of duplicates by adding a new node to
  * a subtree of at least 2 entries.
  */
-REGPRM1 struct eb32sc_node *eb32sc_insert_dup(struct eb_node *sub, struct eb_node *new, unsigned long scope)
+struct eb32sc_node *eb32sc_insert_dup(struct eb_node *sub, struct eb_node *new, unsigned long scope)
 {
 	struct eb32sc_node *eb32;
 	struct eb_node *head = sub;
@@ -104,7 +104,7 @@
  * new->key needs be set with the key. The eb32sc_node is returned. This
  * implementation does NOT support unique trees.
  */
-REGPRM2 struct eb32sc_node *eb32sc_insert(struct eb_root *root, struct eb32sc_node *new, unsigned long scope)
+struct eb32sc_node *eb32sc_insert(struct eb_root *root, struct eb32sc_node *new, unsigned long scope)
 {
 	struct eb32sc_node *old;
 	unsigned int side;
@@ -236,7 +236,7 @@
  * Find the first occurrence of the lowest key in the tree <root>, which is
  * equal to or greater than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct eb32sc_node *eb32sc_lookup_ge(struct eb_root *root, u32 x, unsigned long scope)
+struct eb32sc_node *eb32sc_lookup_ge(struct eb_root *root, u32 x, unsigned long scope)
 {
 	struct eb32sc_node *node;
 	eb_troot_t *troot;
@@ -304,7 +304,7 @@
  * equal to or greater than <x>, matching scope <scope>. If not found, it loops
  * back to the beginning of the tree. NULL is returned is no key matches.
  */
-REGPRM2 struct eb32sc_node *eb32sc_lookup_ge_or_first(struct eb_root *root, u32 x, unsigned long scope)
+struct eb32sc_node *eb32sc_lookup_ge_or_first(struct eb_root *root, u32 x, unsigned long scope)
 {
 	struct eb32sc_node *eb32;
 	eb_troot_t *troot;
diff --git a/ebtree/eb32sctree.h b/ebtree/eb32sctree.h
index 51a2664..f547ff0 100644
--- a/ebtree/eb32sctree.h
+++ b/ebtree/eb32sctree.h
@@ -56,9 +56,9 @@
  * The following functions are not inlined by default. They are declared
  * in eb32sctree.c, which simply relies on their inline version.
  */
-REGPRM2 struct eb32sc_node *eb32sc_lookup_ge(struct eb_root *root, u32 x, unsigned long scope);
-REGPRM2 struct eb32sc_node *eb32sc_lookup_ge_or_first(struct eb_root *root, u32 x, unsigned long scope);
-REGPRM2 struct eb32sc_node *eb32sc_insert(struct eb_root *root, struct eb32sc_node *new, unsigned long scope);
+struct eb32sc_node *eb32sc_lookup_ge(struct eb_root *root, u32 x, unsigned long scope);
+struct eb32sc_node *eb32sc_lookup_ge_or_first(struct eb_root *root, u32 x, unsigned long scope);
+struct eb32sc_node *eb32sc_insert(struct eb_root *root, struct eb32sc_node *new, unsigned long scope);
 void eb32sc_delete(struct eb32sc_node *node);
 
 /* Walks down left starting at root pointer <start>, and follow the leftmost
diff --git a/ebtree/eb32tree.c b/ebtree/eb32tree.c
index 5ae3340..77e4793 100644
--- a/ebtree/eb32tree.c
+++ b/ebtree/eb32tree.c
@@ -22,22 +22,22 @@
 
 #include "eb32tree.h"
 
-REGPRM2 struct eb32_node *eb32_insert(struct eb_root *root, struct eb32_node *new)
+struct eb32_node *eb32_insert(struct eb_root *root, struct eb32_node *new)
 {
 	return __eb32_insert(root, new);
 }
 
-REGPRM2 struct eb32_node *eb32i_insert(struct eb_root *root, struct eb32_node *new)
+struct eb32_node *eb32i_insert(struct eb_root *root, struct eb32_node *new)
 {
 	return __eb32i_insert(root, new);
 }
 
-REGPRM2 struct eb32_node *eb32_lookup(struct eb_root *root, u32 x)
+struct eb32_node *eb32_lookup(struct eb_root *root, u32 x)
 {
 	return __eb32_lookup(root, x);
 }
 
-REGPRM2 struct eb32_node *eb32i_lookup(struct eb_root *root, s32 x)
+struct eb32_node *eb32i_lookup(struct eb_root *root, s32 x)
 {
 	return __eb32i_lookup(root, x);
 }
@@ -46,7 +46,7 @@
  * Find the last occurrence of the highest key in the tree <root>, which is
  * equal to or less than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct eb32_node *eb32_lookup_le(struct eb_root *root, u32 x)
+struct eb32_node *eb32_lookup_le(struct eb_root *root, u32 x)
 {
 	struct eb32_node *node;
 	eb_troot_t *troot;
@@ -134,7 +134,7 @@
  * Find the first occurrence of the lowest key in the tree <root>, which is
  * equal to or greater than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct eb32_node *eb32_lookup_ge(struct eb_root *root, u32 x)
+struct eb32_node *eb32_lookup_ge(struct eb_root *root, u32 x)
 {
 	struct eb32_node *node;
 	eb_troot_t *troot;
diff --git a/ebtree/eb32tree.h b/ebtree/eb32tree.h
index 08ff900..8c1a470 100644
--- a/ebtree/eb32tree.h
+++ b/ebtree/eb32tree.h
@@ -110,12 +110,12 @@
  * The following functions are not inlined by default. They are declared
  * in eb32tree.c, which simply relies on their inline version.
  */
-REGPRM2 struct eb32_node *eb32_lookup(struct eb_root *root, u32 x);
-REGPRM2 struct eb32_node *eb32i_lookup(struct eb_root *root, s32 x);
-REGPRM2 struct eb32_node *eb32_lookup_le(struct eb_root *root, u32 x);
-REGPRM2 struct eb32_node *eb32_lookup_ge(struct eb_root *root, u32 x);
-REGPRM2 struct eb32_node *eb32_insert(struct eb_root *root, struct eb32_node *new);
-REGPRM2 struct eb32_node *eb32i_insert(struct eb_root *root, struct eb32_node *new);
+struct eb32_node *eb32_lookup(struct eb_root *root, u32 x);
+struct eb32_node *eb32i_lookup(struct eb_root *root, s32 x);
+struct eb32_node *eb32_lookup_le(struct eb_root *root, u32 x);
+struct eb32_node *eb32_lookup_ge(struct eb_root *root, u32 x);
+struct eb32_node *eb32_insert(struct eb_root *root, struct eb32_node *new);
+struct eb32_node *eb32i_insert(struct eb_root *root, struct eb32_node *new);
 
 /*
  * The following functions are less likely to be used directly, because their
diff --git a/ebtree/eb64tree.c b/ebtree/eb64tree.c
index 7ce3f41..442e973 100644
--- a/ebtree/eb64tree.c
+++ b/ebtree/eb64tree.c
@@ -22,22 +22,22 @@
 
 #include "eb64tree.h"
 
-REGPRM2 struct eb64_node *eb64_insert(struct eb_root *root, struct eb64_node *new)
+struct eb64_node *eb64_insert(struct eb_root *root, struct eb64_node *new)
 {
 	return __eb64_insert(root, new);
 }
 
-REGPRM2 struct eb64_node *eb64i_insert(struct eb_root *root, struct eb64_node *new)
+struct eb64_node *eb64i_insert(struct eb_root *root, struct eb64_node *new)
 {
 	return __eb64i_insert(root, new);
 }
 
-REGPRM2 struct eb64_node *eb64_lookup(struct eb_root *root, u64 x)
+struct eb64_node *eb64_lookup(struct eb_root *root, u64 x)
 {
 	return __eb64_lookup(root, x);
 }
 
-REGPRM2 struct eb64_node *eb64i_lookup(struct eb_root *root, s64 x)
+struct eb64_node *eb64i_lookup(struct eb_root *root, s64 x)
 {
 	return __eb64i_lookup(root, x);
 }
@@ -46,7 +46,7 @@
  * Find the last occurrence of the highest key in the tree <root>, which is
  * equal to or less than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct eb64_node *eb64_lookup_le(struct eb_root *root, u64 x)
+struct eb64_node *eb64_lookup_le(struct eb_root *root, u64 x)
 {
 	struct eb64_node *node;
 	eb_troot_t *troot;
@@ -134,7 +134,7 @@
  * Find the first occurrence of the lowest key in the tree <root>, which is
  * equal to or greater than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct eb64_node *eb64_lookup_ge(struct eb_root *root, u64 x)
+struct eb64_node *eb64_lookup_ge(struct eb_root *root, u64 x)
 {
 	struct eb64_node *node;
 	eb_troot_t *troot;
diff --git a/ebtree/eb64tree.h b/ebtree/eb64tree.h
index 6d0d039..9c8feeb 100644
--- a/ebtree/eb64tree.h
+++ b/ebtree/eb64tree.h
@@ -110,12 +110,12 @@
  * The following functions are not inlined by default. They are declared
  * in eb64tree.c, which simply relies on their inline version.
  */
-REGPRM2 struct eb64_node *eb64_lookup(struct eb_root *root, u64 x);
-REGPRM2 struct eb64_node *eb64i_lookup(struct eb_root *root, s64 x);
-REGPRM2 struct eb64_node *eb64_lookup_le(struct eb_root *root, u64 x);
-REGPRM2 struct eb64_node *eb64_lookup_ge(struct eb_root *root, u64 x);
-REGPRM2 struct eb64_node *eb64_insert(struct eb_root *root, struct eb64_node *new);
-REGPRM2 struct eb64_node *eb64i_insert(struct eb_root *root, struct eb64_node *new);
+struct eb64_node *eb64_lookup(struct eb_root *root, u64 x);
+struct eb64_node *eb64i_lookup(struct eb_root *root, s64 x);
+struct eb64_node *eb64_lookup_le(struct eb_root *root, u64 x);
+struct eb64_node *eb64_lookup_ge(struct eb_root *root, u64 x);
+struct eb64_node *eb64_insert(struct eb_root *root, struct eb64_node *new);
+struct eb64_node *eb64i_insert(struct eb_root *root, struct eb64_node *new);
 
 /*
  * The following functions are less likely to be used directly, because their
diff --git a/ebtree/ebimtree.c b/ebtree/ebimtree.c
index 8a75cd8..3e6a7ce 100644
--- a/ebtree/ebimtree.c
+++ b/ebtree/ebimtree.c
@@ -26,7 +26,7 @@
 /* Find the first occurrence of a key of <len> bytes in the tree <root>.
  * If none can be found, return NULL.
  */
-REGPRM3 struct ebpt_node *
+struct ebpt_node *
 ebim_lookup(struct eb_root *root, const void *x, unsigned int len)
 {
 	return __ebim_lookup(root, x, len);
@@ -37,7 +37,7 @@
  * If root->b[EB_RGHT]==1, the tree may only contain unique keys. The
  * len is specified in bytes.
  */
-REGPRM3 struct ebpt_node *
+struct ebpt_node *
 ebim_insert(struct eb_root *root, struct ebpt_node *new, unsigned int len)
 {
 	return __ebim_insert(root, new, len);
diff --git a/ebtree/ebimtree.h b/ebtree/ebimtree.h
index 4a98c96..8b12a54 100644
--- a/ebtree/ebimtree.h
+++ b/ebtree/ebimtree.h
@@ -32,8 +32,8 @@
 /* The following functions are not inlined by default. They are declared
  * in ebimtree.c, which simply relies on their inline version.
  */
-REGPRM3 struct ebpt_node *ebim_lookup(struct eb_root *root, const void *x, unsigned int len);
-REGPRM3 struct ebpt_node *ebim_insert(struct eb_root *root, struct ebpt_node *new, unsigned int len);
+struct ebpt_node *ebim_lookup(struct eb_root *root, const void *x, unsigned int len);
+struct ebpt_node *ebim_insert(struct eb_root *root, struct ebpt_node *new, unsigned int len);
 
 /* Find the first occurrence of a key of a least <len> bytes matching <x> in the
  * tree <root>. The caller is responsible for ensuring that <len> will not exceed
diff --git a/ebtree/ebistree.c b/ebtree/ebistree.c
index d3dc0c5..098ccfb 100644
--- a/ebtree/ebistree.c
+++ b/ebtree/ebistree.c
@@ -26,7 +26,7 @@
  * It's the caller's reponsibility to use this function only on trees which
  * only contain zero-terminated strings. If none can be found, return NULL.
  */
-REGPRM2 struct ebpt_node *ebis_lookup(struct eb_root *root, const char *x)
+struct ebpt_node *ebis_lookup(struct eb_root *root, const char *x)
 {
 	return __ebis_lookup(root, x);
 }
@@ -36,7 +36,7 @@
  * returned. If root->b[EB_RGHT]==1, the tree may only contain unique keys. The
  * caller is responsible for properly terminating the key with a zero.
  */
-REGPRM2 struct ebpt_node *ebis_insert(struct eb_root *root, struct ebpt_node *new)
+struct ebpt_node *ebis_insert(struct eb_root *root, struct ebpt_node *new)
 {
 	return __ebis_insert(root, new);
 }
diff --git a/ebtree/ebistree.h b/ebtree/ebistree.h
index 9c4fd8c..0c99548 100644
--- a/ebtree/ebistree.h
+++ b/ebtree/ebistree.h
@@ -35,8 +35,8 @@
 /* The following functions are not inlined by default. They are declared
  * in ebistree.c, which simply relies on their inline version.
  */
-REGPRM2 struct ebpt_node *ebis_lookup(struct eb_root *root, const char *x);
-REGPRM2 struct ebpt_node *ebis_insert(struct eb_root *root, struct ebpt_node *new);
+struct ebpt_node *ebis_lookup(struct eb_root *root, const char *x);
+struct ebpt_node *ebis_insert(struct eb_root *root, struct ebpt_node *new);
 
 /* Find the first occurrence of a length <len> string <x> in the tree <root>.
  * It's the caller's reponsibility to use this function only on trees which
diff --git a/ebtree/ebmbtree.c b/ebtree/ebmbtree.c
index 5fbef20..ceedefc 100644
--- a/ebtree/ebmbtree.c
+++ b/ebtree/ebmbtree.c
@@ -25,7 +25,7 @@
 /* Find the first occurrence of a key of <len> bytes in the tree <root>.
  * If none can be found, return NULL.
  */
-REGPRM3 struct ebmb_node *
+struct ebmb_node *
 ebmb_lookup(struct eb_root *root, const void *x, unsigned int len)
 {
 	return __ebmb_lookup(root, x, len);
@@ -36,7 +36,7 @@
  * If root->b[EB_RGHT]==1, the tree may only contain unique keys. The
  * len is specified in bytes.
  */
-REGPRM3 struct ebmb_node *
+struct ebmb_node *
 ebmb_insert(struct eb_root *root, struct ebmb_node *new, unsigned int len)
 {
 	return __ebmb_insert(root, new, len);
@@ -46,7 +46,7 @@
  * tree <root>. It's the caller's responsibility to ensure that key <x> is at
  * least as long as the keys in the tree. If none can be found, return NULL.
  */
-REGPRM2 struct ebmb_node *
+struct ebmb_node *
 ebmb_lookup_longest(struct eb_root *root, const void *x)
 {
 	return __ebmb_lookup_longest(root, x);
@@ -55,7 +55,7 @@
 /* Find the first occurrence of a prefix matching a key <x> of <pfx> BITS in the
  * tree <root>. If none can be found, return NULL.
  */
-REGPRM3 struct ebmb_node *
+struct ebmb_node *
 ebmb_lookup_prefix(struct eb_root *root, const void *x, unsigned int pfx)
 {
 	return __ebmb_lookup_prefix(root, x, pfx);
@@ -70,7 +70,7 @@
  * If root->b[EB_RGHT]==1, the tree may only contain unique keys. The
  * len is specified in bytes.
  */
-REGPRM3 struct ebmb_node *
+struct ebmb_node *
 ebmb_insert_prefix(struct eb_root *root, struct ebmb_node *new, unsigned int len)
 {
 	return __ebmb_insert_prefix(root, new, len);
diff --git a/ebtree/ebmbtree.h b/ebtree/ebmbtree.h
index 6ed7de4..3200a12 100644
--- a/ebtree/ebmbtree.h
+++ b/ebtree/ebmbtree.h
@@ -107,11 +107,11 @@
 /* The following functions are not inlined by default. They are declared
  * in ebmbtree.c, which simply relies on their inline version.
  */
-REGPRM3 struct ebmb_node *ebmb_lookup(struct eb_root *root, const void *x, unsigned int len);
-REGPRM3 struct ebmb_node *ebmb_insert(struct eb_root *root, struct ebmb_node *new, unsigned int len);
-REGPRM2 struct ebmb_node *ebmb_lookup_longest(struct eb_root *root, const void *x);
-REGPRM3 struct ebmb_node *ebmb_lookup_prefix(struct eb_root *root, const void *x, unsigned int pfx);
-REGPRM3 struct ebmb_node *ebmb_insert_prefix(struct eb_root *root, struct ebmb_node *new, unsigned int len);
+struct ebmb_node *ebmb_lookup(struct eb_root *root, const void *x, unsigned int len);
+struct ebmb_node *ebmb_insert(struct eb_root *root, struct ebmb_node *new, unsigned int len);
+struct ebmb_node *ebmb_lookup_longest(struct eb_root *root, const void *x);
+struct ebmb_node *ebmb_lookup_prefix(struct eb_root *root, const void *x, unsigned int pfx);
+struct ebmb_node *ebmb_insert_prefix(struct eb_root *root, struct ebmb_node *new, unsigned int len);
 
 /* The following functions are less likely to be used directly, because their
  * code is larger. The non-inlined version is preferred.
diff --git a/ebtree/ebpttree.c b/ebtree/ebpttree.c
index 1960f31..a7e6b06 100644
--- a/ebtree/ebpttree.c
+++ b/ebtree/ebpttree.c
@@ -22,12 +22,12 @@
 
 #include "ebpttree.h"
 
-REGPRM2 struct ebpt_node *ebpt_insert(struct eb_root *root, struct ebpt_node *new)
+struct ebpt_node *ebpt_insert(struct eb_root *root, struct ebpt_node *new)
 {
 	return __ebpt_insert(root, new);
 }
 
-REGPRM2 struct ebpt_node *ebpt_lookup(struct eb_root *root, void *x)
+struct ebpt_node *ebpt_lookup(struct eb_root *root, void *x)
 {
 	return __ebpt_lookup(root, x);
 }
@@ -36,7 +36,7 @@
  * Find the last occurrence of the highest key in the tree <root>, which is
  * equal to or less than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct ebpt_node *ebpt_lookup_le(struct eb_root *root, void *x)
+struct ebpt_node *ebpt_lookup_le(struct eb_root *root, void *x)
 {
 	struct ebpt_node *node;
 	eb_troot_t *troot;
@@ -124,7 +124,7 @@
  * Find the first occurrence of the lowest key in the tree <root>, which is
  * equal to or greater than <x>. NULL is returned is no key matches.
  */
-REGPRM2 struct ebpt_node *ebpt_lookup_ge(struct eb_root *root, void *x)
+struct ebpt_node *ebpt_lookup_ge(struct eb_root *root, void *x)
 {
 	struct ebpt_node *node;
 	eb_troot_t *troot;
diff --git a/ebtree/ebsttree.c b/ebtree/ebsttree.c
index 88b8139..e44796c 100644
--- a/ebtree/ebsttree.c
+++ b/ebtree/ebsttree.c
@@ -26,7 +26,7 @@
  * It's the caller's reponsibility to use this function only on trees which
  * only contain zero-terminated strings. If none can be found, return NULL.
  */
-REGPRM2 struct ebmb_node *ebst_lookup(struct eb_root *root, const char *x)
+struct ebmb_node *ebst_lookup(struct eb_root *root, const char *x)
 {
 	return __ebst_lookup(root, x);
 }
@@ -36,7 +36,7 @@
  * returned. If root->b[EB_RGHT]==1, the tree may only contain unique keys. The
  * caller is responsible for properly terminating the key with a zero.
  */
-REGPRM2 struct ebmb_node *ebst_insert(struct eb_root *root, struct ebmb_node *new)
+struct ebmb_node *ebst_insert(struct eb_root *root, struct ebmb_node *new)
 {
 	return __ebst_insert(root, new);
 }
diff --git a/ebtree/ebsttree.h b/ebtree/ebsttree.h
index cd6994c..d1949c7 100644
--- a/ebtree/ebsttree.h
+++ b/ebtree/ebsttree.h
@@ -29,8 +29,8 @@
 /* The following functions are not inlined by default. They are declared
  * in ebsttree.c, which simply relies on their inline version.
  */
-REGPRM2 struct ebmb_node *ebst_lookup(struct eb_root *root, const char *x);
-REGPRM2 struct ebmb_node *ebst_insert(struct eb_root *root, struct ebmb_node *new);
+struct ebmb_node *ebst_lookup(struct eb_root *root, const char *x);
+struct ebmb_node *ebst_insert(struct eb_root *root, struct ebmb_node *new);
 
 /* Find the first occurrence of a length <len> string <x> in the tree <root>.
  * It's the caller's reponsibility to use this function only on trees which
diff --git a/ebtree/ebtree.c b/ebtree/ebtree.c
index fb266ec..d60c799 100644
--- a/ebtree/ebtree.c
+++ b/ebtree/ebtree.c
@@ -26,7 +26,7 @@
 }
 
 /* used by insertion primitives */
-REGPRM1 struct eb_node *eb_insert_dup(struct eb_node *sub, struct eb_node *new)
+struct eb_node *eb_insert_dup(struct eb_node *sub, struct eb_node *new)
 {
 	return __eb_insert_dup(sub, new);
 }
diff --git a/ebtree/ebtree.h b/ebtree/ebtree.h
index 6ac79d6..e87e961 100644
--- a/ebtree/ebtree.h
+++ b/ebtree/ebtree.h
@@ -911,7 +911,7 @@
 
 /* These functions are declared in ebtree.c */
 void eb_delete(struct eb_node *node);
-REGPRM1 struct eb_node *eb_insert_dup(struct eb_node *sub, struct eb_node *new);
+struct eb_node *eb_insert_dup(struct eb_node *sub, struct eb_node *new);
 
 #endif /* _EB_TREE_H */