[Bug gold/13249] gold creates incorrect RELATIVE dynamic relocation for local IFUNC GOT entries

2011-12-19 Thread cvs-commit at gcc dot gnu.org
http://sourceware.org/bugzilla/show_bug.cgi?id=13249

--- Comment #4 from cvs-commit at gcc dot gnu.org  2011-12-19 21:14:52 UTC ---
CVSROOT:/cvs/src
Module name:src
Branch: binutils-2_22-branch
Changes by:i...@sourceware.org2011-12-19 21:14:40

Modified files:
gold   : ChangeLog Makefile.am Makefile.in configure 
 configure.ac dwarf_reader.cc expression.cc 
 fileread.cc gold.cc i386.cc incremental.cc 
 incremental.h layout.cc options.cc options.h 
 output.cc output.h plugin.cc powerpc.cc 
 readsyms.cc resolve.cc script-sections.cc 
 script.cc script.h sparc.cc symtab.cc symtab.h 
 x86_64.cc 
gold/testsuite : Makefile.in plugin_test_2.sh script_test_2.t 

Log message:
Copy from mainline to binutils 2.22 branch:

2011-12-17  Cary Coutant  

* dwarf_reader.cc (Sized_dwarf_line_info::read_lines): Add casts.
* resolve.cc (Symbol_table::resolve): Likewise.
* i386.cc (Target_i386::do_code_fill): Use char constants for nop
arrays.
* x86_64.cc (Target_x86_64::do_code_fill): Likewise.

2011-10-31  Cary Coutant  

PR gold/13023
* expression.cc (Expression::eval_with_dot): Add
is_section_dot_assignment parameter.
(Expression::eval_maybe_dot): Likewise.  Adjust value when rhs is
absolute and assigning to dot within a section.
* script-sections.cc
(Output_section_element_assignment::set_section_addresses): Pass
dot_section to set_if_absolute.
(Output_section_element_dot_assignment::finalize_symbols): Pass TRUE
as is_section_dot_assignment flag to eval_with_dot.
(Output_section_element_dot_assignment::set_section_addresses):
Likewise.
* script.cc (Symbol_assignment::set_if_absolute): Add dot_section
parameter.  Also set value if relative to dot_section; set the
symbol's output_section.
* script.h (Expression::eval_with_dot): Add is_section_dot_assignment
parameter.  Adjust all callers.
(Expression::eval_maybe_dot): Likewise.
(Symbol_assignment::set_if_absolute): Add dot_section parameter.
Adjust all callers.
* testsuite/script_test_2.t: Test assignment of an absolute value
to dot within an output section element.

2011-10-31  Cary Coutant  

* options.h (class General_options): Add --[no-]gnu-unique options.
* symtab.cc (Symbol_table::sized_write_globals): Convert
STB_GNU_UNIQUE to STB_GLOBAL if --no-gnu-unique.

2011-10-31  Cary Coutant  

PR gold/13359
* i386.cc (Target_i386::Relocate::relocate_tls): Remove
unnecessary assertion.
* x86_64.cc (Target_x86_64::Relocate::relocate_tls): Likewise.

2011-10-31 Sriraman Tallam  

* symtab.h (Symbol_table::gc_mark_symbol_for_shlib): Rename to
gc_mark_symbol.
* symtab.cc (Symbol_table::gc_mark_symbol_for_shlib): Rename to
gc_mark_symbol.
Change to just keep the section associated with symbol.
(Symbol_table::add_from_relobj): Mark symbols as not garbage when
they are externally visible and --export-dynamic is turned on.
(Symbol_table::gc_mark_dyn_syms): Call gc_mark_symbol.

2011-10-19  Ian Lance Taylor  

PR gold/13163
* script-sections.cc
(Output_section_element_dot_assignment::needs_output_section): New
function.

2011-10-19  Ian Lance Taylor  

PR gold/13204
* layout.cc (Layout::segment_precedes): Don't assert failure if a
--section-start option was seen.
* options.h (General_options::any_section_start): New function.

2011-10-18  Cary Coutant  

* output.cc (posix_fallocate): Return 0 on success, errno on failure.
(Output_file::map_no_anonymous): Check for non-zero
return code from posix_fallocate.

2011-10-17  Cary Coutant  

PR gold/13245
* plugin.cc (is_visible_from_outside): Check for symbols
referenced from dynamic objects.
* resolve.cc (Symbol_table::resolve): Don't count references
from dynamic objects as references from real ELF files.
* testsuite/plugin_test_2.sh: Adjust expected result.

