2008/03/04: fixed rm_free (forgot to free main structure! - thanks to Andre Wehe for pointing this out)
2008/01/13: use __builtin macros for GCC instead of inline assembly in lsbset/intlog2.
2007/03/20: added bsf/bsr versions for lsbset/intlog2 in comment.
2006/08/24: modified to return the smallest position index, when there are multiple positions which give the same minimum value.
Department of Informatics, Graduate School of Information Science
and Electrical Engineering, Kyushu University
744 Moto-oka, Nishi-ku, Fukuoka 819-0395, Japan.
Phone: +81-92-802-3789 Fax: +81-92-802-3800
E-mail: