Compilation problem on m68k/memcpy.S
Jeff Johnston
jjohnstn@redhat.com
Mon Jan 7 19:22:00 GMT 2008
Thanks Vincent. I decided to make a new file: m68kasm.h which has the
prelude found in setjmp.S. I then had the 3 .S files include
"m68kasm.h" and use the SYM() macro as you have below.
Please try out the new code to make sure I didn't make any mistakes. I
don't have a m68k build handy for testing.
2008-01-07 Jeff Johnston <jjohnstn@redhat.com>
* libc/machine/m68k/m68kasm.h: New file.
* libc/machine/m68k/setjmp.S: Remove common definitions and
place in m68kasm.h. Include "m68kasm.h".
* libc/machine/m68k/memcpy.S: Include "m68kasm.h" and use
SYM() macro when referencing function name.
* libc/machine/m68k/memset.S: Ditto.
-- Jeff J.
Vincent Rivière wrote:
> Hello.
>
> There is a compilation problem on these 2 files :
> newlib/libc/machine/m68k/memcpy.S
> newlib/libc/machine/m68k/memset.S
> when compiling on a m68k target using symbols with leading underscores.
>
> The attached patch fixes the problem.
> It uses the well-known SYM() macro.
> This patch works. However, it may be a good idea do centralize this
> macro somewhere for the whole library.
>
> Note there is also:
>
> #ifndef __USER_LABEL_PREFIX__
> #define __USER_LABEL_PREFIX__ _
> #endif
>
> I kept it like this, because this is the usual way to do.
> However, when __USER_LABEL_PREFIX__ is not automatically defined, it
> might be better to define it to nothing to avoid regressions.
>
> I hope this will help.
>
More information about the Newlib
mailing list