ChangeLog-2012 114 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300
  1. 2012-12-23 Mike Frysinger <vapier@gentoo.org>
  2. * config.bfd (i[3-7]86-*-linux-*): Add x86_64pei_vec to
  3. targ64_selvecs.
  4. 2012-12-21 H.J. Lu <hongjiu.lu@intel.com>
  5. * elf64-x86-64.c (elf_x86_64_relocate_section): Check
  6. R_X86_64_standard instead of R_X86_64_max for unrecognized
  7. relocation.
  8. 2012-12-21 H.J. Lu <hongjiu.lu@intel.com>
  9. PR ld/14980
  10. * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Properly
  11. adjust h->plt.refcount.
  12. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
  13. 2012-12-19 H.J. Lu <hongjiu.lu@intel.com>
  14. * elf32-i386.c (elf_i386_relocate_section): Replace
  15. bfd_elf32_swap_reloc_out with elf_append_rel.
  16. (elf_i386_finish_dynamic_symbol): Likewise.
  17. * elflink.c (elf_append_rel): Call swap_reloc_out instead of
  18. swap_reloca_out.
  19. 2012-12-18 H.J. Lu <hongjiu.lu@intel.com>
  20. * elf32-i386.c (elf_i386_finish_dynamic_symbol): Reindent.
  21. 2012-12-18 Edgar E. Iglesias <edgar.iglesias@gmail.com>
  22. PR ld/14736
  23. * elf32-microblaze.c (calc_fixup): Add end range.
  24. 2012-12-18 Alan Modra <amodra@gmail.com>
  25. * elf.c (swap_out_syms): Set shndx to SHN_ABS when not one of
  26. the special MAP_* values.
  27. 2012-12-17 Roland McGrath <mcgrathr@google.com>
  28. Alan Modra <amodra@gmail.com>
  29. * elf32-arm.c (elf32_arm_size_stubs): Skip input BFDs that are
  30. not ARM ELF.
  31. 2012-12-17 Nick Clifton <nickc@redhat.com>
  32. * MAINTAINERS: Add copyright notice.
  33. * Makefile.am: Likewise.
  34. * PORTING: Likewise.
  35. * README: Likewise.
  36. * TODO: Likewise.
  37. * acinclude.m4: Likewise.
  38. * bfd.m4: Likewise.
  39. * config.bfd: Likewise.
  40. * configure.com: Likewise.
  41. * configure.host: Likewise.
  42. * configure.in: Likewise.
  43. * makefile.vms: Likewise.
  44. * warning.m4: Likewise.
  45. * elf64-hppa.c: Fix copyright notice.
  46. * Makefile.in: Regenerate.
  47. 2012-12-16 H.J. Lu <hongjiu.lu@intel.com>
  48. * elf32-i386.c (elf_i386_check_relocs): Don't check IFUNC
  49. relocations here.
  50. * elf64-x86-64.c (elf_x86_64_check_relocs): Likewise.
  51. 2012-12-16 H.J. Lu <hongjiu.lu@intel.com>
  52. PR ld/14968
  53. * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Also check
  54. local IFUNC references.
  55. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
  56. 2012-12-14 Tom Tromey <tromey@redhat.com>
  57. * elf.c (elfcore_grok_note) <NT_FILE>: New case.
  58. 2012-12-13 H.J. Lu <hongjiu.lu@intel.com>
  59. PR ld/14956
  60. * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Check local
  61. IFUNC calls.
  62. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
  63. 2012-12-10 Edgar E. Iglesias <edgar.iglesias@gmail.com>
  64. * reloc.c (MICROBLAZE): Document new relocations
  65. * bfd-in2.h: Regenerated
  66. * libbfd.h: Regenerated
  67. * elf32-microblaze.c (microblaze_elf_howto_raw): Add TLS relocations
  68. (microblaze_elf_reloc_type_lookup): Likewise
  69. (elf32_mb_link_hash_entry): define TLS reference types
  70. (elf32_mb_link_hash_table): add TLS Local dynamic GOT entry
  71. #define has_tls_reloc if section has TLS relocs
  72. (dtprel_base), (check_unique_offset): New
  73. (microblaze_elf_output_dynamic_relocation): output simple
  74. dynamic relocation into SRELOC.
  75. (microblaze_elf_relocate_section): Accommodate TLS relocations.
  76. (microblaze_elf_check_relocs): Likewise
  77. (update_local_sym_info): New
  78. (microblaze_elf_copy_indirect_symbol): Add tls_mask.
  79. (allocate_dynrelocs): Handle TLS symbol
  80. (microblaze_elf_size_dynamic_sections): Set size and offset
  81. (microblaze_elf_finish_dynamic_symbol): Use
  82. microblaze_elf_output_dynamic_relocation
  83. 2012-12-09 H.J. Lu <hongjiu.lu@intel.com>
  84. PR binutils/14933
  85. * archive.c (bsd_write_armap): Properly check indicies bigger
  86. than 4Gb.
  87. 2012-12-07 Alan Modra <amodra@gmail.com>
  88. PR ld/14926
  89. * elf.c (_bfd_elf_map_sections_to_segments): Include elf header
  90. size when determining phdr_in_segment.
  91. 2012-12-06 Yufeng Zhang <yufeng.zhang@arm.com>
  92. * elf64-aarch64.c (elf64_aarch64_grok_prstatus): New function.
  93. (elf_backend_grok_prstatus): Define to elf64_aarch64_grok_prstatus.
  94. 2012-12-06 Alan Modra <amodra@gmail.com>
  95. * elfxx-mips.c (allocate_dynrelocs): Correct test for symbol
  96. defined in a regular file to include common symbols.
  97. 2012-12-05 Leif Ekblad <leif@rdos.net>
  98. * config.bfd: Add x86_64-*-rdos.
  99. 2012-12-05 Alan Modra <amodra@gmail.com>
  100. * elf64-ppc.c (build_plt_stub): Fix off by one error in branch
  101. to glink.
  102. 2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
  103. PR ld/10629
  104. * elfxx-mips.c (mips_elf_link_hash_table): Update comment for
  105. use_rld_obj_head.
  106. (_bfd_mips_elf_create_dynamic_sections): Always create a
  107. .rld_map section if no __rld_obj_head symbol has been seen.
  108. 2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
  109. * elf32-mips.c (mips_elf32_object_p): Return right away when the
  110. ABI is not compatible.
  111. * elfn32-mips.c (mips_elf_n32_object_p): Likewise.
  112. 2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
  113. * elf32-tilepro.c (tilepro_elf_mkobject): New function.
  114. (bfd_elf32_mkobject): New macro.
  115. 2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
  116. * elf32-mips.c (bfd_elf32_mkobject): New macro.
  117. * elf64-mips.c (bfd_elf64_mkobject): Likewise.
  118. * elfn32-mips.c (bfd_elf32_mkobject): Likewise.
  119. * elfxx-mips.h (_bfd_mips_elf_mkobject): New prototype.
  120. * elfxx-mips.c (mips_elf_obj_tdata): New struct.
  121. (mips_elf_tdata): New macro.
  122. (_bfd_mips_elf_mkobject): New function.
  123. (mips_elf_merge_obj_attributes): Report the originating input BFD
  124. on attribute conflicts.
  125. 2012-12-03 Maciej W. Rozycki <macro@codesourcery.com>
  126. * elfxx-mips.c (mips_elf_merge_obj_attributes): Correct messages
  127. for the -mdouble-float and -msingle-float cases throughout; make
  128. all the messages report the output file consistently on the
  129. left-hand side.
  130. 2012-11-29 Roland McGrath <mcgrathr@google.com>
  131. * elf-nacl.c (segment_eligible_for_headers): Disallow writable segments.
  132. 2012-11-26 Roland McGrath <mcgrathr@google.com>
  133. * elf-nacl.c (nacl_modify_segment_map): Don't crash when INFO is null.
  134. 2012-11-21 H.J. Lu <hongjiu.lu@intel.com>
  135. PR binutils/14493
  136. * elf.c (copy_elf_program_header): When rewriting program
  137. header, set the output maxpagesize to the maximum alignment
  138. of input PT_LOAD segments.
  139. 2012-11-21 Roland McGrath <mcgrathr@google.com>
  140. * elf-nacl.c (segment_nonexecutable_and_has_contents): Renamed to ...
  141. (segment_eligible_for_headers): ... this. Take new arguments
  142. MAXPAGESIZE and SIZEOF_HEADERS. Return false if the first section's
  143. start address doesn't leave space for the headers.
  144. (nacl_modify_segment_map): Update caller.
  145. 2012-11-20 H.J. Lu <hongjiu.lu@intel.com>
  146. PR ld/14862
  147. * elf-bfd.h (elf_link_hash_entry): Remove ref_dynamic_nonweak
  148. added by accident.
  149. (elf_link_add_object_symbols): Don't set nor check
  150. ref_dynamic_nonweak.
  151. 2012-11-20 Alan Modra <amodra@gmail.com>
  152. * elf32-rx.c (rx_elf_print_private_bfd_data): Warning fix.
  153. 2012-11-16 Joey Ye <joey.ye@arm.com>
  154. * elf32-arm.c (elf32_arm_final_link_relocate
  155. <case R_ARM_THM_ALU_PREL_11_0, case R_ARM_THM_PC12>): Align address of
  156. the place being relocated.
  157. (elf32_arm_final_link_relocate, case R_ARM_THM_PC8): Align address
  158. of the place being relocated and truncate addend.
  159. (Pa): New macro.
  160. 2012-11-14 Roland McGrath <mcgrathr@google.com>
  161. * elf32-arm.c (elf32_arm_nacl_plt0_entry): Use bic rather than bfc
  162. instruction for data sandboxing.
  163. 2012-11-14 Tristan Gingold <gingold@adacore.com>
  164. * mach-o.c (bfd_mach_o_read_main)
  165. (bfd_mach_o_read_source_version): New functions.
  166. (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_DATA_IN_CODE,
  167. BFD_MACH_O_LC_DYLIB_CODE_SIGN_DRS, BFD_MACH_O_LC_MAIN,
  168. BFD_MACH_O_LC_SOURCE_VERSION.
  169. * mach-o.h (bfd_mach_o_main_command)
  170. (bfd_mach_o_source_version_command): New types.
  171. (bfd_mach_o_load_command): Add fields for these new types.
  172. 2012-11-14 Tristan Gingold <gingold@adacore.com>
  173. * mach-o.c (bfd_mach_o_canonicalize_one_reloc): Add a special
  174. handling for non-scattered pairs. Update comments.
  175. 2012-11-13 Joe Seymour <jseymour@codesourcery.com>
  176. * elf.c (rewrite_elf_program_header): Allocate elf_segment_map
  177. with bfd_zalloc, instead of bfd_alloc.
  178. 2012-11-09 Nick Clifton <nickc@redhat.com>
  179. * Makefile.am (ALL_MACHINES): Add cpu-v850-rh850.lo.
  180. (ALL_MACHINES_CFILES): Add cpu-v850-rh850.c.
  181. * archures.c (bfd_arch_info): Add bfd_v850_rh850_arch.
  182. * config.bfd: Likewise.
  183. * configure.in: Add bfd_elf32_v850_rh850_vec.
  184. * cpu-v850.c: Update printed description.
  185. * cpu-v850_rh850.c: New file.
  186. * elf32-v850.c (v850_elf_check_relocs): Add support for RH850 ABI
  187. relocs.
  188. (v850_elf_perform_relocation): Likewise.
  189. (v850_elf_final_link_relocate): Likewise.
  190. (v850_elf_relocate_section): Likewise.
  191. (v850_elf_relax_section): Likewise.
  192. (v800_elf_howto_table): New.
  193. (v850_elf_object_p): Add support for RH850 ABI values.
  194. (v850_elf_final_write_processing): Likewise.
  195. (v850_elf_merge_private_bfd_data): Likewise.
  196. (v850_elf_print_private_bfd_data): Likewise.
  197. (v800_elf_reloc_map): New.
  198. (v800_elf_reloc_type_lookup): New.
  199. (v800_elf_reloc_name_lookup): New.
  200. (v800_elf_info_to_howto): New.
  201. (bfd_elf32_v850_rh850_vec): New.
  202. (bfd_arch_v850_rh850): New.
  203. * targets.c (_bfd_targets): Add bfd_elf32_v850_rh850_vec.
  204. * Makefile.in: Regenerate.
  205. * bfd-in2.h: Regenerate.
  206. * configure: Regenerate.
  207. * elf32-rx.c (describe_flags): New function. Returns a buffer
  208. containing a description of the E_FLAG_RX_... values set.
  209. (rx_elf_merge_private_bfd_data): Use it.
  210. (rx_elf_print_private_bfd_data): Likewise.
  211. (elf32_rx_machine): Skip EF_RX_CPU_RX check.
  212. (elf32_rx_special_sections): Define.
  213. (elf_backend_special_sections): Define.
  214. 2012-11-09 Edgar E. Iglesias <edgar.iglesias@gmail.com>
  215. * config.bfd: Add microblazeel-*-*
  216. * configure.in: Likewise.
  217. * configure: Regenerate.
  218. * elf32-microblaze.c (microblaze_elf_relocate_section): Add endian awareness.
  219. (microblaze_elf_merge_private_bfd_data): New.
  220. (microblaze_bfd_write_imm_value_32): New.
  221. (microblaze_bfd_write_imm_value_64): New.
  222. (microblaze_elf_relax_section): Add endian awareness.
  223. (microblaze_elf_add_symbol_hook): Define TARGET_LITTLE_NAME,
  224. TARGET_LITTLE_SYM and bfd_elf32_bfd_merge_private_bfd_data.
  225. * targets.c: Add bfd target bfd_elf32_microblazeel_vec.
  226. 2012-11-09 H.J. Lu <hongjiu.lu@intel.com>
  227. * aout-tic30.c (MY_final_link_callback): Remove trailing
  228. redundant `;'.
  229. * coff-h8500.c (extra_case): Likewise.
  230. (bfd_coff_reloc16_get_value): Likewise.
  231. * dwarf2.c (_bfd_dwarf2_cleanup_debug_info): Likewise.
  232. * elf.c (_bfd_elf_slurp_version_tables): Likewise.
  233. * elf32-frv.c (elf32_frv_relocate_section): Likewise.
  234. * elf32-v850.c (v850_elf_perform_relocation): Likewise.
  235. * opncls.c (bfd_calc_gnu_debuglink_crc32): Likewise.
  236. * plugin.c (add_symbols): Likewise.
  237. * reloc.c (bfd_check_overflow): Likewise.
  238. * vms-lib.c (_bfd_vms_lib_archive_p): Likewise.
  239. 2012-11-08 Tom Tromey <tromey@redhat.com>
  240. * elf.c (elfcore_grok_note) <NT_SIGINFO>: New case; make
  241. pseudosection.
  242. 2012-11-08 Alan Modra <amodra@gmail.com>
  243. * aclocal.m4: Regenerate.
  244. * Makefile.in: Regenerate.
  245. * po/SRC-POTFILES.in: Regenerate.
  246. 2012-11-07 H.J. Lu <hongjiu.lu@intel.com>
  247. * section.c (bfd_get_section_contents): Replace memcpy
  248. with memmove.
  249. 2012-11-07 Hans-Peter Nilsson <hp@axis.com>
  250. PR binutils/14481
  251. * aout-target.h (MY_close_and_cleanup): Make local function
  252. instead of alias of MY_bfd_free_cached_info. Also call
  253. _bfd_generic_close_and_cleanup.
  254. 2012-11-06 H.J. Lu <hongjiu.lu@intel.com>
  255. PR binutils/14813
  256. * bfdio.c (bfd_iovec): Change return type of bclose to
  257. bfd_boolean.
  258. (memory_bclose): Change return type to bfd_boolean.
  259. * cache.c (cache_bclose): Likewise.
  260. * opncls.c (opncls_bclose): Likewise. Return TRUE on success.
  261. * vms-lib.c (vms_lib_bclose): Likewise. Return TRUE.
  262. * libbfd.h: Regenerated.
  263. 2012-11-06 Tristan Gingold <gingold@adacore.com>
  264. * coff-x86_64.c (_bfd_generic_find_nearest_line_discriminator):
  265. Define as coff_find_nearest_line_discriminator.
  266. 2012-11-06 Alan Modra <amodra@gmail.com>
  267. PR binutils/14567
  268. * opncls.c (opncls_iovec): Forward declare.
  269. (_bfd_new_bfd_contained_in): If using opncls_iovec, copy iostream
  270. to new bfd.
  271. 2012-11-06 Alan Modra <amodra@gmail.com>
  272. * mach-o.c (bfd_mach_o_close_and_cleanup): Don't call
  273. _bfd_generic_close_and_cleanup for mach_o_fat archives.
  274. 2012-11-06 Alan Modra <amodra@gmail.com>
  275. * coff-tic4x.c (tic4x_coff0_vec, tic4x_coff0_beh_vec,
  276. tic4x_coff1_vec, tic4x_coff1_beh_vec, tic4x_coff2_vec,
  277. tic4x_coff2_beh_vec): Allow SEC_CODE and SEC_READONLY in
  278. section flags.
  279. * coff-ppc.c (TARGET_LITTLE_SYM): Likewise.
  280. (TARGET_BIG_SYM): Likewise.
  281. 2012-11-06 Alan Modra <amodra@gmail.com>
  282. * elf64-ppc.c (struct ppc_link_hash_table): Add dot_toc_dot.
  283. (ppc64_elf_size_stubs): Lookup ".TOC.".
  284. (ppc64_elf_relocate_section): Resolve special symbol ".TOC.".
  285. 2012-11-06 Alan Modra <amodra@gmail.com>
  286. * elf64-ppc.c (maybe_strip_output): Heed SEC_KEEP.
  287. 2012-11-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  288. PR target/14788
  289. * elf32-s390.c (elf_s390_relocate_section): Set elf.dynobj for
  290. local ifunc symbols.
  291. * elf64-s390.c (elf_s390_relocate_section): Likewise.
  292. 2012-11-05 Alan Modra <amodra@gmail.com>
  293. * configure.in: Apply 2012-09-10 change to config.in here.
  294. 2012-11-05 Alan Modra <amodra@gmail.com>
  295. * elf64-ppc.c (ppc64_elf_edit_toc): Clear "repeat" inside
  296. loop. Really mark toc entry referring to another toc entry
  297. only if the first is used.
  298. 2012-10-30 H.J. Lu <hongjiu.lu@intel.com>
  299. * configure.in: Also handle --enable-64-bit-bfd when setting
  300. CORE_HEADER for 'i[3-7]86-*-linux-*'.
  301. 2012-10-30 Steve McIntyre <steve.mcintyre@linaro.org>
  302. * elf32-arm.c (elf32_arm_print_private_bfd_data): Recognise and
  303. display the new ARM hard-float/soft-float ABI flags for EABI_VER5
  304. (elf32_arm_post_process_headers): Add the hard-float/soft-float
  305. ABI flag as appropriate for ET_DYN/ET_EXEC in EABI_VER5.
  306. 2012-10-30 Yao Qi <yao@codesourcery.com>
  307. H.J. Lu <hongjiu.lu@intel.com>
  308. * configure.in: Set CORE_HEADER to hosts/x86-64linux.h for
  309. 'i[3-7]86-*-linux-*' if x86_64-*linux is enabled.
  310. * configure: Regenerated.
  311. * elf64-x86-64.c (elf_x86_64_write_core_note): Replace type
  312. 'prpsinfo_t' and 'prstatus_t' with 'prpsinfo64_t' and
  313. 'prstatus64_t' respectively.
  314. * hosts/x86-64linux.h (a8_uint64_t): New.
  315. (user_regsx32_struct): Renamed to ...
  316. (user_regs64_struct): This. Replace uint64_t with a8_uint64_t.
  317. (elf_gregx32_t): Renamed to ...
  318. (elf_greg64_t): This. Replace uint64_t with a8_uint64_t.
  319. (ELF_NGREGX32): Removed.
  320. (ELF_NGREG64): New.
  321. (elf_gregx32_t): Removed.
  322. (elf_greg64_t): New.
  323. (struct prstatus64_timeval): New.
  324. (elf_prstatusx32): Replace elf_gregsetx32_t with elf_gregset64_t.
  325. (elf_prstatus64): New.
  326. (elf_prpsinfo64): New.
  327. (prstatus64_t, prpsinfo64_t): New typedef.
  328. 2012-10-29 Sean Keys <skeys@ipdatasys.com>
  329. * elf32-xgate.c(elf_xgate_howto_table): Fix src and dest mask for
  330. R_XGATE_16
  331. 2012-10-29 Alan Modra <amodra@gmail.com>
  332. * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask in
  333. R_PPC_VLE_LO16A, R_PPC_VLE_HI16A, R_PPC_VLE_HA16A,
  334. R_PPC_VLE_SDAREL_LO16A, R_PPC_VLE_SDAREL_HI16A,
  335. R_PPC_VLE_SDAREL_HA16A reloc howtos.
  336. 2012-10-26 Nick Clifton <nickc@redhat.com>
  337. * po/uk.po: Updated Ukranian translation.
  338. 2012-10-26 Alan Modra <amodra@gmail.com>
  339. PR gas/14758
  340. * elf32-ppc.c (ppc_elf_reloc_type_lookup): Decode ppc64 _DS
  341. bfd_reloc values. Map to corresponding D-form relocs.
  342. (is_insn_ds_form, is_insn_qs_form): New functions.
  343. (ppc_elf_relocate_section): Validate insn with DS-form or DQ-form
  344. fields using D-form reloc.
  345. 2012-10-25 H.J. Lu <hongjiu.lu@intel.com>
  346. * elf32-i386.c (elf_i386_size_dynamic_sections): Replace
  347. _GLOBAL_OFFSET_TABLE_ lookup with htab->elf.hgot.
  348. * elf64-x86-64.c (elf_x86_64_size_dynamic_sections): Likewise.
  349. 2012-10-24 H.J. Lu <hongjiu.lu@intel.com>
  350. * compress.c (bfd_is_section_compressed): Don't decompress the
  351. section.
  352. 2012-10-23 Nathan Sidwell <nathan@codesourcery.com>
  353. * bfd-in.h (bfd_elf_stack_segment_size): Declare.
  354. * bfd-in2.h: Rebuilt.
  355. * elfxx-target.h (elf_backend_stack_align): New.
  356. (elfNN_bed): Add it.
  357. * elf-bfd.h (struct elf_backend_data): Add stack_align field.
  358. * elf.c (bfd_elf_map_sections_to_segments): Pay attention to
  359. stack_align and stacksize for PT_GNU_STACK segment.
  360. (assign_file_positions_for_non_load_sections): Set p_memsz for
  361. PT_GNU_STACK segment.
  362. (copy_elf_program_header): Copy PT_GNU_STACK size.
  363. * elflink.c (bfd_elf_stack_segment_size): New function, taken from
  364. uclinux backends.
  365. (bfd_elf_size_dynamic_sections): Determine
  366. PT_GNU_STACK requirements after calling backend. Pay attention to
  367. stacksize.
  368. * elf32-bfin.c (elf32_bfinfdpic_always_size_sections): Call
  369. bfd_elf_stack_segment_size.
  370. (elf32_bfinfdpic_modify_program_headers): Delete.
  371. (elf32_bfingfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
  372. here.
  373. (elf_backend_stack_align): Override.
  374. (elf_backend_modify_program_headers): Don't override.
  375. * elf32-frv.c (frvfdpic_always_size_sections): Call
  376. bfd_elf_stack_segment_size.
  377. (elf32_frvfdpic_modify_program_headers): Delete.
  378. (elf32_frvfdpic_copy_private_bfd_data): Don't copy PT_GNU_STACK
  379. here.
  380. (elf_backend_stack_align): Override.
  381. (elf_backend_modify_program_headers): Don't override.
  382. * elf32-lm32.c (lm32_elf_always_size_sections): Leave
  383. PT_GNU_STACK creation to underlying elf support. Check
  384. __stacksize here for backwards compatibility, and set it if
  385. needed.
  386. (lm32_elf_modify_segment_map): Delete.
  387. (lm32_elf_modify_program_headers): Delete.
  388. (elf_backend_stack_align): Override.
  389. (elf_backend_modify_segment_map): Don't override.
  390. (elf_backend_modify_program_headers): Don't override.
  391. * elf32-sh.c (sh_elf_always_size_sections): Call
  392. bfd_elf_stack_segment_size.
  393. (sh_elf_modify_program_headers): Delete.
  394. (sh_elf_copy_private_data): Don't copy PT_GNU_STACK
  395. here.
  396. (elf_backend_stack_align): Override.
  397. (elf_backend_modify_program_headers): Don't override.
  398. * elf32-tic6x.c (elf32_tic6x_always_size_sections): Call
  399. bfd_elf_stack_segment_size.
  400. (elf32_tic6x_modify_program_headers): Delete.
  401. (elf32_tic6x_copy_private_data): Delete.
  402. (elf_backend_stack_align): Override.
  403. (bfd_elf32_bfd_copy_private_bfd_data): Don't override.
  404. (elf_backend_modify_program_headers): Don't override.
  405. 2012-10-22 Alan Modra <amodra@gmail.com>
  406. * cache.c (cache_bmmap): Don't use void* arithmetic.
  407. 2012-10-21 Alan Modra <amodra@gmail.com>
  408. * compress.c (bfd_cache_section_contents): New function.
  409. * bfd-in2.h: Regenerate.
  410. 2012-10-21 Hans-Peter Nilsson <hp@bitrange.com>
  411. * linker.c (_bfd_generic_link_output_symbols): Handle a
  412. no-longer-global symbol entered through a plugin.
  413. 2012-10-20 Alan Modra <amodra@gmail.com>
  414. * compress.c: Reinstate 2012-10-19 change.
  415. (bfd_get_full_section_contents): Don't free unless we alloc.
  416. Use proper decompress size. Delete some vars, rename others.
  417. 2012-10-19 Tom Tromey <tromey@redhat.com>
  418. * compress.c: Revert previous patch.
  419. 2012-10-19 Tom Tromey <tromey@redhat.com>
  420. * compress.c (bfd_get_full_section_contents): Don't cache
  421. decompressed contents.
  422. 2012-10-18 Kai Tietz <ktietz@redhat.com>
  423. PR binutils/14067
  424. * coff-i386.c (bfd_target): Add section flag SEC_EXCLUDE.
  425. Allow BFD_COMPRESS and BFD_DECOMPRESS flags.
  426. * coff-x86_64.c: Likewise.
  427. * coffcode.h (DOT_ZDEBUG): New define.
  428. (sec_to_styp_flags): Check for .zdebug.
  429. (styp_to_sec_flags): Likewise.
  430. * coffgen.c (make_a_section): Handle .debug_* section
  431. compression/decompression flags.
  432. * cofflink.c (mark_relocs): Ignore relocations
  433. for a section, which isn't marked as used.
  434. (_bfd_coff_link_input_bfd): Add support of compressed
  435. debug sections.
  436. * compress.c (decompress_contents): Loop as long
  437. as there is input available and there is room for
  438. output.
  439. * bfd/pe-arm.c: Add .zdebug_ partial match entry.
  440. * pe-i386.c: Likewise.
  441. * pe-x86_64.c: Likewise.
  442. * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Don't clear all
  443. data-directories as this might destroy content.
  444. * coff-i386.c (_bfd_generic_find_nearest_line_discriminator):
  445. define as coff_find_nearest_line_discriminator.
  446. * libcoff-in.h (coff_find_nearest_line_discriminator): New
  447. * libcoff.h: Regenerated.
  448. * coff-x86_64.c: Likewise.
  449. * coffgen.c (coff_find_nearest_line_discriminator): New function.
  450. prototype.
  451. 2012-10-16 Joel Brobecker <brobecker@adacore.com>
  452. * coff64-rs6000.c (rs6000coff64_vec): Set _close_and_cleanup
  453. field to _bfd_archive_close_and_cleanup.
  454. (aix5coff64_vec): Likewise.
  455. 2012-10-16 Joel Brobecker <brobecker@adacore.com>
  456. * coff-rs6000.c (rs6000coff_vec): Set _close_and_cleanup
  457. field to _bfd_archive_close_and_cleanup.
  458. (pmac_xcoff_vec): Likewise.
  459. 2012-10-16 Sofiane Naci <sofiane.naci@arm.com>
  460. * elf64-aarch64.c (elf64_aarch64_tls_howto_table): Fix shift value for
  461. R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, R_AARCH64_TLSLE_MOVW_TPREL_G2,
  462. R_AARCH64_TLSLE_MOVW_TPREL_G1, R_AARCH64_TLSLE_MOVW_TPREL_G1_NC,
  463. R_AARCH64_TLSLE_ADD_TPREL_HI12.
  464. (elf64_aarch64_tlsdesc_howto_table): Fix shift value for
  465. R_AARCH64_TLSDESC_LD64_PREL19 and R_AARCH64_TLSDESC_OFF_G1.
  466. (elf64_aarch64_final_link_relocate): Add signed_addend when resolving
  467. AARCH64_TLSLE_*_TPREL_* relocations.
  468. 2012-10-16 Alan Modra <amodra@gmail.com>
  469. * elf32-xtensa.c (free_section_cache): Renamed from
  470. clear_section_cache. Don't zero cache.
  471. (section_cache_section): Remove ineffectual zero of cache.
  472. Call init_section_cache instead.
  473. 2012-10-15 Doug Evans <dje@google.com>
  474. * elf.c (special_sections_d): Add comment.
  475. 2012-10-13 H.J. Lu <hongjiu.lu@intel.com>
  476. PR bfd/14430
  477. * Makefile.am (LIBDL): Replace -ldl with @lt_cv_dlopen_libs@.
  478. * configure.in (lt_cv_dlopen_libs): AC_SUBST.
  479. * Makefile.in: Regenerated.
  480. * configure: Likewise.
  481. 2012-10-08 Alan Modra <amodra@gmail.com>
  482. PR binutils/14662
  483. * elf.c (_bfd_elf_make_section_from_shdr): Treat .gdb_index as
  484. SEC_DEBUGGING.
  485. 2012-09-20 Walter Lee <walt@tilera.com>
  486. * elf32-tilepro.c (tilepro_elf_relocate_section): Adjust got
  487. relocations with value of hgot.
  488. * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
  489. 2012-09-19 Steve Ellcey <sellcey@mips.com>
  490. * config.bfd: Add mips*-mti-elf* target.
  491. 2012-09-18 H.J. Lu <hongjiu.lu@intel.com>
  492. PR ld/14591
  493. * elf-bfd.h (_bfd_elf_merge_symbol): Add an argument to return
  494. if the old symbol is weak.
  495. * elf32-sh-symbian.c (sh_symbian_relocate_section): Update
  496. _bfd_elf_merge_symbol call.
  497. * elflink.c (_bfd_elf_merge_symbol): Add an argument to return
  498. if the old symbol is weak.
  499. (_bfd_elf_add_default_symbol): Update _bfd_elf_merge_symbol
  500. call.
  501. (elf_link_add_object_symbols): Don't update symbol type from a
  502. weak definition. Update symbol type from a common symbol when
  503. overriding a weak symbol.
  504. 2012-09-17 H.J. Lu <hongjiu.lu@intel.com>
  505. * elf32-i386.c (elf_i386_convert_mov_to_lea): Ignore discarded
  506. section.
  507. * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
  508. 2012-09-17 H.J. Lu <hongjiu.lu@intel.com>
  509. * elf32-i386.c (elf_i386_finish_dynamic_symbol): Replace return
  510. FALSE with abort.
  511. * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
  512. 2012-09-17 Walter Lee <walt@tilera.com>
  513. * elf32-tilepro.c (tilepro_elf_relocate_section): Remove unused
  514. got_base variable.
  515. * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
  516. 2012-09-17 Walter Lee <walt@tilera.com>
  517. * elf32-tilepro.c (tilepro_elf_relocate_section): Fix computation
  518. of got relocations for when .got.plt section is merged with .got.
  519. * elfxx-tilegx.c (tilegx_elf_relocate_section): Ditto.
  520. 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
  521. * configure: Regenerate.
  522. 2012-09-13 Anthony Green <green@moxielogic.com>
  523. * targets.c (bfd_elf32_bigmoxie_vec, bfd_elf32_littlemoxie_vec):
  524. Define.
  525. (bfd_elf32_moxie_vec): Remove.
  526. * config.bfd, configure.in: Add bi-endian support for moxie.
  527. * configure: Rebuilt.
  528. * elf32-moxie.c (TARGET_LITTLE_NAME, TARGET_LITTLE_SYM): Define.
  529. (TARGET_BIG_NAME, TARGET_BIG_SYM): Update for bi-endian support.
  530. 2012-09-12 Doug Kwan <dougkwan@google.com>
  531. * elf64-ppc.c (ppc64_elf_relocate_section): Use pre-adjusted
  532. relocation for stub lookup.
  533. 2012-09-12 Chris Schlumberger-Socha <chris.schlumberger-socha@arm.com>
  534. * bfd-in2.h: Regenerated.
  535. * elf64-aarch64.c
  536. (elf64_aarch64_howto_table): Add R_AARCH64_GOT_LD_PREL19 reloc to HOWTO.
  537. (elf64_aarch64_reloc_map): Add reloc entry.
  538. (aarch64_resolve_relocation): Likewise.
  539. (bfd_elf_aarch64_put_addend): Likewise.
  540. (aarch64_reloc_got_type): Likewise.
  541. (elf64_aarch64_final_link_relocate): Likewise.
  542. (lf64_aarch64_check_relocs): Likewise.
  543. (elf64_aarch64_check_relocs): New case for R_AARCH64_ADR_PREL_LO21
  544. reloc.
  545. * libbfd.h: Regenerated.
  546. * reloc.c (R_AARCH64_GOT_LD_PREL19): New reloc.
  547. 2012-09-10 Matthias Klose <doko@ubuntu.com>
  548. * config.in: Disable sanity check for kfreebsd.
  549. 2012-09-10 H.J. Lu <hongjiu.lu@intel.com>
  550. * configure: Regenerated.
  551. 2012-09-04 Sergey A. Guriev <sergey.a.guriev@intel.com>
  552. * cpu-ia64-opc.c (ins_cnt6a): New function.
  553. (ext_cnt6a): Ditto.
  554. (ins_strd5b): Ditto.
  555. (ext_strd5b): Ditto.
  556. (elf64_ia64_operands): Add new operand types.
  557. 2012-09-04 H.J. Lu <hongjiu.lu@intel.com>
  558. PR binutils/14493
  559. * elf.c (ignore_section_sym): Also ignore section symbols without
  560. a BFD section.
  561. 2012-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  562. * elf32-s390.c (elf_s390_relocate_section): Handle PLTOFF for
  563. local and global ifunc symbols.
  564. * elf64-s390.c (elf_s390_relocate_section): Likewise.
  565. 2012-09-02 H.J. Lu <hongjiu.lu@intel.com>
  566. * elf-bfd.h (elf_link_hash_table): Add hdynamic for the
  567. _DYNAMIC symbol.
  568. * elflink.c (_bfd_elf_link_create_dynamic_sections): Set
  569. hdynamic.
  570. * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_symbol): Check
  571. hdynamic instead of "_DYNAMIC".
  572. * elf32-arm.c (elf32_arm_finish_dynamic_symbol): Likewise.
  573. * elf32-cr16.c (elf32_arm_finish_dynamic_symbol): Likewise.
  574. * elf32-cris.c (elf_cris_finish_dynamic_symbol): Likewise.
  575. * elf32-hppa.c (elf32_hppa_finish_dynamic_symbol): Likewise.
  576. * elf32-i386.c (elf_i386_convert_mov_to_lea): Likewise.
  577. * elf32-lm32.c (lm32_elf_finish_dynamic_symbol): Likewise.
  578. * elf32-m32r.c (m32r_elf_finish_dynamic_symbol): Likewise.
  579. * elf32-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
  580. * elf32-sh.c (sh_elf_finish_dynamic_symbol): Likewise.
  581. * elf32-tic6x.c (elf32_tic6x_finish_dynamic_symbol): Likewise.
  582. * elf32-tilepro.c (tilepro_elf_finish_dynamic_symbol): Likewise.
  583. * elf32-vax.c (elf_vax_finish_dynamic_symbol): Likewise.
  584. * elf32-xtensa.c (elf_xtensa_finish_dynamic_symbol): Likewise.
  585. * elf64-aarch64.c elf64_aarch64_finish_dynamic_symbol(): Likewise.
  586. * elf64-alpha.c (elf64_alpha_finish_dynamic_symbol): Likewise.
  587. * elf64-ia64-vms.c (elf64_ia64_finish_dynamic_symbol): Likewise.
  588. * elf64-s390.c (elf_s390_finish_dynamic_symbol): Likewise.
  589. * elf64-sh64.c (sh64_elf64_finish_dynamic_symbol): Likewise.
  590. * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
  591. * elfnn-ia64.c (elfNN_ia64_finish_dynamic_symbol): Likewise.
  592. * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_symbol): Likewise.
  593. * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_symbol): Likewise.
  594. * elfxx-tilegx.c (tilegx_elf_finish_dynamic_symbol): Likewise.
  595. * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Check
  596. hdynamic, hgot, hplt instead of _DYNAMIC, _GLOBAL_OFFSET_TABLE_,
  597. _PROCEDURE_LINKAGE_TABLE_.
  598. * elf32-score.c (s3_bfd_score_elf_finish_dynamic_symbol): Likewise.
  599. * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_symbol): Likewise.
  600. 2012-08-31 H.J. Lu <hongjiu.lu@intel.com>
  601. * elf32-i386.c (elf_i386_convert_mov_to_lea): Don't optimize
  602. _DYNAMIC.
  603. * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): Likewise.
  604. 2012-08-31 H.J. Lu <hongjiu.lu@intel.com>
  605. * elf32-i386.c (elf_i386_convert_mov_to_lea): New.
  606. (elf_i386_size_dynamic_sections): Use it on input sections.
  607. (elf_i386_relocate_section): Don't convert
  608. "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg"
  609. for local symbols here.
  610. * elf64-x86-64.c (elf_x86_64_convert_mov_to_lea): New.
  611. (elf_x86_64_size_dynamic_sections): Use it on input sections.
  612. (elf_x86_64_relocate_section): Don't convert
  613. "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg"
  614. for local symbols here.
  615. 2012-08-30 H.J. Lu <hongjiu.lu@intel.com>
  616. * elf32-i386.c (elf_i386_relocate_section): Convert
  617. "mov foo@GOT(%reg), %reg" to "lea foo@GOTOFF(%reg), %reg"
  618. for local symbols.
  619. * elf64-x86-64.c (elf_x86_64_relocate_section): Convert
  620. "mov foo@GOTPCREL(%rip), %reg" to "lea foo(%rip), %reg"
  621. for local symbols.
  622. 2012-08-31 Alan Modra <amodra@gmail.com>
  623. PR ld/14464
  624. * elf64-ppc.c (ppc64_elf_relocate_section): Map symbols defined
  625. by a linker script in .opd to corresponding input .opd section.
  626. 2012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
  627. * elf32-ppc.c (ppc_elf_relocate_section): Assert that dynindx is
  628. not minus one.
  629. * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
  630. 2012-08-28 Maciej W. Rozycki <macro@codesourcery.com>
  631. * elflink.c (_bfd_elf_merge_symbol): Also override the version
  632. a dynamic symbol defaulted to if preempted with a hidden or
  633. internal definition.
  634. 2012-08-28 Walter Lee <walt@tilera.com>
  635. * elf32-tilepro.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size
  636. of header.
  637. (tilepro_plt_entry_build): Account for new header size.
  638. (tilepro_elf_finish_dynamic_sections): Ditto.
  639. (tilepro_elf_plt_sym_val): Ditto.
  640. * elfxx-tilegx.c (allocate_dynrelocs): Use PLT_ENTRY_SIZE as size
  641. of header + tail.
  642. (tilegx_elf_finish_dynamic_sections): Account for new padding.
  643. 2012-08-27 Walter Lee <walt@tilera.com>
  644. * reloc.c (Add BFD_RELOC_TILEGX_IMM16_X0_HW0_PLT_PCREL,
  645. BFD_RELOC_TILEGX_IMM16_X1_HW0_PLT_PCREL,
  646. BFD_RELOC_TILEGX_IMM16_X0_HW1_PLT_PCREL,
  647. BFD_RELOC_TILEGX_IMM16_X1_HW1_PLT_PCREL,
  648. BFD_RELOC_TILEGX_IMM16_X0_HW2_PLT_PCREL,
  649. BFD_RELOC_TILEGX_IMM16_X1_HW2_PLT_PCREL,
  650. BFD_RELOC_TILEGX_IMM16_X0_HW3_PLT_PCREL,
  651. BFD_RELOC_TILEGX_IMM16_X1_HW3_PLT_PCREL,
  652. BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_PLT_PCREL,
  653. BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_PLT_PCREL,
  654. BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_PLT_PCREL,
  655. BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_PLT_PCREL,
  656. BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_PLT_PCREL,
  657. BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_PLT_PCREL): new relocations.
  658. * elfxx-tilegx.c (tilegx_elf_howto_table): Handle new relocations.
  659. (tilegx_reloc_map): Ditto.
  660. (reloc_to_create_func): Ditto.
  661. (tilegx_elf_check_relocs): Ditto.
  662. (tilegx_elf_gc_sweep_hook): Ditto.
  663. (tilegx_elf_relocate_section): Ditto.
  664. * libbfd.h: Regenerate.
  665. * bfd-in2.h: Regenerate.
  666. 2012-08-24 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
  667. * elf32-arm.c (v8): New array.
  668. (tag_cpu_arch_combine): Add support for ARMv8 attributes.
  669. (elf32_arm_merge_eabi_attributes): Likewise.
  670. (VFP_VERSION_COUNT): New define.
  671. 2012-08-20 Tom Tromey <tromey@redhat.com>
  672. * vms-lib.c (_bfd_vms_lib_get_module): Use bfd_zmalloc for
  673. areltdata.
  674. * opncls.c (_bfd_delete_bfd): Free arelt_data.
  675. * mach-o.c (bfd_mach_o_fat_member_init): Use bfd_zmalloc for
  676. areltdata.
  677. * ecoff.c (_bfd_ecoff_slurp_armap): Use free for mapdata.
  678. * coff-rs6000.c (_bfd_xcoff_read_ar_hdr): Use bfd_zmalloc for
  679. areltdata.
  680. (xcoff_write_archive_contents_old): Likewise.
  681. (xcoff_write_archive_contents_big): Likewise.
  682. * archive64.c (bfd_elf64_archive_slurp_armap): Use free for
  683. areltdata.
  684. * archive.c (_bfd_generic_read_ar_hdr_mag): Use bfd_zmalloc and
  685. free for areltdata.
  686. (_bfd_get_elt_at_filepos): Likewise. Clear n_nfd->arelt_data on
  687. failure.
  688. (do_slurp_bsd_armap): Use bfd_zmalloc and free for areltdata.
  689. (do_slurp_coff_armap): Likewise.
  690. (_bfd_slurp_extended_name_table): Likewise.
  691. (bfd_slurp_bsd_armap_f2): Likewise. Don't leak 'mapdata'.
  692. 2012-08-17 Nick Clifton <nickc@redhat.com>
  693. * po/vi.po: Updated Vietnamese translation.
  694. 2012-08-17 Yuri Chornoivan <yurchor@ukr.net>
  695. * elf-bfd.h, * elf32-ppc.c, * elf64-ia64-vms.c, * elfnn-ia64.c,
  696. * elfxx-mips.c, * vms-alpha.c: Typo fixes.
  697. 2012-08-17 Alan Modra <amodra@gmail.com>
  698. PR binutils/14475:
  699. * archive.c (bfd_ar_hdr_from_filesystem): Revert last change.
  700. Instead malloc areltdata.
  701. 2012-08-16 Tom Tromey <tromey@redhat.com>
  702. PR binutils/14475:
  703. * archive.c (bfd_ar_hdr_from_filesystem): Allocate areltdata on
  704. 'member' BFD. Don't try to free 'ared'.
  705. 2012-08-14 Nick Clifton <nickc@redhat.com>
  706. * po/uk.po: Updated Ukranian translation.
  707. 2012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
  708. * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Look up
  709. the options section in the output rather than input BFD to
  710. decide if to add a DT_MIPS_OPTIONS tag.
  711. 2012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
  712. * config.bfd: Wrap mips*el-*-linux* and mips*-*-linux* into
  713. #ifdef BFD64.
  714. 2012-08-13 Ian Bolton <ian.bolton@arm.com>
  715. Laurent Desnogues <laurent.desnogues@arm.com>
  716. Jim MacArthur <jim.macarthur@arm.com>
  717. Marcus Shawcroft <marcus.shawcroft@arm.com>
  718. Nigel Stephens <nigel.stephens@arm.com>
  719. Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
  720. Richard Earnshaw <rearnsha@arm.com>
  721. Sofiane Naci <sofiane.naci@arm.com>
  722. Tejas Belagod <tejas.belagod@arm.com>
  723. Yufeng Zhang <yufeng.zhang@arm.com>
  724. * Makefile.am: Add AArch64 files.
  725. * Makefile.in: Regenerate.
  726. * archures.c (bfd_aarch64_arch): New declaration.
  727. (bfd_archures_list): Use bfd_archures_list.
  728. * bfd-in.h (bfd_elf64_aarch64_init_maps): New declaration.
  729. (bfd_aarch64_process_before_allocation): New declaration.
  730. (bfd_elf64_aarch64_process_before_allocation): New declaration.
  731. (bfd_elf64_aarch64_set_options): New declaration.
  732. (bfd_elf64_aarch64_add_glue_sections_to_bfd): New declaration.
  733. (BFD_AARCH64_SPECIAL_SYM_TYPE_MAP): New definition.
  734. (BFD_AARCH64_SPECIAL_SYM_TYPE_TAG): New definition.
  735. (BFD_AARCH64_SPECIAL_SYM_TYPE_OTHER): New definition.
  736. (BFD_AARCH64_SPECIAL_SYM_TYPE_ANY): New definition.
  737. (bfd_is_aarch64_special_symbol_name): New declaration.
  738. (bfd_aarch64_merge_machines): New declaration.
  739. (bfd_aarch64_update_notes): New declaration.
  740. (int bfd_aarch64_get_mach_from_notes): New declaration.
  741. (elf64_aarch64_setup_section_lists): New declaration.
  742. (elf64_aarch64_next_input_section): New declaration.
  743. (elf64_aarch64_size_stubs): New declaration.
  744. (elf64_aarch64_build_stubs): New declaration.
  745. * config.bfd: Add AArch64.
  746. * configure.in: Add AArch64.
  747. * configure: Regenerate.
  748. * cpu-aarch64.c: New file.
  749. * elf-bfd.h: Add AArch64.
  750. * bfd-in2.h: Regenerate.
  751. * libbfd.h: Regenerate.
  752. * elf64-aarch64.c: New file.
  753. * reloc.c: Add AArch64 relocations.
  754. * targets.c: Add AArch64.
  755. * po/SRC-POTFILES.in: Regenerate.
  756. 2012-08-13 Maciej W. Rozycki <macro@codesourcery.com>
  757. * elfxx-mips.c (mips_elf_calculate_relocation): Fix the handling
  758. of protected symbols.
  759. 2012-08-10 Alan Modra <amodra@gmail.com>
  760. PR binutils/14444
  761. * elf.c (IS_VALID_GROUP_SECTION_HEADER) Add minsize param.
  762. (setup_group): Adjust uses.
  763. (bfd_section_from_shdr): Allow SHT_GROUP sections with just a flag
  764. word.
  765. 2012-08-09 Nick Clifton <nickc@redhat.com>
  766. * po/vi.po: Updated Vietnamese translation.
  767. 2012-08-09 Maciej W. Rozycki <macro@codesourcery.com>
  768. * elfxx-mips.c (LA25_LUI_MICROMIPS_1, LA25_LUI_MICROMIPS_2):
  769. Remove macros, folding them into...
  770. (LA25_LUI_MICROMIPS): ... this new macro.
  771. (LA25_J_MICROMIPS_1, LA25_J_MICROMIPS_2): Likewise into...
  772. (LA25_J_MICROMIPS): ... this new macro.
  773. (LA25_ADDIU_MICROMIPS_1, LA25_ADDIU_MICROMIPS_2): Likewise
  774. into...
  775. (LA25_ADDIU_MICROMIPS): ... this new macro.
  776. (bfd_put_micromips_32, bfd_get_micromips_32): New functions.
  777. (mips_elf_create_la25_stub): Use them.
  778. (check_br32_dslot, check_br32, check_relocated_bzc): Likewise.
  779. (_bfd_mips_elf_relax_section): Likewise.
  780. 2012-08-09 Alan Modra <amodra@gmail.com>
  781. Tom Tromey <tromey@redhat.com>
  782. * archive.c (SECTION Archives): Update documentation.
  783. (_bfd_delete_archive_data): Remove.
  784. (_bfd_add_bfd_to_archive_cache): Set 'parent_cache' and 'key'.
  785. (archive_close_worker, _bfd_archive_close_and_cleanup): New
  786. functions.
  787. * libbfd-in.h (struct areltdata <parent_cache, key>): New fields.
  788. (_bfd_delete_archive_data): Don't declare.
  789. (_bfd_archive_close_and_cleanup): Declare.
  790. (_bfd_generic_close_and_cleanup): Redefine.
  791. * libbfd.h: Rebuild.
  792. * opncls.c (_bfd_delete_bfd): Don't call _bfd_delete_archive_data.
  793. (bfd_close): Don't close nested thin archives here.
  794. 2012-08-07 Tom Tromey <tromey@redhat.com>
  795. * archive.c (_bfd_delete_archive_data): New function.
  796. * libbfd-in.h (_bfd_delete_archive_data): Declare.
  797. * libbfd.h: Rebuild.
  798. * opncls.c (_bfd_delete_bfd): Call _bfd_delete_archive_data.
  799. 2012-08-07 Nick Clifton <nickc@redhat.com>
  800. * po/uk.po: Updated Ukranian translation.
  801. 2012-08-06 Maciej W. Rozycki <macro@codesourcery.com>
  802. * elflink.c (bfd_elf_record_link_assignment): Remove --defsym
  803. symbols special case.
  804. 2012-08-05 Maciej W. Rozycki <macro@linux-mips.org>
  805. * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Don't allocate
  806. PLT slots for local symbols.
  807. 2012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
  808. * elf64-mips.c (mips16_elf64_howto_table_rela): Correct src_mask
  809. field initializers throughout.
  810. * elfn32-mips.c (elf_mips16_howto_table_rela): Likewise.
  811. 2012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
  812. * elfxx-mips.c (mips_elf_perform_relocation): Update the
  813. cross-mode jump message.
  814. 2012-08-03 Maciej W. Rozycki <macro@codesourcery.com>
  815. * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections): Update the
  816. comment on DT_MIPS_RLD_MAP.
  817. 2012-08-03 Tom Tromey <tromey@redhat.com>
  818. * opncls.c (_bfd_delete_bfd): Now static.
  819. * libbfd-in.h (_bfd_delete_bfd): Don't declare.
  820. * libbfd.h: Rebuild.
  821. 2012-08-02 Sean Keys <skeys@ipdatasys.com>
  822. * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Modified
  823. conditional statment to allow suppression of mismatched bank
  824. warning.
  825. 2012-08-01 Alan Modra <amodra@gmail.com>
  826. * dwarf2.c (struct dwarf2_debug): Add close_on_cleanup.
  827. (_bfd_dwarf2_slurp_debug_info): Set close_on_cleanup if we open
  828. gnu_debuglink bfd.
  829. (_bfd_dwarf2_cleanup_debug_info): Act on close_on_cleanup.
  830. 2012-07-30 Nick Clifton <nickc@redhat.com>
  831. * po/bfd.pot: Updated template.
  832. * po/es.po: Updated Spanish translation.
  833. * po/fi.po: Updated Finnish translation.
  834. * po/fr.po: Updated French translation.
  835. * po/ru.po: Updated Russian translation.
  836. * po/uk.po: Updated Ukranian translation.
  837. 2012-07-27 Mike Frysinger <vapier@gentoo.org>
  838. * configure.in (AC_INIT): Call with the args bfd and 2.22.52.
  839. (AM_INIT_AUTOMAKE): Remove args.
  840. * configure: Regenerate.
  841. 2012-07-27 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  842. * cpu-s390.c (bfd_s390_64_arch, bfd_s390_arch): Pick the default
  843. arch depending on the target size.
  844. 2012-07-27 Tristan Gingold <gingold@adacore.com>
  845. * configure.in: Bump version to 2.23.51
  846. * configure: Regenerate.
  847. 2012-07-26 Teresa Johnson <tejohnson@google.com>
  848. * bfd/dwarf2.c (find_line): Initialize discriminator_ptr
  849. if it is non-NULL.
  850. 2012-07-26 Meador Inge <meadori@codesourcery.com>
  851. Nick Clifton <nickc@redhat.com>
  852. PR ld/14397
  853. * elf32-arm.c (elf32_arm_finish_dynamic_sections): Report an error
  854. if a required section is missing from the linker script.
  855. 2012-07-24 Jan Waclawek <konfera@efton.sk>
  856. PR 13899
  857. * elf32-avr.c (elf32_avr_relax_delete_bytes): Call
  858. _bfd_elf_link_read_relocs with keep_memory as TRUE.
  859. 2012-07-24 Teresa Johnson <tejohnson@google.com>
  860. * bfd.c (bfd_find_nearest_line_discriminator): New macro.
  861. * coff-rs6000.c: Init _bfd_find_nearest_line_discriminator.
  862. * coff64-rs6000.c: Likewise.
  863. * dwarf2.c (struct line_info): Add discriminator field.
  864. (add_line_info): Fill in new discriminator field.
  865. (decode_line_info): Record discriminator information instead
  866. of ignoring it.
  867. (lookup_address_in_line_info_table): Return discriminator field if
  868. requested.
  869. (comp_unit_find_nearest_line): Add discriminator argument.
  870. (find_line): Likewise.
  871. (_bfd_dwarf2_find_nearest_line): Likewise.
  872. (_bfd_dwarf2_find_line): Likewise.
  873. * elf-bfd.h (_bfd_elf_find_nearest_line_discriminator): New.
  874. (_bfd_elf_find_line_discriminator): Likewise.
  875. (_bfd_generic_find_nearest_line_discriminator): Likewise. Defined.
  876. * elf.c (_bfd_elf_find_nearest_line): Change to a wrapper
  877. that invokes _bfd_elf_find_nearest_line_discriminator with correct
  878. arguments.
  879. (_bfd_elf_find_nearest_line_discriminator): New.
  880. (_bfd_elf_find_line): Change to a wrapper
  881. that invokes _bfd_elf_find_line_discriminator with correct
  882. arguments.
  883. (_bfd_elf_find_line_discriminator): New.
  884. * coffgen.c (coff_find_nearest_line_with_names): Handle
  885. new discriminator argument.
  886. * elf32-arm.c (elf32_arm_find_nearest_line): Likewise.
  887. * elf64-alpha.c (elf64_alpha_find_nearest_line): Likewise.
  888. * elfxx-mips.c (_bfd_mips_elf_find_nearest_line): Likewise.
  889. * mach-o.c (bfd_mach_o_find_nearest_line): Likewise.
  890. * libbfd-in.h (_bfd_dwarf2_find_nearest_line): Add discriminator
  891. argument.
  892. (_bfd_dwarf2_find_line): Likewise.
  893. (_bfd_generic_find_nearest_line_discriminator): New.
  894. * libbfd.c (_bfd_generic_find_nearest_line_discriminator): New.
  895. * bfd-in2.h: Regenerated.
  896. * libbfd.h: Likewise.
  897. * targets.c (BFD_JUMP_TABLE_SYMBOLS): Initialize
  898. _bfd_find_nearest_line_discriminator with
  899. _bfd_generic_find_nearest_line_discriminator.
  900. (bfd_target): Add _bfd_find_nearest_line_discriminator.
  901. 2012-07-24 Sean Keys <skeys@ipdatasys.com>
  902. * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Added code
  903. that enables the linker to offset addresses, when linking against
  904. symbols from the XGATE processor and vice versa.
  905. 2012-07-23 Nick Clifton <nickc@redhat.com>
  906. * cisco-core.c (cisco_core_file_failing_command): Make static.
  907. (cisco_core_file_failing_signal): Make static.
  908. 2012-07-18 H.J. Lu <hongjiu.lu@intel.com>
  909. * bfd-in2.h: Regenerated.
  910. 2012-07-18 Nicolàs Alejandro Di Risio <sheeva@tiscali.it>
  911. PR binutils/14335
  912. * section.c: Fix a typo in comments.
  913. 2012-07-13 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  914. * elf64-s390.c: Include elf-s390-common.c.
  915. (R_390_IRELATIVE): New reloc.
  916. (elf_s390_reloc_type_lookup): Support R_390_IRELATIVE.
  917. (RELA_ENTRY_SIZE): New macro.
  918. (elf_s390_link_hash_entry): New fields ifunc_resolver_address and
  919. *ifunc_resolver_section.
  920. (struct plt_entry): New struct.
  921. (struct elf_s390_obj_tdata): New field local_plt.
  922. (elf_s390_local_plt): New macro.
  923. (struct elf_s390_link_hash_table): New field irelifunc.
  924. (ELF64): New macro.
  925. (link_hash_newfunc): Initialize new fields.
  926. (elf_s390_check_relocs): Handle IFUNC symbols.
  927. (elf_s390_adjust_dynamic_symbol): Don't do anything for IFUNC
  928. symbols.
  929. (allocate_dynrelocs): Call s390_elf_allocate_ifunc_dyn_relocs for
  930. IFUNC symbols.
  931. (elf_s390_size_dynamic_sections): Handle IFUNC symbols.
  932. (elf_s390_relocate_section): Likewise.
  933. (elf_s390_finish_dynamic_symbol): Likewise.
  934. (elf_s390_finish_dynamic_sections): Handle local IFUNC symbols.
  935. (elf_s390_finish_ifunc_symbol): New function.
  936. (elf_s390_gc_sweep_hook): Handle local plt entries.
  937. (elf_backend_add_symbol_hook): Define.
  938. * elf32-s390.c: See elf64-s390.c changes.
  939. * elf-s390-common.c: New file.
  940. * bfd-in2.h (BFD_RELOC_390_IRELATIVE): New enum field.
  941. * libbfd.h (BFD_RELOC_390_IRELATIVE): New entry for
  942. BFD_RELOC_390_IRELATIVE.
  943. * reloc.c (BFD_RELOC_390_IRELATIVE): Document new relocation.
  944. 2012-07-13 Nick Clifton <nickc@redhat.com>
  945. * aix386-core.c: Remove use of PTR and PARAMS macros.
  946. * archive.c: Likewise.
  947. * cache.c: Likewise.
  948. * cisco-core.c: Likewise.
  949. * coff-alpha.c: Likewise.
  950. * coff-apollo.c: Likewise.
  951. * coff-aux.c: Likewise.
  952. * coff-h8300.c: Likewise.
  953. * coff-h8500.c: Likewise.
  954. * coff-i386.c: Likewise.
  955. * coff-i960.c: Likewise.
  956. * coff-ia64.c: Likewise.
  957. * coff-m68k.c: Likewise.
  958. * coff-m88k.c: Likewise.
  959. * coff-mcore.c: Likewise.
  960. * coff-mips.c: Likewise.
  961. * coff-or32.c: Likewise.
  962. * coff-ppc.c: Likewise.
  963. * coff-rs6000.c: Likewise.
  964. * coff-sh.c: Likewise.
  965. * coff-sparc.c: Likewise.
  966. * coff-stgo32.c: Likewise.
  967. * coff-tic30.c: Likewise.
  968. * coff-tic4x.c: Likewise.
  969. * coff-tic54x.c: Likewise.
  970. * coff-tic80.c: Likewise.
  971. * coff-w65.c: Likewise.
  972. * cofflink.c: Likewise.
  973. * cpu-arc.c: Likewise.
  974. * cpu-cris.c: Likewise.
  975. * cpu-h8500.c: Likewise.
  976. * cpu-i960.c: Likewise.
  977. * cpu-msp430.c: Likewise.
  978. * cpu-ns32k.c: Likewise.
  979. * cpu-powerpc.c: Likewise.
  980. * cpu-rs6000.c: Likewise.
  981. * cpu-tic4x.c: Likewise.
  982. * cpu-w65.c: Likewise.
  983. * ecoff.c: Likewise.
  984. * ecofflink.c: Likewise.
  985. * elf-m10200.c: Likewise.
  986. * elf32-bfin.c: Likewise.
  987. * elf32-cris.c: Likewise.
  988. * elf32-crx.c: Likewise.
  989. * elf32-fr30.c: Likewise.
  990. * elf32-frv.c: Likewise.
  991. * elf32-h8300.c: Likewise.
  992. * elf32-i960.c: Likewise.
  993. * elf32-m32c.c: Likewise.
  994. * elf32-m68hc11.c: Likewise.
  995. * elf32-m68hc12.c: Likewise.
  996. * elf32-m68hc1x.c: Likewise.
  997. * elf32-m68k.c: Likewise.
  998. * elf32-mcore.c: Likewise.
  999. * elf32-rl78.c: Likewise.
  1000. * elf32-rx.c: Likewise.
  1001. * elf32-s390.c: Likewise.
  1002. * elf32-vax.c: Likewise.
  1003. * elf64-alpha.c: Likewise.
  1004. * elf64-mmix.c: Likewise.
  1005. * elf64-s390.c: Likewise.
  1006. * elf64-sparc.c: Likewise.
  1007. * elfnn-ia64.c: Likewise.
  1008. * elfxx-mips.c: Likewise.
  1009. * elfxx-sparc.c: Likewise.
  1010. * hash.c: Likewise.
  1011. * hp300hpux.c: Likewise.
  1012. * hppabsd-core.c: Likewise.
  1013. * hpux-core.c: Likewise.
  1014. * i386dynix.c: Likewise.
  1015. * i386linux.c: Likewise.
  1016. * i386lynx.c: Likewise.
  1017. * i386mach3.c: Likewise.
  1018. * i386msdos.c: Likewise.
  1019. * i386os9k.c: Likewise.
  1020. * irix-core.c: Likewise.
  1021. * lynx-core.c: Likewise.
  1022. * m68klinux.c: Likewise.
  1023. * mach-o.h: Likewise.
  1024. * mipsbsd.c: Likewise.
  1025. * netbsd-core.c: Likewise.
  1026. * nlm32-i386.c: Likewise.
  1027. * osf-core.c: Likewise.
  1028. * pc532-mach.c: Likewise.
  1029. * pef.c: Likewise.
  1030. * ppcboot.c: Likewise.
  1031. * ptrace-core.c: Likewise.
  1032. * reloc16.c: Likewise.
  1033. * sco5-core.c: Likewise.
  1034. * som.h: Likewise.
  1035. * sparclinux.c: Likewise.
  1036. * sparclynx.c: Likewise.
  1037. * ticoff.h: Likewise.
  1038. * trad-core.c: Likewise.
  1039. * vms-lib.c: Likewise.
  1040. * xsym.h: Likewise.
  1041. 2012-07-09 Alan Modra <amodra@gmail.com>
  1042. PR ld/14323
  1043. * elflink.c (elf_sort_symbol): Sort by size too.
  1044. (elf_link_add_object_symbols <weakdefs>): Simplify binary search.
  1045. Do not depend on ordering of symbol aliases. Match largest size.
  1046. 2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
  1047. * elf.c (assign_section_numbers): Check if number of sections
  1048. >= SHN_LORESERVE.
  1049. * elfcode.h (elf_object_p): Likewise.
  1050. 2012-07-03 Nick Clifton <nickc@redhat.com>
  1051. * archive.c (bsd_write_armap): Catch attempts to create an archive
  1052. with indicies bigger than 4Gb.
  1053. (coff_write_armap): Likewise.
  1054. 2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
  1055. PR binutils/14319
  1056. * elf.c (_bfd_elf_make_section_from_shdr): Don't compress empty
  1057. debug section.
  1058. 2012-07-03 H.J. Lu <hongjiu.lu@intel.com>
  1059. PR ld/3351
  1060. * elflink.c (_bfd_elf_update_dynamic_flags): New.
  1061. (_bfd_elf_merge_symbol): Update both real and indirect symbol
  1062. dynamic flags.
  1063. (_bfd_elf_add_default_symbol): Make the real symbol dynamic if
  1064. the indirect symbol is defined in a shared library.
  1065. (elf_link_add_object_symbols): Likewise. If the indirect
  1066. symbol has been forced local, don't make the real symbol
  1067. dynamic.
  1068. (elf_link_check_versioned_symbol): Check indirect symbol.
  1069. (elf_link_output_extsym): Use real symbol definition when
  1070. reporting indirect symbol error. Check version info for
  1071. dynamic versioned symbol.
  1072. 2012-07-03 Alan Modra <amodra@gmail.com>
  1073. PR ld/14207
  1074. * elf.c (assign_file_positions_for_load_sections): Remove assertions
  1075. that only PT_LOAD headers include file header and section headers.
  1076. (assign_file_positions_for_non_load_sections): Similarly don't
  1077. assert PT_GNU_RELRO header does not include file and section headers.
  1078. Compare first section vma rather than PT_LOAD p_vaddr against
  1079. relro_start when looking for PT_LOAD covering PT_GNU_RELRO. Replace
  1080. abort with assertion.
  1081. 2012-07-02 Alan Modra <amodra@gmail.com>
  1082. * elf32-m32c.c (m32c_elf_check_relocs): Use bfd_make_section
  1083. "anyway" variant when creating .plt.
  1084. (m32c_elf_relax_plt_section): Remove redundant test and unused param.
  1085. (m32c_elf_relax_section): Test SEC_LINKER_CREATED before calling
  1086. m32c_elf_relax_plt_section.
  1087. * elfxx-mips.c (mips_elf_create_got_section): Use make anyway variant
  1088. when creating .got and .got.plt.
  1089. (_bfd_mips_elf_final_link): Likewise for .rtproc, and use
  1090. bfd_get_linker_section.
  1091. * sunos.c: Similarly throughout.
  1092. 2012-07-01 Andreas Schwab <schwab@linux-m68k.org>
  1093. * elf.c (_bfd_elf_make_section_from_shdr): Fix typo in error
  1094. message.
  1095. 2012-06-29 H.J. Lu <hongjiu.lu@intel.com>
  1096. * elf64-x86-64.c (elf_x86_64_relocate_section): Return FALSE
  1097. on unresolvable relocation.
  1098. 2012-06-29 H.J. Lu <hongjiu.lu@intel.com>
  1099. * archive.c (_bfd_compute_and_write_armap): Simplify global
  1100. symbol handling.
  1101. 2012-06-29 Nick Clifton <nickc@redhat.com>
  1102. PR ld/14189
  1103. * elf32-arm.c (elf32_arm_check_relocs): Do not increment refcount
  1104. for locally bound symbols.
  1105. 2012-06-29 Alan Modra <amodra@gmail.com>
  1106. * section.c (bfd_get_linker_section): New function.
  1107. * elf32-arm.c: When retrieving SEC_LINKER_CREATED sections, use
  1108. the above throughout rather than bfd_get_section_by_name. Use
  1109. bfd_make_section_anyway rather than bfd_make_section when creating
  1110. them.
  1111. * elf32-bfin.c: Likewise.
  1112. * elf32-cr16.c: Likewise.
  1113. * elf32-cris.c: Likewise.
  1114. * elf32-frv.c: Likewise.
  1115. * elf32-hppa.c: Likewise.
  1116. * elf32-i370.c: Likewise.
  1117. * elf32-i386.c: Likewise.
  1118. * elf32-lm32.c: Likewise.
  1119. * elf32-m32c.c: Likewise.
  1120. * elf32-m32r.c: Likewise.
  1121. * elf32-m68k.c: Likewise.
  1122. * elf32-microblaze.c: Likewise.
  1123. * elf32-ppc.c: Likewise.
  1124. * elf32-rl78.c: Likewise.
  1125. * elf32-s390.c: Likewise.
  1126. * elf32-score.c: Likewise.
  1127. * elf32-score7.c: Likewise.
  1128. * elf32-sh.c: Likewise.
  1129. * elf32-tic6x.c: Likewise.
  1130. * elf32-tilepro.c: Likewise.
  1131. * elf32-vax.c: Likewise.
  1132. * elf32-xstormy16.c: Likewise.
  1133. * elf32-xtensa.c: Likewise.
  1134. * elf64-alpha.c: Likewise.
  1135. * elf64-hppa.c: Likewise.
  1136. * elf64-ia64-vms.c: Likewise.
  1137. * elf64-ppc.c: Likewise.
  1138. * elf64-s390.c: Likewise.
  1139. * elf64-sh64.c: Likewise.
  1140. * elf64-sparc.c: Likewise.
  1141. * elf64-x86-64.c: Likewise.
  1142. * elfnn-ia64.c: Likewise.
  1143. * elfxx-mips.c: Likewise.
  1144. * elfxx-sparc.c: Likewise.
  1145. * elfxx-tilegx.c: Likewise.
  1146. * elflink.c: Likewise.
  1147. * elf-vxworks.c: Likewise.
  1148. * elf-m10300.c: Likewise. Also make use of htab plt, got and
  1149. gotplt shortcuts.
  1150. * bfd-in2.h: Regenerate.
  1151. * elf32-lm32.c (lm32_elf_check_relocs): Use the correct bfd when
  1152. calling create_rofixup_section.
  1153. * elflink.c (bfd_elf_final_link): Simplify test for .dynstr.
  1154. 2012-06-29 Alan Modra <amodra@gmail.com>
  1155. * elf32-sh.c (sh_elf_create_dynamic_sections): Don't create .rela
  1156. section for bss type sections, except for .rela.bss.
  1157. * elf-m10300.c (_bfd_mn10300_elf_create_dynamic_sections): Likewise.
  1158. * elf32-cr16.c (_bfd_cr16_elf_create_dynamic_sections): Likewise.
  1159. * elf32-lm32.c (lm32_elf_create_dynamic_sections): Likewise.
  1160. * elf32-m32r.c (m32r_elf_create_dynamic_sections): Likewise.
  1161. * elf64-sh64.c (sh64_elf64_create_dynamic_sections): Likewise.
  1162. 2012-06-28 Roland McGrath <mcgrathr@google.com>
  1163. * elf32-arm.c (elf32_arm_populate_plt_entry): Use int32_t for
  1164. displacement calculation in nacl_p case.
  1165. 2012-06-28 Nick Clifton <nickc@redhat.com>
  1166. * po/uk.po: New Ukranian translation.
  1167. * configure.in (ALL_LINGUAS): Add uk.
  1168. * configure: Regenerate.
  1169. 2012-06-26 Alan Modra <amodra@gmail.com>
  1170. * elf64-ppc.c (ppc64_elf_next_toc_section): Don't error if input
  1171. file has multiple .got/.toc sections and all don't fit in
  1172. current toc group.
  1173. 2012-06-22 Roland McGrath <mcgrathr@google.com>
  1174. * elf.c (assign_file_positions_for_non_load_sections): Define
  1175. __ehdr_start symbol if it's referenced and there's a PT_LOAD
  1176. segment that covers both the file and program headers.
  1177. 2012-06-22 Andreas Schwab <schwab@linux-m68k.org>
  1178. * elf32-m68k.c (elf_m68k_finish_dynamic_symbol): Don't make
  1179. _GLOBAL_OFFSET_TABLE_ and _DYNAMIC absolute.
  1180. 2012-06-22 Alan Modra <amodra@gmail.com>
  1181. * elf64-ppc.c (ppc64_elf_func_desc_adjust): Don't emit out-of-line
  1182. save/restore functions when relocatable. Make "funcs" static.
  1183. 2012-06-18 Hans-Peter Nilsson <hp@axis.com>
  1184. * elf32-cris.c (cris_elf_plt_sym_val): Rewrite to work in presence
  1185. of merged .got and .got.plt entries.
  1186. 2012-06-18 John Szakmeister <john@szakmeister.net>
  1187. * elf32-arm.c (elf32_arm_final_link_relocate): Correct return value.
  1188. 2012-06-17 Hans-Peter Nilsson <hp@axis.com>
  1189. * elf32-cris.c (cris_elf_relocate_section): <R_CRIS_32_IE>
  1190. <R_CRIS_32_GOT_TPREL, R_CRIS_16_GOT_TPREL>: Handle references to
  1191. thread common symbols.
  1192. 2012-06-13 Nick Clifton <nickc@redhat.com>
  1193. * elf32-arm.c (bfd_arm_get_mach_from_attributes): New function.
  1194. (elf32_arm_object_p): If the machine number could not be deduced
  1195. from the notes, call bfd_arm_get_mach_from_attributes to get the
  1196. number from the attributes.
  1197. 2012-06-12 H.J. Lu <hongjiu.lu@intel.com>
  1198. PR bfd/14207
  1199. * elf.c (assign_file_positions_for_non_load_sections): Abort if
  1200. PT_GNU_RELRO segment doesn't fit in PT_LOAD segment.
  1201. 2012-06-12 Alan Modra <amodra@gmail.com>
  1202. PR ld/14207
  1203. * elf.c (_bfd_elf_map_sections_to_segments): Disregard bss type
  1204. sections at end of PT_LOAD segment when searching for segment
  1205. that contains end of relro extent.
  1206. 2012-06-11 H.J. Lu <hongjiu.lu@intel.com>
  1207. * elf.c (assign_file_positions_for_non_load_sections): Reindent.
  1208. 2012-06-11 H.J. Lu <hongjiu.lu@intel.com>
  1209. * elf.c (_bfd_elf_map_sections_to_segments): Reindent.
  1210. 2012-06-06 Alan Modra <amodra@gmail.com>
  1211. * elflink.c (elf_link_input_bfd): Provide a file symbol for
  1212. each input file with local syms, if the input lacks such.
  1213. (bfd_elf_final_link): Add a file symbol to mark end of locals
  1214. for which we can associate with input files.
  1215. (struct elf_final_link_info): Add filesym_count field.
  1216. (struct elf_outext_info): Add need_second_pass and second_pass.
  1217. (elf_link_output_extsym): Detect symbols defined in the output
  1218. file, emit them on second pass over locals.
  1219. 2012-06-04 Jan Kratochvil <jan.kratochvil@redhat.com>
  1220. * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
  1221. of target_read_memory as bfd_size_type.
  1222. * bfd-in2.h: Regenerate.
  1223. * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
  1224. argument of target_read_memory as bfd_size_type.
  1225. (_bfd_elf32_bfd_from_remote_memory): Likewise.
  1226. (_bfd_elf64_bfd_from_remote_memory): Likewise.
  1227. * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
  1228. * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
  1229. 2012-06-03 Alan Modra <amodra@gmail.com>
  1230. PR binutils/13897
  1231. * elf.c (elf_find_function): Cache last function sym info.
  1232. (_bfd_elf_maybe_function_sym): Return function size, pass in
  1233. section of interest.
  1234. * elf-bfd.h (struct elf_backend_data <maybe_function_sym>): Likewise.
  1235. (_bfd_elf_maybe_function_sym): Likewise.
  1236. * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
  1237. (opd_entry_value): Add in_code_sec param. Revert caching code.
  1238. Return -1 if in_code_sec and function found in wrong section.
  1239. Update all calls.
  1240. 2012-06-01 Siddhesh Poyarekar <siddhesh@redhat.com>
  1241. * bfd-in.h (bfd_elf_bfd_from_remote_memory): Make LEN argument
  1242. of target_read_memory as size_t.
  1243. * bfd-in2.h: Regenerate.
  1244. * elf-bfd.h (elf_backend_bfd_from_remote_memory): Make LEN
  1245. argument of target_read_memory as size_t.
  1246. (_bfd_elf32_bfd_from_remote_memory): Likewise.
  1247. (_bfd_elf64_bfd_from_remote_memory): Likewise.
  1248. * elf.c (bfd_elf_bfd_from_remote_memory): Likewise.
  1249. * elfcode.h (NAME(_bfd_elf,bfd_from_remote_memory)): Likewise.
  1250. 2012-06-01 Alan Modra <amodra@gmail.com>
  1251. PR binutils/13897
  1252. * elf64-ppc.c (opd_entry_value): Rewrite cache code.
  1253. 2012-05-29 Tom Tromey <tromey@redhat.com>
  1254. * opncls.c (bfd_fopen): Always close fd on failure.
  1255. (bfd_fdopenr): Likewise.
  1256. 2012-05-27 Alan Modra <amodra@gmail.com>
  1257. PR ld/14170
  1258. * elflink.c (_bfd_elf_merge_symbol): When a symbol defined in
  1259. a dynamic library finds a new instance with non-default
  1260. visibility in a regular object, correctly handle symbols
  1261. already on the undefs list and undo dynamic symbol state when
  1262. the new symbol is hidden or internal.
  1263. 2012-05-25 H.J. Lu <hongjiu.lu@intel.com>
  1264. * elf32-i386.c (elf_i386_create_dynamic_sections): Don't use
  1265. dynamic_sec_flags to create PLT .eh_frame section.
  1266. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
  1267. 2012-05-25 Alan Modra <amodra@gmail.com>
  1268. PR ld/13909
  1269. * elf-eh-frame.c (_bfd_elf_eh_frame_present): New function.
  1270. (_bfd_elf_maybe_strip_eh_frame_hdr): Use it here.
  1271. * elf-bfd.h (_bfd_elf_eh_frame_present): Declare.
  1272. * elflink.c (bfd_elf_size_dynamic_sections): Let the backend
  1273. size dynamic sections before stripping eh_frame_hdr.
  1274. (bfd_elf_gc_sections): Handle multiple .eh_frame sections.
  1275. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Drop glink_eh_frame
  1276. if no other .eh_frame sections exist.
  1277. * elf64-ppc.c (ppc64_elf_size_stubs): Likewise.
  1278. * elf32-i386.c (elf_i386_create_dynamic_sections): Don't size
  1279. or alloc plt_eh_frame here..
  1280. (elf_i386_size_dynamic_sections): ..do it here instead. Don't
  1281. specially keep sgotplt, iplt, tgotplt, sdynbss for symbols.
  1282. (elf_i386_finish_dynamic_sections): Check plt_eh_frame->contents
  1283. before writing plt offset.
  1284. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Don't size
  1285. or alloc plt_eh_frame here..
  1286. (elf_x86_64_size_dynamic_sections): ..do it here instead.
  1287. (elf_x86_64_finish_dynamic_sections): Check plt_eh_frame->contents
  1288. before writing plt offset.
  1289. 2012-05-24 Alan Modra <amodra@gmail.com>
  1290. PR ld/14158
  1291. * elf64-ppc.c (ppc64_elf_size_stubs): Round up glink_eh_frame
  1292. size to output section alignment.
  1293. (ppc64_elf_build_stubs): Likewise, and extend last FDE to cover.
  1294. 2012-05-23 Alan Modra <amodra@gmail.com>
  1295. * elf-eh-frame.c (_bfd_elf_maybe_strip_eh_frame_hdr): Handle
  1296. BFDs with multiple .eh_frame sections.
  1297. 2012-05-23 Alan Modra <amodra@gmail.com>
  1298. PR ld/13909
  1299. * elflink.c (bfd_elf_discard_info): Don't ignore dynamic BFDs.
  1300. 2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
  1301. PR ld/13909
  1302. * elf32-i386.c (elf_i386_create_dynamic_sections): Revert the
  1303. last change.
  1304. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
  1305. 2012-05-22 Alan Modra <amodra@gmail.com>
  1306. * elflink.c (bfd_elf_discard_info): Look for next .eh_frame if
  1307. first one is zero size or discarded.
  1308. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Set most of
  1309. glink_eh_frame contents here..
  1310. (ppc_elf_finish_dynamic_sections): ..rather than here. Just set
  1311. offset to .glink.
  1312. 2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
  1313. PR ld/13909
  1314. * elf32-i386.c (elf_i386_create_dynamic_sections): Create PLT
  1315. eh_frame section if there is an input .eh_frame section.
  1316. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
  1317. 2012-05-22 H.J. Lu <hongjiu.lu@intel.com>
  1318. PR ld/14105
  1319. * elf32-i386.c (elf_i386_create_dynamic_sections): Always
  1320. create PLT eh_frame section with SEC_LINKER_CREATED.
  1321. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Likewise.
  1322. 2012-05-22 Alan Modra <amodra@gmail.com>
  1323. * elflink.c (bfd_elf_discard_info): Handle multiple .eh_frame
  1324. sections attached to a BFD.
  1325. * section.c (bfd_get_section_by_name): Rewrite description.
  1326. (bfd_get_next_section_by_name): New function.
  1327. * bfd-in2.h: Regenerate.
  1328. 2012-05-21 Andreas Schwab <schwab@linux-m68k.org>
  1329. * elf32-m68k.c (elf_m68k_grok_prstatus): New function.
  1330. (elf_m68k_grok_psinfo): New function.
  1331. (elf_backend_grok_prstatus): Define.
  1332. (elf_backend_grok_psinfo): Define.
  1333. 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
  1334. * elf64-mips.c (elf_backend_got_header_size): Correct definition.
  1335. * elfxx-mips.c (_bfd_mips_elf_adjust_dynamic_symbol): Use the ELF
  1336. backend's GOT header size instead of hardcoding it.
  1337. 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
  1338. * elf32-vax.c (elf_vax_relocate_section)
  1339. <R_VAX_8, R_VAX_16, R_VAX_32>: Don't check if info->shared again.
  1340. 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
  1341. * elf32-vax.c (elf_vax_relocate_section)
  1342. <R_VAX_8, R_VAX_16, R_VAX_32>: Use section flags rather than
  1343. its name as the check for text sections.
  1344. 2012-05-19 Maciej W. Rozycki <macro@linux-mips.org>
  1345. * elf64-mips.c (mips_elf64_be_swap_reloc_out): Also make sure
  1346. the third reloc offset is the same as the first.
  1347. 2012-05-19 Alan Modra <amodra@gmail.com>
  1348. * elf32-ppc.h (has_vle_insns, is_ppc_vle): Delete.
  1349. (has_tls_reloc, has_tls_get_addr_call): Move back to..
  1350. * elf32-ppc.c: ..here.
  1351. (ppc_elf_section_flags, elf_backend_section_flags): Delete.
  1352. (ppc_elf_modify_segment_map): Use ELF sh_flags to detect VLE sections.
  1353. 2012-05-18 H.J. Lu <hongjiu.lu@intel.com>
  1354. * elf32-i386.c (elf_i386_finish_dynamic_symbol): Don't make
  1355. _DYNAMIC nor _GLOBAL_OFFSET_TABLE_ absolute.
  1356. * elf64-x86-64.c (elf_x86_64_finish_dynamic_symbol): Likewise.
  1357. 2012-05-18 Roland McGrath <mcgrathr@google.com>
  1358. * archive.c (_bfd_generic_read_ar_hdr_mag): Fix last change so as
  1359. not to clobber the ar_fmag field stored in ARED->arch_header.
  1360. 2012-05-18 Pedro Alves <palves@redhat.com>
  1361. * mach-o.h: Don't include sysdep.h.
  1362. 2012-05-18 Nick Clifton <nickc@redhat.com>
  1363. PR 14072
  1364. * bfd-in.h: Check for PACKAGE or PACKAGE_VERSION before
  1365. complaining about config.h not having been included.
  1366. * bfd-in2.h: Regenerate.
  1367. 2012-05-18 Andreas Schwab <schwab@linux-m68k.org>
  1368. * aclocal.m4: Regenerate.
  1369. * Makefile.in: Regenerate.
  1370. 2012-05-17 Daniel Richard G. <skunk@iskunk.org>
  1371. Nick Clifton <nickc@redhat.com>
  1372. PR 14072
  1373. * configure.in: Add check that sysdep.h has been included before
  1374. any system header files.
  1375. * configure: Regenerate.
  1376. * config.in: Regenerate.
  1377. * aclocal.m4: Regenerate.
  1378. * bfd-in.h: Generate an error if included before config.h.
  1379. * sysdep.h: Likewise.
  1380. * bfd-in2.h: Regenerate.
  1381. * compress.c: Remove #include "config.h".
  1382. * plugin.c: Likewise.
  1383. * elf32-m68hc1x.c: Include sysdep.h before alloca-conf.h.
  1384. * elf64-hppa.c: Likewise.
  1385. * som.c: Likewise.
  1386. * xsymc.c: Likewise.
  1387. 2012-05-17 Maciej W. Rozycki <macro@linux-mips.org>
  1388. Alan Modra <amodra@gmail.com>
  1389. * elf.c (ignore_section_sym): Correct comment. Don't return
  1390. true for absolute section.
  1391. (elf_map_symbols): Move stray comment. Adjust for above change.
  1392. Don't discard global section symbols.
  1393. 2012-05-17 Alan Modra <amodra@gmail.com>
  1394. * elf32-ppc.c (ppc_elf_finish_dynamic_symbol): Don't make _DYNAMIC,
  1395. _GLOBAL_OFFSET_TABLE_ or _PROCEDURE_LINKAGE_TABLE_ absolute.
  1396. * elf64-ppc.c (ppc64_elf_finish_dynamic_symbol): Don't make _DYNAMIC
  1397. absolute.
  1398. 2012-05-17 Alan Modra <amodra@gmail.com>
  1399. * elf32-ppc.c (has_tls_reloc, has_tls_get_addr_call, has_vle_insns,
  1400. is_ppc_vle): Move to..
  1401. * elf32-ppc.h: ..here, making is_ppc_vle a macro.
  1402. 2012-05-16 Sergio Durigan Junior <sergiodj@redhat.com>
  1403. * bfd-in.h (bfd_get_section_name, bfd_get_section_vma,
  1404. bfd_get_section_lma, bfd_get_section_alignment,
  1405. bfd_get_section_flags, bfd_get_section_userdata): Rewrite macros
  1406. in order to use the `bfd' argument.
  1407. * bfd-in2.h: Regenerate.
  1408. * elf-vxworks.c (elf_vxworks_finish_dynamic_entry): Pass proper `bfd'
  1409. as the first argument for `bfd_get_section_alignment'.
  1410. * elf32-arm.c (create_ifunc_sections): Likewise, for
  1411. `bfd_set_section_alignment'.
  1412. * elf32-m32r.c (m32r_elf_relocate_section): Likewise, for
  1413. `bfd_get_section_name'.
  1414. * elf32-microblaze.c (microblaze_elf_relocate_section): Likewise.
  1415. * elf32-ppc.c (ppc_elf_size_dynamic_sections): Likewise.
  1416. (ppc_elf_relocate_section): Likewise.
  1417. * elf64-mmix.c (mmix_final_link_relocate): Likewise, for
  1418. `bfd_get_section_vma'.
  1419. * elf64-ppc.c (create_linkage_sections): Likewise, for
  1420. `bfd_set_section_alignment'.
  1421. 2012-05-16 Georg-Johann Lay <avr@gjlay.de>
  1422. PR target/13503
  1423. * reloc.c: Rename BFD_RELOC_AVR_8_HHI to BFD_RELOC_AVR_8_HLO.
  1424. * bfd-in2.h: Regenerate.
  1425. * libbfd.h: Regenerate.
  1426. * elf32-avr.c (elf_avr_howto_table): Rename R_AVR_8_HHI8 to
  1427. R_AVR_8_HLO8.
  1428. (avr_reloc_map): Likewise.
  1429. 2012-05-16 Daniel Richard G. <skunk@iskunk.org>
  1430. PR binutils/13558
  1431. * bfd/aout-cris.c: Include sysdep.h before bfd.h.
  1432. * bfd/aout-ns32k.c: Likewise.
  1433. * bfd/aout-sparcle.c: Likewise.
  1434. * bfd/aout0.c: Likewise.
  1435. * bfd/bfd-in2.h: Likewise.
  1436. * bfd/coff-stgo32.c: Likewise.
  1437. * bfd/cpu-lm32.c: Likewise.
  1438. * bfd/cpu-microblaze.c: Likewise.
  1439. * bfd/cpu-score.c: Likewise.
  1440. * bfd/cpu-tilegx.c: Likewise.
  1441. * bfd/cpu-tilepro.c: Likewise.
  1442. * bfd/elf32-lm32.c: Likewise.
  1443. * bfd/elf32-microblaze.c: Likewise.
  1444. * bfd/elf32-score7.c: Likewise.
  1445. * bfd/elf32-tilepro.c: Likewise.
  1446. * bfd/elfxx-tilegx.c: Likewise.
  1447. * bfd/mach-o.h: Likewise.
  1448. * bfd/nlm32-ppc.c: Likewise.
  1449. * bfd/ns32knetbsd.c: Likewise.
  1450. * bfd/pef.h: Likewise.
  1451. * bfd/plugin.c: Likewise.
  1452. * bfd/stab-syms.c: Likewise.
  1453. * bfd/sunos.c: Likewise.
  1454. * bfd/syms.c: Likewise.
  1455. * bfd/xsym.h: Likewise.
  1456. 2012-05-16 Alan Modra <amodra@gmail.com>
  1457. * elflink.c: Rename flaginfo to flinfo throughout, except..
  1458. (bfd_elf_lookup_section_flags): ..here, rename finfo to flaginfo.
  1459. Formatting, style. Simplify flag match.
  1460. 2012-05-16 Alan Modra <amodra@gmail.com>
  1461. * dwarf2.c: Formatting.
  1462. (arange_add): Pass in unit rather than bfd. Update callers.
  1463. Ignore empty ranges. Don't ask for cleared memory.
  1464. (parse_comp_unit): Only set unit->base_address if processing
  1465. DW_TAG_compile_unit.
  1466. (find_debug_info): Optimise section lookup.
  1467. (place_sections): Use bfd_alloc for stash->adjusted_sections.
  1468. (find_line): Match previously parsed comp unit addresses as we
  1469. do for newly parsed comp units.
  1470. 2012-05-16 Alan Modra <amodra@gmail.com>
  1471. * archive.c (_bfd_generic_read_ar_hdr_mag): Ensure sscanf
  1472. stops at end of ar_size field.
  1473. 2012-05-16 Alan Modra <amodra@gmail.com>
  1474. PR ld/13962
  1475. PR ld/7023
  1476. * elf.c (bfd_section_from_shdr): Fail when .dynsym sh_info is
  1477. out of range. As a special case, fix sh_info for zero sh_size.
  1478. Do the same for .symtab.
  1479. 2012-05-15 James Murray <jsm@jsm-net.demon.co.uk>
  1480. Stephane Carrez <stcarrez@nerim.fr>
  1481. * archures.c: Add bfd_arch_m9s12x and bfd_arch_m9s12xg.
  1482. * config.bfd: Likewise.
  1483. * cpu-m9s12x.c: New.
  1484. * cpu-m9s12xg.c: New.
  1485. * elf32-m68hc12.c: Add S12X and XGATE co-processor support.
  1486. Add option to offset S12 addresses into XGATE memory space.
  1487. Fix carry bug in IMM16 (IMM8 low/high) relocate.
  1488. * Makefile.am (ALL_MACHINES): Add cpu-m9s12x and cpu-m9s12xg.
  1489. (ALL_MACHINES_CFILES): Likewise.
  1490. * reloc.c: Add S12X relocs.
  1491. * Makefile.in: Regenerate.
  1492. * bfd-in2.h: Regenerate.
  1493. * libbfd.h: Regenerate.
  1494. 2012-05-14 James Lemke <jwlemke@codesourcery.com>
  1495. Catherine Moore <clm@codesourcery.com>
  1496. * bfd.c (bfd_lookup_section_flags): Add section parm.
  1497. * ecoff.c (bfd_debug_section): Remove flag_info initializer.
  1498. * elf-bfd.h (bfd_elf_section_data): Move in section_flag_info.
  1499. (bfd_elf_lookup_section_flags): Add section parm.
  1500. * elf32-ppc.c (is_ppc_vle): New function.
  1501. (ppc_elf_modify_segment_map): New function.
  1502. (elf_backend_modify_segment_map): Define.
  1503. (has_vle_insns): New define.
  1504. * elf32-ppc.h (ppc_elf_modify_segment_map): Declare.
  1505. * elflink.c (bfd_elf_lookup_section_flags): Add return value & parm.
  1506. Move in logic to omit / include a section.
  1507. * libbfd-in.h (bfd_link_info): Add section parm.
  1508. (bfd_generic_lookup_section_flags): Likewise.
  1509. * reloc.c (bfd_generic_lookup_section_flags): Likewise.
  1510. * section.c (bfd_section): Move out section_flag_info.
  1511. (BFD_FAKE_SECTION): Remove flag_info initializer.
  1512. * targets.c (_bfd_lookup_section_flags): Add section parm.
  1513. 2012-05-14 Catherine Moore <clm@codesourcery.com>
  1514. * archures.c (bfd_mach_ppc_vle): New.
  1515. * bfd-in2.h: Regenerated.
  1516. * cpu-powerpc.c (bfd_powerpc_archs): New entry for vle.
  1517. * elf32-ppc.c (split16_format_type): New enumeration.
  1518. (ppc_elf_vle_split16): New function.
  1519. (HOWTO): Add entries for R_PPC_VLE relocations.
  1520. (ppc_elf_reloc_type_lookup): Handle PPC_VLE relocations.
  1521. (ppc_elf_section_flags): New function.
  1522. (ppc_elf_lookup_section_flags): New function.
  1523. (ppc_elf_section_processing): New function.
  1524. (ppc_elf_check_relocs): Handle PPC_VLE relocations.
  1525. (ppc_elf_relocation_section): Likewise.
  1526. (elf_backend_lookup_section_flags_hook): Define.
  1527. (elf_backend_section_flags): Define.
  1528. (elf_backend_section_processing): Define.
  1529. * elf32-ppc.h (ppc_elf_section_processing): Declare.
  1530. * libbfd.h: Regenerated.
  1531. * reloc.c (BFD_RELOC_PPC_VLE_REL8, BFD_RELOC_PPC_VLE_REL15,
  1532. BFD_RELOC_PPC_VLE_REL24, BFD_RELOC_PPC_VLE_LO16A,
  1533. BFD_RELOC_PPC_VLE_LO16D, BFD_RELOC_PPC_VLE_HI16A,
  1534. BFD_RELOC_PPC_VLE_HI16D, BFD_RELOC_PPC_VLE_HA16A,
  1535. BFD_RELOC_PPC_VLE_HA16D, BFD_RELOC_PPC_VLE_SDA21,
  1536. BFD_RELOC_PPC_VLE_SDA21_LO, BFD_RELOC_PPC_VLE_SDAREL_LO16A,
  1537. BFD_RELOC_PPC_VLE_SDAREL_LO16D, BFD_RELOC_PPC_VLE_SDAREL_HI16A,
  1538. BFD_RELOC_PPC_VLE_SDAREL_HI16D, BFD_RELOC_PPC_VLE_SDAREL_HA16A,
  1539. BFD_RELOC_PPC_VLE_SDAREL_HA16D): New bfd relocations.
  1540. 2012-05-11 Georg-Johann Lay <avr@gjlay.de>
  1541. PR target/13503
  1542. * reloc.c: Add new ENUM for BFD_RELOC_AVR_8_LO,
  1543. BFD_RELOC_AVR_8_HI, BFD_RELOC_AVR_8_HHI.
  1544. * bfd-in2.h: Regenerate.
  1545. * libbfd.h: Regenerate.
  1546. * elf32-avr.c (elf_avr_howto_table): Add entries for
  1547. R_AVR_8_LO8, R_AVR_8_HI8, R_AVR_8_HHI8.
  1548. (avr_reloc_map): Add RELOC mappings for R_AVR_8_LO8, R_AVR_8_HI8,
  1549. R_AVR_8_HHI8.
  1550. 2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
  1551. * elf64-x86-64.c (elf_x86_64_relocate_section): Use int in x32
  1552. addend overflow check.
  1553. 2012-05-10 DJ Delorie <dj@redhat.com>
  1554. * elf32-rx.c (rx_elf_object_p): Ignore empty segments.
  1555. 2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
  1556. * elf64-x86-64.c (elf_x86_64_relocate_section): Display signed
  1557. hex number in x32 addend overflow check.
  1558. 2012-05-10 H.J. Lu <hongjiu.lu@intel.com>
  1559. * elf64-x86-64.c (elf_x86_64_reloc_type_class): Handle
  1560. R_X86_64_RELATIVE64.
  1561. 2012-05-09 H.J. Lu <hongjiu.lu@intel.com>
  1562. * elf64-x86-64.c (elf_x86_64_relocate_section): Check addend
  1563. overflow for R_X86_64_RELATIVE64.
  1564. 2012-05-08 Ben Cheng <bccheng@google.com>
  1565. * elf.c: Preserve the original p_align and p_flags if they are
  1566. valid.
  1567. 2012-05-07 Alan Modra <amodra@gmail.com>
  1568. * elf64-ia64-vms.c (elf64_ia64_relocate_section): Update
  1569. RELOC_AGAINST_DISCARDED_SECTION invocation.
  1570. 2012-05-07 Hans-Peter Nilsson <hp@axis.com>
  1571. * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Declare and use
  1572. local variable i_ instead of assuming and using a variable i.
  1573. 2012-05-07 Maciej W. Rozycki <macro@linux-mips.org>
  1574. * elf-bfd.h (RELOC_AGAINST_DISCARDED_SECTION): Handle compound
  1575. relocations.
  1576. * elfxx-mips.c (mips_reloc_against_discarded_section): New
  1577. function.
  1578. (_bfd_mips_elf_relocate_section): Call it, in place of
  1579. RELOC_AGAINST_DISCARDED_SECTION.
  1580. * elf-m10200.c (mn10200_elf_relocate_section): Update arguments
  1581. to RELOC_AGAINST_DISCARDED_SECTION.
  1582. * elf-m10300.c (mn10300_elf_relocate_section): Likewise.
  1583. * elf32-arm.c (elf32_arm_relocate_section): Likewise.
  1584. * elf32-avr.c (elf32_avr_relocate_section): Likewise.
  1585. * elf32-bfin.c (bfin_relocate_section): Likewise.
  1586. (bfinfdpic_relocate_section): Likewise.
  1587. * elf32-cr16.c (elf32_cr16_relocate_section): Likewise.
  1588. * elf32-cr16c.c (elf32_cr16c_relocate_section): Likewise.
  1589. * elf32-cris.c (cris_elf_relocate_section): Likewise.
  1590. * elf32-crx.c (elf32_crx_relocate_section): Likewise.
  1591. * elf32-d10v.c (elf32_d10v_relocate_section): Likewise.
  1592. * elf32-epiphany.c (epiphany_elf_relocate_section): Likewise.
  1593. * elf32-fr30.c (fr30_elf_relocate_section): Likewise.
  1594. * elf32-frv.c (elf32_frv_relocate_section): Likewise.
  1595. * elf32-h8300.c (elf32_h8_relocate_section): Likewise.
  1596. * elf32-hppa.c (elf32_hppa_relocate_section): Likewise.
  1597. * elf32-i370.c (i370_elf_relocate_section): Likewise.
  1598. * elf32-i386.c (elf_i386_relocate_section): Likewise.
  1599. * elf32-i860.c (elf32_i860_relocate_section): Likewise.
  1600. * elf32-ip2k.c (ip2k_elf_relocate_section): Likewise.
  1601. * elf32-iq2000.c (iq2000_elf_relocate_section): Likewise.
  1602. * elf32-lm32.c (lm32_elf_relocate_section): Likewise.
  1603. * elf32-m32c.c (m32c_elf_relocate_section): Likewise.
  1604. * elf32-m32r.c (m32r_elf_relocate_section): Likewise.
  1605. * elf32-m68hc1x.c (elf32_m68hc11_relocate_section): Likewise.
  1606. * elf32-m68k.c (elf_m68k_relocate_section): Likewise.
  1607. * elf32-mcore.c (mcore_elf_relocate_section): Likewise.
  1608. * elf32-mep.c (mep_elf_relocate_section): Likewise.
  1609. * elf32-moxie.c (moxie_elf_relocate_section): Likewise.
  1610. * elf32-msp430.c (elf32_msp430_relocate_section): Likewise.
  1611. * elf32-mt.c (mt_elf_relocate_section): Likewise.
  1612. * elf32-openrisc.c (openrisc_elf_relocate_section): Likewise.
  1613. * elf32-ppc.c (ppc_elf_relocate_section): Likewise.
  1614. * elf32-rl78.c (rl78_elf_relocate_section): Likewise.
  1615. * elf32-rx.c (rx_elf_relocate_section): Likewise.
  1616. * elf32-s390.c (elf_s390_relocate_section): Likewise.
  1617. * elf32-score.c (s3_bfd_score_elf_relocate_section): Likewise.
  1618. * elf32-score7.c (s7_bfd_score_elf_relocate_section): Likewise.
  1619. * elf32-sh.c (sh_elf_relocate_section): Likewise.
  1620. * elf32-spu.c (spu_elf_relocate_section): Likewise.
  1621. * elf32-tic6x.c (elf32_tic6x_relocate_section): Likewise.
  1622. * elf32-tilepro.c (tilepro_elf_relocate_section): Likewise.
  1623. * elf32-v850.c (v850_elf_relocate_section): Likewise.
  1624. * elf32-vax.c (elf_vax_relocate_section): Likewise.
  1625. * elf32-xc16x.c (elf32_xc16x_relocate_section): Likewise.
  1626. * elf32-xstormy16.c (xstormy16_elf_relocate_section): Likewise.
  1627. * elf32-xtensa.c (elf_xtensa_relocate_section): Likewise.
  1628. * elf64-alpha.c (elf64_alpha_relocate_section_r): Likewise.
  1629. (elf64_alpha_relocate_section): Likewise.
  1630. * elf64-hppa.c (elf64_hppa_relocate_section): Likewise.
  1631. * elf64-mmix.c (mmix_elf_relocate_section): Likewise.
  1632. * elf64-ppc.c (ppc64_elf_relocate_section): Likewise.
  1633. * elf64-s390.c (elf_s390_relocate_section): Likewise.
  1634. * elf64-sh64.c (sh_elf64_relocate_section): Likewise.
  1635. * elf64-x86-64.c (elf_x86_64_relocate_section): Likewise.
  1636. * elfnn-ia64.c (elfNN_ia64_relocate_section): Likewise.
  1637. * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Likewise.
  1638. * elfxx-tilegx.c (tilegx_elf_relocate_section): Likewise.
  1639. 2012-05-05 Alan Modra <amodra@gmail.com>
  1640. PR ld/14052
  1641. PR ld/13621
  1642. * linker.c (_bfd_nearby_section): Revert 2012-02-13 change.
  1643. 2012-05-05 Alan Modra <amodra@gmail.com>
  1644. * aout-arm.c: Replace all uses of bfd_abs_section, bfd_com_section,
  1645. bfd_und_section and bfd_ind_section with their _ptr variants, or
  1646. use corresponding bfd_is_* macros.
  1647. * aout-ns32k.c: Likewise.
  1648. * aout-tic30.c: Likewise.
  1649. * coff-arm.c: Likewise.
  1650. * coff-tic54x.c: Likewise.
  1651. * cpu-ns32k.c: Likewise.
  1652. * elf-attrs.c: Likewise.
  1653. * elfcode.h: Likewise.
  1654. * peicode.h: Likewise.
  1655. * reloc.c: Likewise.
  1656. * riscix.c: Likewise.
  1657. * versados.c: Likewise.
  1658. * section.c: Likewise.
  1659. (bfd_abs_section, bfd_ind_section, bfd_com_section,
  1660. bfd_ind_section): Delete.
  1661. (std_section): New array replacing above.
  1662. (bfd_abs_section_ptr, bfd_ind_section_ptr, bfd_com_section_ptr,
  1663. bfd_ind_section_ptr, STD_SECTION): Update.
  1664. (BFD_FAKE_SECTION, GLOBAL_SYM_INIT): Remove unnecessary casts.
  1665. * bfd-in2.h: Regenerate.
  1666. 2012-05-03 Sean Keys <skeys@ipdatasys.com>
  1667. * cpu-xgate.c: New file. Added XGATE support.
  1668. * archures.c (bfd_architecture): Add XGATE architecture.
  1669. (bfd_archures_list): Add reference to XGATE architecture info.
  1670. * elf-bfd.h (prep_headers): Handle bfd_arch_xgate.
  1671. * reloc.c: Add various XGATE relocation enums.
  1672. * targets.c (bfd_elf32_xgate_vec): Declare and add to target vector
  1673. list.
  1674. * Makefile.am: Add support for XGATE elf.
  1675. * configure.in: Ditto.
  1676. * config.bfd: Ditto.
  1677. * Makefile.in: Regenerate.
  1678. * configure: Ditto.
  1679. * bfd-in2.h: Ditto.
  1680. * libbfd.h: Ditto.
  1681. Added files for XGATE relocations.
  1682. * elf32-xgate.c: Created minimal relocation file.
  1683. * elf32-xgate.h: Created minimal header file for elf32-xgate.
  1684. 2012-05-03 Tristan Gingold <gingold@adacore.com>
  1685. * dwarf2.c (decode_line_info): Ignore
  1686. DW_LNE_HP_source_file_correlation.
  1687. 2012-05-01 Nick Clifton <nickc@redhat.com>
  1688. PR binutils/13121
  1689. * aoutx.h: Rename 'finfo' to 'flaginfo' to avoid conflicts with
  1690. AIX system headers.
  1691. * coff-ppc.c: Likewise.
  1692. * cofflink.c: Likewise.
  1693. * elf32-arm.c: Likewise.
  1694. * elf64-sparc.c: Likewise.
  1695. * elflink.c: Likewise.
  1696. * pdp11.c: Likewise.
  1697. * rescoff.c: Likewise.
  1698. 2012-04-26 Mark Wielaard <mjw@redhat.com>
  1699. * dwarf2.c (scan_unit_for_symbols): Account for DW_AT_high_pc
  1700. possibly being relative to DW_AT_low_pc.
  1701. (parse_comp_unit): Likewise.
  1702. 2012-04-26 Andreas Schwab <schwab@linux-m68k.org>
  1703. * elf32-m68k.c (elf_m68k_check_relocs): Mark non-GOT references
  1704. also when generating PIE.
  1705. (elf_m68k_discard_copies): Mark undefined weak symbols referenced
  1706. by relocations as dynamic.
  1707. 2012-04-26 Hans-Peter Nilsson <hp@axis.com>
  1708. Provide a way for programs to recognize BFD_ASSERT calls.
  1709. * bfd.c (bfd_assert_handler_type): New API type.
  1710. (bfd_set_assert_handler, bfd_get_assert_handler): New API functions.
  1711. (_bfd_assert_handler): New variable.
  1712. (_bfd_default_assert_handler): New function.
  1713. (bfd_assert): Call _bfd_assert_handler, not _bfd_error_handler.
  1714. * libbfd-in.h (_bfd_assert_handler): Declare.
  1715. * libbfd.h, bfd-in2.h: Regenerate.
  1716. 2012-04-24 Hans-Peter Nilsson <hp@axis.com>
  1717. PR ld/13990
  1718. * elf32-arm.c (elf32_arm_gc_sweep_hook): Handle a forced-local
  1719. symbol, where PLT refcount is set to -1.
  1720. 2012-04-24 Alan Modra <amodra@gmail.com>
  1721. PR ld/13991
  1722. * elf-bfd.h (_bfd_elf_link_just_syms): Define as
  1723. _bfd_generic_link_just_syms.
  1724. * elflink.c (_bfd_elf_link_just_syms): Delete.
  1725. * linker.c (_bfd_generic_link_just_syms): Set sec_info_type.
  1726. * bfd-in.h (discarded_section): Renamed from elf_discarded_section.
  1727. * section.c (SEC_INFO_TYPE_NONE, SEC_INFO_TYPE_STABS,
  1728. SEC_INFO_TYPE_MERGE, SEC_INFO_TYPE_EH_FRAME,
  1729. SEC_INFO_TYPE_JUST_SYMS): Renamed from corresponding ELF_INFO_TYPE.
  1730. * elf-eh-frame.c, * elf-m10200.c, * elf-m10300.c,
  1731. * elf.c, * elf32-arm.c, * elf32-avr.c, * elf32-bfin.c,
  1732. * elf32-cr16.c, * elf32-cr16c.c, * elf32-cris.c,
  1733. * elf32-crx.c, * elf32-d10v.c, * elf32-epiphany.c,
  1734. * elf32-fr30.c, * elf32-frv.c, * elf32-h8300.c,
  1735. * elf32-hppa.c, * elf32-i370.c, * elf32-i386.c,
  1736. * elf32-i860.c, * elf32-ip2k.c, * elf32-iq2000.c,
  1737. * elf32-lm32.c, * elf32-m32c.c, * elf32-m32r.c,
  1738. * elf32-m68hc1x.c, * elf32-m68k.c, * elf32-mcore.c,
  1739. * elf32-mep.c, * elf32-moxie.c, * elf32-msp430.c,
  1740. * elf32-mt.c, * elf32-openrisc.c, * elf32-ppc.c,
  1741. * elf32-rl78.c, * elf32-rx.c, * elf32-s390.c,
  1742. * elf32-score.c, * elf32-score7.c, * elf32-sh.c,
  1743. * elf32-spu.c, * elf32-tic6x.c, * elf32-tilepro.c,
  1744. * elf32-v850.c, * elf32-vax.c, * elf32-xc16x.c,
  1745. * elf32-xstormy16.c, * elf32-xtensa.c, * elf64-alpha.c,
  1746. * elf64-hppa.c, * elf64-ia64-vms.c, * elf64-mmix.c,
  1747. * elf64-ppc.c, * elf64-s390.c, * elf64-sh64.c,
  1748. * elf64-x86-64.c, * elflink.c, * elfnn-ia64.c,
  1749. * elfxx-mips.c, * elfxx-sparc.c, * elfxx-tilegx.c,
  1750. * reloc.c: Update all references.
  1751. * bfd-in2.h: Regenerate.
  1752. 2012-04-20 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  1753. * elf32-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
  1754. * elf64-s390.c (ELF_DYNAMIC_INTERPRETER): Set to the GCC default.
  1755. 2012-04-19 Thomas Schwinge <thomas@codesourcery.com>
  1756. * elf32-sh.c (elf_sh_link_hash_entry): Specify an enum identifier for
  1757. got_type.
  1758. (allocate_dynrelocs, sh_elf_relocate_section, sh_elf_check_relocs): Use
  1759. it.
  1760. 2012-04-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
  1761. * elf32-sh.c (allocate_dynrelocs): Don't allocate dynamic
  1762. relocations when LE conversion happens on the IE tls symbol.
  1763. 2012-04-17 Roland McGrath <mcgrathr@google.com>
  1764. * elf64-x86-64.c (elf_x86_64_nacl_plt0_entry): Fix nop padding
  1765. so that 32-byte boundary is a proper instruction boundary.
  1766. 2012-04-17 Tristan Gingold <gingold@adacore.com>
  1767. * vms-lib.c (_bfd_vms_lib_get_module): Append .obj extension to
  1768. member of an object archive.<
  1769. 2012-04-17 Tristan Gingold <gingold@adacore.com>
  1770. * vms-lib.c (MAX_EKEYLEN): Define.
  1771. (MAX_KEYLEN): Fix value.
  1772. (vms_write_index): Add comments and fix indentation.
  1773. Adjust comparaison. Add assertions. Free kbn_blk.
  1774. (_bfd_vms_lib_write_archive_contents): Use MAX_EKEYLEN.
  1775. Compense MAX_KEYLEN adjustment.
  1776. 2012-04-16 Maciej W. Rozycki <macro@linux-mips.org>
  1777. * elfxx-mips.c (mips16_stub_symndx): Handle n64 compound relocs.
  1778. (_bfd_mips_elf_check_relocs): Update accordingly.
  1779. 2012-04-13 Alan Modra <amodra@gmail.com>
  1780. PR ld/13947
  1781. * elflink.c (bfd_elf_final_link): Set reloc_count to 0 for
  1782. reloc sections.
  1783. 2012-04-12 David S. Miller <davem@davemloft.net>
  1784. * reloc.c (BFD_RELOC_SPARC_H34, BFD_RELOC_SPARC_SIZE32,
  1785. BFD_RELOC_SPARC_SIZE64, BFD_RELOC_SPARC_WDISP10): New relocs.
  1786. * libbfd.h: Regenerate.
  1787. * bfd-in2.h: Likewise.
  1788. * elfxx-sparc.c (sparc_elf_wdisp10_reloc): New function.
  1789. (_bfd_sparc_elf_howto_table): Add entries for R_SPARC_H34,
  1790. R_SPARC_SIZE32, R_SPARC_64, and R_SPARC_WDISP10.
  1791. (_bfd_sparc_elf_reloc_type_lookup): Handle new relocs.
  1792. (_bfd_sparc_elf_check_relocs): Likewise.
  1793. (_bfd_sparc_elf_gc_sweep_hook): Likewise.
  1794. (_bfd_sparc_elf_relocate_section): Likewise.
  1795. 2012-04-12 Roland McGrath <mcgrathr@google.com>
  1796. * elf32-arm.c (elf32_arm_nacl_plt0_entry, elf32_arm_nacl_plt_entry):
  1797. New variables.
  1798. (struct elf32_arm_link_hash_table): New member `nacl_p'.
  1799. (elf32_arm_link_hash_table_create): Initialize it.
  1800. (elf32_arm_nacl_link_hash_table_create): New function.
  1801. (arm_movw_immediate, arm_movt_immediate): New functions.
  1802. (elf32_arm_populate_plt_entry): Test HTAB->nacl_p.
  1803. (elf32_arm_finish_dynamic_sections): Likewise.
  1804. (elf32_arm_output_plt_map_1): Likewise.
  1805. (bfd_elf32_littlearm_nacl_vec, bfd_elf32_bigarm_nacl_vec):
  1806. New backend vector stanza.
  1807. (elf32_arm_nacl_modify_segment_map): New function.
  1808. * config.bfd: Handle arm-*-nacl*, armeb-*-nacl*.
  1809. * targets.c: Support bfd_elf32_{big,little}_nacl_vec.
  1810. * configure.in: Likewise.
  1811. (bfd_elf32_bigarm_nacl_vec): Add elf-nacl.lo here.
  1812. (bfd_elf32_littlearm_nacl_vec): Likewise.
  1813. (bfd_elf32_bigarm_vec, bfd_elf32_littlearm_vec): Likewise.
  1814. (bfd_elf32_bigarm_symbian_vec): Likewise.
  1815. (bfd_elf32_littlearm_symbian_vec): Likewise.
  1816. (bfd_elf32_bigarm_vxworks_vec): Likewise.
  1817. (bfd_elf32_littlearm_vxworks_vec): Likewise.
  1818. * configure: Regenerated.
  1819. 2012-04-12 Tristan Gingold <gingold@adacore.com>
  1820. * elflink.c (elf_link_output_extsym): Add a guard.
  1821. (bfd_elf_final_link): Remove assertion.
  1822. (bfd_elf_final_link): Add a guard.
  1823. * elfnn-ia64.c (INCLUDE_IA64_VMS): Removed.
  1824. (elfNN_vms_section_from_shdr, elfNN_vms_object_p)
  1825. (elfNN_vms_post_process_headers, elfNN_vms_section_processing)
  1826. (elfNN_vms_final_write_processing, elfNN_vms_close_and_cleanup):
  1827. Remove.
  1828. (elfNN-ia64-vms target): Move to ...
  1829. * elf64-ia64-vms.c: New file.
  1830. * configure.in (bfd_elf64_ia64_vms_vec): Add elf64-ia64-vms.lo
  1831. * Makefile.am (BFD64_BACKENDS): Add elf64-ia64-vms.lo.
  1832. (BFD64_BACKENDS_CFILES): Ad elf64-ia64-vms.c.
  1833. * configure: Regenerate.
  1834. * Makefile.in: Regenerate.
  1835. 2012-04-11 Nick Clifton <nickc@redhat.com>
  1836. PR binutils/13897
  1837. * elf64-ppc.c (opd_entry_value): When dealing with sections
  1838. without relocs, keep the last section loaded in order to avoid
  1839. unnecessary reloads.
  1840. 2012-04-09 Roland McGrath <mcgrathr@google.com>
  1841. * elf.c (_bfd_elf_map_sections_to_segments): Set INFO->user_phdrs.
  1842. * elf-nacl.c (nacl_modify_segment_map): Do nothing if INFO->user_phdrs.
  1843. (nacl_modify_program_headers): Likewise.
  1844. 2012-04-03 Roland McGrath <mcgrathr@google.com>
  1845. * elf-nacl.c: New file.
  1846. * elf-nacl.h: New file.
  1847. * elf32-i386.c (elf_backend_modify_segment_map): Define for
  1848. bfd_elf32_i386_nacl_vec.
  1849. (elf_backend_modify_program_headers): Likewise.
  1850. * elf64-x86-64.c (elf_backend_modify_segment_map): Define for
  1851. bfd_elf64_x86_64_nacl_vec and bfd_elf32_x86_64_nacl_vec.
  1852. (elf_backend_modify_program_headers): Likewise.
  1853. * Makefile.am (BFD32_BACKENDS, BFD64_BACKENDS): Add elf-nacl.lo here.
  1854. (BFD32_BACKENDS_CFILES, BFD64_BACKENDS_CFILES): Add elf-nacl.c here.
  1855. * Makefile.in: Regenerated.
  1856. * configure.in (bfd_elf64_x86_64_nacl_vec): Add elf-nacl.o to tb here.
  1857. (bfd_elf32_x86_64_nacl_vec): Likewise.
  1858. (bfd_elf64_x86_64_vec, bfd_elf32_x86_64_vec): Likewise.
  1859. (bfd_elf64_x86_64_freebsd_vec, bfd_elf64_x86_64_sol2_vec): Likewise.
  1860. (bfd_elf64_l1om_vec, bfd_elf64_l1om_freebsd_vec): Likewise.
  1861. (bfd_elf64_k1om_vec, bfd_elf64_k1om_freebsd_vec): Likewise.
  1862. (bfd_elf32_i386_nacl_vec): Likewise.
  1863. (bfd_elf32_i386_sol2_vec, bfd_elf32_i386_freebsd_vec): Likewise.
  1864. (bfd_elf32_i386_vxworks_vec, bfd_elf32_i386_vec): Likewise.
  1865. * configure: Regenerated.
  1866. 2012-03-31 Andreas Schwab <schwab@linux-m68k.org>
  1867. * elf32-m68k.c (elf_m68k_relocate_section): Allow
  1868. R_68K_TLS_LE{8,16,32} for PIE.
  1869. 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  1870. * elf64-s390.c: Fix several comments regarding PLT entry
  1871. description.
  1872. * elf32-s390.c: Likewise.
  1873. 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  1874. * elf64-s390.c: Use the section pointer shortcuts in
  1875. elf_link_hash_table and remove them from the target specific
  1876. variant.
  1877. * elf32-s390.c: Likewise.
  1878. 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  1879. * elf64-s390.c (elf_s390x_plt_entry, elf_s390x_first_plt_entry):
  1880. New definitions.
  1881. (PLT_PIC_ENTRY_WORD*, PLT_PIC12_ENTRY_WORD*): Remove.
  1882. (elf_s390_finish_dynamic_symbol): Use memcpy instead of bfd_put_32.
  1883. (elf_s390_finish_dynamic_sections): Likewise.
  1884. * elf32-s390.c (elf_s390_plt_entry, elf_s390_plt_pic_entry)
  1885. (elf_s390_plt_pic12_entry, elf_s390_plt_pic16_entry)
  1886. (elf_s390_plt_first_entry, elf_s390_plt_pic_first_entry): New definitions.
  1887. (PLT_PIC16_ENTRY_WORD*, PLT_ENTRY_WORD*)
  1888. (PLT_PIC_FIRST_ENTRY_WORD*, PLT_FIRST_ENTRY_WORD*): Remove.
  1889. 2012-03-30 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  1890. * elf32-s390.c (struct elf_s390_dyn_relocs): Remove.
  1891. Rename all occurrences in the file to elf_dyn_relocs.
  1892. * elf64-s390.c: Likewise.
  1893. 2012-03-30 Alan Modra <amodra@gmail.com>
  1894. * elflink.c (_bfd_elf_gc_mark_reloc): Don't delve into dynamic
  1895. libraries.
  1896. 2012-03-29 Alan Modra <amodra@gmail.com>
  1897. * bfd-in.h (bfd_get_arch_size, bfd_get_sign_extend_vma): Delete.
  1898. * bfd-in2.h: Regenerate.
  1899. 2012-03-23 Alan Modra <amodra@gmail.com>
  1900. * elf.c (assign_file_positions_for_non_load_sections): Don't warn
  1901. on empty alloc sections.
  1902. 2012-03-23 Alan Modra <amodra@gmail.com>
  1903. * linker.c (_bfd_nearby_section): New function, split out from..
  1904. (fix_syms): ..here.
  1905. * bfd-in.h (_bfd_nearby_section): Declare.
  1906. * bfd-in2.h: Regenerate.
  1907. * elflink.c (elf_link_input_bfd): Don't use text_index_section or
  1908. data_index_section with ld -q or ld -r output relocs against
  1909. stripped output sections. Instead use _bfd_nearby_section.
  1910. 2012-03-23 Alan Modra <amodra@gmail.com>
  1911. PR binutils/13894
  1912. * elf64-ppc.c (opd_entry_value): Read full symbol table when
  1913. sym hashes unavailable.
  1914. 2012-03-21 Eliot Dresselhaus <eliot@sonic.net>
  1915. * elf32-tic6x.c (elf32_tic6x_merge_private_bfd_data): Return TRUE
  1916. for non-C6X objects.
  1917. 2012-03-20 Kai Tietz <ktietz@redhat.com>
  1918. PR ld/12742
  1919. * configure.in (AC_CHECK_HEADERS): Test for windows.h and dlfcn.h.
  1920. * plugin.c: Guard include of dlfcn.h if HAVE_DLFCN_H is defined.
  1921. Add windows.h header include if HAVE_WINDOWS_H is defined.
  1922. (dlerror): New static function if windows variant is used instead
  1923. of dlfcn.h.
  1924. (dlclose): Likewise.
  1925. (dlopen): Likewise.
  1926. (dlsym): Likewise.
  1927. * configure: Regenerated.
  1928. * config.in: Regenerated.
  1929. 2012-03-20 H.J. Lu <hongjiu.lu@intel.com>
  1930. PR ld/13880
  1931. * elf32-i386.c (elf_i386_relocate_section): Don't issue an error
  1932. for R_386_GOTOFF relocation against protected function if
  1933. SYMBOLIC_BIND is true.
  1934. * elf64-x86-64.c (elf_x86_64_relocate_section): Don't issue an
  1935. error for R_X86_64_GOTOFF64 relocation against protected function
  1936. when building executable or SYMBOLIC_BIND is true.
  1937. 2012-03-16 Roland McGrath <mcgrathr@google.com>
  1938. * config.bfd: Handle x86_64-*-nacl*.
  1939. * elf64-x86-64.c (bfd_elf64_x86_64_nacl_vec): New backend vector stanza.
  1940. (bfd_elf32_x86_64_nacl_vec): Likewise.
  1941. * targets.c: Support them.
  1942. * configure.in: Likewise.
  1943. * configure: Regenerated.
  1944. 2012-03-16 Matthew Gretton-Dann <matthew.gretton-dann@arm.com>
  1945. * elf32-arm.c (elf32_arm_attributes_accept_div): New function.
  1946. (elf32_arm_attributes_forbid_div): Likewise.
  1947. (elf32_arm_merge_eabi_attributes): Correct handling of
  1948. Tag_DIV_use.
  1949. 2012-03-15 Roland McGrath <mcgrathr@google.com>
  1950. * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Use
  1951. elf_x86_64_backend_data parameters for plt_eh_frame.
  1952. * elf64-x86-64.c (struct elf_x86_64_backend_data): New type.
  1953. (get_elf_x86_64_backend_data, GET_PLT_ENTRY_SIZE): New macros.
  1954. (elf_x86_64_arch_bed): New variable.
  1955. (elf_backend_arch_data): New macro.
  1956. (elf_x86_64_adjust_dynamic_symbol): Use GET_PLT_ENTRY_SIZE.
  1957. (elf_x86_64_allocate_dynrelocs): Likewise.
  1958. (elf_x86_64_relocate_section): Likewise.
  1959. (elf_x86_64_plt_sym_val): Likewise.
  1960. (elf_x86_64_finish_dynamic_symbol): Use elf_x86_64_backend_data
  1961. parameters for PLT details.
  1962. (elf_x86_64_finish_dynamic_sections): Likewise.
  1963. 2012-03-14 Roland McGrath <mcgrathr@google.com>
  1964. * elf32-i386.c (elf_i386_nacl_pic_plt0_entry): Initialize up
  1965. to the full size, padding out with nop instructions.
  1966. 2012-03-12 Alan Modra <amodra@gmail.com>
  1967. * elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Don't warn
  1968. on zero size dynbss symbol.
  1969. * elf32-arm.c (elf32_arm_adjust_dynamic_symbol): Likewise.
  1970. * elf32-cr16.c (_bfd_cr16_elf_adjust_dynamic_symbol): Likewise.
  1971. * elf32-cris.c (elf_cris_adjust_dynamic_symbol): Likewise.
  1972. * elf32-hppa.c (elf32_hppa_adjust_dynamic_symbol): Likewise.
  1973. * elf32-i370.c (i370_elf_adjust_dynamic_symbol): Likewise.
  1974. * elf32-i386.c (elf_i386_adjust_dynamic_symbol): Likewise.
  1975. * elf32-lm32.c (lm32_elf_adjust_dynamic_symbol): Likewise.
  1976. * elf32-m32r.c (m32r_elf_adjust_dynamic_symbol): Likewise.
  1977. * elf32-m68k.c (elf_m68k_adjust_dynamic_symbol): Likewise.
  1978. * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Likewise.
  1979. * elf32-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
  1980. * elf32-sh.c (sh_elf_adjust_dynamic_symbol): Likewise.
  1981. * elf32-tic6x.c (elf32_tic6x_adjust_dynamic_symbol): Likewise.
  1982. * elf32-tilepro.c (tilepro_elf_adjust_dynamic_symbol): Likewise.
  1983. * elf32-vax.c (elf_vax_adjust_dynamic_symbol): Likewise.
  1984. * elf64-ppc.c (ppc64_elf_adjust_dynamic_symbol): Likewise.
  1985. * elf64-s390.c (elf_s390_adjust_dynamic_symbol): Likewise.
  1986. * elf64-sh64.c (sh64_elf64_adjust_dynamic_symbol): Likewise.
  1987. * elf64-x86-64.c (elf_x86_64_adjust_dynamic_symbol): Likewise.
  1988. * elfxx-sparc.c (_bfd_sparc_elf_adjust_dynamic_symbol): Likewise.
  1989. * elfxx-tilegx.c (tilegx_elf_adjust_dynamic_symbol): Likewise.
  1990. 2012-03-10 Edmar Wienskoski <edmar@freescale.com>
  1991. * archures.c: Add bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
  1992. * bfd-in2.h: Regenerate.
  1993. * cpu-powerpc.c (bfd_powerpc_archs): Add entries for
  1994. bfd_mach_ppc_e5500 and bfd_mach_ppc_e6500.
  1995. 2012-03-09 H.J. Lu <hongjiu.lu@intel.com>
  1996. PR ld/13817
  1997. * elf32-i386.c (elf_i386_relocate_section): Restore
  1998. R_386_IRELATIVE.
  1999. * elf64-x86-64.c (elf_x86_64_relocate_section): Restore
  2000. R_X86_64_IRELATIVE.
  2001. 2012-03-08 Tristan Gingold <gingold@adacore.com>
  2002. * vms-lib.c (_bfd_vms_lib_write_archive_contents): Set maximum
  2003. keylen according to archive kind. Set nextvbn and nextrfa lhd
  2004. fields. Add comments.
  2005. 2012-03-07 Nick Clifton <nickc@redhat.com>
  2006. * elf-m10300.c (elf32_mn10300_link_hash_entry): Add tls_type
  2007. field.
  2008. (elf32_mn10300_link_hash_table): Add tls_ldm_got entry;
  2009. (elf_mn10300_tdata): Define.
  2010. (elf_mn10300_local_got_tls_type): Define.
  2011. (elf_mn10300_howto_table): Add entries for R_MN10300_TLS_GD,
  2012. R_MN10300_TLS_LD, R_MN10300_TLS_LDO, R_MN10300_TLS_GOTIE,
  2013. R_MN10300_TLS_IE, R_MN10300_TLS_LE, R_MN10300_TLS_DPTMOD,
  2014. R_MN10300_TLS_DTPOFF, R_MN10300_TLS_TPOFF relocs.
  2015. (mn10300_reloc_map): Likewise.
  2016. (elf_mn10300_tls_transition): New function.
  2017. (dtpoff, tpoff, mn10300_do_tls_transition): New functions.
  2018. (mn10300_elf_check_relocs): Add TLS support.
  2019. (mn10300_elf_final_link_relocate): Likewise.
  2020. (mn10300_elf_relocate_section): Likewise.
  2021. (mn10300_elf_relax_section): Likewise.
  2022. (elf32_mn10300_link_hash_newfunc): Initialise new field.
  2023. (_bfd_mn10300_copy_indirect_symbol): New function.
  2024. (elf32_mn10300_link_hash_table_create): Initialise new fields.
  2025. (_bfd_mn10300_elf_size_dynamic_sections): Add TLS support.
  2026. (_bfd_mn10300_elf_finish_dynamic_symbol): Likewise.
  2027. (_bfd_mn10300_elf_reloc_type_class): Allocate an
  2028. elf_mn10300_obj_tdata structure.
  2029. (elf_backend_copy_indirect_symbol): Define.
  2030. * reloc.c (BFD_MN10300_TLS_GD, BFD_MN10300_TLS_LD,
  2031. BFD_MN10300_TLS_LDO, BFD_MN10300_TLS_GOTIE, BFD_MN10300_TLS_IE,
  2032. BFD_MN10300_TLS_LE, BFD_MN10300_TLS_DPTMOD,
  2033. BFD_MN10300_TLS_DTPOFF, BFD_MN10300_TLS_TPOFF): New relocations.
  2034. (BFD_RELOC_MN10300_32_PCREL, BFD_RELOC_MN10300_16_PCREL): Move to
  2035. alongside other MN10300 relocations.
  2036. * bfd-in2.h: Regenerate.
  2037. * libbfd.h: Regenerate.
  2038. 2012-03-06 Jakub Jelinek <jakub@redhat.com>
  2039. * elf64-x86-64.c (elf_x86_64_relocate_section): For R_X86_64_RELATIVE
  2040. set relocate to TRUE.
  2041. 2012-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  2042. PR ld/12152
  2043. * elfxx-sparc.c (_bfd_sparc_elf_relocate_section): Also ignore
  2044. overflows for R_SPARC_UA32 in .stab sections.
  2045. 2012-03-01 Alan Modra <amodra@gmail.com>
  2046. * elfxx-tilegx.c (tilegx_elf_relocate_section): Silence bogus warning.
  2047. 2012-02-27 Alan Modra <amodra@gmail.com>
  2048. * elf32-sh.c (sh_elf_osec_to_segment): Check for elf flavour bfd
  2049. before calling elf specific function.
  2050. (sh_elf_osec_readonly_p): Test for error return from above.
  2051. 2012-02-27 Alan Modra <amodra@gmail.com>
  2052. * elf32-spu.c (build_stub): Fix malloc under-allocation.
  2053. 2012-02-25 Walter Lee <walt@tilera.com>
  2054. * reloc.c: Add BFD_RELOC_TILEPRO_TLS_GD_CALL,
  2055. BFD_RELOC_TILEPRO_IMM8_X0_TLS_GD_ADD,
  2056. BFD_RELOC_TILEPRO_IMM8_X1_TLS_GD_ADD,
  2057. BFD_RELOC_TILEPRO_IMM8_Y0_TLS_GD_ADD,
  2058. BFD_RELOC_TILEPRO_IMM8_Y1_TLS_GD_ADD,
  2059. BFD_RELOC_TILEPRO_TLS_IE_LOAD, BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE,
  2060. BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE,
  2061. BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_LO,
  2062. BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_LO,
  2063. BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HI,
  2064. BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HI,
  2065. BFD_RELOC_TILEPRO_IMM16_X0_TLS_LE_HA,
  2066. BFD_RELOC_TILEPRO_IMM16_X1_TLS_LE_HA,
  2067. BFD_RELOC_TILEGX_IMM16_X0_HW0_TLS_LE,
  2068. BFD_RELOC_TILEGX_IMM16_X1_HW0_TLS_LE,
  2069. BFD_RELOC_TILEGX_IMM16_X0_HW0_LAST_TLS_LE,
  2070. BFD_RELOC_TILEGX_IMM16_X1_HW0_LAST_TLS_LE,
  2071. BFD_RELOC_TILEGX_IMM16_X0_HW1_LAST_TLS_LE,
  2072. BFD_RELOC_TILEGX_IMM16_X1_HW1_LAST_TLS_LE,
  2073. BFD_RELOC_TILEGX_TLS_GD_CALL, BFD_RELOC_TILEGX_IMM8_X0_TLS_GD_ADD,
  2074. BFD_RELOC_TILEGX_IMM8_X1_TLS_GD_ADD,
  2075. BFD_RELOC_TILEGX_IMM8_Y0_TLS_GD_ADD,
  2076. BFD_RELOC_TILEGX_IMM8_Y1_TLS_GD_ADD, BFD_RELOC_TILEGX_TLS_IE_LOAD,
  2077. BFD_RELOC_TILEGX_IMM8_X0_TLS_ADD,
  2078. BFD_RELOC_TILEGX_IMM8_X1_TLS_ADD,
  2079. BFD_RELOC_TILEGX_IMM8_Y0_TLS_ADD, BFD_RELOC_TILEGX_IMM8_Y1_TLS_ADD.
  2080. Delete BFD_RELOC_TILEGX_IMM16_X0_HW1_GOT,
  2081. BFD_RELOC_TILEGX_IMM16_X1_HW1_GOT,
  2082. BFD_RELOC_TILEGX_IMM16_X0_HW2_GOT,
  2083. BFD_RELOC_TILEGX_IMM16_X1_HW2_GOT,
  2084. BFD_RELOC_TILEGX_IMM16_X0_HW3_GOT,
  2085. BFD_RELOC_TILEGX_IMM16_X1_HW3_GOT,
  2086. BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_GOT,
  2087. BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_GOT,
  2088. BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_GD,
  2089. BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_GD,
  2090. BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_GD,
  2091. BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_GD,
  2092. BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_GD,
  2093. BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_GD,
  2094. BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_GD,
  2095. BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_GD,
  2096. BFD_RELOC_TILEGX_IMM16_X0_HW1_TLS_IE,
  2097. BFD_RELOC_TILEGX_IMM16_X1_HW1_TLS_IE,
  2098. BFD_RELOC_TILEGX_IMM16_X0_HW2_TLS_IE,
  2099. BFD_RELOC_TILEGX_IMM16_X1_HW2_TLS_IE,
  2100. BFD_RELOC_TILEGX_IMM16_X0_HW3_TLS_IE,
  2101. BFD_RELOC_TILEGX_IMM16_X1_HW3_TLS_IE,
  2102. BFD_RELOC_TILEGX_IMM16_X0_HW2_LAST_TLS_IE,
  2103. BFD_RELOC_TILEGX_IMM16_X1_HW2_LAST_TLS_IE.
  2104. * elf32-tilepro.c (tilepro_elf_howto_table): Update tilepro
  2105. relocations.
  2106. (tilepro_reloc_map): Ditto.
  2107. (tilepro_info_to_howto_rela): Ditto.
  2108. (reloc_to_create_func): Ditto.
  2109. (tilepro_tls_translate_to_le): New.
  2110. (tilepro_tls_translate_to_ie): New.
  2111. (tilepro_elf_tls_transition): New.
  2112. (tilepro_elf_check_relocs): Handle new tls relocations.
  2113. (tilepro_elf_gc_sweep_hook): Ditto.
  2114. (allocate_dynrelocs): Ditto.
  2115. (tilepro_elf_relocate_section): Ditto.
  2116. (tilepro_replace_insn): New.
  2117. (insn_mask_X1): New.
  2118. (insn_mask_X0_no_dest_no_srca): New
  2119. (insn_mask_X1_no_dest_no_srca): New
  2120. (insn_mask_Y0_no_dest_no_srca): New
  2121. (insn_mask_Y1_no_dest_no_srca): New
  2122. (srca_mask_X0): New
  2123. (srca_mask_X1): New
  2124. (insn_tls_le_move_X1): New
  2125. (insn_tls_le_move_zero_X0X1): New
  2126. (insn_tls_ie_lw_X1): New
  2127. (insn_tls_ie_add_X0X1): New
  2128. (insn_tls_ie_add_Y0Y1): New
  2129. (insn_tls_gd_add_X0X1): New
  2130. (insn_tls_gd_add_Y0Y1): New
  2131. * elfxx-tilegx.c (tilegx_elf_howto_table): Update tilegx
  2132. relocations.
  2133. (tilegx_reloc_map): Ditto.
  2134. (tilegx_info_to_howto_rela): Ditto.
  2135. (reloc_to_create_func): Ditto.
  2136. (tilegx_elf_link_hash_table): New field disable_le_transition.
  2137. (tilegx_tls_translate_to_le): New.
  2138. (tilegx_tls_translate_to_ie): New.
  2139. (tilegx_elf_tls_transition): New.
  2140. (tilegx_elf_check_relocs): Handle new tls relocations.
  2141. (tilegx_elf_gc_sweep_hook): Ditto.
  2142. (allocate_dynrelocs): Ditto.
  2143. (tilegx_elf_relocate_section): Ditto.
  2144. (tilegx_copy_bits): New.
  2145. (tilegx_replace_insn): New.
  2146. (insn_mask_X1): New.
  2147. (insn_mask_X0_no_dest_no_srca): New.
  2148. (insn_mask_X1_no_dest_no_srca): New.
  2149. (insn_mask_Y0_no_dest_no_srca): New.
  2150. (insn_mask_Y1_no_dest_no_srca): New.
  2151. (insn_mask_X0_no_operand): New.
  2152. (insn_mask_X1_no_operand): New.
  2153. (insn_mask_Y0_no_operand): New.
  2154. (insn_mask_Y1_no_operand): New.
  2155. (insn_tls_ie_ld_X1): New.
  2156. (insn_tls_ie_ld4s_X1): New.
  2157. (insn_tls_ie_add_X0X1): New.
  2158. (insn_tls_ie_add_Y0Y1): New.
  2159. (insn_tls_ie_addx_X0X1): New.
  2160. (insn_tls_ie_addx_Y0Y1): New.
  2161. (insn_tls_gd_add_X0X1): New.
  2162. (insn_tls_gd_add_Y0Y1): New.
  2163. (insn_move_X0X1): New.
  2164. (insn_move_Y0Y1): New.
  2165. (insn_add_X0X1): New.
  2166. (insn_add_Y0Y1): New.
  2167. (insn_addx_X0X1): New.
  2168. (insn_addx_Y0Y1): New.
  2169. * libbfd.h: Regenerate.
  2170. * bfd-in2.h: Regenerate.
  2171. 2012-02-25 Walter Lee <walt@tilera.com>
  2172. * config.bfd (tilegx-*-*): rename little endian vector; add big
  2173. endian vector.
  2174. (tilegxbe-*-*): New case.
  2175. * configure.in (bfd_elf32_tilegx_vec): Rename...
  2176. (bfd_elf32_tilegx_le_vec): ... to this.
  2177. (bfd_elf32_tilegx_be_vec): New vector.
  2178. (bfd_elf64_tilegx_vec): Rename...
  2179. (bfd_elf64_tilegx_le_vec): ... to this.
  2180. (bfd_elf64_tilegx_be_vec): New vector.
  2181. * configure: Regenerate.
  2182. * elf32-tilegx.c (TARGET_LITTLE_SYM): Rename.
  2183. (TARGET_LITTLE_NAME): Ditto.
  2184. (TARGET_BIG_SYM): Define.
  2185. (TARGET_BIG_NAME): Define.
  2186. * elf64-tilegx.c (TARGET_LITTLE_SYM): Rename.
  2187. (TARGET_LITTLE_NAME): Ditto.
  2188. (TARGET_BIG_SYM): Define.
  2189. (TARGET_BIG_NAME): Define.
  2190. * targets.c (bfd_elf32_tilegx_vec): Rename...
  2191. (bfd_elf32_tilegx_le_vec): ... to this.
  2192. (bfd_elf32_tilegx_be_vec): Declare.
  2193. (bfd_elf64_tilegx_vec): Rename...
  2194. (bfd_elf64_tilegx_le_vec): ... to this.
  2195. (bfd_elf64_tilegx_be_vec): Declare.
  2196. (_bfd_target_vector): Add / rename above vectors.
  2197. * arctures.c (bfd_architecture): Define bfd_mach_tilegx32.
  2198. * bfd-in2.h: Regenerate.
  2199. * cpu-tilegx.c (bfd_tilegx32_arch): define.
  2200. (bfd_tilegx_arch): link to bfd_tilegx32_arch.
  2201. 2012-02-24 Nick Clifton <nickc@redhat.com>
  2202. PR ld/13730
  2203. * reloc.c (bfd_generic_get_relocated_section_contents): Issue an
  2204. error message instead of aborting, when an outofrange reloc is
  2205. encountered.
  2206. 2012-02-23 Iain Sandoe <idsandoe@googlemail.com>
  2207. * mach-o.c (bfd_mach_o_swap_in_non_scattered_reloc): New.
  2208. (bfd_mach_o_canonicalize_one_reloc): Swap non-scattered reloc
  2209. bit-fields when target and host differ in endian-ness. When
  2210. PAIRs are non-scattered find the 'symbol' from the preceding
  2211. reloc. Add FIXME re. reloc symbols on section boundaries.
  2212. (bfd_mach_o_swap_out_non_scattered_reloc): New.
  2213. (bfd_mach_o_write_relocs): Use bfd_mach_o_encode_non_scattered_reloc.
  2214. 2012-02-17 Iain Sandoe <idsandoe@googlemail.com>
  2215. * mach-o-i386.c (i386_howto_table): Add support for 16 bit
  2216. sect-diffs.
  2217. (bfd_mach_o_i386_swap_reloc_in): Handle 16bit sect-diffs.
  2218. (bfd_mach_o_i386_swap_reloc_out): Likewise.
  2219. 2012-02-17 Tristan Gingold <gingold@adacore.com>
  2220. * reloc.c (BFD_RELOC_MACH_O_LOCAL_SECTDIFF):
  2221. * libbfd.h: Regenerated.
  2222. * bfd-in2.h: Likewise.
  2223. * mach-o-i386.c (i386_howto_table): Include local sectdiff.
  2224. (bfd_mach_o_i386_swap_reloc_in): Update for local sectdiff.
  2225. (bfd_mach_o_i386_swap_reloc_out): Likewise.
  2226. 2012-02-17 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
  2227. * elf32-s390.c (elf_s390_relocate_section): Support basr in the
  2228. GD->LE and LD->LE optimizations.
  2229. 2012-02-16 Alan Modra <amodra@gmail.com>
  2230. PR binutils/13355
  2231. * elf32-rx.c (elf32_rx_relax_section): Correct width check.
  2232. 2012-02-13 Richard Henderson <rth@redhat.com>
  2233. PR ld/13621
  2234. * linker.c (fix_syms): Force symbols outside any section into
  2235. bfd_abs_section_ptr.
  2236. 2012-02-13 Alan Modra <amodra@gmail.com>
  2237. * elf32-m68hc1x.c (elf32_m68hc11_merge_symbol_attribute): New function.
  2238. * elf32-m68hc1x.h (elf32_m68hc11_merge_symbol_attribute): Declare.
  2239. * elf32-m68hc11.c (elf_backend_merge_symbol_attribute): Define.
  2240. * elf32-m68hc12.c (elf_backend_merge_symbol_attribute): Define.
  2241. 2012-02-11 Jan Kratochvil <jan.kratochvil@redhat.com>
  2242. Nick Clifton <nickc@redhat.com>
  2243. * oasys.c (oasys_write_header): Fix compilation warning on zero-sized
  2244. memset.
  2245. 2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
  2246. * mach-o.c (bfd_mach_o_build_seg_command): Count zerofill section
  2247. vma additions in their logical, rather than physical order.
  2248. 2012-02-10 Iain Sandoe <idsandoe@googlemail.com>
  2249. * mach-o.c (mach_o_section_name_xlat): Correct eh-frame section
  2250. parameters.
  2251. * mach-o-x86-64.c (text_section_names_xlat): New.
  2252. (mach_o_x86_64_segsec_names_xlat): New.
  2253. (bfd_mach_o_tgt_seg_table): Define to mach_o_x86_64_segsec_names_xlat.
  2254. * mach-o-i386.c (text_section_names_xlat): Correct section parameters.
  2255. 2012-02-10 Tristan Gingold <gingold@adacore.com>
  2256. * elfnn-ia64.c (elfNN_vms_object_p): Change comparison operator
  2257. to avoid infinite loop. Add comments.
  2258. 2012-02-09 H.J. Lu <hongjiu.lu@intel.com>
  2259. PR ld/13675
  2260. * cpu-i386.c (bfd_arch_i386_fill): Updated to support multi byte
  2261. nop instructions.
  2262. (bfd_arch_i386_short_nop_fill): New.
  2263. (bfd_arch_i386_long_nop_fill): Likewise.
  2264. Use bfd_arch_i386_short_nop_fill in 32bit bfd_arch_info
  2265. initializers. Use bfd_arch_i386_long_nop_fill on 64bit
  2266. bfd_arch_info initializers.
  2267. * cpu-k1om.c (bfd_arch_i386_fill): Renamed to ...
  2268. (bfd_arch_i386_short_nop_fill): This.
  2269. Update bfd_arch_info initializers.
  2270. * cpu-l1om.c: Likewise.
  2271. 2012-02-08 Alan Modra <amodra@gmail.com>
  2272. * elflink.c (_bfd_elf_gc_mark_rsec): Mark weakdef syms too.
  2273. (_bfd_elf_fix_symbol_flags): When a weakdef is def_regular, clear
  2274. the correct h->u.weakdef.
  2275. 2012-02-07 Alan Modra <amodra@gmail.com>
  2276. * elf.c (elf_find_function): Don't use internal_elf_sym.
  2277. (_bfd_elf_maybe_function_sym): Likewise. Replace elf_symbol_type
  2278. parameter with asymbol.
  2279. * elf64-ppc.c (ppc64_elf_maybe_function_sym): Likewise.
  2280. * elf-bfd.h (_bfd_elf_maybe_function_sym): Update prototype.
  2281. (struct elf_backend_data <maybe_function_sym>): Likewise.
  2282. 2012-02-02 Vidya Praveen (vidya.praveen@atmel.com)
  2283. PR bfd/13410
  2284. * elf32-avr.c (elf32_avr_relax_section): Correct the
  2285. condition that qualifies the candidates for relaxation.
  2286. 2012-02-02 Tristan Gingold <gingold@adacore.com>
  2287. * bfdio.c (real_fopen): Remove unused vms_modes variable.
  2288. 2012-02-02 Tristan Gingold <gingold@adacore.com>
  2289. * mach-o.c (bfd_mach_o_read_header): Silent uninitialized
  2290. variable warning.
  2291. 2012-02-02 Tristan Gingold <gingold@adacore.com>
  2292. * archive.c (bfd_slurp_armap): Fix thinko in cast.
  2293. 2012-01-31 H.J. Lu <hongjiu.lu@intel.com>
  2294. PR ld/13616
  2295. * archures.c (bfd_arch_info): Add fill.
  2296. (bfd_default_arch_struct): Add bfd_arch_default_fill.
  2297. (bfd_arch_default_fill): New.
  2298. * configure.in: Set bfd version to 2.22.52.
  2299. * configure: Regenerated.
  2300. * cpu-alpha.c: Add bfd_arch_default_fill to bfd_arch_info
  2301. initializer.
  2302. * cpu-arc.c: Likewise.
  2303. * cpu-arm.c: Likewise.
  2304. * cpu-avr.c: Likewise.
  2305. * cpu-bfin.c: Likewise.
  2306. * cpu-cr16.c: Likewise.
  2307. * cpu-cr16c.c: Likewise.
  2308. * cpu-cris.c: Likewise.
  2309. * cpu-crx.c: Likewise.
  2310. * cpu-d10v.c: Likewise.
  2311. * cpu-d30v.c: Likewise.
  2312. * cpu-dlx.c: Likewise.
  2313. * cpu-epiphany.c: Likewise.
  2314. * cpu-fr30.c: Likewise.
  2315. * cpu-frv.c: Likewise.
  2316. * cpu-h8300.c: Likewise.
  2317. * cpu-h8500.c: Likewise.
  2318. * cpu-hppa.c: Likewise.
  2319. * cpu-i370.c: Likewise.
  2320. * cpu-i860.c: Likewise.
  2321. * cpu-i960.c: Likewise.
  2322. * cpu-ia64.c: Likewise.
  2323. * cpu-ip2k.c: Likewise.
  2324. * cpu-iq2000.c: Likewise.
  2325. * cpu-lm32.c: Likewise.
  2326. * cpu-m10200.c: Likewise.
  2327. * cpu-m10300.c: Likewise.
  2328. * cpu-m32c.c: Likewise.
  2329. * cpu-m32r.c: Likewise.
  2330. * cpu-m68hc11.c: Likewise.
  2331. * cpu-m68hc12.c: Likewise.
  2332. * cpu-m68k.c: Likewise.
  2333. * cpu-m88k.c: Likewise.
  2334. * cpu-mcore.c: Likewise.
  2335. * cpu-mep.c: Likewise.
  2336. * cpu-microblaze.c: Likewise.
  2337. * cpu-mips.c: Likewise.
  2338. * cpu-mmix.c: Likewise.
  2339. * cpu-moxie.c: Likewise.
  2340. * cpu-msp430.c: Likewise.
  2341. * cpu-mt.c: Likewise.
  2342. * cpu-ns32k.c: Likewise.
  2343. * cpu-openrisc.c: Likewise.
  2344. * cpu-or32.c: Likewise.
  2345. * cpu-pdp11.c: Likewise.
  2346. * cpu-pj.c: Likewise.
  2347. * cpu-plugin.c: Likewise.
  2348. * cpu-powerpc.c: Likewise.
  2349. * cpu-rl78.c: Likewise.
  2350. * cpu-rs6000.c: Likewise.
  2351. * cpu-rx.c: Likewise.
  2352. * cpu-s390.c: Likewise.
  2353. * cpu-score.c: Likewise.
  2354. * cpu-sh.c: Likewise.
  2355. * cpu-sparc.c: Likewise.
  2356. * cpu-spu.c: Likewise.
  2357. * cpu-tic30.c: Likewise.
  2358. * cpu-tic4x.c: Likewise.
  2359. * cpu-tic54x.c: Likewise.
  2360. * cpu-tic6x.c: Likewise.
  2361. * cpu-tic80.c: Likewise.
  2362. * cpu-tilegx.c: Likewise.
  2363. * cpu-tilepro.c: Likewise.
  2364. * cpu-v850.c: Likewise.
  2365. * cpu-vax.c: Likewise.
  2366. * cpu-w65.c: Likewise.
  2367. * cpu-we32k.c: Likewise.
  2368. * cpu-xc16x.c: Likewise.
  2369. * cpu-xstormy16.c: Likewise.
  2370. * cpu-xtensa.c: Likewise.
  2371. * cpu-z80.c: Likewise.
  2372. * cpu-z8k.c: Likewise.
  2373. * cpu-i386.c: Include "libiberty.h".
  2374. (bfd_arch_i386_fill): New.
  2375. Add bfd_arch_i386_fill to bfd_arch_info initializer.
  2376. * cpu-k1om.c: Add bfd_arch_i386_fill to bfd_arch_info initializer.
  2377. * cpu-l1om.c: Likewise.
  2378. * linker.c (default_data_link_order): Call abfd->arch_info->fill
  2379. if fill size is 0.
  2380. * bfd-in2.h: Regenerated.
  2381. 2012-01-27 Michael Eager <eager@eagercon.com>
  2382. * elf32-microblaze.c (create_got_section):
  2383. Reuse existing .rela.got section.
  2384. 2012-01-23 Alan Modra <amodra@gmail.com>
  2385. * elf-bfd.h: Formatting.
  2386. (struct elf_backend_data): Add "maybe_function_sym".
  2387. (_bfd_elf_maybe_function_sym): Declare.
  2388. * elfxx-target.h (elf_backend_maybe_function_sym): Define.
  2389. (elfNN_bed): Init new field.
  2390. * elf.c (elf_find_function): Use maybe_function_sym.
  2391. (_bfd_elf_maybe_function_sym): New function.
  2392. * elf64-ppc.c (elf_backend_maybe_function_sym): Define.
  2393. (ppc64_elf_maybe_function_sym): New function.
  2394. 2012-01-20 Francois Gouget <fgouget@codeweavers.com>
  2395. PR binutils/13534
  2396. * archive.c (_bfd_ar_sizepad): New function. Correctly install and
  2397. pad the size field in an archive header.
  2398. (_bfd_generic_read_ar_hdr_mag): Use the correct type and scan
  2399. function for the archive size field.
  2400. (bfd_generic_openr_next_archived_file): Likewise.
  2401. (do_slurp_coff_armap): Likewise.
  2402. (_bfd_write_archive_contents): Likewise.
  2403. (_bfd_bsd44_write_ar_hdr): Use the new function.
  2404. (bfd_ar_hdr_from_filesystem): Likewise.
  2405. (_bfd_write_archive_contents): Likewise.
  2406. (bsd_write_armap): Likewise.
  2407. (coff_write_armap): Likewise.
  2408. * archive64.c (bfd_elf64_archive_write_armap): Likewise.
  2409. * bfdio.c (bfd_bread): Use correct type for archive element
  2410. sizes.
  2411. * ar.c (open_inarch): Likewise.
  2412. (extract_file): Likewise.
  2413. * libbfd-in.h (struct areltdata): Use correct types for
  2414. parsed_size and extra_size fields.
  2415. Prototype _bfd_ar_sizepad function.
  2416. * libbfd.h: Regenerate.
  2417. 2012-01-20 Ulrich Weigand <ulrich.weigand@linaro.org>
  2418. * elf.c (elfcore_write_prpsinfo): Provide unconditionally.
  2419. Return NULL if core file generation is unsupported.
  2420. (elfcore_write_prstatus): Likewise.
  2421. * elf32-arm.c (elf32_arm_nabi_write_core_note): New function.
  2422. (elf_backend_write_core_note): Define.
  2423. 2012-01-19 Tristan Gingold <gingold@adacore.com>
  2424. * pef.c: Add a comment.
  2425. * xsym.c: Likewise.
  2426. 2012-01-17 Alan Modra <amodra@gmail.com>
  2427. * elf32-ppc.c (ppc_elf_write_core_note <NT_PRPSINFO>): Don't leave
  2428. trailing garbage in the note.
  2429. * elf64-ppc.c (ppc64_elf_write_core_note <NT_PRPSINFO>): Likewise.
  2430. 2012-01-16 Daniel Green <venix1@gmail.com>
  2431. PR ld/13491
  2432. * coff-i386.c (coff_i386_rtype_to_howto <R_SECREL32>): Test
  2433. h->root.type not h->type.
  2434. * coff-x86_64.c (coff_amd64_rtype_to_howto <R_AMD64_SECREL>): Likewise.
  2435. 2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
  2436. * mach-o.c (bfd_mach_o_build_dysymtab_command): Handle absolute
  2437. indirect symbols.
  2438. 2012-01-13 Iain Sandoe <idsandoe@googlemail.com>
  2439. * mach-o.c (bfd_mach_o_write_relocs): Move computation of relocs file
  2440. position from here... to (bfd_mach_o_build_seg_command): Here.
  2441. 2012-01-12 Iain Sandoe <idsandoe@googlemail.com>
  2442. * mach-o.c (bfd_mach_o_count_indirect_symbols): New.
  2443. (bfd_mach_o_build_dysymtab_command): Populate indirect symbol table.
  2444. * mach-o.h (bfd_mach_o_asymbol): Move declaration to start of the
  2445. file. (bfd_mach_o_section): Add indirect_syms field.
  2446. 2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
  2447. * mach-o.c (bfd_mach_o_build_seg_command): Separate computation of
  2448. vmsize from filesize. Don't compute offsets or file sizes for
  2449. zerofill sections.
  2450. 2012-01-11 Iain Sandoe <idsandoe@googlemail.com>
  2451. * mach-o.c (bfd_mach_o_build_commands): Make the building of each
  2452. command type independent.
  2453. 2012-01-11 Alan Modra <amodra@gmail.com>
  2454. * elf64-ppc.c: Define more insns used in plt call stubs.
  2455. (ppc64_elf_brtaken_reloc): Assume isa version 2 or above.
  2456. (ppc64_elf_relocate_section): Likewise.
  2457. (enum ppc_stub_type): Add ppc_stub_plt_call_r2save.
  2458. (struct ppc_link_hash_table): Increase size of stub_count array.
  2459. Add plt_stub_align and plt_thread_safe.
  2460. (ALWAYS_USE_FAKE_DEP, ALWAYS_EMIT_R2SAVE): Define.
  2461. (plt_stub_size, plt_stub_pad): New functions.
  2462. (build_plt_stub): Emit barriers for power7 thread safety. Don't
  2463. emit needless save of r2.
  2464. (build_tls_get_addr_stub): Adjust params.
  2465. (ppc_build_one_stub): Handle ppc_stub_plt_call_r2save and aligning
  2466. plt stubs. Adjust build_*plt_stub calls.
  2467. (ppc_size_one_stub): Similarly.
  2468. (ppc64_elf_size_stubs): Accept plt_thread_safe and plt_stub_align
  2469. params. Choose default for plt_thread_safe based on existence of
  2470. calls to thread creation functions. Modify plt_call to
  2471. plt_call_r2save when no tocsave reloc found. Align tail of stub
  2472. sections.
  2473. (ppc64_elf_build_stubs): Align tail of stub sections. Adjust
  2474. output of stub statistics.
  2475. (ppc64_elf_relocate_section): Handle ppc_stub_plt_call_r2save.
  2476. * elf64-ppc.h (ppc64_elf_size_stubs): Update prototype.
  2477. 2012-01-10 H.J. Lu <hongjiu.lu@intel.com>
  2478. PR ld/13581
  2479. * elf64-x86-64.c (elf_x86_64_relocate_section): Remove ABI_64_P
  2480. check on R_X86_64_PCXX.
  2481. 2012-01-10 Tristan Gingold <gingold@adacore.com>
  2482. * mach-o.c (bfd_mach_o_build_commands): Avoid uninitialized false
  2483. warning.
  2484. 2012-01-10 Tristan Gingold <gingold@adacore.com>
  2485. * bfdio.c (bfd_tell): Handle nested archives.
  2486. (bfd_seek): Ditto.
  2487. * cache.c (bfd_cache_lookup_worker): Ditto.
  2488. * archive.c (_bfd_get_elt_at_filepos): Remove code dealing with
  2489. nested archives.
  2490. (bfd_generic_openr_next_archived_file): Likewise.
  2491. 2012-01-09 Iain Sandoe <idsandoe@googlemail.com>
  2492. * mach-o.c (bfd_mach_o_bfd_copy_private_symbol_data): Implement.
  2493. (bfd_mach_o_write_symtab): Remove handling for indirect syms.
  2494. (bfd_mach_o_primary_symbol_sort_key): Likewise.
  2495. (bfd_mach_o_cf_symbols): Likewise.
  2496. (bfd_mach_o_sort_symbol_table): Remove.
  2497. (bfd_mach_o_mangle_symbols): Adjust arguments, remove handling
  2498. for indirect and dysymtab counts. Do the symbol sorting here.
  2499. (bfd_mach_o_build_dysymtab_command): Count the symbol types here.
  2500. Make the indirect symbols a TODO.
  2501. (bfd_mach_o_build_commands): Adjust call to bfd_mach_o_mangle_symbols.
  2502. (bfd_mach_o_make_empty_symbol): Specifically flag unset symbols with
  2503. a non-zero value.
  2504. (bfd_mach_o_read_symtab_symbol): Record the symbol index.
  2505. (bfd_mach_o_read_symtab_symbol): Adjust recording of global status.
  2506. * mach-o.h (mach_o_data_struct): Remove indirect and dysymtab entries.
  2507. (IS_MACHO_INDIRECT): Remove.
  2508. (SYM_MACHO_FIELDS_UNSET, SYM_MACHO_FIELDS_NOT_VALIDATED): New.
  2509. 2012-01-06 Nick Clifton <nickc@redhat.com>
  2510. PR binutils/13121
  2511. * reloc.c (bfd_generic_lookup_section_flags): Rename 'finfo' to
  2512. 'flaginfo' to avoid conflicts with AIX system headers.
  2513. 2012-01-06 Tristan Gingold <gingold@adacore.com>
  2514. * bfdio.c (bfd_bread): Use arelt_size macro.
  2515. 2012-01-06 Tristan Gingold <gingold@adacore.com>
  2516. * config.bfd (i[3-7]86-*-darwin*): Define targ64_selvecs.
  2517. 2012-01-05 Nick Clifton <nickc@redhat.com>
  2518. PR ld/12161
  2519. * elf32-avr.c (elf32_avr_relax_delete_bytes): Read in relocs if
  2520. necessary.
  2521. 2012-01-05 Jan Kratochvil <jan.kratochvil@redhat.com>
  2522. Fix zero registers core files when built by gcc-4.7.
  2523. * elf64-x86-64.c (elf_x86_64_write_core_note): Remove variables p and
  2524. size. Call elfcore_write_note for the local variables. Remove the
  2525. final elfcore_write_note call. Add NOTREACHED comments.
  2526. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2527. * mach-o.c (bfd_mach_o_fat_stat_arch_elt): New function.
  2528. (bfd_mach_o_generic_stat_arch_elt): Adjust.
  2529. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2530. * mach-o.c (bfd_mach_o_fat_member_init): New function.
  2531. (bfd_mach_o_openr_next_archived_file): Reindent.
  2532. Adjust to call bfd_mach_o_fat_member_init.
  2533. (bfd_mach_o_fat_extract): Adjust to call bfd_mach_o_fat_member_init.
  2534. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2535. * mach-o-x86-64.c (bfd_mach_o_x86_64_swap_reloc_out): Handle
  2536. BFD_RELOC_32, BFD_RELOC_MACH_O_X86_64_PCREL32_1,
  2537. BFD_RELOC_MACH_O_X86_64_PCREL32_2,
  2538. BFD_RELOC_MACH_O_X86_64_PCREL32_4,
  2539. BFD_RELOC_MACH_O_X86_64_BRANCH32,
  2540. BFD_RELOC_MACH_O_X86_64_SUBTRACTOR32,
  2541. BFD_RELOC_MACH_O_X86_64_GOT.
  2542. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2543. * mach-o.h (bfd_mach_o_fvmlib_command): New structure.
  2544. (bfd_mach_o_load_command): Add fvmlib field.
  2545. * mach-o.c (bfd_mach_o_read_fvmlib): New function.
  2546. (bfd_mach_o_read_command): Handle fvmlib.
  2547. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2548. * mach-o.c (bfd_mach_o_convert_architecture): Reindent.
  2549. Decode msubtype for ARM.
  2550. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2551. * mach-o.c (bfd_mach_o_get_synthetic_symtab): Add comments.
  2552. 2012-01-04 Tristan Gingold <gingold@adacore.com>
  2553. * mach-o.h: Reindent header.
  2554. (bfd_mach_o_encryption_info_command): New structure.
  2555. (bfd_mach_o_load_command): Add encryption_info field.
  2556. * mach-o.c (bfd_mach_o_read_encryption_info): New function.
  2557. (bfd_mach_o_read_command): Handle BFD_MACH_O_LC_ENCRYPTION_INFO.
  2558. (bfd_mach_o_read_command): Adjust error message.
  2559. 2012-01-04 Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
  2560. * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Factor out the part
  2561. which reads DWARF2 and stores in stash from find_line.
  2562. (find_line) Call _bfd_dwarf2_slurp_debug_info.
  2563. * libbfd-in.h (_bfd_dwarf2_slurp_debug_info): Add declaration.
  2564. * libbfd.h (_bfd_dwarf2_slurp_debug_info): Regenerate.
  2565. * mach-o.c (dsym_subdir): The name of subdir where debug
  2566. information may be stored.
  2567. (bfd_mach_o_lookup_uuid_command): New. Lookup a load command whose
  2568. type is UUID.
  2569. (bfd_mach_o_dsym_for_uuid_p): New. Check if the specified BFD is
  2570. corresponding to the executable.
  2571. (bfd_mach_o_find_dsym): New. Find a debug information BFD in the
  2572. specified binary file.
  2573. (bfd_mach_o_follow_dsym): New. Find a debug information BFD for
  2574. the original BFD.
  2575. (bfd_mach_o_find_nearest_line): Check dSYM files for Mach-O
  2576. executables, dylibs, and bundles.
  2577. (bfd_mach_o_close_and_cleanup): Clean up BFDs for the dSYM file.
  2578. * mach-o.h (dsym_bfd): The BFD of the dSYM file.
  2579. 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
  2580. * mach-o.c (bfd_mach_o_mangle_symbols): Put in the section index
  2581. for stabd symbols.
  2582. (bfd_mach_o_primary_symbol_sort_key): Adjust for stabs.
  2583. (bfd_mach_o_cf_symbols): Likewise.
  2584. 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
  2585. * mach-o.c (bfd_mach_o_mangle_symbols): Correct typo.
  2586. 2012-01-03 Iain Sandoe <idsandoe@googlemail.com>
  2587. * mach-o.c (bfd_mach_o_write_symtab): Fill in the string table index
  2588. as the value of an indirect symbol. Keep the string table index in
  2589. non-indirect syms for reference.
  2590. (bfd_mach_o_write_dysymtab): New.
  2591. (bfd_mach_o_primary_symbol_sort_key): New.
  2592. (bfd_mach_o_cf_symbols): New.
  2593. (bfd_mach_o_sort_symbol_table): New.
  2594. (bfd_mach_o_mangle_symbols): Return early if no symbols. Sort symbols.
  2595. If we are emitting a dysymtab, process indirect symbols and count the
  2596. number of each other kind.
  2597. (bfd_mach_o_mangle_sections): New.
  2598. (bfd_mach_o_write_contents): Split out some pre-requisite code into
  2599. the command builder. Write dysymtab if the command is present.
  2600. (bfd_mach_o_count_sections_for_seg): New.
  2601. (bfd_mach_o_build_seg_command): New.
  2602. (bfd_mach_o_build_dysymtab_command): New.
  2603. (bfd_mach_o_build_commands): Reorganize to support the fact that some
  2604. commands are optional and should not be emitted if there are no
  2605. sections or symbols.
  2606. (bfd_mach_o_set_section_contents): Amend comment.
  2607. * mach-o.h: Amend and add to comments.
  2608. (mach_o_data_struct): Add fields for dysymtab symbols counts and a
  2609. pointer to the indirects, when present.
  2610. (bfd_mach_o_should_emit_dysymtab): New macro.
  2611. (IS_MACHO_INDIRECT): Likewise.
  2612. For older changes see ChangeLog-2011
  2613. Copyright (C) 2012 Free Software Foundation, Inc.
  2614. Copying and distribution of this file, with or without modification,
  2615. are permitted in any medium without royalty provided the copyright
  2616. notice and this notice are preserved.
  2617. Local Variables:
  2618. mode: change-log
  2619. left-margin: 8
  2620. fill-column: 74
  2621. version-control: never
  2622. End: