rtems-libbsd: M68K linkcmds Patches Galore
Gedare Bloom
gedare at rtems.org
Fri Aug 17 13:08:42 UTC 2012
On Fri, Aug 17, 2012 at 9:02 AM, Joel Sherrill <joel.sherrill at oarcorp.com>wrote:
> On 8/17/2012 3:13 AM, Sebastian Huber wrote:
>
>> On 08/17/2012 02:59 AM, Kevin Polulak wrote:
>> [...]
>>
>>> diff --git a/c/src/lib/libbsp/m68k/**mcf52235/startup/linkcmds
>>> b/c/src/lib/libbsp/m68k/**mcf52235/startup/linkcmds
>>> index f5fe3d0..37b425f 100644
>>> --- a/c/src/lib/libbsp/m68k/**mcf52235/startup/linkcmds
>>> +++ b/c/src/lib/libbsp/m68k/**mcf52235/startup/linkcmds
>>> @@ -11,11 +11,13 @@
>>> */
>>>
>>> /*
>>> - * Declare some sizes.
>>> + * Memory segment sizes.
>>> + *
>>> + * A heap size of 0 means that all available memory is used for the
>>> heap.
>>> */
>>> -RamBase = DEFINED(RamBase) ? RamBase : 0x20000000;
>>> -RamSize = DEFINED(RamSize) ? RamSize : 32K;
>>> -HeapSize = DEFINED(HeapSize) ? HeapSize : 0x0;
>>> +RamBase = DEFINED(RamBase) ? RamBase : 0x20000000;
>>> +RamSize = DEFINED(RamSize) ? RamSize : 32K;
>>> +HeapSize = DEFINED(HeapSize) ? HeapSize : 0x0;
>>> _StackSize = DEFINED(_StackSize) ? _StackSize : 0x400;
>>> _FlashBase = DEFINED(_FlashBase) ? _FlashBase : 0x00000000;
>>>
>> I don't like this format. Each time you change the length of one field
>> in the
>> columns you have to adjust other lines as well. This makes a review
>> harder.
>>
>> [...]
>>
>>> - PROVIDE (_fini = .);
>>> +
>>> + PROVIDE(_fini = .);
>>>
>> If you look at the default linker command file (e.g. m68k-rtems4.11-ld
>> --verbose) then you will see that the previous format is used here (space
>> before "(").
>>
>> [...]
>>
>>> diff --git a/c/src/lib/libbsp/m68k/**shared/startup/linkcmds.**robsdsets
>>> b/c/src/lib/libbsp/m68k/**shared/startup/linkcmds.**robsdsets
>>> new file mode 100644
>>> index 0000000..23a1d92
>>> --- /dev/null
>>> +++ b/c/src/lib/libbsp/m68k/**shared/startup/linkcmds.**robsdsets
>>> @@ -0,0 +1,29 @@
>>> +/*
>>> + * This file contains directives for the GNU linker which are needed for
>>> + * rtems-libbsd FreeBSD code.
>>> + *
>>> + * COPYRIGHT (c) 1989-1999.
>>> + * On-Line Applications Research Corporation (OAR).
>>> + *
>>> + * The license and distribution terms for this file may be
>>> + * found in the file LICENSE in this distribution or at
>>> + *http://www.rtems.com/license/**LICENSE.e<http://www.rtems.com/license/LICENSE.e>
>>> + */
>>> +
>>> +__start_set_sysctl_set = .;
>>> +*(set_sysctl_*);
>>> +__stop_set_sysctl_set = .;
>>> +*(set_domain_*);
>>> +*(set_pseudo_*);
>>> +
>>> +_bsd__start_set_modmetadata_**set = .;
>>> +*(_bsd_set_modmetadata_set);
>>> +_bsd__stop_set_modmetadata_**set = .;
>>> +
>>> +_bsd__start_set_sysctl_set = .;
>>> +*(_bsd_set_sysctl_set);
>>> +_bsd__stop_set_sysctl_set = .;
>>> +
>>> +_bsd__start_set_sysinit_set = .;
>>> +*(_bsd_set_sysinit_*);
>>> +_bsd__stop_set_sysinit_set = .;
>>>
>> Why is this linkcmds.robsdsets and not linkcmds.rortems?
>>
>> Why do we have CPU specific variants of this? On ARM, PowerPC, etc. this
>> file
>> would look like identical.
>>
> Some targets place a leading underscore in front of symbols. If you have
> every
> symbol both with and without an extra _ prepended, then it will be Ok. For
> example,
> both _bsd__stop_set_sysinit_set and __bsd__stop_set_sysinit_set would have
> to be defined.
>
> Is appending the leading _ a choice RTEMS makes or is it forced on us?
> This is all the targets I have tools installed for and whether or not they
> add a
> leading underscore.
>
> arm-rtems4.11 - no leading underscore
> avr-rtems4.11 - no leading underscore
> bfin-rtems4.11 - leading underscore
> h8300-rtems4.11 - leading underscore
> i386-rtems4.11 - no leading underscore
> lm32-rtems4.11 - no leading underscore
> m32c-rtems4.11 - leading underscore
> m32r-rtems4.11 - no leading underscore
> m68k-rtems4.11 - no leading underscore
> microblaze-rtems4.11 - no leading underscore
> mips-rtems4.11 - no leading underscore
> powerpc-rtems4.11 - no leading underscore
> sh-rtems4.11 - leading underscore
> sparc64-rtems4.11 - no leading underscore
> sparc-rtems4.11 - no leading underscore
> v850-rtems4.11 - leading underscore
>
>
>
>
> --
> Joel Sherrill, Ph.D. Director of Research& Development
> joel.sherrill at OARcorp.com On-Line Applications Research
> Ask me about RTEMS: a free RTOS Huntsville AL 35805
> Support Available (256) 722-9985
>
> ______________________________**_________________
> rtems-devel mailing list
> rtems-devel at rtems.org
> http://www.rtems.org/mailman/**listinfo/rtems-devel<http://www.rtems.org/mailman/listinfo/rtems-devel>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20120817/334a7e83/attachment-0001.html>
More information about the devel
mailing list