From: Nick Thompson <nick.thompson@ge.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Building for da830 fails
Date: Mon, 10 May 2010 11:39:03 +0100 [thread overview]
Message-ID: <4BE7E247.1030007@ge.com> (raw)
In-Reply-To: <4BE43218.2060209@freescale.com>
On 07/05/10 16:30, Timur Tabi wrote:
> Scott McNutt wrote:
>> lib/libgeneric.a(display_options.o): In function `print_size':
>> /home/smcnutt/27xx/u-boot.git/lib/display_options.c:66: undefined
>> reference to `__udivdi3'
>> /home/smcnutt/27xx/u-boot.git/lib/display_options.c:69: undefined
>> reference to `__umoddi3'
>> /home/smcnutt/27xx/u-boot.git/lib/display_options.c:70: undefined
>> reference to `__udivdi3'
>
> Man, I knew ARM sucked, but I didn't know it was this bad :-)
>
> I was going to suggestion replacing the division operations with calls to
> lldiv(), but we're actually doing a 64-by-64 bit division here:
>
> n = size / d;
>
> which means that in order to support support printing 64-bit numbers on ARM,
> we might need to completely rewrite print_size() to avoid division on 64-bit
> numbers.
>
> Wolfgang, do you have any suggestions?
>
I'm not sure if it is the correct way to "fix" this issue, But I have
submitted a patch in "[U-Boot] [PATCH] Avoid use of divides in print_size."
It allows ARM to rebuild again (here at least), but really it modifies
the function to use bit shifts as an optimisation over calling lengthy div
library functions. This side steps the linker issue.
It you have chance to test or review it I would be grateful. I tested the
code on x86 Linux PC, not by running it in U-Boot.
Nick.
next prev parent reply other threads:[~2010-05-10 10:39 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-07 11:57 [U-Boot] Building for da830 fails Sudhakar Rajashekhara
2010-05-07 14:14 ` Nick Thompson
2010-05-07 15:02 ` Nick Thompson
2010-05-07 15:09 ` Timur Tabi
2010-05-10 21:03 ` Wolfgang Denk
2010-05-07 15:14 ` Timur Tabi
2010-05-07 15:10 ` Wolfgang Denk
2010-05-07 15:21 ` Scott McNutt
2010-05-07 15:30 ` Timur Tabi
2010-05-10 10:39 ` Nick Thompson [this message]
2010-05-10 21:17 ` Wolfgang Denk
2010-05-11 8:59 ` Nick Thompson
2010-05-11 10:39 ` Wolfgang Denk
2010-05-11 11:30 ` Nick Thompson
2010-05-11 12:39 ` Scott McNutt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BE7E247.1030007@ge.com \
--to=nick.thompson@ge.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox