From: Shinya Kuribayashi <shinya.kuribayashi@necel.com>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] Build error on strcmp()
Date: Tue, 21 Aug 2007 12:33:38 +0900 [thread overview]
Message-ID: <46CA5D12.7020809@necel.com> (raw)
In-Reply-To: <47F3F98010FF784EBEE6526EAAB078D1024F8697@tq-mailsrv.tq-net.de>
Dear Martin Krause,
>> common/libcommon.a(exports.o)(.text+0xdc): In function
>> `jumptable_init':
>> /home/skuribay/bootloader/u-boot/u-boot.git/common/exports.c:32:
>> undefined reference to `strcmp' make: *** [u-boot] Error 1
>>
>> We MIPS have arch-specific strcmp defined in <asm/string.h>.
>> Since strcmp is inlined, we couldn't refer them by function pointer.
>> The nm of lib_generic/string.o is like this:
>>
>> U _gp_disp
>> U malloc
>> 00000610 T memchr
>> 00000520 T memcmp
>> 00000474 T memcpy
>> 000004a4 T memmove
>> 00000448 T memset
>> 00000000 T strcat
>> 00000084 T strchr
>> 00000198 T strdup
>> 000000c0 T strlen
>> 00000038 T strncat
>> 0000015c T strnlen
>> 00000270 T strpbrk
>> 000000e4 T strrchr
>> 00000380 T strsep
>> 00000210 T strspn
>> 00000550 T strstr
>> 000003ec T strswab
>> 000002c0 T strtok
>> 00000004 C ___strtok
>>
>> I think all architectures which have __HAVE_ARCH_STRCMP defined will
>> encounter this error. What is the proper workaround?
>
> Sorry, I'm no linker expert - so no idea :(
You don't have to be an expert.
I just wanted to show you MIPS string.o doesn't incorporate strcmp.
Ok, I looked closely the other architectures' string libraries, and
found *only* MIPS plays the inlined card.
I also found there is good note in <asm/string.h> of i386 and ARM:
> /*
> * We don't do inline string functions, since the
> * optimised inline asm versions are not small.
> */
So we MIPS might need to change strcmp from optimized asm version into
object version. Of course other inlined string funcs, too. I will post
the patch later.
Thanks,
Shinya Kuribayashi
prev parent reply other threads:[~2007-08-21 3:33 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-14 11:29 [U-Boot-Users] Build error on strcmp() Shinya Kuribayashi
2007-08-20 12:07 ` Martin Krause
2007-08-21 3:33 ` Shinya Kuribayashi [this message]
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=46CA5D12.7020809@necel.com \
--to=shinya.kuribayashi@necel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.