This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
I built an arm-iwmmxt-linux-gnueabi toolchain and used it to build blob. But I found printf() cannot output number due to not 8-byte alignment to strd/ldrd instruction. This may be related to many aspects, I'm not clear. I reported the issue to arm-linux-toolchain and gcc mailing list with another title "SP must be 8 byte aligned on entry to AAPCS -conforming functions", no response so far.
The toolchain that I got has integrated iwmmxt.patch posted by Steven Newbury (attached). If I did not use this patch and built arm-none-linux-gnueabi toolchain. Then the printf() works well.
I was using "-march=iwmmxt -mcpu=iwmmxt -mabi=aapcs". With these options, arm-none-linux-gnueabi-gcc is fine, while arm-iwmmxt-linux-gnueabi-gcc is bad.
I checked the patch. It seemed some options make the difference. But I don't know which one make the difference. Does anybody make a clarification?
-- best regards, -Bridge
Attachment:
iwmmxt.patch
Description: Text document
-- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |