* elf-m10300.c (_bfd_mn10300_elf_adjust_dynamic_symbol): Warn on
[deliverable/binutils-gdb.git] / include / ChangeLog
CommitLineData
3b6940c0
DD
12005-08-17 Mark Kettenis <kettenis@gnu.org>
2
3 * floatformat.h (struct floatformat): Change type of large
4 argument for is_valid member to `const void *'.
5 (floatformat_to_double): Change type of second argument to `const
6 void *'.
7 (floatformat_from_double): Change type of last argument to `void
8 *'.
9 (floatformat_is_valid): Change type of last argument to `const
10 void *'.
11
49f58d10
JB
122005-07-14 Jim Blandy <jimb@redhat.com>
13
14 * dis-asm.h (print_insn_m32c): New declaration.
15
f2942ea4
DD
162005-07-12 Ben Elliston <bje@au.ibm.com>
17
18 * xregex2.h (regexec): Qualify this prototype with __extension__
19 when compiling with GNU C.
20
0fd3a477
JW
212005-07-07 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
22
23 * dis-asm.h (fprintf_ftype): Add format attribute.
24
6ba85b8c
DD
252005-07-03 Steve Ellcey <sje@cup.hp.com>
26
27 PR other/13906
28 * ansidecl.h (ATTRIBUTE_ALIGNED_ALIGNOF): New.
29 * md5.h (md5_uintptr): New.
30 (md5_ctx): Align buffer field.
31
c3cca4c9
DD
322005-06-30 Daniel Berlin <dberlin@dberlin.org>
33
34 * hashtab.h (HTAB_DELETED_ENTRY): New macro.
35 (HTAB_EMPTY_ENTRY): New macro.
36
67f3cb05
GK
372005-06-20 Geoffrey Keating <geoffk@apple.com>
38
39 * libiberty.h (strverscmp): Prototype.
40
08d8fa11
JJ
412005-06-17 Jakub Jelinek <jakub@redhat.com>
42
43 * elf/external.h (GRP_ENTRY_SIZE): Define.
44
6b5d3a4d
ZW
452005-06-08 Zack Weinberg <zack@codesourcery.com>
46
47 * dis-asm.h (get_arm_regnames): Update prototype.
48
3f1c9c12
AH
492005-06-07 Aldy Hernandez <aldyh@redhat.com>
50 Michael Snyder <msnyder@redhat.com>
51 Stan Cox <scox@redhat.com>
52
53 * dis-asm.h: Externalize print_insn_ms1.
54
d30d42d1
DD
552005-06-06 Gabriel Dos Reis <gdr@integrable-solutions.net>
56
57 * libiberty.h (XOBFINISH): New.
58
e1fffbe6
AM
592005-06-03 Alan Modra <amodra@bigpond.net.au>
60
61 * bfdlink.h (struct bfd_link_callbacks): Add einfo.
62
c2bd6e35
DD
632005-06-01 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
64
65 * libiberty.h (vsnprintf): Add format attribute.
66
e9472921
DD
672005-05-29 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
68
69 * ansidecl.h: Add ATTRIBUTE_FPTR_PRINTF.
70
01e94249
DD
712005-05-28 Eli Zaretskii <eliz@gnu.org>
72
73 * libiberty.h: (snprintf) [!HAVE_DECL_SNPRINTF]: Declare if
74 needed.
75 (vsnprintf) [!HAVE_DECL_VSNPRINTF]: Declare if needed.
76
839e4798
RH
772005-05-25 Richard Henderson <rth@redhat.com>
78
79 * demangle.h (DEMANGLE_COMPONENT_HIDDEN_ALIAS): New.
80
abf6a75b
DD
812005-05-24 Gabriel Dos Reis <gdr@integrable-solutions.net>
82
83 * libiberty.h (ACONCAT): Properly cast value of alloca().
84
85 * ansidecl.h (ATTRIBUTE_UNUSED_LABEL): Don't define if
86 __cplusplus.
87
aaac3631
DD
882005-05-12 Steve Ellcey <sje@cup.hp.com>
89
90 libiberty.h: Do not define empty basename prototype.
91
e172dbf8
NC
922005-05-10 Nick Clifton <nickc@redhat.com>
93
94 * Update the address and phone number of the FSF organization in
95 the GPL notices in the following files:
96 COPYING, ansidecl.h, bfdlink.h, bout.h, demangle.h, dis-asm.h,
97 dyn-string.h, fibheap.h, filenames.h, floatformat.h,
98 fnmatch.h, gdbm.h, getopt.h, hashtab.h, hp-symtab.h, ieee.h,
99 libiberty.h, md5.h, oasys.h, objalloc.h, obstack.h, os9k.h,
100 partition.h, progress.h, safe-ctype.h, sort.h, splay-tree.h,
101 symcat.h, ternary.h, xregex2.h, xtensa-config.h,
102 xtensa-isa-internal.h, xtensa-isa.h
103
c631edf1
DD
1042005-04-25 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
105
106 * libiberty.h (unlock_std_streams): New.
107
a288642d
DD
1082005-04-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
109
110 * hashtab.h, libiberty.h, objalloc.h, splay-tree.h, ternary.h:
111 Don't use the PTR macro.
112
113 * sort.h: Don't use the PARAMS macro.
114
7b6f6286
DD
1152005-04-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
116
117 * libiberty.h (unlock_stream): New.
118
ab70e2a5
DD
1192005-04-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
120
121 * libiberty.h (fopen_unlocked, fdopen_unlocked, freopen_unlocked):
122 Remove parameter names.
123
ac119ae8
DD
1242005-04-11 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
125
126 * libiberty.h (fopen_unlocked, fdopen_unlocked, freopen_unlocked):
127 Provide prototypes for new functions.
128
7e10245c
DD
1292005-03-29 Ian Lance Taylor <ian@airs.com>
130
131 * libiberty.h: Fix indentation.
132
b109e79a
ILT
1332005-03-28 Ian Lance Taylor <ian@airs.com>
134
135 * libiberty.h: Include <stdio.h>.
136 (PEX_RECORD_TIMES, PEX_USE_PIPES, PEX_SAVE_TEMPS): Define.
137 (PEX_LAST, PEX_SEARCH, PEX_SUFFIX, PEX_STDERR_TO_STDOUT): Define.
138 (PEX_BINARY_INPUT, PEX_BINARY_OUTPUT): Define.
139 (pex_init, pex_run, pex_read_output): Declare.
140 (pex_get_status, pex_get_times, pex_free, pex_one): Declare.
141 (struct pex_time): Define.
142
3d0dfe26
MM
1432005-03-28 Mark Mitchell <mark@codesourcery.com>
144
145 * libiberty.h (ffs): Declare, if necessary.
e1fffbe6 146
49b1fae4
DD
1472005-03-27 Gabriel Dos Reis <gdr@integreable-solutions.net>
148
149 * ternary.h: Don't use PARAMS anymore.
150
1512005-03-27 Gabriel Dos Reis <gdr@integrable-solutions.net>
152
153 * md5.h: Remove definition and uses of __P.
154 * dyn-string.h: Remove uses of PARAMS.
155 * fibheap.h: Likewise.
156 * floatformat.h: Likewise.
157 * hashtab.h: Likewise.
158
9334f9c6
DD
1592005-03-26 Gabriel Dos Reis <gdr@integrable-solutions.net>
160
161 * demangle.h: Remove uses of PARAMS.
162
163 * libiberty.h (ANSI_PROTOTYPES): Remove guard since
164 ANSI_PROTOTYPES is always assumed.
165 Remove uses of PARAMS throughout.
166
0fad4bdb
DD
1672005-03-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
168
169 * libiberty.h (xstrndup): Declare.
170
1ec0126d
DD
1712005-03-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
172
173 * libiberty.h (make_relative_prefix): Add ATTRIBUTE_MALLOC.
174
1fbc7e7a
BW
1752005-03-22 Bob Wilson <bob.wilson@acm.org>
176
177 * xtensa-isa.h: Update a comment and whitespace.
178
57316bff
L
1792005-03-16 H.J. Lu <hongjiu.lu@intel.com>
180
181 * bfdlink.h (bfd_link_info): Add gc_sections.
182
8ec32723
DD
1832005-03-09 Mark Mitchell <mark@codesourcery.com>
184
185 * libiberty.h (gettimeofday): Declare.
186
190eb137
DD
1872005-03-01 Jan Beulich <jbeulich@novell.com>
188
189 * libiberty.h: Declare unlink_if_ordinary.
190
f075ee0c
AM
1912005-02-21 Alan Modra <amodra@bigpond.net.au>
192
193 * xtensa-isa-internal.h (xtensa_length_decode_fn): Warning fix.
194 * xtensa-isa.h (xtensa_insnbuf_to_chars): Likewise.
195 (xtensa_insnbuf_from_chars, xtensa_isa_length_from_chars): Likewise.
196
8adce22d
DD
1972005-02-14 Paolo Bonzini <bonzini@gnu.org>
198
199 PR bootstrap/19818
200 * ansidecl.h (PARAMS): Guard from redefinition.
201
11f25ea6
AM
2022005-02-03 Alan Modra <amodra@bigpond.net.au>
203
204 * bfdlink.h (struct bfd_link_hash_entry): Add u.undef.weak.
205
77cfaee6
AM
2062005-02-01 Alan Modra <amodra@bigpond.net.au>
207
208 * bfdlink.h (bfd_link_repair_undef_list): Declare.
209
0bcb06d2
AS
2102005-01-10 Andreas Schwab <schwab@suse.de>
211
212 * dis-asm.h (struct disassemble_info): Add skip_zeroes and
213 skip_zeroes_at_end.
214
40a59a4c
DD
2152004-12-11 Ben Elliston <bje@au.ibm.com>
216
217 * fibheap.h (struct fibnode): Only use unsigned long bitfields
218 when __GNUC__ is defined and ints are less than 32-bits wide.
219
fc0e6df6
PB
2202004-11-04 Paul Brook <paul@codesourcery.com>
221
222 * bfdlink.h (bfd_link_info): Add default_imported_symver.
223
a1ace8d8
BW
2242004-11-12 Bob Wilson <bob.wilson@acm.org>
225
226 * xtensa-isa-internal.h (xtensa_interface_internal): Add class_id.
227 * xtensa-isa.h (xtensa_interface_class_id): New prototype.
228
7499d566
NC
2292004-11-08 Inderpreet Singh <inderpreetb@nioda.hcltech.com>
230 Vineet Sharma <vineets@noida.hcltech.com>
231
232 * dis-asm.h: Add prototype for print_insn_maxq_little.
233
3e3b46e5
PB
2342004-10-26 Paul Brook <paul@codesourcery.com>
235
236 * bfdlink.h (struct bfd_link_info): Add create_default_symver.
237
dfeffb9f
L
2382004-10-21 H.J. Lu <hongjiu.lu@intel.com>
239
240 PR 463
241 * bfdlink.h (bfd_link_callbacks): Add a pointer to struct
242 bfd_link_hash_entry to reloc_overflow.
243
43cd72b9
BW
2442004-10-07 Bob Wilson <bob.wilson@acm.org>
245
246 * xtensa-config.h (XSHAL_USE_ABSOLUTE_LITERALS,
247 XCHAL_HAVE_PREDICTED_BRANCHES, XCHAL_INST_FETCH_WIDTH): New.
248 (XCHAL_EXTRA_SA_SIZE, XCHAL_EXTRA_SA_ALIGN): Delete.
c44050dc 249
43cd72b9
BW
250 * xtensa-isa-internal.h (ISA_INTERFACE_VERSION): Delete.
251 (config_sturct struct): Delete.
252 (XTENSA_OPERAND_IS_REGISTER, XTENSA_OPERAND_IS_PCRELATIVE,
253 XTENSA_OPERAND_IS_INVISIBLE, XTENSA_OPERAND_IS_UNKNOWN,
254 XTENSA_OPCODE_IS_BRANCH, XTENSA_OPCODE_IS_JUMP,
255 XTENSA_OPCODE_IS_LOOP, XTENSA_OPCODE_IS_CALL,
256 XTENSA_STATE_IS_EXPORTED, XTENSA_INTERFACE_HAS_SIDE_EFFECT): Define.
257 (xtensa_format_encode_fn, xtensa_get_slot_fn, xtensa_set_slot_fn): New.
258 (xtensa_insn_decode_fn): Rename to ...
259 (xtensa_opcode_decode_fn): ... this.
260 (xtensa_immed_decode_fn, xtensa_immed_encode_fn, xtensa_do_reloc_fn,
261 xtensa_undo_reloc_fn): Update.
262 (xtensa_encoding_template_fn): Delete.
263 (xtensa_opcode_encode_fn, xtensa_format_decode_fn,
264 xtensa_length_decode_fn): New.
265 (xtensa_format_internal, xtensa_slot_internal): New types.
266 (xtensa_operand_internal): Delete operand_kind, inout, isPCRelative,
267 get_field, and set_field fields. Add name, field_id, regfile,
268 num_regs, and flags fields.
269 (xtensa_arg_internal): New type.
270 (xtensa_iclass_internal): Change operands field to array of
271 xtensa_arg_internal. Add num_stateOperands, stateOperands,
272 num_interfaceOperands, and interfaceOperands fields.
273 (xtensa_opcode_internal): Delete length, template, and iclass fields.
274 Add iclass_id, flags, encode_fns, num_funcUnit_uses, and funcUnit_uses.
275 (opname_lookup_entry): Delete.
276 (xtensa_regfile_internal, xtensa_interface_internal,
277 xtensa_funcUnit_internal, xtensa_state_internal,
278 xtensa_sysreg_internal, xtensa_lookup_entry): New.
279 (xtensa_isa_internal): Replace opcode_table field with opcodes field.
280 Change type of opname_lookup_table. Delete num_modules,
281 module_opcode_base, module_decode_fn, config, and has_density fields.
282 Add num_formats, formats, format_decode_fn, length_decode_fn,
283 num_slots, slots, num_fields, num_operands, operands, num_iclasses,
284 iclasses, num_regfiles, regfiles, num_states, states,
285 state_lookup_table, num_sysregs, sysregs, sysreg_lookup_table,
286 max_sysreg_num, sysreg_table, num_interfaces, interfaces,
287 interface_lookup_table, num_funcUnits, funcUnits and
288 funcUnit_lookup_table fields.
289 (xtensa_isa_module, xtensa_isa_modules): Delete.
290 (xtensa_isa_name_compare): New prototype.
291 (xtisa_errno, xtisa_error_msg): New.
292 * xtensa-isa.h (XTENSA_ISA_VERSION): Define.
293 (xtensa_isa): Change type.
294 (xtensa_operand): Delete.
295 (xtensa_format, xtensa_regfile, xtensa_state, xtensa_sysreg,
296 xtensa_interface, xtensa_funcUnit, xtensa_isa_status,
297 xtensa_funcUnit_use): New types.
298 (libisa_module_specifier): Delete.
299 (xtensa_isa_errno, xtensa_isa_error_msg): New prototypes.
300 (xtensa_insnbuf_free, xtensa_insnbuf_to_chars,
301 xtensa_insnbuf_from_chars): Update prototypes.
302 (xtensa_load_isa, xtensa_extend_isa, xtensa_default_isa,
303 xtensa_insn_maxlength, xtensa_num_opcodes, xtensa_decode_insn,
304 xtensa_encode_insn, xtensa_insn_length,
305 xtensa_insn_length_from_first_byte, xtensa_num_operands,
306 xtensa_operand_kind, xtensa_encode_result,
307 xtensa_operand_isPCRelative): Delete.
308 (xtensa_isa_init, xtensa_operand_inout, xtensa_operand_get_field,
309 xtensa_operand_set_field, xtensa_operand_encode,
310 xtensa_operand_decode, xtensa_operand_do_reloc,
311 xtensa_operand_undo_reloc): Update prototypes.
312 (xtensa_isa_maxlength, xtensa_isa_length_from_chars,
313 xtensa_isa_num_pipe_stages, xtensa_isa_num_formats,
314 xtensa_isa_num_opcodes, xtensa_isa_num_regfiles, xtensa_isa_num_states,
315 xtensa_isa_num_sysregs, xtensa_isa_num_interfaces,
316 xtensa_isa_num_funcUnits, xtensa_format_name, xtensa_format_lookup,
317 xtensa_format_decode, xtensa_format_encode, xtensa_format_length,
318 xtensa_format_num_slots, xtensa_format_slot_nop_opcode,
319 xtensa_format_get_slot, xtensa_format_set_slot, xtensa_opcode_decode,
320 xtensa_opcode_encode, xtensa_opcode_is_branch, xtensa_opcode_is_jump,
321 xtensa_opcode_is_loop, xtensa_opcode_is_call,
322 xtensa_opcode_num_operands, xtensa_opcode_num_stateOperands,
323 xtensa_opcode_num_interfaceOperands, xtensa_opcode_num_funcUnit_uses,
324 xtensa_opcode_funcUnit_use, xtensa_operand_name,
325 xtensa_operand_is_visible, xtensa_operand_is_register,
326 xtensa_operand_regfile, xtensa_operand_num_regs,
327 xtensa_operand_is_known_reg, xtensa_operand_is_PCrelative,
328 xtensa_stateOperand_state, xtensa_stateOperand_inout,
329 xtensa_interfaceOperand_interface, xtensa_regfile_lookup,
330 xtensa_regfile_lookup_shortname, xtensa_regfile_name,
331 xtensa_regfile_shortname, xtensa_regfile_view_parent,
332 xtensa_regfile_num_bits, xtensa_regfile_num_entries,
333 xtensa_state_lookup, xtensa_state_name, xtensa_state_num_bits,
334 xtensa_state_is_exported, xtensa_sysreg_lookup,
335 xtensa_sysreg_lookup_name, xtensa_sysreg_name, xtensa_sysreg_number,
336 xtensa_sysreg_is_user, xtensa_interface_lookup, xtensa_interface_name,
337 xtensa_interface_num_bits, xtensa_interface_inout,
338 xtensa_interface_has_side_effect, xtensa_funcUnit_lookup,
339 xtensa_funcUnit_name, xtensa_funcUnit_num_copies): New prototypes.
8fdd7217
NC
3402004-10-07 Jeff Baker <jbaker@qnx.com>
341
342 * bfdlink.h (bfd_link_info): Add bitfield: warn_shared_textrel.
343
f6e332e6
AM
3442004-09-17 Alan Modra <amodra@bigpond.net.au>
345
346 * bfdlink.h (struct bfd_link_hash_entry): Move und_next into elements
347 of union.
348
79fadcb0
DD
3492004-09-13 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
350
351 * libiberty.h (basename): Prototype for __MINGW32__.
352
a5ecc6a5
DD
3532004-09-04 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
354
355 * ansidecl.h (ATTRIBUTE_SENTINEL): Define.
356 * libiberty.h (concat, reconcat, concat_length, concat_copy,
357 concat_copy2): Use ATTRIBUTE_SENTINEL.
358
d003868e
AM
3592004-08-13 Alan Modra <amodra@bigpond.net.au>
360
361 * bfdlink.h (struct bfd_link_callbacks): Remove "error_handler".
362 (LD_DEFINITION_IN_DISCARDED_SECTION): Delete.
363
deaa6723
DD
3642004-08-02 Gabriel Dos Reis <gdr@integrable-solutions.net>
365
366 * libiberty.h (XDELETE, XDELETEVEC, XRESIZEVEC): Remove any
367 const-qualification before disposal.
368
d5b4094f
DD
3692004-07-24 Bernardo Innocenti <bernie@develer.com>
370
371 * ansidecl.h (ARG_UNUSED): New Macro.
372
60ee6567
L
3732004-07-23 H.J. Lu <hongjiu.lu@intel.com>
374
375 * bin-bugs.h (REPORT_BUGS_TO): Set to
376 "<URL:http://www.sourceware.org/bugzilla/>".
377
a35b6b04
DD
3782004-07-21 Paolo Bonzini <bonzini@gnu.org>
379
380 * ansidecl.h (ATTRIBUTE_PURE): New.
381
7ab9a76e
DD
3822004-07-13 Bernardo Innocenti <bernie@develer.com>
383
384 * libiberty.h (XNEW, XCNEW, XNEWVEC, XCNEWVEC, XOBNEW): Move here from
385 libcpp/internal.h.
386 (XDELETE, XRESIZEVEC, XDELETEVEC, XNEWVAR, XCNEWVAR, XRESIZEVAR): New
387 macros.
388
3892004-07-13 Bernardo Innocenti <bernie@develer.com>
390
391 * libiberty.h (ASTRDUP): Add casts required for stricter
392 type conversion rules of C++.
393 * obstack.h (obstack_free): Likewise.
394
1fe1f39c
NC
3952004-07-07 Tomer Levi <Tomer.Levi@nsc.com>
396
397 * dis-asm.h (print_insn_crx): Declare.
398
eea6121a
AM
3992004-06-24 Alan Modra <amodra@bigpond.net.au>
400
401 * bfdlink.h (struct bfd_link_order): Update comment.
402
8c37241b
JJ
4032004-05-11 Jakub Jelinek <jakub@redhat.com>
404
405 * bfdlink.h (struct bfd_link_info): Add relro, relro_start and
406 relro_end fields.
8c37241b 407
619874a6
DD
4082004-05-04 Andreas Jaeger <aj@suse.de>
409
410 * demangle.h: Do not use C++ reserved keyword typename as
411 parameter for cplus_demangle_fill_builtin_type.
412
bb6a587d
DD
4132004-04-22 Richard Henderson <rth@redhat.com>
414
415 * hashtab.h (struct htab): Add size_prime_index.
416
d6ea4e80
DD
4172004-04-13 Jeff Law <law@redhat.com>
418
419 * hashtab.h (htab_remove_elt_with_hash): Prototype new function.
420
f29d4bb8
DD
4212004-03-30 Zack Weinberg <zack@codesourcery.com>
422
423 * hashtab.h, splay-tree.h: Use new shorter form of GTY markers.
424
75d5e263
SS
4252004-03-25 Stan Shebs <shebs@apple.com>
426
427 * mpw/: Remove subdirectory and everything in it.
428
b9cf773d
AM
4292004-03-23 Alan Modra <amodra@bigpond.net.au>
430
431 PR 51.
432 * bfdlink.h (struct bfd_link_info): Add wrap_char.
433
59c2e50f
L
4342004-03-20 H.J. Lu <hongjiu.lu@intel.com>
435
436 * bfdlink.h (bfd_link_info): Correct comments for the
437 unresolved_syms_in_objects field.
438
099f84cf
DD
4392004-02-24 Ian Lance Taylor <ian@wasabisystems.com>
440
441 * dyn-string.h: Update copyright date.
442
74aee4eb
DD
4432004-02-23 Ian Lance Taylor <ian@wasabisystems.com>
444
445 * dyn-string.h: Remove test of IN_LIBGCC2 and IN_GLIBCPP_V3 and
446 the associated #defines.
447
59727473
DD
4482004-01-12 Ian Lance Taylor <ian@wasabisystems.com>
449
062054c5
ILT
450 * demangle.h: Instead of checking ANSI_PROTOTYPES, just include
451 "libiberty.h".
452
9850ebe2
ILT
453 * demangle.h: If ANSI_PROTOTYPES is defined, include <stddef.h>.
454
59727473
DD
455 * demangle.h (enum demangle_component_type): Define.
456 (struct demangle_operator_info): Declare.
457 (struct demangle_builtin_type_info): Declare.
458 (struct demangle_component): Define.
459 (cplus_demangle_fill_component): Declare.
460 (cplus_demangle_fill_name): Declare.
461 (cplus_demangle_fill_builtin_type): Declare.
462 (cplus_demangle_fill_operator): Declare.
463 (cplus_demangle_fill_extended_operator): Declare.
464 (cplus_demangle_fill_ctor, cplus_demangle_fill_dtor): Declare.
465 (cplus_demangle_v3_components): Declare.
466 (cplus_demangle_print): Declare.
467
10ca0e95 468For older changes see ChangeLog-9103
252b5132
RH
469\f
470Local Variables:
471mode: change-log
472left-margin: 8
473fill-column: 74
474version-control: never
475End:
This page took 0.292742 seconds and 4 git commands to generate.