This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi Paul, Thank you very much for your review and comments. I have fixed the push/pop and use of 2-argument code in 32-bit code. I am not quite sure what the problem in the __thumb2__ test is. I built arm-eabi-gcc with arches armv4, armv5te, armv7-a and no-arch and all build was successful. I did change the test so that forcing ARM mode is only done if: -ARM mode has UMULL instruction -we are compiling for THUMB-1 -interworking is enabled. Attached is the updated patch. -Doug 在 2010年10月23日上午2:20,Paul Brook <paul@codesourcery.com> 寫道: >> +/* Force using ARM code if it is possible except for THUMB2 target. */ >> +#if defined(USE_FAST_MULDI3) && !defined(__thumb2__) >> + ARM_FUNC_START muldi3 > > The !__thumb2__ test is wrong. I'm surprised this even compiles. > >>+ mul xxh, yyl >>... >>+ add xxh, yyh > > Please use the proper 3-argument form in 32-bit code. > >>+ push {r4, r5, r6, r7} > > Older assemblers do not support push/pop in ARM mode. > Use do_push/do_pop. > > Paul >
Attachment:
patch-mul-v2.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |