Extend the descriptiopn of how to access linker defined symbols from C.

* ld.texinfo (Source Code Reference): Extend description to
	include an example using arrays.
This commit is contained in:
Nick Clifton
2015-09-08 09:36:02 +01:00
parent 4e0753f6a5
commit 5707d2add4
2 changed files with 18 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2015-09-08 Nick Clifton <nickc@redhat.com>
* ld.texinfo (Source Code Reference): Extend description to
include an example using arrays.
2015-07-28 Andrew Burgess <andrew.burgess@embecosm.com>
* ld.h (enum orphan_handling_enum): New.

View File

@ -3887,6 +3887,19 @@ Then the C source code to perform the copy would be:
@end smallexample
Note the use of the @samp{&} operators. These are correct.
Alternatively the symbols can be treated as the names of vectors or
arrays and then the code will again work as expected:
@smallexample
@group
extern char start_of_ROM[], end_of_ROM[], start_of_FLASH[];
memcpy (start_of_FLASH, start_of_ROM, end_of_ROM - start_of_ROM);
@end group
@end smallexample
Note how using this method does not require the use of @samp{&}
operators.
@node SECTIONS
@section SECTIONS Command