.... You'll agree that the patched versions assembler code is better by 64 bytes, no?
I think this is a fact, so there is nothing to agree :)
So up to gcc 3.3.2 we can't be shure that gcc optimizes "% PowerOf2" to "& (PowerOf2 - 1)".
After a second look, the problem seems to be that these are *signed* quantities, for which gcc cannot assume that "% PowerOf2" <=> "& (PowerOf2 - 1)", since this is not valid for negative numbers. It has no way of knowing that these values will never be negative...
Your patch seems better than changing everything into unsigned values, so you have my aproval (not that you needed it, anyway) :)
-- Paulo Marques - www.grupopie.com
All that is necessary for the triumph of evil is that good men do nothing. Edmund Burke (1729 - 1797)
------------------------------------------------------- This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more http://productguide.itmanagersjournal.com/guidepromo.tmpl _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel