This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
[binutils-gdb] Extend the descriptiopn of how to access linker defined symbols from C.
- From: Nick Clifton <nickc at sourceware dot org>
- To: bfd-cvs at sourceware dot org
- Date: 8 Sep 2015 08:36:44 -0000
- Subject: [binutils-gdb] Extend the descriptiopn of how to access linker defined symbols from C.
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5707d2add464b6787ec615825e00b2407ba8a82b
commit 5707d2add464b6787ec615825e00b2407ba8a82b
Author: Nick Clifton <nickc@redhat.com>
Date: Tue Sep 8 09:36:02 2015 +0100
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.
Diff:
---
ld/ChangeLog | 5 +++++
ld/ld.texinfo | 13 +++++++++++++
2 files changed, 18 insertions(+)
diff --git a/ld/ChangeLog b/ld/ChangeLog
index a9eb7c8..3ab9f75 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -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.
diff --git a/ld/ld.texinfo b/ld/ld.texinfo
index d20a59f..be1d490 100644
--- a/ld/ld.texinfo
+++ b/ld/ld.texinfo
@@ -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