Fix segfault in microblaze linker when garbage collection removes a symbol scheduled...
[deliverable/binutils-gdb.git] / bfd / ChangeLog
1 2017-02-27 Nick Clifton <nickc@redhat.com>
2
3 PR ld/21180
4 * elf32-microblaze.c (microblaze_elf_finish_dynamic_symbol): Avoid
5 generating a seg-fault when encountering a symbol that has been
6 deleted by garbage collection.
7
8 2017-02-25 Alan Modra <amodra@gmail.com>
9
10 * elf32-arc.c (struct dynamic_sections): Delete.
11 (enum dyn_section_types): Delete.
12 (dyn_section_names): Delete.
13 (arc_create_dynamic_sections): Delete.
14 (elf_arc_finish_dynamic_sections): Don't call the above. Don't
15 segfault on discarded .rela.plt section.
16 (elf_arc_size_dynamic_sections): Formatting. Don't call
17 arc_create_dynamic_sections. Don't allocate memory for sections
18 handled by the generic linker. Correct code finding relocs in
19 read-only sections. Set SEC_EXCLUDE on zero size .got,
20 .got.plt, and .dynbss sections. Do set .interp for pies.
21
22 2017-02-24 Andrew Waterman <andrew@sifive.com>
23
24 * elfnn-riscv.c (GP_NAME): New macro.
25 (riscv_global_pointer_value): Use it.
26 (_bfd_riscv_relax_lui): If symbol and global pointer are in same
27 output section, consider only that section's alignment.
28
29 2017-02-23 Maciej W. Rozycki <macro@imgtec.com>
30
31 * elfxx-mips.h (_bfd_mips_relax_section): Remove prototype.
32 * elfxx-mips.c (_bfd_mips_relax_section): Remove function.
33 * elf64-mips.c (bfd_elf64_bfd_relax_section): Remove macro.
34 * elfn32-mips.c (bfd_elf32_bfd_relax_section): Likewise.
35
36 2017-02-23 Maciej W. Rozycki <macro@imgtec.com>
37
38 * elfxx-mips.c (mips_elf_calculate_relocation) <R_MIPS_JALR>
39 <R_MICROMIPS_JALR>: Discard relocation if `cross_mode_jump_p'
40 or misaligned.
41
42 2017-02-23 Alan Modra <amodra@gmail.com>
43
44 PR 20744
45 * elf32-ppc.c (ppc_elf_howto_raw): Correct dst_mask on all VLE
46 16D relocations.
47 (ppc_elf_vle_split16): Correct field mask and shift for 16D relocs.
48 (ppc_elf_relocate_section): Correct calculation for VLE SDAREL
49 relocs.
50
51 2017-02-22 Maciej W. Rozycki <macro@imgtec.com>
52
53 PR ld/20828
54 * elflink.c (bfd_elf_size_dynamic_sections): Move symbol version
55 processing ahead of the call to `elf_gc_sweep_symbol'.
56
57 2017-02-22 Nick Clifton <nickc@redhat.com>
58
59 PR binutils/21193
60 * opncls.c (bfd_create_gnu_debuglink_section): Give the newly
61 created section 4-byte alignment.
62
63 2017-02-22 Alan Modra <amodra@gmail.com>
64
65 * elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Don't segfault
66 on .got or .plt output section being discarded by script.
67 * elf32-ppc.c (ppc_elf_finish_dynamic_sections): Likewise. Move
68 vxworks splt temp.
69
70 2017-02-21 Alan Modra <amodra@gmail.com>
71
72 * elf64-alpha.c (elf64_alpha_size_dynamic_sections): Only emit
73 DT_RELA, DT_RELASZ, and DT_RELAENT when DT_RELASZ is non-zero.
74
75 2017-02-20 Alan Modra <amodra@gmail.com>
76
77 PR 21181
78 * elflink.c (bfd_elf_final_link): Make DT_REL/DT_RELA zero
79 if DT_RELSZ/DT_RELASZ is zero.
80
81 2017-02-17 Nick Clifton <nickc@redhat.com>
82
83 * compress.c (bfd_get_full_section_contents): Remember to reduce
84 compressed size by the sizeof the compression header when
85 decompressing the contents.
86
87 2017-02-17 Pedro Alves <palves@redhat.com>
88
89 * srec.c (Chunk): Rename to ...
90 (_bfd_srec_len): ... this.
91 (S3Forced): Rename to ...
92 (_bfd_srec_forceS3): ... this.
93 * objcopy.c: Adjust all references.
94
95 2017-02-17 Pedro Alves <palves@redhat.com>
96
97 * archive.c (bsd_write_armap): Rename to ...
98 (_bfd_bsd_write_armap): ... this.
99 (coff_write_armap): Rename to ...
100 (_bfd_coff_write_armap): ... this.
101 * libbfd-in.h (bsd_write_armap): Rename to ...
102 (_bfd_bsd_write_armap): ... this.
103 (coff_write_armap): Rename to ...
104 (_bfd_coff_write_armap): ... this.
105 * aout-target.h, aout-tic30.c: Adjust all users.
106 * libbfd.h: Regenerate.
107
108 2017-02-17 Pedro Alves <palves@redhat.com>
109
110 * bfd-in.h (bfd_read, bfd_write): Adjust to rename.
111 (warn_deprecated): Rename to ...
112 (_bfd_warn_deprecated): ... this.
113 * libbfd.c (warn_deprecated): Rename to ...
114 (_bfd_warn_deprecated): ... this.
115 * bfd-in2.h: Regenerate.
116
117 2017-02-17 Pedro Alves <palves@redhat.com>
118
119 * bfdio.c (real_ftell): Rename to ...
120 (_bfd_real_ftell): ... this.
121 (real_fseek): Rename to ...
122 (_bfd_real_fseek): ... this.
123 (real_fopen): Rename to ...
124 (_bfd_real_fopen): ... this.
125 * libbfd-in.h (real_ftell): Rename to ...
126 (_bfd_real_ftell): ... this.
127 (real_fseek): Rename to ...
128 (_bfd_real_fseek): ... this.
129 (real_fopen): Rename to ...
130 (_bfd_real_fopen): ... this.
131 * cache.c, dwarf2.c, opncls.c: Adjust all callers.
132 * libbfd.h: Regenerate.
133
134 2017-02-17 Pedro Alves <palves@redhat.com>
135
136 * dwarf2.c, elf-attrs.c, elf32-nds32.c: Adjust all callers.
137 * libbfd.c (read_unsigned_leb128): Rename to ...
138 (_bfd_read_unsigned_leb128): ... this.
139 (read_signed_leb128): Rename to ...
140 (_bfd_read_signed_leb128): ... this.
141 (safe_read_leb128): Rename to ...
142 (_bfd_safe_read_leb128): ... this.
143 * libbfd-in.h (read_unsigned_leb128): Rename to ...
144 (_bfd_read_unsigned_leb128): ... this.
145 (read_signed_leb128): Rename to ...
146 (_bfd_read_signed_leb128): ... this.
147 (safe_read_leb128): Rename to ...
148 (_bfd_safe_read_leb128): ... this.
149 * libbfd.h: Renegerate.
150
151 2017-02-16 Andrew Burgess <andrew.burgess@embecosm.com>
152
153 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Perform symbol lookup
154 before trying to fine matching file and line information.
155
156 2017-02-16 Andrew Burgess <andrew.burgess@embecosm.com>
157
158 * dwarf2.c (struct dwarf2_debug): Add orig_bfd member.
159 (_bfd_dwarf2_slurp_debug_info): If stashed debug information does
160 not match current bfd, then reload debug information. Record bfd
161 we're loading debug info for in the stash. If we have debug
162 informatin in the cache then perform section placement before
163 returning.
164
165 2017-02-16 Alan Modra <amodra@gmail.com>
166
167 PR 21000
168 * elf-bfd.h (struct elf_backend_data): Add no_page_alias.
169 * elfxx-target.h (elf_backend_no_page_alias): Define.
170 (elfNN_bed): Init new field.
171 * elf.c (assign_file_positions_for_load_sections): If no_page_alias
172 ensure PT_LOAD segment starts on a new page.
173 * elf32-hppa.c (elf_backend_no_page_alias): Define.
174
175 2017-02-16 Alan Modra <amodra@gmail.com>
176
177 PR 21132
178 * elf32-hppa.c (allocate_plt_static): Allocate space for relocs
179 if pic.
180
181 2017-02-16 Jiong Wang <jiong.wang@arm.com>
182
183 * bfd.c (BFD_FLAGS_SAVED): Add BFD_LINKER_CREATED.
184 * bfd-in2.h: Regenerated.
185
186 2017-02-15 H.J. Lu <hongjiu.lu@intel.com>
187
188 PR ld/21168
189 * elf32-i386.c (elf_i386_relocate_section): Allow
190 "lea foo@GOT, %reg" in PIC.
191
192 2017-02-15 H.J. Lu <hongjiu.lu@intel.com>
193
194 PR ld/20244
195 * elf32-i386.c (elf_i386_relocate_section): Properly get IFUNC
196 symbol name when reporting R_386_GOT32/R_386_GOT32X relocation
197 error against local IFUNC symbol without a base register for
198 PIC.
199
200 2017-02-15 Maciej W. Rozycki <macro@imgtec.com>
201
202 * elf32-ppc.c (ppc_elf_check_relocs): Use `%H:' rather than
203 `%P: %H:' with `info->callbacks->einfo'.
204 (ppc_elf_relocate_section): Likewise.
205 * elf64-ppc.c (ppc64_elf_check_relocs): Likewise.
206 (ppc64_elf_edit_toc): Likewise.
207 (ppc64_elf_relocate_section): Likewise.
208
209 2017-02-14 Alan Modra <amodra@gmail.com>
210
211 * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
212 --gc-keep-exported, and test versioned field of sym rather than
213 looking for @ in name.
214
215 2017-02-13 Palmer Dabbelt <palmer@dabbelt.com>
216
217 * elfnn-riscv.c (riscv_global_pointer_value): Change _gp to
218 __global_pointer$.
219
220 2017-02-13 Nick Clifton <nickc@redhat.com>
221
222 PR binutils/21151
223 * dwarf2.c (_bfd_dwarf2_find_nearest_line): Check for an invalid
224 unit length field.
225
226 2017-02-07 Andrew Waterman <andrew@sifive.com>
227
228 * elfnn-riscv.c (riscv_elf_finish_dynamic_sections): Only write PLT
229 entry size if PLT header is written.
230
231 2017-02-06 Sheldon Lobo <sheldon.lobo@oracle.com>
232
233 Fix sparc64 dynamic relocation processing to use the dynamic
234 symbol count.
235 * elf64-sparc.c (elf64_sparc_slurp_one_reloc_table): Use 'dynamic'
236 to determine if bfd_get_symcount() or bfd_get_dynamic_symcount()
237 should be used.
238
239 2017-02-03 Nick Clifton <nickc@redhat.com>
240
241 PR 21096
242 * coffcode.h (coff_write_object_contents): Enlarge size of
243 s_name_buf in order to avoid compile time warning about possible
244 integer truncation.
245 * elf32-nds32.c (nds32_elf_ex9_import_table): Mask off lower
246 32-bits of insn value before printing into buffer.
247
248 2017-02-02 Maciej W. Rozycki <macro@imgtec.com>
249
250 * elfxx-mips.c (mips_elf_hash_sort_data): Add
251 `max_local_dynindx'.
252 (mips_elf_sort_hash_table): Handle it.
253 (mips_elf_sort_hash_table_f) <GGA_NONE>: For forced local
254 symbols bump up `max_local_dynindx' rather than
255 `max_non_got_dynindx'.
256
257 2017-02-02 Maciej W. Rozycki <macro@imgtec.com>
258
259 * elfxx-mips.c (mips_elf_hash_sort_data): Convert the
260 `min_got_dynindx', `max_unref_got_dynindx' and
261 `max_non_got_dynindx' members to the `bfd_size_type' data type.
262 (mips_elf_sort_hash_table): Adjust accordingly.
263
264 2017-02-02 Maciej W. Rozycki <macro@imgtec.com>
265
266 * elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout
267 to access the hash table.
268
269 2017-02-02 Maciej W. Rozycki <macro@imgtec.com>
270
271 * elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on
272 non-NULL `htab' to the beginning.
273
274 2017-02-02 Maciej W. Rozycki <macro@imgtec.com>
275
276 * elflink.c (elf_gc_sweep): Wrap overlong line.
277
278 2017-01-30 Maciej W. Rozycki <macro@imgtec.com>
279
280 * elfxx-mips.h (_bfd_mips_elf_insn32): Rename prototype to...
281 (_bfd_mips_elf_linker_flags): ... this. Add another parameter.
282 * elfxx-mips.c (mips_elf_link_hash_table): Add
283 `ignore_branch_isa' member.
284 (mips_elf_perform_relocation): Do not treat an ISA mode mismatch
285 in branch relocation calculation as an error if
286 `ignore_branch_isa' has been set.
287 (_bfd_mips_elf_insn32): Rename to...
288 (_bfd_mips_elf_linker_flags): ... this. Rename the `on'
289 parameter to `insn32' and add an `ignore_branch_isa' parameter.
290 Handle the new parameter.
291
292 2017-01-27 Hans-Peter Nilsson <hp@axis.com>
293
294 * elf32-cris.c (elf_cris_finish_dynamic_symbol): Remove now unused
295 local variable dynobj.
296
297 PR ld/20995
298 * elf32-cris.c (elf_cris_size_dynamic_sections): Handle sdynrelro.
299 (elf_cris_adjust_dynamic_symbol): Place variables copied into the
300 executable from read-only sections into sdynrelro.
301 (elf_cris_finish_dynamic_symbol): Select sreldynrelro for
302 dynamic relocs in sdynrelro.
303 (elf_backend_want_dynrelro): Define.
304
305 2017-01-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
306
307 * config.bfd (*-*-rtemsaout*): Mark as removed.
308
309 2017-01-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
310
311 * config.bfd (powerpcle-*-rtems*): Do not mark as removed.
312 (arm-*-rtems*): Move to (arm*-*-eabi*).
313 (i[3-7]86-*-rtems*): Move to (i[3-7]86-*-elf*).
314 (m68-*-rtems*): Move to (m68*-*-elf*).
315
316 2017-01-25 Sebastian Huber <sebastian.huber@embedded-brains.de>
317
318 * config.bfd (*-*-rtemscoff*): Mark as removed.
319
320 2017-01-24 Maciej W. Rozycki <macro@imgtec.com>
321
322 PR ld/20828
323 * elflink.c (bfd_elf_record_link_assignment): Revert last
324 change and don't ever clear `forced_local'. Set `mark'
325 unconditionally.
326 (elf_gc_sweep_symbol_info, elf_gc_sweep_symbol): Reorder within
327 file.
328 (elf_gc_sweep): Move the call to `elf_gc_sweep_symbol'...
329 (bfd_elf_size_dynamic_sections): ... here.
330 * elf32-ppc.c (ppc_elf_tls_setup): Don't clear `forced_local'
331 and set `mark' instead in `__tls_get_addr_opt' processing.
332 * elf64-ppc.c (ppc64_elf_tls_setup): Likewise.
333
334 2017-01-24 Alan Modra <amodra@gmail.com>
335
336 * elf32-ppc.c (ppc_elf_adjust_dynamic_symbol): Merge two cases
337 where dynamic relocs are preferable. Allow ifunc too.
338 (ensure_undefweak_dynamic): New function.
339 (allocate_dynrelocs): Use it here. Move plt handling last and
340 don't make symbols dynamic, simplifying loop. Only make undef
341 weak symbols with GOT entries dynamic. Correct condition
342 for GOT relocs. Handle dynamic relocs on ifuncs. Correct
343 comments. Remove goto.
344 (ppc_elf_relocate_section): Correct test for using dynamic
345 symbol on GOT relocs. Rearrange test for emitting GOT relocs
346 to suit. Set up explicit tls_index entries and implicit GOT
347 tls_index entries resolvable at link time for
348 __tls_get_addr_opt. Simplify test to clear mem for prelink.
349 * elf64-ppc.c (allocate_got): Correct condition for GOT relocs.
350 (ensure_undefweak_dynamic): New function.
351 (allocate_dynrelocs): Use it here. Only make undef weak symbols
352 with GOT entries dynamic. Remove unnecessary test of
353 WILL_CALL_FINISH_DYNAMIC_SYMBOL in PLT handling.
354 (ppc64_elf_relocate_section): Correct test for using dynamic
355 symbol on GOT relocs. Rearrange test for emitting GOT relocs
356 to suit. Set up explicit tls_index entries and implicit GOT
357 tls_index entries resolvable at link time for __tls_get_addr_opt.
358 Simplify expression to clear mem for prelink.
359
360 2017-01-23 Yury Norov <ynorov@caviumnetworks.com>
361
362 * elfnn-aarch64.c: Fix relaxations for ILP32 mode.
363
364 2017-01-20 Jiong Wang <jiong.wang@arm.com>
365
366 * elfnn-aarch64.c (elf_aarch64_hash_symbol): New function.
367 (elf_backend_hash_symbol): Define.
368
369 2017-01-18 Maciej W. Rozycki <macro@imgtec.com>
370
371 PR ld/20828
372 * elflink.c (bfd_elf_record_link_assignment): Clear any
373 `forced_local' marking for DSO symbols that are not being
374 provided.
375
376 2017-01-17 Kuan-Lin Chen <kuanlinchentw@gmail.com>
377
378 * elfnn-riscv.c (riscv_elf_object_p): New function.
379
380 2017-01-12 H.J. Lu <hongjiu.lu@intel.com>
381
382 PR ld/21038
383 * elf64-x86-64.c (elf_x86_64_link_hash_table): Add
384 plt_bnd_eh_frame.
385 (elf_x86_64_check_relocs): Create .eh_frame section for the
386 .plt.bnd section.
387 (elf_x86_64_size_dynamic_sections): Allocate and initialize
388 .eh_frame section for the .plt.bnd section.
389 (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section
390 for the .plt.bnd section.
391
392 2017-01-12 Nick Clifton <nickc@redhat.com>
393
394 PR binutils/20876
395 * opncls.c (find_separate_debug_file): Add include_dirs
396 parameter. Only include the directory part of the bfd's filename
397 in search paths if include_dirs is true. Add a couple of extra
398 locations for looking for debug files.
399 ( bfd_follow_gnu_debuglink): Update invocation of
400 find_separate_debug_file.
401 (bfd_follow_gnu_debugaltlink): Likewise.
402 (get_build_id): New function: Finds the build-id of the given bfd.
403 (get_build_id_name): New function: Computes the name of the
404 separate debug info file for a bfd, based upon its build-id.
405 (check_build_id_file): New function: Checks to see if a separate
406 debug info file exists at the given location, and that its
407 build-id matches that of the original bfd.
408 (bfd_follow_build_id_debuglink): New function: Finds a separate
409 debug info file for a given bfd by using the build-id method.
410 * dwarf2.c (_bfd_dwarf2_slurp_debug_info): Try using the build-id
411 method of locating a separate debug info file before using the
412 debuglink method.
413 * bfd-in2.h: Regenerate.
414
415 2017-01-11 H.J. Lu <hongjiu.lu@intel.com>
416
417 PR ld/21038
418 * elf64-x86-64.c (elf_x86_64_eh_frame_bnd_plt): New.
419 (elf_x86_64_bnd_arch_bed): Use elf_x86_64_eh_frame_bnd_plt and
420 elf_x86_64_eh_frame_plt_got.
421 (elf_x86_64_size_dynamic_sections): Get unwind info from
422 elf_x86_64_bnd_arch_bed for the BND PLT.
423
424 2017-01-11 Jeremy Soller <jackpot51@gmail.com>
425
426 * config.bfd: Add entries for i686-redox and x86_64-redox.
427
428 2017-01-10 H.J. Lu <hongjiu.lu@intel.com>
429
430 * elf32-i386.c (elf_i386_check_relocs): Align .eh_frame section
431 to 4 bytes.
432 * elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Align
433 .eh_frame section to 4 bytes for x32.
434 (elf_x86_64_check_relocs): Likewise.
435
436 2017-01-10 H.J. Lu <hongjiu.lu@intel.com>
437
438 PR ld/20830
439 * elf32-i386.c (elf_i386_eh_frame_plt_got): New.
440 (PLT_GOT_FDE_LENGTH): Likewise.
441 (elf_i386_plt_layout): Add eh_frame_plt_got and
442 eh_frame_plt_got_size.
443 (elf_i386_plt): Updated.
444 (elf_i386_link_hash_table): Add plt_got_eh_frame.
445 (elf_i386_check_relocs): Create .eh_frame section for .plt.got.
446 (elf_i386_size_dynamic_sections): Allocate and initialize
447 .eh_frame section for .plt.got.
448 (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for
449 .plt.got.
450 (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and
451 eh_frame_plt_got_size.
452 * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New.
453 (PLT_GOT_FDE_LENGTH): Likewise.
454 (elf_x86_64_backend_data): Add eh_frame_plt_got and
455 eh_frame_plt_got_size.
456 (elf_x86_64_arch_bed): Updated.
457 (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and
458 eh_frame_plt_got_size.
459 (elf_x86_64_nacl_arch_bed): Likewise.
460 (elf_x86_64_link_hash_table): Add plt_got_eh_frame.
461 (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got.
462 (elf_x86_64_size_dynamic_sections): Allocate and initialize
463 .eh_frame section for .plt.got.
464 (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section
465 for .plt.got.
466
467 2017-01-10 H.J. Lu <hongjiu.lu@intel.com>
468
469 * elf32-i386.c (elf_i386_size_dynamic_sections): Set
470 plt_eh_frame->size to eh_frame_plt_size and use eh_frame_plt.
471
472 2017-01-09 Nick Clifton <nickc@redhat.com>
473
474 * dwarf2.c (lookup_address_in_function_table): Return early if
475 there are no functions in the given comp unit, or if the high
476 address of the last function in the comp unit is less than the
477 desired address.
478
479 2017-01-09 Nick Clifton <nickc@redhat.com>
480
481 PR binutils/21013
482 * coffgen.c (_bfd_coff_get_external_symbols): Generate an error
483 message if there are too many symbols to load.
484
485 2017-01-04 James Clarke <jrtc27@jrtc27.com>
486
487 * elf64-alpha.c (elf64_alpha_relax_opt_call): Don't set tsec_free
488 if relocs are cached.
489
490 2017-01-03 Rich Felker <bugdal@aerifal.cx>
491
492 PR ld/21017
493 * elf32-microblaze.c (microblaze_elf_check_relocs): Add an entry
494 for R_MICROBLAZE_GOTOFF_64.
495
496 2017-01-03 Nick Clifton <nickc@redhat.com>
497
498 * mach-o.c (bfd_mach_o_lookup_uuid_command): Fix compile time
499 warning about using a possibly uninitialised variable.
500
501 2017-01-02 Alan Modra <amodra@gmail.com>
502
503 * elf32-hppa.c (ensure_undef_weak_dynamic): New function.
504 (allocate_plt_static, allocate_dynrelocs): Use it.
505
506 2017-01-02 Alan Modra <amodra@gmail.com>
507
508 * elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for
509 .PARISC.unwind section.
510
511 2017-01-02 Alan Modra <amodra@gmail.com>
512
513 PR ld/20989
514 * elfxx-sparc.c (gdop_relative_offset_ok): New function.
515 (_bfd_sparc_elf_relocate_section): Use it to validate GOT
516 indirect to GOT pointer relative code edit.
517
518 2017-01-02 Alan Modra <amodra@gmail.com>
519
520 Update year range in copyright notice of all files.
521
522 For older changes see ChangeLog-2016
523 \f
524 Copyright (C) 2017 Free Software Foundation, Inc.
525
526 Copying and distribution of this file, with or without modification,
527 are permitted in any medium without royalty provided the copyright
528 notice and this notice are preserved.
529
530 Local Variables:
531 mode: change-log
532 left-margin: 8
533 fill-column: 74
534 version-control: never
535 End:
This page took 0.043253 seconds and 4 git commands to generate.