mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2025-01-26 19:44:28 +00:00
2009-03-17 Paul Pluzhnikov <ppluzhnikov@google.com>
* layout.h (Layout::create_note): Add section_name parameter. * layout.cc (Layout::create_note): Likewise. (Layout::create_build_id, Layout::create_gold_note): Fix callers.
This commit is contained in:
parent
54a0b537b8
commit
ef4ab7a818
@ -1,3 +1,9 @@
|
||||
2009-03-17 Paul Pluzhnikov <ppluzhnikov@google.com>
|
||||
|
||||
* layout.h (Layout::create_note): Add section_name parameter.
|
||||
* layout.cc (Layout::create_note): Likewise.
|
||||
(Layout::create_build_id, Layout::create_gold_note): Fix callers.
|
||||
|
||||
2009-03-17 Ian Lance Taylor <iant@google.com>
|
||||
|
||||
* descriptors.cc: Include "options.h".
|
||||
|
@ -1327,7 +1327,8 @@ Layout::finalize(const Input_objects* input_objects, Symbol_table* symtab,
|
||||
// *TRAILING_PADDING to the number of trailing zero bytes required.
|
||||
|
||||
Output_section*
|
||||
Layout::create_note(const char* name, int note_type, size_t descsz,
|
||||
Layout::create_note(const char* name, int note_type,
|
||||
const char* section_name, size_t descsz,
|
||||
bool allocate, size_t* trailing_padding)
|
||||
{
|
||||
// Authorities all agree that the values in a .note field should
|
||||
@ -1394,7 +1395,7 @@ Layout::create_note(const char* name, int note_type, size_t descsz,
|
||||
|
||||
memcpy(buffer + 3 * (size / 8), name, namesz);
|
||||
|
||||
const char* note_name = this->namepool_.add(".note", false, NULL);
|
||||
const char *note_name = this->namepool_.add(section_name, false, NULL);
|
||||
elfcpp::Elf_Xword flags = 0;
|
||||
if (allocate)
|
||||
flags = elfcpp::SHF_ALLOC;
|
||||
@ -1424,7 +1425,8 @@ Layout::create_gold_note()
|
||||
|
||||
size_t trailing_padding;
|
||||
Output_section *os = this->create_note("GNU", elfcpp::NT_GNU_GOLD_VERSION,
|
||||
desc.size(), false, &trailing_padding);
|
||||
".note.gnu.gold-version", desc.size(),
|
||||
false, &trailing_padding);
|
||||
|
||||
Output_section_data* posd = new Output_data_const(desc, 4);
|
||||
os->add_output_section_data(posd);
|
||||
@ -1556,7 +1558,8 @@ Layout::create_build_id()
|
||||
// Create the note.
|
||||
size_t trailing_padding;
|
||||
Output_section* os = this->create_note("GNU", elfcpp::NT_GNU_BUILD_ID,
|
||||
descsz, true, &trailing_padding);
|
||||
".note.gnu.build-id", descsz, true,
|
||||
&trailing_padding);
|
||||
|
||||
if (!desc.empty())
|
||||
{
|
||||
|
@ -456,12 +456,12 @@ class Layout
|
||||
};
|
||||
typedef std::vector<Group_signature> Group_signatures;
|
||||
|
||||
// Create a .note section, filling in the header.
|
||||
// Create a note section, filling in the header.
|
||||
Output_section*
|
||||
create_note(const char* name, int note_type, size_t descsz,
|
||||
bool allocate, size_t* trailing_padding);
|
||||
create_note(const char* name, int note_type, const char *section_name,
|
||||
size_t descsz, bool allocate, size_t* trailing_padding);
|
||||
|
||||
// Create a .note section for gold.
|
||||
// Create a note section for gold version.
|
||||
void
|
||||
create_gold_note();
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user