projects
/
external
/
binutils.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Automatic date update in version.in
[external/binutils.git]
/
bfd
/
section.c
diff --git
a/bfd/section.c
b/bfd/section.c
index
de4ca3a
..
6463633
100644
(file)
--- a/
bfd/section.c
+++ b/
bfd/section.c
@@
-1,5
+1,5
@@
/* Object file "section" support for the BFD library.
/* Object file "section" support for the BFD library.
- Copyright (C) 1990-201
8
Free Software Foundation, Inc.
+ Copyright (C) 1990-201
9
Free Software Foundation, Inc.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
Written by Cygnus Support.
This file is part of BFD, the Binary File Descriptor library.
@@
-65,10
+65,7
@@
SUBSECTION
data in place until a <<bfd_get_section_contents>> call is
made. Other back ends may read in all the data at once. For
example, an S-record file has to be read once to determine the
data in place until a <<bfd_get_section_contents>> call is
made. Other back ends may read in all the data at once. For
example, an S-record file has to be read once to determine the
- size of the data. An IEEE-695 file doesn't contain raw data in
- sections, but data and relocation expressions intermixed, so
- the data area has to be parsed to get out the data and
- relocations.
+ size of the data.
INODE
Section Output, typedef asection, Section Input, Sections
INODE
Section Output, typedef asection, Section Input, Sections
@@
-221,6
+218,11
@@
CODE_FRAGMENT
. {* The section contains thread local data. *}
.#define SEC_THREAD_LOCAL 0x400
.
. {* The section contains thread local data. *}
.#define SEC_THREAD_LOCAL 0x400
.
+. {* The section's size is fixed. Generic linker code will not
+. recalculate it and it is up to whoever has set this flag to
+. get the size right. *}
+.#define SEC_FIXED_SIZE 0x800
+.
. {* The section contains common symbols (symbols may be defined
. multiple times, the value of a symbol is the amount of
. space it requires, and the largest symbol value is the one
. {* The section contains common symbols (symbols may be defined
. multiple times, the value of a symbol is the amount of
. space it requires, and the largest symbol value is the one
@@
-818,21
+820,21
@@
_bfd_generic_new_section_hook (bfd *abfd, asection *newsect)
return TRUE;
}
return TRUE;
}
-
static unsigned int
section_id = 0x10; /* id 0 to 3 used by STD_SECTION. */
+
unsigned int _bfd_
section_id = 0x10; /* id 0 to 3 used by STD_SECTION. */
/* Initializes a new section. NEWSECT->NAME is already set. */
static asection *
bfd_section_init (bfd *abfd, asection *newsect)
{
/* Initializes a new section. NEWSECT->NAME is already set. */
static asection *
bfd_section_init (bfd *abfd, asection *newsect)
{
- newsect->id = section_id;
+ newsect->id =
_bfd_
section_id;
newsect->index = abfd->section_count;
newsect->owner = abfd;
if (! BFD_SEND (abfd, _new_section_hook, (abfd, newsect)))
return NULL;
newsect->index = abfd->section_count;
newsect->owner = abfd;
if (! BFD_SEND (abfd, _new_section_hook, (abfd, newsect)))
return NULL;
- section_id++;
+
_bfd_
section_id++;
abfd->section_count++;
bfd_section_list_append (abfd, newsect);
return newsect;
abfd->section_count++;
bfd_section_list_append (abfd, newsect);
return newsect;
@@
-1284,23
+1286,6
@@
bfd_make_section (bfd *abfd, const char *name)
/*
FUNCTION
/*
FUNCTION
- bfd_get_next_section_id
-
-SYNOPSIS
- int bfd_get_next_section_id (void);
-
-DESCRIPTION
- Returns the id that the next section created will have.
-*/
-
-int
-bfd_get_next_section_id (void)
-{
- return section_id;
-}
-
-/*
-FUNCTION
bfd_set_section_flags
SYNOPSIS
bfd_set_section_flags
SYNOPSIS
@@
-1472,16
+1457,20
@@
SYNOPSIS
DESCRIPTION
Sets the contents of the section @var{section} in BFD
DESCRIPTION
Sets the contents of the section @var{section} in BFD
- @var{abfd} to the data starting in memory at @var{
data}. The
- data is written to the output section starting at offset
+ @var{abfd} to the data starting in memory at @var{
location}.
+
The
data is written to the output section starting at offset
@var{offset} for @var{count} octets.
@var{offset} for @var{count} octets.
- Normally <<TRUE>> is returned,
else <<FALSE>>. Possible error
- returns are:
+ Normally <<TRUE>> is returned,
but <<FALSE>> is returned if
+
there was an error. Possible error
returns are:
o <<bfd_error_no_contents>> -
The output section does not have the <<SEC_HAS_CONTENTS>>
attribute, so nothing can be written to it.
o <<bfd_error_no_contents>> -
The output section does not have the <<SEC_HAS_CONTENTS>>
attribute, so nothing can be written to it.
- o and some more too
+ o <<bfd_error_bad_value>> -
+ The section is unable to contain all of the data.
+ o <<bfd_error_invalid_operation>> -
+ The BFD is not writeable.
+ o and some more too.
This routine is front end to the back end function
<<_bfd_set_section_contents>>.
This routine is front end to the back end function
<<_bfd_set_section_contents>>.