2011-10-17  Cary Coutant  

* readsyms.cc (Read_symbols::run): Don't queue an unblocker
task for members of lib groups.

2011-10-17  Cary Coutant  

PR gold/13288
* fileread.cc (File_read::find_view): Add assert.
(File_read::make_view): Move bounds check (replace with assert)...
(File_read::find_or_make_view): ... to here.

2011-10-12  Cary Coutant  

* output.cc (Output_file::open_base_file): Handle case where
::read returns less than requested size.

2011-10-10  Cary Coutant  

* incremental.cc (Sized_relobj_incr::Sized_relobj_incr):
Initialize defined_count_.
(Sized_relobj_incr::do_add_symbols): Count defined symbols.
(Sized_relobj_incr::do_get_global_symbol_counts): Rewrite.
(Sized_incr_dynobj::Sized_incr_dynobj): Initialize defined_count_.
(Sized_incr_dynobj::do

[Bug gold/13249] gold creates incorrect RELATIVE dynamic relocation for local IFUNC GOT entries

2011-10-10 Thread ccoutant at google dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=13249

Cary Coutant  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #3 from Cary Coutant  2011-10-10 
17:32:37 UTC ---
Fixed in trunk.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gold/13249] gold creates incorrect RELATIVE dynamic relocation for local IFUNC GOT entries

2011-10-10 Thread cvs-commit at gcc dot gnu.org
http://sourceware.org/bugzilla/show_bug.cgi?id=13249

--- Comment #2 from cvs-commit at gcc dot gnu.org  2011-10-10 17:29:55 UTC ---
CVSROOT:/cvs/src
Module name:src
Changes by:ccout...@sourceware.org2011-10-10 17:29:52

Modified files:
gold   : ChangeLog output.cc output.h powerpc.cc 
 sparc.cc x86_64.cc 

Log message:
PR gold/13249
* gold/output.cc (Output_reloc::Output_reloc): Add use_plt_offset flag.
(Output_reloc::symbol_value): Return PLT offset if flag is set.
* gold/output.h (class Output_reloc): Add use_plt_offset flag.
(Output_reloc::type_): Adjust size of bit field.
(Output_reloc::use_plt_offset_): New bit field.
(class Output_data_reloc): Adjust all calls to Output_reloc_type.
(Output_data_reloc::add_local_relative): (RELA only) Add use_plt_offset
flag.  Adjust all callers.
* gold/x86_64.cc (Target_x86_64::Scan::local): Check for IFUNC when
creating RELATIVE relocations.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gold/ChangeLog.diff?cvsroot=src&r1=1.832&r2=1.833
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gold/output.cc.diff?cvsroot=src&r1=1.160&r2=1.161
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gold/output.h.diff?cvsroot=src&r1=1.129&r2=1.130
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gold/powerpc.cc.diff?cvsroot=src&r1=1.39&r2=1.40
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gold/sparc.cc.diff?cvsroot=src&r1=1.48&r2=1.49
http://sourceware.org/cgi-bin/cvsweb.cgi/src/gold/x86_64.cc.diff?cvsroot=src&r1=1.139&r2=1.140

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug gold/13249] gold creates incorrect RELATIVE dynamic relocation for local IFUNC GOT entries

2011-10-06 Thread ccoutant at google dot com
http://sourceware.org/bugzilla/show_bug.cgi?id=13249

Cary Coutant  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
 AssignedTo|ian at airs dot com |ccoutant at google dot com

--- Comment #1 from Cary Coutant  2011-10-06 
21:39:38 UTC ---
Patch posted for review:

http://sourceware.org/ml/binutils/2011-10/msg00031.html

PR gold/13249
* gold/output.cc (Output_reloc::Output_reloc): Add use_plt_offset flag.
(Output_reloc::symbol_value): Return PLT offset if flag is set.
* gold/output.h (class Output_reloc): Add use_plt_offset flag.
(Output_reloc::type_): Adjust size of bit field.
(Output_reloc::use_plt_offset_): New bit field.
(class Output_data_reloc): Adjust all calls to Output_reloc_type.
(Output_data_reloc::add_local_relative): (RELA only) Add use_plt_offset
flag.  Adjust all callers.
* gold/x86_64.cc (Target_x86_64::Scan::local): Check for IFUNC when
creating RELATIVE relocations.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

___
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils