[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gold/14675] No eh_frame info registered in exception_static_test
From: |
cvs-commit at gcc dot gnu.org |
Subject: |
[Bug gold/14675] No eh_frame info registered in exception_static_test |
Date: |
Wed, 07 Jan 2015 13:12:02 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=14675
--- Comment #8 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot
gnu.org> ---
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".
The branch, users/hjl/pr14675 has been created
at 355d5e8db8f93fd2e5e73fc972bf3c3c818a4d66 (commit)
- Log -----------------------------------------------------------------
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=355d5e8db8f93fd2e5e73fc972bf3c3c818a4d66
commit 355d5e8db8f93fd2e5e73fc972bf3c3c818a4d66
Author: H.J. Lu <address@hidden>
Date: Sat Dec 20 05:45:51 2014 -0800
Treat .eh_frame section before crtbeginT as normal input
Force the exception frame section from input files before the crtbeginT
file to be handled as an ordinary input section if we aren't creating
the exception frame header. If we don't do this, we won't correctly
handle the special marker symbol in the exception frame section in the
crtbeginT file.
PR gold/14675
* ehframe.cc (Eh_frame::add_ehframe_input_section): Force the
exception frame section from input files if it can't be
optimized.
(Eh_frame::add_ehframe_input_section<32, false>): Updated.
(Eh_frame::add_ehframe_input_section<32, true>): Likewise.
(Eh_frame::add_ehframe_input_section<64, false>): Likewise.
(Eh_frame::add_ehframe_input_section<64, true>): Likewise.
* ehframe.h (Eh_frame::add_ehframe_input_section): Add a
bool parameter to indicate if the exception frame section
can be optimized.
* layout.cc (Layout::Layout): Initialize optimize_ehframe_ to
!has_crtbeginT.
(Layout::layout_eh_frame): Pass this->optimize_ehframe_ to
Eh_frame::add_ehframe_input_section.
(Layout::make_eh_frame_section): Set this->optimize_ehframe_
to true when processing the crtbeginT file if it is on command
line.
(Layout::match_file_name (const char*, const char*)): New.
(Layout::match_file_name(const Relobj*, const char*): Use it.
* layout.h (Layout::Layout): Add has_crtbeginT.
(Layout::match_file_name (const char*, const char*)): New.
(Layout): Add an optimize_ehframe_ member.
* main.cc (main): Pass command_line.has_crtbeginT() to layout.
* options.cc: Include "layout.h".
(Input_arguments::add_file): Set this->has_crtbeginT_ to true
if there is a crtbeginT file and the last one is a crti file.
* options.h (Input_arguments::Input_arguments): Initialize
has_crtbeginT_ and last_is_crti_ to false.
(Input_arguments::has_crtbeginT): New function.
(Input_arguments::has_crtbeginT_): New bool member.
(Input_arguments::last_is_crti_): Likewise.
(Command_line::has_crtbeginT): New function.
-----------------------------------------------------------------------
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug gold/14675] No eh_frame info registered in exception_static_test,
cvs-commit at gcc dot gnu.org <=