Messages in this thread | | | From | Dan Streetman <> | Date | Thu, 14 May 2015 07:03:09 -0400 | Subject | Re: [PATCH] lib: fix 842 build on 32-bit architectures |
| |
On Thu, May 14, 2015 at 6:49 AM, Arnd Bergmann <arnd@arndb.de> wrote: > On Thursday 14 May 2015 04:54:07 Dan Streetman wrote: >> On Wed, May 13, 2015 at 7:52 PM, Dan Streetman <ddstreet@ieee.org> wrote: >> >> Building the 842 code on 32-bit ARM currently results in this link >> >> error: >> >> >> >> ERROR: "__aeabi_uldivmod" [lib/842/842_decompress.ko] undefined! >> > >> > Oops! Guess I should build/test on 32 bit more. >> > >> >> >> >> The reason is that the __do_index function performs a 64-bit >> >> division by a power-of-two number, but it has no insight into >> >> the function arguments. >> >> wait, do you mean the 64 bit mod, total % fsize? That should already >> be fixed in Herbert's tree, I changed it to subtraction instead. > > Yes, that's the one. I was looking at yesterday's linux-next which still > had the bug, but your fix has made it into today's release, so my patch > is no longer needed. > >> In any case, I looked at the code again and I think the fsize >> parameter can be removed, and just simply calculated in the function, >> it's just a shift. I'll send a patch. > > Not necessary for this problem any more, but it could still make sense > if you think that improves the code. You can also try to see if marking > the function inline has any effect on code size or performance if either > of them matters.
Yep, I'll run some performance tests both ways and send a patch if it does improve things. Thanks!
> > Arnd
| |