]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
toplev.c (rest_of_compilation): Always set current_function_uses_only_leaf_regs appro...
[gcc.git] / gcc / ChangeLog
CommitLineData
5ad9b85f
JW
1Thu Apr 22 22:22:15 EDT 1999 John Wehle (john@feith.com)
2
3 * toplev.c (rest_of_compilation): Always set
4 current_function_uses_only_leaf_regs appropriately.
5
4197ac78
MK
6Thu Apr 22 14:39:43 1999 Mumit Khan <khan@xraylith.wisc.edu>
7
8 * i386/xm-cygwin.h (HAVE_BCOPY): Delete unneeded macro.
9 (HAVE_BZERO): Likewise.
10 (HAVE_BCMP): Likewise.
11 (HAVE_RINDEX): Likewise.
12 (HAVE_INDEX): Likewise.
13 (DIR_SEPARATOR_2): Define.
14 (GET_ENV_PATH_LIST): Turn path lists into POSIX.
15 (PATH_SEPARATOR): Use ':'.
16
76c8f855
BK
171999-04-22 Bruce Korb <ddsinc09@ix.netcom.com>
18
19 * configure.in: enable disabling of fast fixincludes
20 * configure: regenerate
21
b323effe
ZW
221999-04-21 14:55 -0400 Zack Weinberg <zack@rabi.columbia.edu>
23
24 * gen-protos.c: #undef abort after including system.h.
25 Delete defns of fancy_abort and fatal.
26 * fix-header.c: Delete defn of fancy_abort.
27
4cd4ea91
MK
28Wed Apr 21 12:09:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
29
30 * cccp.c (simplify_filename): Always preserve leading double slash.
31
82bfb8e3
MH
32Wed Apr 21 18:15:55 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
33
34 * config/c4x/c4x.md: Add new peepholes to remove redundant loads.
35
65c78c7d
MH
36Wed Apr 21 17:41:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
37
38 * config/c4x/c4x.md (binary patterns): Reorder alternatives
39 so that two operand instructions are chosen before three operand
82bfb8e3
MH
40 instructions.
41
42Tue Apr 20 23:38:58 1999 Nathan Sidwell <nathan@acm.org>
40e4e3fd 43
191b6fc9
NS
44 * objc/Make-lang.in (objc-parse.c): Put BISON parameters in correct
45 order.
46
47 * Makefile.in (c-parse.c): Put BISON parameters in correct
40e4e3fd
NS
48 order.
49
37679e06
RH
50Tue Apr 20 16:38:11 1999 Richard Henderson <rth@cygnus.com>
51
52 * alpha.md (nt_lda): New pattern.
53 * alpha.c (alpha_expand_prologue): Use it for large frames
54 under windows nt.
55
0f834f0a
CM
56Tue Apr 20 17:57:14 1999 Catherine Moore <clm@cygnus.com>
57
58 * config/arm/arm.md (movhi): Add check for odd offset.
59
296967fe
JW
60Tue Apr 20 13:14:58 EDT 1999 John Wehle (john@feith.com)
61
62 * i386.c (output_move_double): Abort if a non-offsettable
63 memory operand is encountered. Delete unused code.
64 (find_addr_reg): Remove.
65
5b916f26
CB
66Mon Apr 19 21:13:02 1999 Craig Burley <craig@jcb-sc.com>
67
68 * tree.def (BLOCK): Fix typo in comment.
69
80e9dcb4
ZW
701999-04-19 14:51 -0400 Zack Weinberg <zack@rabi.columbia.edu>
71
72 * cpplib.c (output_line_command): Drop CONDITIONAL argument.
73 We can omit unnecessary line commands if file_change ==
74 same_file and pfile->lineno != 0. All callers changed.
75 (cpp_get_token [case '\n']): Don't bump pfile->lineno if
76 CPP_OPTIONS (pfile)->no_line_commands is set.
77 * cpplib.h: Fix prototype of output_line_command.
78
6b84a1ba
ZW
791999-04-18 17:46 -0400 Zack Weinberg <zack@rabi.columbia.edu>
80
81 * cppfiles.c (find_position, read_and_prescan): Use `unsigned
82 long' variables consistently to count line and column numbers.
83
54ff41b7
JW
84Sun Apr 18 15:50:33 EDT 1999 John Wehle (john@feith.com)
85
86 * output.h (current_function_is_leaf,
87 current_function_uses_only_leaf_regs): Declare.
88 * function.c (current_function_is_leaf,
89 current_function_uses_only_leaf_regs): Define.
90 (init_function_start): Initialize current_function_is_leaf
91 and current_function_uses_only_leaf_regs.
92 * final.c (leaf_function): Don't define.
93 (final_start_function): Replace uses of leaf_function with
94 current_function_uses_only_leaf_regs.
95 * toplev.c (rest_of_compilation): Set current_function_is_leaf
96 prior to invoking local register allocation.
97 (rest_of_compilation): Replace uses of leaf_function with
98 current_function_uses_only_leaf_regs.
99 * dbxout.c (dbxout_symbol, dbxout_parms): Likewise.
100 * dwarf2out.c (add_location_or_const_vaule_attribute): Likewise.
101 * dwarfout.c (add_location_or_const_value_attribute): Likewise.
102 * sdbout.c (sdbout_symbol): Likewise.
103 * sparc.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise.
104 * sparc.c (eligible_for_epilogue_delay, output_return,
105 sparc_return_peephole_ok): Likewise.
106 * sparc.md (leaf_function attribute, untyped_return): Likewise.
107 * i386.c (ix86_compute_frame_size): Don't align the stack
108 for leaf functions which don't allocate any stack slots.
109 * tm.texi: Update documentation.
110
a3f2e0fc
JL
111Sun Apr 18 02:15:09 PDT 1999 Jeff Law (law@cygnus.com)
112
113 * version.c: Bump for snapshot.
114
6fab83fd
RH
115Sun Apr 18 00:08:45 1999 Richard Henderson <rth@cygnus.com>
116
117 * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change --
118 make sure FP_BASE_P registers are only used with an integer.
119
5d02b6c2
RH
120Sat Apr 17 22:54:17 1999 Richard Henderson <rth@cygnus.com>
121
122 * alpha.h (REG_OK_FP_BASE_P): New macro.
123 (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Use it.
124 * alpha.md (adddi3+1): New insn to handle large constants off
125 the soft frame pointer.
126 (adddi3+2): Don't split soft frame pointer or arg pointer additions.
127
87ba6944
MH
128Sun Apr 18 17:24:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
129
130 * config/c4x/c4x.c (legitimize_operands): Use rtx_cost
131 to determine if it is worthwhile forcing a constant into a register.
132 * config/c4x/c4x.h (CONST_COSTS): An integer value of 255 or 65535
133 used with a logical and or an integer value of 16 or 24 used with
134 a right shift has zero cost on the C40.
135
695ab36a
BS
136Sat Apr 17 21:30:11 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
137
138 * gcse.c (compute_local_properties): If setp is nonzero, clear
139 TRANSP instead of setting it to all ones.
140
3af4bd89
JH
141Sat Apr 17 21:10:10 1999 Jan Hubicka <hubicka@freesoft.cz>
142
143 * i386.c (i386_preferred_stack_boundary_string): New global variable.
144 (i386_preferred_stack_boundary): New global variable.
145 (override_functions): Set it. Tidy option setting code.
146 * i386.h (TARGET_OPTIONS): New command line option.
147 (i386_preferred_stack_boundary_string): Declare it.
148 (i386_preferred_stack_boundary): Likewise.
149 (PREFERRED_STACK_BOUNDARY): Use i386_preferred_stack_boundary.
150
73fe76e4
JH
151Sat Apr 17 19:22:38 1999 Jan Hubicka <hubicka@freesoft.cz>
152
153 * i386.c (k6_cost): Take into account the decoding time.
154
d119f84c
RH
155Sat Apr 17 19:13:22 1999 Donn Terry <donn@interix.com>
156
157 * i386.h (PRINT_OPERAND_PUNCT_VALID_P): Allow _.
158 * i386.c (print_operand): New %_ operator.
159 (load_pic_register): Proper number of leading _ in GOT literal.
160 * i386.md (prologue_get_pc_and_set_got): Likewise.
161 * i386/unix.h (ASM_OUTPUT_MI_THUNK): Likewise.
162
163Sat Apr 17 19:13:07 1999 Richard Henderson <rth@cygnus.com>
f9d7e5cd
RH
164
165 * alpha.c (alpha_expand_prologue): Use gen_adddi3 instead of
166 emit_move_insn+plus_constant. For NT, don't use the stack probe
167 loop pointer to allocate stack space.
168 * alpha.md (adddi3): Always use lda to set the stack pointer.
169
01198c2f
ZW
1701999-04-17 20:11 -0400 Zack Weinberg <zack@rabi.columbia.edu>
171
172 * c-aux-info.c, emit-rtl.c, explow.c, expmed.c, gcse.c,
173 haifa-sched.c, optabs.c, reorg.c, resource.c, sched.c: Include
174 toplev.h for real declaration of trim_filename.
175 * Makefile.in: Update dependencies.
176
0f4668ef
CB
177Sat Apr 17 14:36:19 1999 Craig Burley <craig@jcb-sc.com>
178
179 * tree.c (chainon): Check for circularity only if
180 ENABLE_CHECKING is defined.
181
fc5045f3
ZW
1821999-04-17 10:15 -0400 Zack Weinberg <zack@rabi.columbia.edu>
183
184 * cccp.c: Make fatal non-static.
185
d98d16b1
MH
186Sat Apr 17 23:47:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
187
188 * config/c4x/c4x.md (*andqi3_255_clobber,*andqi3_65535_clobber):
189 New logical and patterns using C40 bit-field insert instructions.
190 (*lshrqi3_24_clobber,*ashrqi3_24_clobber,*lshrqi3_16_clobber,
191 *ashrqi3_16_clobber): New shift patterns using C40 bit-field insert
192 instructions.
193
2a611d21
ZW
1941999-04-16 22:44 -0400 Zack Weinberg <zack@rabi.columbia.edu>
195
196 * system.h: Always prototype abort. Prototype fatal. Define
197 abort to call fatal, not fprintf/exit. Define a stub macro
198 for trim_filename.
199 * toplev.c: Define DIR_SEPARATOR. (trim_filename): New
200 function.
201 * toplev.h: Prototype trim_filename, and #undef system.h's stub.
202
203 * gcc.c, genattr.c, genattrtab.c, gencodes.c, genconfig.c,
204 genemit.c, genextract.c, genflags.c, genopinit.c, genoutput.c,
205 genpeep.c, genrecog.c: Make fatal non-static.
206 * gcov.c, gengenrtl.c, protoize.c: #undef abort after
207 including system.h.
208
209 * config/i386/dgux.h, config/m68k/xm-amix.h: Remove stale code
210 relating to abort.
211
d8b173bb
MH
212Sat Apr 17 11:25:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
213
214 * config/c4x/c4x.md (mulqf3_clrqf_clobber, mulqi3_clrqi_clobber):
215 New patterns to support parallel multiply and load of zero.
216
ace3c40a
JM
217Fri Apr 16 01:23:47 1999 Jason Merrill <jason@yorick.cygnus.com>
218
219 * tree.c (valid_machine_attribute): If we're modifying the
220 FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl,
221 update the POINTER_TYPE.
222
a14003ee
JH
223Fri Apr 16 00:19:31 1999 Jan Hubicka <hubicka@freesoft.cz>
224
225 * i386.c (x86_adjust_cost): Move break statement to correct place.
226
7c311035
JQ
227Thu Apr 15 23:17:33 1999 Jerry Quinn <jquinn@nortelnetworks.com>
228
229 * pa.h (HAVE_PRE_INCREMENT, HAVE_POST_INCREMENT,
230 HAVE_PRE_DECREMENT, HAVE_POST_DECREMENT): Fix pa_cpu value from
231 8000 to PROCESSOR_8000.
232
aefe40b1
DT
233Thu Apr 15 20:46:57 1999 Donn Terry (donn@interix.com)
234
6419e5b0
DT
235 * expr.c (expand_assignment): Force pointers to proper mode if
236 POINTERS_EXTEND_UNSIGNED is defined.
237
79dc434e
DT
238 * xm-alpha.h (alloca.h): Add Interix to list of special machines
239 that don't like alloca.h, pending using autoconf results.
240
30bf7f73
DT
241 * except.c (start_catch_hadler): Be sure rtime_address is Pmode
242 if POINTERS_EXTEND_UNSIGNED.
243
aefe40b1
DT
244 * except.c (expand_eh_return): Force pointers to proper mode if
245 POINTERS_EXTEND_UNSIGNED.
246
1ac7a7f5
MH
247Thu Apr 15 23:13:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
248
249 * config/c4x/c4x.h: Tweaked comment formatting.
250 * config/c4x/c4x.c: Likewise.
251
75923b2f
MK
252Thu Apr 15 02:45:19 1999 Mumit Khan <khan@xraylith.wisc.edu>
253
254 * aclocal.m4 (GCC_FUNC_MKDIR_TAKES_ONE_ARG): Define.
255 * configure.in: Use.
256 * configure: Rebuilt.
257 * acconfig.h (MKDIR_TAKES_ONE_ARG): Add.
258 * config.in: Rebuilt.
259 * system.h: Use.
260
b222082e
JH
261Thu Apr 15 01:03:21 1999 Jan Hubicka <hubicka@freesoft.cz>
262 Jeff Law <law@cygnus.com>
263
7c802a40
JH
264 * i386.md (QImode add pattern): Support lea instruction.
265 (HImode add pattern): Likewise.
266
6ec6d558
JH
267 * i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3.
268 (ashlqi): Use expander, separate LEA and SAL / ADD patterns; call
269 output_ashl.
270 (ashlhi): Likewise.
271 * i386.h (output_ashl): Renamed from output_ashlsi3.
272 * i386.c (output_ashl): Likewise; support HImode and QImode operands
273 as well.
274
b222082e
JH
275 * i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call
276 memory_address_displacement_length instead of memory_address_length.
277 * i386.c (memory_address_info): Renamed from memory_address_length.
278 Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH,
279 then return the displacement length. Else return length of the
280 entire memory address. Handle MULT case correctly.
281 * i386.h (memory_address_info): Update declaration.
282
283 * i386.md (memory_bit_test): Fix paren error.
284
a3e924fc
AH
285Wed Apr 14 21:29:18 1999 Andrew Haley <aph@cygnus.com>
286
287 * flow.c: (make_edges): Always make edges from a basic block
288 to its exception handlers, even if the block ends with a jump.
289
a30d557c
ZW
2901999-04-14 23:26 -0400 Zack Weinberg <zack@rabi.columbia.edu>
291
292 * graph.c (node_data): Return void. Ignore result of
293 print_rtl_single. Change caller to match.
294 * integrate.c (subst_constants): Initialize op0_mode to an
295 invalid mode, and abort before use if it's still invalid.
296 (Can only happen if the RTX_CLASS, RTX_FORMAT tables are corrupted.)
297 * objc/objc-act.c (get_objc_string_decl,
298 build_selector_translation_table, generate_protocol_list,
299 synth_id_with_class_suffix, build_keyword_selector,
300 build_selector_expr, gen_declarator): Abort when the tree
301 structure is corrupted.
302
8354da48
JL
303Wed Apr 14 19:57:49 1999 Jeffrey A Law (law@cygnus.com)
304
305 * configure.in (alpha interix): Use symbolic names to set
306 target_cpu_default.
307 * configure: Rebuilt.
308
e0a52410
JL
309 * explow.c (allocate_dynamic_stack_space): Undo last change. Use
310 convert_memory_address instead.
311
2abed3c1
DT
312Wed Apr 14 19:42:02 1999 Donn Terry (donn@interix.com)
313
ff1555f8
DT
314 * alpha/lib1funcs.asm: New file.
315 * alpha/t-interix (lib1funcs.asm): Add to build.
316
2abed3c1
DT
317 * explow.c (allocate_dynamic_stack_space): Correctly convert TARGET
318 to Pmode.
319
cda749b1
JW
320Wed Apr 14 14:26:36 1999 John Wehle (john@feith.com)
321
ffac3509
JW
322 * i386.md (truncxfdf): Output the template supplied
323 by output_move_double with the correct operands.
324
a30d557c
ZW
325 * i386.md (extendsfdf, extendsfxf, extenddfxf): Use
326 output_float_extend instead specifying '#' as the template.
327 * i386.c (output_float_extend): Define.
328 * i386.h (output_float_extend): Declare.
cda749b1 329
d8265d29
CM
330Wed Apr 14 10:48:03 1999 Catherine Moore <clm@cygnus.com>
331
a30d557c
ZW
332 * config/mips/elf.h, config/mips/elf64.h
333 (CTORS_SECTION_ASM_OP): Define.
334 (DTORS_SECTION_ASM_OP): Define.
335 (EXTRA_SECTIONS): Define.
336 (INVOKE__main): Define.
337 (NAME__MAIN): Define.
338 (SYMBOL__MAIN): Define.
339 (EXTRA_SECTIONS_FUNCTIONS): Define.
340 (SECTION_FUNCTION_TEMPLATE): Define.
341 (ASM_OUTPUT_CONSTRUCTOR): Define.
342 (ASM_OUTPUT_DESTRUCTOR): Define.
343 (CTOR_LIST_BEGIN): Define.
344 (CTOR_LIST_END): Define.
345 (DTOR_LIST_BEGIN): Define.
346 (DTOR_LIST_END): Define.
347 (LIB_SPEC): Define.
348 (STARTFILE_SPEC): Define.
349 (ENDFILE_SPEC): Define.
350 * config/mips/linux.h: Undefine all of the above.
351 * config/mips/rtems64.h: Likewise.
352 * config/mips/t-r3900: Likewise.
353 * config/mips/t-elf: New file.
354 * config/mips/vxworks.h: New file.
355 * configure.in (mips-wrs-vxworks): Use mips/vxworks.h.
356 (mips*-*-*elf*): Use t-elf instead of t-ecoff.
357 * configure: Regenerate.
d8265d29 358
4eea1672
RH
359Wed Apr 14 09:59:38 1999 Richard Henderson <rth@cygnus.com>
360
361 * reload1.c (emit_reload_insns): Also find equivalent mems
362 for subregs of pseudos.
363
4e46365b
RH
364 * alpha.c (aligned_memory_operand): Recognize the output of
365 LEGITIMIZE_RELOAD_ADDRESS. Examine reg_equiv_memory_loc in
366 the event of a pseudo.
367 (unaligned_memory_operand): Likewise. Don't otherwise accept
368 completely illegal addresses.
369 (normal_memory_operand): Likewise. Handle subregs of pseudos.
370 (get_aligned_mem): Revert previous change. Abort if we don't have a
371 mem. During reload, call find_replacement on all illegal memories.
372 (get_unaligned_address): Likewise.
373 * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Use !aligned_memory_operand
374 instead of unaligned_memory_operand.
375 * alpha.md: Revert extra argument to get_aligned_mem.
376 (reload_inqi): Use any_memory_operand in constraints. Abort if
377 we're not given some sort of mem.
378 (reload_inhi): Likewise.
379 (reload_outqi, reload_outhi): Likewise.
380
c5fb6d4a
RH
381Wed Apr 14 09:39:20 1999 Richard Henderson <rth@cygnus.com>
382
383 * i386.md (neghi): Use the whole register when widening the op.
384
34ca9541
ZW
3851999-04-14 12:37 -0400 Zack Weinberg <zack@rabi.columbia.edu>
386
387 * cpperror.c, cppexp.c, cpplib.c: Never call abort.
388 * cpphash.c: Only call abort when we detect corruption of the
389 malloc arena.
390 * cppmain.c: Don't define fatal or fancy_abort.
391
42ebbb0a
JH
392Wed Apr 14 09:19:39 1999 Jan Hubicka <hubicka@freesoft.cz>
393
394 * i386.c (x86_adjust_cost): Agi stall takes 1 cycle on Pentium, fst
395 requires value to be ready one extra cycle.
396
d2328603
DB
397Wed Apr 14 11:28:34 1999 Dave Brolley <brolley@cygnus.com>
398
399 * config/i386/i386.c (memory_address_length): Add missing parenthesis.
400
2de45c06
ML
401Wed Apr 14 13:59:27 1999 Martin von Loewis <loewis@informatik.hu-berlin.de>
402
403 * extend.texi (Deprecated Features): New node.
404 * invoke.texi (-Wdeprecated): Document.
405
c0b9be67
JH
406Wed Apr 14 00:18:22 1999 Jan Hubicka <hubicka@freesoft.cz>
407
853c37e3
JH
408 * i386.md (SImode logical compare): Avoid outputing non-pariable testw
409 and testl on Pentium.
410 (register and memory bit tests): Likewise.
411 (setcc, normal and reversed conditional branches): Use shorter
412 sequence for testing flags stored in EAX.
413
bb524860
JH
414 * i386.md (xorsi3): Do not output NOT instrctions on Pentium.
415 (xorqi3): Likewise.
416 (xorhi3): Likewise.
417 (notsi2): Likewise.
418 (notqi2): Likewise.
419 (nothi2): Likewise; do not output prefixed opcodes when possible.
420
c0b9be67
JH
421 * i386.md (neghi2): Do not output prefixed opcode when possible.
422 (ashlhi3): Likewise.
423
fb693d44
RH
424Wed Apr 14 00:08:46 1999 Richard Henderson <rth@cygnus.com>
425
426 * i386.c (memory_address_length): New function.
427 * i386.h (memory_address_length): Declare it.
428
615c8231 429Tue Apr 13 22:52:04 1999 Donn Terry (donn@interix.com)
34ca9541 430 Martin Heller (Ing.-Buero_Heller@t-online.de)
615c8231
DT
431
432 * configure.in (interix Alpha): Add.
433 (winnt Alpha): Use alpha32.h
434 (interix i386): Parallel Alpha32.
435 * configure: Rebuilt.
436
437 * config/interix.h: Move common elements from i386-interix.h.
438 * config/i386/i386-interix.h: Delete same.
439 * config/alpha/alpha-interix.h: New file.
440
441 * config/alpha/alpha32.h: New file, part fron win-nt.h.
442 * config/alpha/win-nt.h: Deletions (-> alpha32.h).
443 * config/alpha/interix.h: New file
444
445 * config/alpha/alpha.md (interix): Comment.
446
447 * config/alpha/xm-alpha-interix.h: New file.
448
34ca9541 449 * config/alpha/t-interix: New file.
615c8231
DT
450
451 * fixinc/mkfixinc.sh (interix/Alpha): Add.
452
5e37fb50
MS
4531999-04-13 Mike Stump <mrs@wrs.com>
454
455 * i386/vxi386.h (CPP_CPU_SPEC): Define appropriately for vxworks.
456 (CPP_PREDEFINES, LIB_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): likewise.
457
adfaf194
JM
458Tue Apr 13 21:01:36 1999 Jason Merrill <jason@yorick.cygnus.com>
459
460 * c-common.c (default_valid_lang_attribute): New fn.
461 (valid_lang_attribute): New callback ptr.
462 (decl_attributes): Call it. Move init_priority support into
463 C++ frontend.
464
63a4a903
JW
465Tue Apr 13 17:47:14 1999 John Wehle (john@feith.com)
466
467 * i386.md (movdi): Add splitter.
468
ebcc44f4
MH
469Wed Apr 14 10:04:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
470
471 * config/c4x/c4x.md (storeqf_int, storeqf_int_clobber, loadqf_int,
f133e603
MS
472 loadqf_int_clobber): Add new patterns with corresponding splitters
473 to handle moves of floating point values into and out of intager
474 registers by using memory.
ebcc44f4
MH
475
476 * config/c4x/c4x.c (c4x_check_legit_addr): Disallow PRE_INC for modes
477 other than QFmode and QImode.
478 (mixed_subreg_operand): New function.
479 (c4x_emit_move_sequence): If moving a floating point value into or
480 out of an integer register, use the new patterns storeqf_int_clobber
481 or loadqf_int_clobber.
482 (reg_imm_operand, *_reg_operand): Call reg_operand instead of
483 register_operand.
484 (reg_operand, src_operand): Disallow operand if it satisifes
485 mixed_subreg_operand.
486
487 * config/c4x/c4x.h (mixed_subreg_operand): Add prototype.
488
f133e603 489Tue Apr 13 14:49:13 1999 Jan Hubicka <hubicka@freesoft.cz>
b985a30f
JH
490
491 * i386.c (agi_dependent): Handle push operation more correctly.
492
f133e603 493Tue Apr 13 14:45:17 1999 Jan Hubicka <hubicka@freesoft.cz>
6e383e61
JH
494
495 * i386.md (anddi3): Add % constraint.
496 (iordi3, xordi3): Likewise.
497
f133e603 498Tue Apr 13 14:29:58 1999 Jan Hubicka <hubicka@freesoft.cz>
813d245a
JH
499
500 * i386.md (extendhisi2): Output mov instead of cw instruction for K6
501 to improve decoding bandwidth.
502 * i386.md (extendhiqi2): Likewise.
503
f133e603 504Tue Apr 13 14:26:31 1999 Jan Hubicka <hubicka@freesoft.cz>
f72b27a5
JH
505
506 * i386.md (movsf_push): Handle memory to memory case too, new splitter.
507 (movdf_push, movxf_push): Likewise.
508 (movsf_push_memory, movdf_push_memory, movxf_push_memory): Remove.
509
f133e603 510Tue Apr 13 14:14:06 1999 Jan Hubicka <hubicka@freesoft.cz>
0ffc4dca
JH
511
512 * i386.md: Do not output mov %0,reg on AMD K6.
513
9e934a98
DB
514Tue Apr 13 12:14:07 1999 Dave Brolley <brolley@cygnus.com>
515
516 * cppinit.c (cpp_start_read): Fix buffer overwrite.
517 * Makefile.in (cppinit.o): Typo in dependencies.
518
f133e603 519Tue Apr 13 05:04:59 1999 Richard Earnshaw (rearnsha@arm.com)
0e8285f1
RE
520
521 * arm.h (function prototypes for arm.c): Ifdef these out if
522 HAVE_CONFIG_H is not defined.
523
d2d28085
JL
524Tue Apr 13 02:11:11 1999 Jeffrey A Law (law@cygnus.com)
525
f133e603
MS
526 * pa.c: Avoid Using immediate zero for register zero.
527 * pa.md: Likewise.
55abf18a 528
f133e603
MS
529 * pa.c (print_operand, case 'f'): New case for FP register or 0.0.
530 (print_operand, case 'r'): Use %r0 for zero value.
531 * pa.md (move patterns, fcmp patterns): Use new %f output arg.
55abf18a 532
f133e603 533 * pa.c: Use a register name, not a raw immediate in branch,
3b5e5fb3
JL
534 compare/clear, sub, subb, uaddcm and vshd instructions.
535 * pa.md: Likewise.
536
f133e603 537 * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
3b5e5fb3 538
f24d52e1
JL
539 * pa.c: Use a register name, not a raw immediate in "bv" instructions.
540 * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
541
d2d28085
JL
542 * pa.c: Remove space register specification in memory addresses,
543 except where it is actually needed.
544 * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
545
f133e603 546Mon Apr 12 23:34:35 1999 Jeff Law (law@cygnus.com)
c499fa64
JL
547
548 * version.c: Bump for snapshot.
549
f133e603 550Mon Apr 12 14:58:30 1999 Jan Hubicka <hubicka@freesoft.cz>
791ca74c
JH
551
552 * reg-stack.c (check_stack_regs_mentioned): Remove variable SIZE.
553
f133e603 554Mon Apr 12 19:15:17 1999 Daniel Jacobowitz <dan@debian.org>
3c59b7ab
DJ
555
556 * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Add missing backslash.
557
c6df90d8
MK
558Mon Apr 12 19:11:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
559
560 * i386/cygwin.h (SUBTARGET_SWITCHES): Add -mconsole; fix
561 -mno-nop-fun-dllimport and minor doc fixes.
562 (STARTFILE_SPEC): Cygwin DLLs don't have dllcrt0.
563 (LINK_SPEC): Add -mconsole support.
564 * i386/mingw32.h (LIB_SPEC): Make libraries consistent with
565 Cygwin.
566 (LINK_SPEC): Remove. Use Cygwin's version.
567 (MATH_LIBRARY): Make it null.
568 * i386/crtdll.h (MATH_LIBRARY): Likewise.
569
f133e603 570Fri Apr 12 15:00:52 1999 Stan Cox <scox@cygnus.com>
007aaed0
SC
571
572 * c-decl.c (c_decode_option, start_decl, start_function,
573 finish_function) : Recognize -Wno-main so we can avoid warnings.
574
f133e603 5751999-04-12 Zack Weinberg <zack@rabi.columbia.edu>
ed45de98
ZW
576
577 * cpphash.c (collect_expansion, macroexpand,
578 push_macro_expansion): Make the escape character in macro
579 buffers '\r', not '@'. Remove code to protect literal
580 occurences of the escape character; '\r' cannot appear
581 in a macro buffer unless we put it there.
582 * cpplib.c (skip_comment, copy_comment, cpp_skip_hspace,
583 copy_rest_of_line, cpp_get_token, parse_string,
584 parse_assertion): '\r' might be a backslash-newline marker, or
585 it might be a macro escape marker, depending on
586 CPP_BUFFER (pfile)->has_escapes. '@' is not a special
587 character.
588 * cpplib.h: Update commentary.
589
f133e603 590Mon Apr 12 09:30:03 1999 Richard Earnshaw (rearnsha@arm.com)
f9cc092a
RE
591
592 * arm.h (target_fp_name, structure_size_string, arm_cpu_select):
593 Const-ify.
594 * arm.c (target_fp_name, structure_size_string): Const-ify.
595
596 * arm.md (reload_inhi, reload_outhi): Make the scratch DImode.
597 * arm.c (arm_reload_in_hi): Handle cases when the input is still
598 a pseudo, make use of scratch registers for reloading the address
599 as appropriate.
600 (arm_reload_outhi): Similarly for when the output is still a pseudo.
601
602 * riscix.h (SUBTARGET_SWITCHES): Document.
603
f133e603 6041999-04-12 Bruce Korb <ddsinc09@ix.netcom.com>
9ae0257f 605
c3c55f86
BK
606 * fixincludes:
607 make fixincludes behave like the scripts in fixinc/
608
f853036b
BK
609 * Makefile.in( stmp-fixinc ):
610 ensure the SHELL value is that of the make
611
9ae0257f
BK
612 * fixincl/inclhack.tpl:
613 the file name lists ought to be restricted to "*.h" anyway
614 C++ files may be named .../[a-z]++/... also
615 Adding copyright year and attribution to output
616
617 * fixincl/inclhack.def:
618 fixed broken expression
619 Clarify a some comments
620
621 * fixincl/fixincl.tpl:
622 Clarify a some comments
623 Remove dead template text
624 Correct the counting of regular expressions
625
96043e7e
RH
626Mon Apr 12 03:07:44 1999 Richard Henderson <rth@cygnus.com>
627
628 * alpha.c (aligned_memory_operand): Handle out of range stack slots.
629 Take a new SCRATCH argument for the occasion. Update all callers.
630 (get_unaligned_address): Abort on out of range stack slots.
631 * alpha.md (adddi3 splitter): Check s_p_rtx not REGNO.
632 (reload_inqi): Check for aligned mems before unaligned.
633 (reload_inhi): Likewise.
634
55a98783
JL
635Mon Apr 12 03:11:30 1999 Jeffrey A Law (law@cygnus.com)
636
637 * flow.c (flow_delete_insn): If we delete a CODE_LABEL, also remove
638 it from the nonlocal_goto_handler_labels list.
639 * jump.c (delete_insn): Likewise.
640 (jump_optimize_1): Also recompute LABEL_NUSES when we are just
641 marking labels.
642 * rtl.h (remove_node_from_expr_list): Declare.
643 * rtlanal.c (remove_node_from_expr_list): New function.
644
f133e603 645Mon Apr 12 02:37:02 1999 Jan Hubicka <hubicka@freesoft.cz>
21b2cd73
JH
646
647 * reg-stack.c: Update comment, include varray.h.
648 (stack_regs_mentioned_data): New global variable.
649 (check_stack_regs_mentioned): New function.
650 (stack_regs_mentioned): New function.
651 (reg_to_stack): Initialize and free stack_regs_mentioned_data,
652 use stack_regs_mentioned.
653 (record_asm_reg_life): Change insn type cache for changed insn.
654 (record_reg_life): Do not change the insn mode.
655 (emit_pop_insn): Likewise.
656 (emit_swap_insn): Likewise.
657 (move_for_stack_reg): Likewise.
658 (stack_reg_life_analysis): Use stack_regs_mentioned.
659 (emit_swap_insn): Likewise.
660 (subst_stack_regs): Likewise.
661 (convert_regs): Likewise.
662 * jump.c (find_cross_jump): Use stack_regs_mentioned.
663 * rtl.h (stack_regs_mentioned): Declare.
664
f133e603 665Mon Apr 12 00:57:10 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
c51262cf
TP
666
667 * integrate.c (INTEGRATE_THRESHOLD): Sync it with the comment.
668
10c5bca8
MM
669Sun Apr 11 10:24:18 1999 Mark Mitchell <mark@codesourcery.com>
670
671 * rtl.h (rtx_def): Update documentation for jump and call.
672
1ae5c6c2
KG
673Sun Apr 11 07:43:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
674
675 * jump.c (jump_optimize_1): Make the definition static to match
676 the prototype.
677
f133e603 678Sat Apr 10 22:51:53 1999 Jan Hubicka <hubicka@limax.paru.cas.cz>
11f246f6
JH
679
680 * flow.c (life_analysis): New parameter remove_dead_code.
681 (life_analysis_1): Likewise.
682 (propagate_block): Likewise; use it.
683 * output.h: Update prototype.
684 * toplev.c: Update calls to life_analysis.
685
f133e603
MS
686Sat Apr 10 22:12:12 1999 Jan Hubicka <hubicka@freesoft.cz>
687
62674ffe
JH
688 * recog.c (constrain_operands): Ignore unary operators when
689 matching operands. Recognize '5'..'9' as well.
690
83f4345f
PT
691Sat Apr 10 21:53:02 1999 Philipp Thomas (kthomas@gwdg.de)
692 Richard Henderson <rth@cygnus.com>
693
694 * configure.in: Set target_cpu_default2 for target_alias k6.
695 * i386.h (TARGET_SWITCHES): Remove no-<cpu> entries.
696 (CC1_CPU_SPEC): Likewise.
697 (CPP_CPU_DEFAULT_SPEC): Streamline definition. Add K6 version.
698 (CPP_K6_SPEC): New.
699 (CPP_CPU_SPEC): Add K6 variant.
700 (EXTRA_SPECS): Likewise.
701
f5c14c21
RH
702Fri Apr 9 11:29:17 1999 Richard Henderson <rth@cygnus.com>
703
704 * flow.c (merge_blocks_nomove): Rewrite to properly handle two
705 blocks that vanish entirely during merging.
706
f133e603 707Sat Apr 10 20:09:55 1999 John Wehle (john@feith.com)
6a4a5d95
JW
708
709 * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
710 floatsixf2, floatdixf2, movsicc, movhicc, movsfcc, movdfcc,
711 movxfcc, movdicc): Remove unused register constraints from
712 the splitters.
713
714 * i386.md (fixuns_truncsfsi2, fixuns_truncdfsi2,
715 fixuns_truncxfsi2): Delete.
716
717 * reg-stack.c (delete_insn_for_stacker): Ensure that
718 the only side effects of a PARALLEL are clobbers.
719 (subst_stack_regs): Handle subst_stack_regs_pat deleting
720 a PARALLEL.
721 * i386.md (extendsfdf2, extenddfxf2,
722 extendsfxf2): Rewrite using a splitter.
723 * i386.c (output_op_from_reg): Remove.
724 * i386.h: Likewise.
725
e9c6b69b
NC
726Sat Apr 10 13:09:18 1999 Nick Clifton <nickc@cygnus.com>
727
728 * config/arm/arm.c (di_operand): Allow SUBREGs as well.
729 (soft_df_operand): Allow SUBREGs as well.
730
fe0ce426
JH
731Sat Apr 10 06:14:31 1999 Jan Hubicka <hubicka@paru.cas.cz>
732
733 * extend.texi (Assembler Instructions with C Expression Operands):
734 Document the i386 floating point operands.
735
28897609
MS
7361999-04-10 Mike Stump <mrs@wrs.com>
737
738 * configure.in (*-*-vxworks): Add vxWorks thread support for all
739 vxWorks targets.
740 * configure.in (thumb-wrs-xvworks): Add vxWorks support for thumb.
741 * configure: Rebuilt.
742
f133e603 743Sat Apr 10 06:04:50 1999 Donn Terry (donn@interix.com)
97ad1d43
DT
744
745 * i386/t-interix: Use mostly system headers unchanged.
746 Use system assert.h
747 * fixinc/fixinc.interix: Ditto (make almost no-op).
748 * config/x-interix.h (_ALL_SOURCE): add -D
749 * config/x-interix.h (crti.o): Delete dependency.
750 * config/xm-interix.h (ONLY_INT_FIELDS): Define only when bootstrapping.
751 * i386/xm-i386-interix.h: New file.
752 * i386/interix.h (ASM_OUTPUT_LIMITED_STRING): Fix warnings.
753 * i386/i386-interix.h: Renamed from interix.h.
754 * configure.in (interix): Use new files.
755 * configure: Rebuilt.
756
f133e603 757Sat Apr 10 05:25:28 1999 Daniel Jacobowitz <dan@debian.org>
f58f9450
DJ
758
759 * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Fix conditions
760 for -Dunix and -Dlinux, and remove duplicate definition.
761 Change -Asystem(linux) to -Asystem(posix).
762 (CPP_OS_SOLARIS_SPEC): Fix conditions for -Dunix, -Dsun,
763 -DSVR4, -D__EXTENSIONS__.
764
765 * rs6000/linux.h (CPP_PREDEFINES): Remove -Dunix,
766 -Dlinux, -Asystem(linux), and -Asystem(unix).
767
509781a4
ME
768Sat Apr 10 05:14:50 1999 Mark Elbrecht <snowball3@usa.net>
769
9ee9f4f0
ME
770 * i386/djgpp.h (SET_ASM_OP): Define.
771
e6cfbc9e
ME
772 * cccp.c (DIR_SEPARATOR): Move to the top of the file.
773 (is_dir_separator): New function.
774 (simplify_filename): Use it.
509781a4
ME
775 * collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place
776 of the DIR_SEPARATOR test.
777 Consider any file starting with a drivename to be absolute.
778 If the absolute filename test fails and EXECUTABLE_SUFFIX is
779 defined, append EXECUTABLE_SUFFIX to the file and try again.
780 * cppinit.c (base_name): Use HAVE_DOS_BASED_FILE_SYSTEM
781 in place of __MSDOS__ and _WIN32.
782 * cppfiles.c (simplify_pathname): Likewise.
783 * gcc.c (IS_DIR_SEPARATOR): Define new macro. Returns true if a
784 character is a directory separator.
785 (find_a_file): Use it.
786 (convert_filename): Likewise.
787 (process_command): Likewise.
788 (do_spec_1): Likewise.
789 (is_directory): Likewise.
790 (main): Likewise.
791 * prefix.c (IS_DIR_SEPARATOR): Define. Tests whether a character is
792 a directory separator.
793 (translate_name): Use it.
794 (update_path): Change DIR_SEPARATOR_2 to DIR_SEPARATOR. Fix
795 warning in block where '/' is changed to DIR_SEPARATOR.
796 * i386/xm-djgpp.h (DIR_SEPARATOR): Set to '/'.
797 (DIR_SEPARATOR_2): New macro. Set to '\'.
798 (HAVE_DOS_BASED_FILESYS): Define.
799 * i386/xm-mingw32.h: Updated copyright. Set
800 DIR_SEPARATOR_2 to '/'. Define HAVE_DOS_BASED_FILE_SYSTEM.
801 * i386/xm-os2.h: Likewise.
802 * winnt/xm-winnt.h: Likewise.
803 * i386/xm-dos.h: Likewise. Add copyright.
804
d14ff9bd
JM
8051999-04-10 Joseph S. Myers <jsm28@cam.ac.uk>
806
807 * pdp11.h (TARGET_SWITCHES): Add option to vary assembler syntax.
808 (TARGET_DEFAULT): Possibly use UNIX syntax.
809 (TARGET_UNIX_ASM, TARGET_UNIX_ASM_DEFAULT): New macros.
810 (REGISTER_NAMES): Use "r5" instead of "fp".
811 (ASM_OUTPUT_ALIGN): Use ".even" directive, and abort for any
812 greater alignment.
813 * 2bsd.h (TARGET_UNIX_ASM_DEFAULT): Default to UNIX assembler
814 syntax for 2BSD.
815 * pdp11.c (output_ascii): Use working syntax for ".byte".
816 (print_operand_address): Use "*" instead of "@" when using UNIX
817 assembler syntax.
818
3f1b9b1b
JL
819Sat Apr 10 03:50:12 1999 Jeffrey A Law (law@cygnus.com)
820
c4403371
JL
821 * rtl.h (rebuild_jump_labels): Declare.
822 * jump.c (jump_optimize_1): Renamed from jump_optimize. Make static.
823 Add new argument MARK_LABELS_ONLY. Quit after mark_all_labels if
824 requested.
825 (jump_optimize, rebuild_jump_labels): New wrapper functions for
826 jump_optimize_1.
827 * toplev.c (rest_of_compilation): Use rebuild_jump_labels instead of
828 running the entire jump optimizer.
829
3f1b9b1b
JL
830 * rtl.h (local_alloc): Returns an integer now.
831 * local-alloc.c (recorded_label_ref): New file scoped variable.
832 (local_alloc): Initialize recorded_label_ref to zero. Return its
833 value when local allocation has completed.
834 (update_equiv_regs); If we create an equivalence for a LABEL_REF,
835 set recorded_label_ref.
5d90cd8f 836 * toplev.c (rest_of_compilation): Run the jump optimizer after
3f1b9b1b
JL
837 register allocation and reloading if needed.
838
f133e603 839Fri Apr 9 21:02:57 1999 Krister Walfridsson (cato@df.lth.se)
a059f76b 840
f133e603 841 * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Fix typo.
a059f76b
KW
842 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
843
f133e603 8441999-04-09 Zack Weinberg <zack@rabi.columbia.edu>
5e4df1ae
ZW
845
846 * cpphash.c (special_symbol): When expanding __LINE__, use the
847 top file buffer, not the top buffer.
848
73a3903d
JW
849Fri Apr 9 13:41:04 1999 Jim Wilson <wilson@cygnus.com>
850
851 * Makefile.in (check-g++, check-gcc, check-g77, check-objc): Add
852 cd .. to TCL_LIBRARY command.
853
0122a613
NC
854Fri Apr 9 13:04:52 1999 Nick Clifton <nickc@cygnus.com>
855
856 * config/arm/unknown-elf.h (SUBTARGET_CPU_DEFAULT): Only define if
857 not already specified.
858
09a07623
JM
859Fri Apr 9 11:18:55 1999 Jason Merrill <jason@yorick.cygnus.com>
860
861 * c-common.c (decl_attributes, A_INIT_PRIORITY): Allow arrays
862 of classes, too.
863
d330fd93
KG
864Fri Apr 9 10:40:10 1999 Kaveh R. Ghazi <ghazi@snafu.rutgers.edu>
865
866 * rs6000.c (rs6000_override_options, ptt, rs6000_file_start,
867 rs6000_float_const, rs6000_replace_regno, debug_stack_info,
868 rs6000_output_load_toc_table, output_prolog, output_epilog):
869 Const-ify a char*.
870 (output_mi_thunk): Likewise. Mark parameter `thunk_fndecl' with
871 ATTRIBUTE_UNUSED. Hide unused variables `r0', `sp', `toc',
872 `schain', `r12', `buf' and `labelno'.
873 (output_ascii): Const-ify a char*.
874 (rs6000_gen_section_name): Initialize variable `last_period'.
875 (rs6000_adjust_priority): Mark parameter `insn' with
876 ATTRIBUTE_UNUSED.
877 (rs6000_trampoline_template, rs6000_dll_import_ref,
878 rs6000_longcall_ref, rs6000_encode_section_info): Const-ify a char*.
879
880 * rs6000.h (offsettable_mem_operand, optimization_options): Add
881 prototypes.
882
883 * rs6000.md (movdi, define_split): Cast a value to HOST_WIDE_INT
884 when comparing against one.
885
d4ca58b3
JL
886Thu Apr 8 19:20:18 1999 Jeffrey A Law (law@cygnus.com)
887
efd07ca7
JL
888 * expr.c (expand_expr, case ARRAY_REF, COMPONENT_REF, BIT_FIELD_REF):
889 Do not try to optimize a aggregate address which has VOIDmode.
890 Mirrors March 23 change to expand_assignment.
891
4f282ba1
JL
892 * flow.c (delete_unreachable_blocks): Do not require EDGE_FALLTHRU
893 for an edge when tidying an edge which connects consecutive basic
894 blocks.
abb3f0a9
JL
895
896 * flow.c (can_delete_label_p): Do not convert a label into a
897 deleted label here.
898
01e752d3
JL
899 * cse.c (flush_hash_table): New function.
900 (cse_insn): Flush the hash table when we encounter a volatile asm.
901 (cse_basic_block): Use flush_hash_table instead of doing it
902 inline.
903
904 * reload1.c (reload_cse_regs_1): Flush known register values if
905 we encounter a volatile asm.
906
d4ca58b3
JL
907 * loop.c (strength_reduce): Re-enable Joern's loop improvements.
908
36ba9cb8
NC
909Thu Apr 8 09:37:40 1999 Nick Clifton <nickc@cygnus.com>
910
911 * config/arm/arm.c (arm_print_operand): Undo previous change -
912 always print large constants in decimal.
913
64ccbc99
KG
914Thu Apr 8 10:22:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
915
916 * configure.in (host_xm_file, build_xm_file): Include hwint.h.
917 Use case statements instead of "if test -a ... -a ... -a ..."
918
919 * machmode.h: Don't define HOST_WIDE_INT, etc. Wrap use of
3fb2a045 920 HOST_WIDE_INT in #ifdef.
64ccbc99
KG
921
922 * mips.h: Include hwint.h instead of providing definitions for
923 HOST_WIDE_INT, etc. Wrap uses of HOST_WIDE_INT in #ifdef.
924
f133e603 925Thu Apr 8 06:16:14 1999 John Wehle (john@feith.com)
e4ad1003
JW
926
927 * i386.md (truncdfsf2, truncxfsf2,
928 truncxfdf2): Rewrite using a splitter.
929
f133e603 930Thu Apr 8 01:26:05 1999 Arg Haas (ahaas@neosoft.com)
0385ba57
AH
931 Jeffrey A Law (law@cygnus.com)
932
3fb2a045 933 * freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Avoid ambiguous
0385ba57
AH
934 else statement.
935 * gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
936 * linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
937 * openbsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
938
a45f3331
JW
939Wed Apr 7 22:40:19 1999 Jim Wilson <wilson@cygnus.com>
940
941 * i960/i960.c (i960_function_prologue): Don't save static chain
942 pointer.
943 * i960/i960.h (STACK_CHAIN_REGNUM): Change from r3 to g12.
944 (TRAMPOLINE_TEMPLATE): Likewise.
945 (FRAME_POINTER_REQUIRED): Check current_function_has_nonlocal_goto.
946 * i960/i960.md (nonlocal_goto): Rewrite.
947
140fa895
PB
948Tue Apr 6 17:49:49 1999 Philip Blundell <pb@nexus.co.uk>
949
950 * config/arm/lib1funcs.asm: Test for __ELF__ not __elf__.
951
94d5c456
JL
952Wed Apr 7 14:07:34 1999 Jeffrey A Law (law@cygnus.com)
953
098f2a1e
JL
954 * h8300.c (h8300_adjust_insn_length): Also avoid recognizing
955 ADDR_VEC and ADDR_DIFF_VEC insns.
956
47cf37f9
JL
957 * h8300.c (h8300_adjust_insn_length): Avoid trying to recognize
958 USE, CLOBBER or SEQUENCE insns.
959
960 * unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid
961 to account for the uncopied insn that sets cc0 at the end of the loop.
962
94d5c456
JL
963 * unroll.c (copy_loop_body): Always ensure at least two insns
964 are in the copied loop.
965
6ed173d0
CM
966Wed Apr 7 14:52:18 1999 Catherine Moore <clm@cygnus.com>
967
3fb2a045
MS
968 * config/mips/elf.h (MAKE_DECL_ONE_ONLY): Define.
969 (UNIQUE_SECTION_P): Define.
6ed173d0 970
f133e603 9711999-04-07 Bruce Korb <ddsinc09@ix.netcom.com>
12408bb3
BK
972
973 * fixinc/inclhack.tpl & fixincl.tpl:
974 Remove dynamic content from generated files
975
f133e603 976Wed Apr 7 13:16:22 1999 John Wehle (john@feith.com)
61a1397b
JW
977
978 * i386.c (output_move_memory): Remove.
979 * i386.h: Likewise.
980
981 * i386.md (movsi, movhi, movstricthi, movqi, movstrictqi,
982 movsf, movdf, movxf, movdi): Check no_new_pseudos instead
983 of (reload_in_progress | reload_completed).
984
5e62dee5
RH
985Wed Apr 7 03:16:45 1999 Richard Henderson <rth@cygnus.com>
986
987 * alpha.c (reg_no_subreg_operand): New function.
988 * alpha.h (PREDICATE_CODES): Add it.
989 * alpha.md (floatdi?f patterns): Use it for op1.
990
991 * alpha.c (alpha_end_function): Don't flag weak functions.
992
d22cba0a
RH
993Wed Apr 7 02:11:55 1999 Richard Henderson <rth@cygnus.com>
994
995 * expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use
996 copy_to_mode_reg; don't force constants into a register.
997
78327a73
RH
998Tue Apr 6 22:55:25 1999 Richard Henderson <rth@cygnus.com>
999
1000 * toplev.c (compile_file): Typo flow_dump -> flow2_dump.
1001
ed03c6cd
JM
10021999-04-06 Joseph S. Myers <jsm28@cam.ac.uk>
1003
1004 * pdp11.c (simple_memory_operand): Add default case in switch.
1005 * pdp11.h (TARGET_SWITCHES): Add help strings.
1006 (NOTICE_UPDATE_CC): Don't include excess argument to format.
1007 (ASM_OUTPUT_DOUBLE_INT): Remove.
1008
34487bf8
RH
1009Tue Apr 6 22:09:40 1999 Richard Henderson <rth@cygnus.com>
1010
1011 * expr.c (expand_builtin_setjmp): Put setjmp return label on
1012 nonlocal_goto_handler_labels for flow.
1013
1014Tue Apr 6 22:05:21 1999 Jan Hubicka <hubicka@paru.cas.cz>
1015 Richard Henderson <rth@cygnus.com>
1016
1017 * flow.c (verify_flow_info): New function.
1018 (find_basic_blocks): Call it if ENABLE_CHECKING.
1019 (merge_blocks): Don't merge if there are non-deletable labels.
1020 * toplev.c (fatal_insn): Allow a printf-style arg list.
1021 * toplev.h (fatal_insn): Update prototype.
1022
1e7d57a3
JH
1023Tue Apr 6 16:18:58 1999 Jan Hubicka <hubicka@paru.cas.cz>
1024
1025 * flow.c (split_edge) update correctly flow graph, disable
1026 EDGE_CRITICAL flag on the split edge, update NUSES for new label.
1027
2454beaf
RH
1028Tue Apr 6 15:47:51 1999 Richard Henderson <rth@cygnus.com>
1029
1030 * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
1031 Clear third and following slots, if they exist.
1032
eeea333e
RH
1033Tue Apr 6 15:45:28 1999 Richard Henderson <rth@cygnus.com>
1034
1035 * flow.c (create_basic_block): Make sure the bb note is in the block.
1036 (can_delete_note_p): Rename from delete_note_p.
1037 (delete_insn_chain): Preserve undeleteable labels too.
1038 (tidy_fallthru_edge): Use next_real_insn instead of confusing
1039 inline code.
1040
f133e603 10411999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
099a9dd0
ZW
1042
1043 * cppexp.c (parse_charconst): Initialize c.
1044 (cpp_parse_expr): Initialize rprio.
1045 * cppfiles.c (merge_include_chains): Initialize prev.
f133e603 1046 (finclude): Set fp->line_base to fp->buf before returning.
099a9dd0 1047 * cpphash.c (macroexpand): Initialize token.
3fb2a045 1048 * cppspec.c (lang_specific_driver): Change suff to
099a9dd0
ZW
1049 const char *const *.
1050
f133e603 10511999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
507df939
ZW
1052
1053 * cppinit.c (install_predefs): Delete function.
1054 (cpp_start_read): Don't call install_predefs.
1055 (cpp_handle_option): Remove case 'u' and all refs to
1056 opts->inhibit_predefs.
1057 (print_help): Don't mention -undef.
1058 (initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to
1059 match cccp.
1060 * cpplib.h (struct cpp_options): Remove inhibit_predefs
1061 member.
1062
1063 * cccp.c (predefs): Delete variable.
1064 (main): Remove case 'u' in argument parse loop,
1065 'inhibit_predefs' variable, and the code block that would
1066 process CPP_PREDEFINES.
1067 (initialize_builtins): Don't define __OBJC__, the driver will
1068 do that.
1069
1070 * gcc.c (default_compilers): Remove -undef from all specs that
1071 invoke a C preprocessor.
1072 * ch/lang-specs.h: Likewise.
1073 * cp/lang-specs.h: Likewise.
1074 * f/lang-specs.h: Likewise.
1075 * objc/lang-specs.h: Likewise.
1076
f133e603 1077Mon Apr 5 11:55:31 1999 Donn Terry (donn@interix.com)
7325ab47
DT
1078
1079 * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix misapplied patch.
1080
9f22acc4
JL
1081Mon Apr 5 11:51:38 1999 Jeffrey A Law (law@cygnus.com)
1082
1083 * m68k.md (movdf): Hide GPR sources & destinations from regclass.
1084
f133e603 1085Mon Apr 5 09:54:42 1999 Jeff Law (law@cygnus.com)
a566f004
JL
1086
1087 * version.c: Bump for snapshot.
1088
f133e603 1089Mon Apr 5 05:55:15 1999 Bruce Korb <ddsinc09@ix.netcom.com>
ac95d436
BK
1090
1091 * fixincl.tpl: Separate "-e" from its argument, a la
1092 the Sat Apr 3 17:05:13 1999 fix.
ee8c4259 1093 * genfixes: Ensure that the server shell is _NOT_ csh.
ac95d436 1094
f133e603 1095Mon Apr 5 03:52:30 1999 Jeff Law (law@cygnus.com)
788d09ba
JL
1096
1097 * version.c: Bump for snapshot.
1098
0a726ef1
JL
1099Mon Apr 5 04:47:14 1999 Jeffrey A Law (law@cygnus.com)
1100
1101 * i386.c (x86_double_with_add): Turn off for Pentium and PPro.
1102 (small_shift_operand, output_ashlsi3): New functions.
1103 * i386.h (small_shift_operand, output_ashlsi3): Declare.
1104 * i386.md (ashlsi3): Simplify ahlsi3 patterns. Remove splitters
1105 that are no longer needed.
1106
f114df20
JL
1107Sun Apr 4 04:05:04 1999 Jeffrey A Law (law@cygnus.com)
1108
1109 * stmt.c (expand_loop_end): When copying the loop exit test,
1110 do not walk into a nested loop.
1111
20cc423f
JL
1112Sun Apr 4 00:14:54 1999 Jeffrey A Law (law@cygnus.com)
1113
1114 * fixinc/hackshell.tpl: Skip links to directories, to avoid
1115 removing them.
1116 * fixinc/inclhack.tpl: Likewise.
1117 * fixinc/fixinc.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
1118
677a9668
DE
1119Sat Apr 3 23:46:13 1999 David Edelsohn <edelsohn@gnu.org>
1120
1121 * rs6000.md (addsi3, iorsi3, xorsi3, adddi3, iordi3, xordi3,
1122 movsi_got, movsi, movsf): Use no_new_pseudos.
1123 * rs6000.c (rs6000_got_register): Likewise.
1124 (offsettable_mem_opereand): Use || not |.
1125
264b1a9c
JL
1126Sat Apr 3 22:02:56 1999 Jeffrey A Law (law@cygnus.com)
1127
1128 * acconfig.h (ENABLE_CHECKING): Remove redundant #undef.
1129 * config.in: Rebuilt.
1130
1ed9faee
TM
1131Sat Apr 3 16:22:59 1999 Toshiyasu Morita (tm@netcom.com)
1132
3fb2a045 1133 * gcc.texi: Add info on regmove pass.
0ea78edb 1134
1ed9faee
TM
1135 * regmove.c (fixup_match_1): Consistently evaluate
1136 HAVE_POST_INCREMENT and HAVE_POST_DECREMENT.
1137
e154a394
AO
1138Sat Apr 3 19:21:05 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1139
1140 * configure.in (DEFAULT_LINKER, DEFAULT_ASSEMBLER): Use grep
1141 instead of test and sed to check whether they're GNU programs.
1142 * configure: Rebuilt.
1143
965c3f43
AO
1144Sat Apr 3 17:57:35 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1145
3fb2a045
MS
1146 * Makefile.in (install-headers-tar, install-headers-cpio): Avoid
1147 problems with CDPATH.
965c3f43
AO
1148 Reported by Ralf Canis <canis@bigfoot.com>
1149
ebc7e094
JL
1150Sat Apr 3 13:50:16 1999 Jeffrey A Law (law@cygnus.com)
1151
1152 * fixinc.x86-linux-gnu: Deleted.
1153
706e665a
AO
1154Sat Apr 3 17:05:13 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1155
3fb2a045 1156 * inclhack.tpl: Insert spaces between `sed -e' and '...'.
706e665a 1157 Reported by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3fb2a045 1158 * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Regen.
706e665a 1159
d9c2af5b
CB
1160Sat Apr 3 14:54:46 1999 Craig Burley <craig@jcb-sc.com>
1161
1162 * tree.def (BLOCK): Fix typo in comment.
1163
f133e603 1164Sat Apr 3 00:53:29 1999 John Wehle (john@feith.com)
bc725565
JW
1165
1166 * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
1167 floatsixf2, floatdixf2): Rewrite using a splitter.
1168
4bc74ece
NC
1169Fri Apr 2 17:36:10 1999 Nick Clifton <nickc@cygnus.com>
1170
1171 * config/arm/arm.c (arm_print_operand): Print large constants in
1172 hex rather than decimal.
1173
7b028dba
NC
1174Fri Apr 2 17:23:58 1999 Nick Clifton <nickc@cygnus.com>
1175
1176 * print-rtl.c (print_rtx): Use both HOST_WIDE_INT_PRINT_DEC
1177 and HOST_WIDE_INT_PRINT_HEX to display constants.
1178
f133e603 11791999-04-02 Zack Weinberg <zack@rabi.columbia.edu>
1cc6c9bd
ZW
1180
1181 * config/i386/i386.h: Document all TARGET_SWITCHES or add
1182 explicit null initializer.
1183
1184 * config/i386/cygwin.h: Document all SUBTARGET_SWITCHES.
1185 * config/i386/dgux.h: Likewise.
1186 * config/i386/osf1elf.h: Likewise.
1187 * config/i386/win32.h: Likewise.
1188 * config/i386/osfrose.h: Likewise. Drop obsolete -mno-ident option.
1189
f133e603 1190Fri Apr 2 17:49:44 1999 Toshiyasu Morita <tm@netcom.com>
cb084004
TM
1191
1192 * regmove.c (fixup_match_1): Remove now useless if (0).
1193
6e01bd94
MH
1194Sat Apr 3 11:37:20 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1195
1196 * tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
1197 USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document.
1198 (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
1199 USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation.
1200
1201 * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
1202 USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT,
1203 USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
1204 USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default
1205 definition.
1206
3fb2a045 1207 * expr.c (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
6e01bd94
MH
1208 USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default
1209 definition.
1210
4f71d8e4
JL
1211Fri Apr 2 16:03:05 1999 Jeffrey A Law (law@cygnus.com)
1212
1213 * fixinc.dgux, fixinc.interix, fixinc.irix, fixinc.ptx: Deleted.
1214 * fixinc.sco, fixinc.svr4, fixinc.winnt, fixinc.wrap: Likewise.
1215
f133e603 1216Fri Apr 2 15:46:25 1999 Donn Terry (donn@interix.com)
5aa82ace 1217
3fb2a045 1218 * configure.in: Set and substitute quoted_cc_set_by_configure.
5aa82ace
DT
1219 * configure: Rebuilt.
1220 * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix quoting problem with ``.
1221
ffb6cec0
SC
1222Fri Apr 2 14:35:45 1999 Stan Cox <scox@cygnus.com>
1223
1224 * config/i386/cygwin.h (CPP_SPEC): Use mingw_include_path instead
1225 of a hardcoded path for -mno-cygwin.
1226 (mingw_include_path): New.
1227
09b893bb
JM
12281999-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
1229
1230 * pdp11.c: Include "recog.h".
1231 (output_function_prologue): Remove unused variables `nregs', `i',
1232 `offset'.
1233 (output_function_epilogue): Remove unused variables
1234 `may_call_alloca', `nregs', `regno', `adjust_fp'.
1235 (output_ascii): Mark as returning void.
1236 (print_operand_address: Likewise.
1237 (simple_memory_operand): Remove unused variables `plus0', `plus1',
1238 `offset'.
1239 * pdp11.h: Declare functions `arith_operand',
1240 `const_immediate_operand', `expand_shift_operand',
1241 `legitimate_address_p', `notice_update_cc_on_set', `output_ascii',
1242 `output_function_epilogue', `output_function_prologue',
1243 `print_operand_address', `register_move_cost',
1244 `simple_memory_operand'.
3fb2a045 1245 (HARD_REGNO_MODE_OK): Parenthesize `REGNO' arg.
09b893bb
JM
1246 (REGNO_REG_CLASS): Likewise.
1247 * pdp11.md: Add explicit `int' to `static count' (in two places).
1248 (addhi3): Add explicit braces to avoid ambiguous else.
1249 (addqi3): Likewise.
1250 (ashlhi3): Likewise.
1251
f133e603 1252Fri Apr 2 14:17:10 1999 Jerry James <jerry@cs.ucsb.edu>
8b9243df
JJ
1253
1254 * gcc/invoke.texi: Add documentation for additional supported
1255 MIPS CPU types, options -mips16 and -mentry, and ABI and ISA
1256 defaults.
1257
f133e603 1258Fri Apr 2 14:12:06 1999 John Wehle (john@feith.com)
87aa5246
JW
1259
1260 * i386.md: Delete floating point compare, add, subtract,
1261 multiply, and divide patterns which allowed integer
1262 operands.
54ff41b7 1263 * i386.c (output_387_binary_op): Delete unused code.
87aa5246
JW
1264 (output_float_compare): Likewise.
1265
9f567f56
JW
1266Fri Apr 2 11:53:37 1999 John Wehle (john@feith.com)
1267
1268 * i386.md (movsf+1, movdf+1, movxf+1): Update constraints
1269 so that SECONDARY_MEMORY_RELOAD is used. Remove dead code.
1270
f133e603 12711999-04-02 Bruce Korb <ddsinc09@ix.netcom.com>
a734e0bf 1272
3fb2a045
MS
1273 * fixinc/mkfixinc.sh: Added support for x86-interix.
1274 * fixinc/fixinc.interix: Fixincludes script, slight changes
a734e0bf 1275 from ./fixinc.interix. Untested (needs interix box).
c095d84a 1276 * fixinc/inclhack.def:
3fb2a045
MS
1277 Complete the change to the 'fixinc.tmp' file.
1278 Fixed regex for finding C++ headers.
1279 * fixincl.x, fixincl.sh, inclhack.sh: Regenerate.
a734e0bf 1280
69a8af43
JH
1281Fri Apr 2 11:36:12 1999 Jan Hubicka (hubicka@paru.cas.cz)
1282
1283 * i386.c (print_operand_address, case REG): Do not use ESI addressing
1284 mode for the K6.
1285
1286 * i386.c (print_operand_address, case MULT): Use more efficient
1287 encoding (mult (reg) (const_int 2)).
1288
0133b7d9
RH
1289Thu Apr 1 17:01:50 1999 Richard Henderson <rth@cygnus.com>
1290
1291 Move over patch from Bernd Schmidt from GC branch:
1292 * emit-rtl.c (gen_rtx_CONST_DOUBLE): New function.
1293 (gen_rtx): Call it. Tidy cases.
1294 * rtl.h (gen_rtx_CONST_DOUBLE): Prototype it.
1295 * gengenrtl.c: Add commentary.
1296 (special_rtx): Also match CONST_DOUBLE.
1297 (gencode): Emit call to memset instead of bzero.
1298
4b97aaeb
MH
1299Fri Apr 2 12:58:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1300
1301 * config/c4x/c4x.md (ashlhi3, lshrhi3, ashrhi3): Force operand 1
1302 into a register if shift count not constant.
1303 (ashlhi3_reg, lshrhi3_reg, ashrhi3_reg): Ensure that operand 1
1304 is a register.
1305
8de858c0
MH
1306Fri Apr 2 12:19:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1307
1308 * config/c4x/c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED
1309 is non-zero.
1310 (movstrqi_small, movstrqi_large, *cmpstrqi): Add + modifier to address
3fb2a045 1311 register constraints.
8de858c0
MH
1312 (*movhi_clobber+1): Modify splitter pattern to handle destination
1313 register that is used in the source address.
1314 (*xorhi3_clobber): Replace AND with XOR in call to legitimize_operands.
1315
4adf744b
MH
1316Fri Apr 2 12:16:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1317
1318 * config/c4x/c4x.h: Added more comments.
1319
305902b0
MH
1320Fri Apr 2 11:58:22 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1321
1322 * config/c4x/c4x.c (c4x_emit_move_sequence): Force invalid QImode
1323 constants into memory if we get called directly from gen_move_insn
1324 rather than emit_move_insn.
1325 (c4x_legitimize_address): Fix up LABEL_REF addresses.
1326
6ab06cbb
JW
1327Thu Apr 1 12:04:05 1999 Jim Wilson <wilson@cygnus.com>
1328
1329 * expr.c (store_field): When check direct_store, assume all complex
1330 modes can be directly stored.
1331
f133e603 13321999-04-01 Bruce Korb <ddsinc09@ix.netcom.com>
b7c8ae04 1333
3fb2a045 1334 * fixinc/genfixes: New shell script that runs autogen
b7c8ae04
BK
1335 to create the generated files.
1336
454e562f
MH
13371999-04-01 Manfred Hollstein <manfred@s-direktnet.de>
1338
1339 * Makefile.in (cppmain$(exeext)): Depend on intl.o. Link in intl.o.
1340
a32126ad
L
1341Thu Apr 1 03:48:34 1999 H.J. Lu (hjl@gnu.org)
1342
80309a9c
L
1343 * i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT
1344 signed integer comparisons.
1345
9a6ac4b0
L
1346 * i386.c (output_int_conditional_move): Use "enum rtx_code" for code
1347 type.
1348
a32126ad
L
1349 * i386.c (notice_update_cc): No need to check the INT mode for
1350 conditional moves since FLOAT conditional moves don't affect cc0.
1351
ccce12f3
JL
1352Thu Apr 1 02:17:18 1999 Jeffrey A Law (law@cygnus.com)
1353
1354 * fixinc/inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger
1355 string to only match on hpux11.
1356 * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
1357
adc8046e
AO
1358Thu Apr 1 01:09:27 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1359
0cb97c8d
AO
1360 * fixinc/hackshell.tpl: Complete transition to fixinc.tmp.
1361 * fixinc/inclhack.sh: Rebuilt.
1362
adc8046e
AO
1363 * fixinc/inclhack.def: Fix typos in c_asm.h fix.
1364 * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
1365
bbd2180d
JL
1366Wed Mar 31 17:20:11 1999 Jeffrey A Law (law@cygnus.com)
1367
1368 * toplev.c (rest_of_compilation): Allow dbr_schedule to write to
1369 the dump file too.
1370
359da67d
RH
1371Wed Mar 31 12:32:43 1999 Richard Henderson <rth@cygnus.com>
1372
1373 * flow.c (find_basic_blocks): New argument `do_cleanup'.
1374 Conditionally call delete_unreachable_blocks.
1375 (free_basic_block_vars): Zero ENTRY/EXIT data.
1376 (allocate_for_life_analysis): Kill. Split into...
1377 (allocate_bb_life_data, allocate_reg_life_data): ... new functions.
1378 (life_analysis_1): Update.
1379 * gcse.c (gcse_main): Update find_basic_blocks call.
1380 * toplev.c (rest_of_compilation): Likewise.
1381 * stupid.c (stupid_life_analysis): Update life data calls.
1382 * rtl.h, output.h: Update prototypes.
1383
f133e603 1384Wed Mar 31 12:10:00 1999 Bruce Korb <ddsinc09@ix.netcom.com>
42493273 1385
3fb2a045 1386 * inclhack.def (several): Added spaces in tests to ensure
42493273 1387 correct shell syntax. Added c_asm.h fix from fixincludes.
b7c8ae04 1388 Also corrected the corrected fix to C++ comments :-}
42493273 1389
3fb2a045 1390 * inclhack.tpl: Changed method of traversing symlink trees
42493273
BK
1391 so that file name matching will work correctly.
1392
3fb2a045 1393 * fixincl.c, hackshell.tpl: Fallout from above.
42493273
BK
1394 * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
1395
863ebdad
PB
1396Tue Mar 30 10:43:49 1999 Philip Blundell <pb@nexus.co.uk>
1397
1398 * config/arm/aout.h (DBX_DEBUGGING_INFO): Avoid redefinition if
1399 dbxelf.h was previously included.
1400 (CPP_APCS_PC_DEFAULT_SPEC): No need to undefine.
1401
1402 * config/arm/linux-elf.h (FP_DEFAULT): Correctly override the
1403 definition from arm.h.
1404
0728688f
KG
1405Wed Mar 31 10:33:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1406
3fb2a045
MS
1407 * Makefile.in (c-gperf.h): Generate using gperf language 'C', not
1408 'KR-C', so gperf uses the `const' keyword on strings.
1409
1410 * c-parse.gperf (resword): Const-ify a char*.
0728688f 1411
d1c7c495
ILT
1412Wed Mar 31 01:49:31 1999 Ian Lance Taylor <ian@zembu.com>
1413
1414 * t-rtems (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
1415
b080ce78
JL
1416Wed Mar 31 00:50:48 1999 Jeffrey A Law (law@cygnus.com)
1417
924d8a7c
JL
1418 * system.h (STDERR_FILENO): Fix typo.
1419
3fb2a045 1420 * inclhack.def (bool): Also fix bogus bool in curses_colr/curses.h.
b080ce78
JL
1421 * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
1422
30f72379
MM
1423Tue Mar 30 20:51:40 1999 Mark Mitchell <mark@codesourcery.com>
1424
1425 * alias.c (alias_set_compare): Remove.
3fb2a045 1426 (record_alias_subset): Use splay_tree_compare_ints instead of
30f72379
MM
1427 alias_set_compare.
1428 (init_alias_once): Likewise.
1429 * cse.c: Include splay-tree.h.
1430 (reg_qty): Remove.
1431 (reg_tick): Likewise.
1432 (reg_table): Likewise.
1433 (cse_reg_info): New structure.
1434 (cse_reg_info_free_list): New variable.
1435 (cse_reg_info_tree): Likewise.
1436 (cached_regno): Likewise.
1437 (cached_cse_reg_info): Likewise.
1438 (all_minus_one): Remove.
1439 (consec_ints): Likewise.
1440 (GET_CSE_REG_INFO): New macro.
1441 (REG_TICK): Likewise. Use throughout instead of reg_tick.
1442 (REG_IN_TABLE): Likewise. Use throughout instead of reg_in_table.
1443 (REG_QTY): Likewise. Use throughout instead of reg_qty.
1444 (get_cse_reg_info): New function.
1445 (free_cse_reg_info): Likewise.
1446 (new_basic_block): Reinitialize cse_reg_info_tree instead of
1447 reg_tick, all_minus_one, and consec_ints.
1448 * Makefile.in (cse.o): Depend on splay-tree.h
1449
51980de6
JM
1450Tue Mar 30 13:19:36 1999 Jason Merrill <jason@yorick.cygnus.com>
1451
1452 * libgcc2.c (throw_helper): Just return the SP offset, rather than
1453 a whole udata. Include args_size in the offset.
1454 (__throw, __rethrow): Adjust.
1455
24f98470
CB
1456Tue Mar 30 11:39:27 1999 Craig Burley <craig@jcb-sc.com>
1457
1458 * extend.texi (Extended Asm): Delete spurious `b' before
1459 `@end example', which was confusing texi2html.
1460
2f22d404
JM
1461Tue Mar 30 00:26:34 1999 Jason Merrill <jason@yorick.cygnus.com>
1462
1463 * dwarf2out.c (output_line_info): Don't emit redundant info.
1464 Do start a new row if the file changes and the line # doesn't.
1465
bba975d4
JM
1466Mon Mar 29 15:48:39 1999 Jason Merrill <jason@yorick.cygnus.com>
1467
1468 * invoke.texi (Invoking G++, C++ Dialect Options): Update.
1469
b68e8bdd
RH
1470Mon Mar 29 15:05:39 1999 Richard Henderson <rth@cygnus.com>
1471
3fb2a045 1472 * except.c (start_dynamic_handler): Force jmp_buf address to
b68e8bdd
RH
1473 and operand before moving to memory.
1474
d3111037
CB
1475Mon Mar 29 15:11:10 1999 Craig Burley <craig@jcb-sc.com>
1476
1477 * invoke.texi (Code Gen Options): Attempt to clarify
1478 -fcheck-memory-usage. Minor edits to -fprefix-function-name.
1479
f133e603 1480Mon Mar 29 20:52:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
fdb1833a
R
1481
1482 * loop.c (maybe_eliminate_biv): For libcalls that set a giv, skip to
1483 end of libcall.
1484
f133e603 1485Mon Mar 29 20:35:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
aa4778b6
R
1486
1487 * sh.md (mulsi3): Tag an extra REG_EQUAL note to the middle insn.
1488
f133e603 1489Mon Mar 29 11:50:34 1999 Jerry Quinn <jquinn@nortelnetworks.com>
51c2de46
JQ
1490
1491 * pa.h (HAVE_PRE_INCREMENT): Disable when optimizing for a PA8000
1492 class machine.
1493 (HAVE_PRE_DECREMENT, HAVE_POST_INCREMENT): Likewise.
1494 (HAVE_POST_DECREMENT): Likewise.
1495
f133e603 1496Mon Mar 29 08:24:43 1999 Bruce Korb <korb@datadesign.com>
411b293c 1497
3fb2a045 1498 * fixinc/mkfixinc.sh: Fix portability problems with old shells.
411b293c 1499
3fb2a045 1500 * fixinc/README: Updated for release announcement
411b293c 1501
3228bc05
KG
1502Sun Mar 28 20:26:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1503
1504 * recog.h (insn_outfun, insn_operand_predicate): Add prototype
1505 arguments.
1506
1507 * rtl.h (note_stores): Likewise.
1508
1509 * rtlanal.c (note_stores): Likewise.
1510
8f0e7be4
RH
1511Sun Mar 28 15:34:28 1999 Richard Henderson <rth@cygnus.com>
1512
1513 * varasm.c (output_constant_pool): Always mark the constant pool.
1514
f133e603 1515Sun Mar 28 16:09:01 1999 Jerry Quinn <jquinn@nortelnetworks.com>
86001391 1516
d2bac0c4
JQ
1517 * pa.md (pa7100LCshiftmem, pa7100LCalu): Change simultaneity. Use
1518 shift/mem ops in pa7100LCalu.
1519
86001391
JQ
1520 * pa.c (pa_adjust_cost): Don't do cost adjustments on pa8000.
1521 (pa_reorg): Don't call pa_combine_instructions on pa8000.
1522
0a76126b
JL
1523Sun Mar 28 15:27:26 1999 Jeffrey A Law (law@cygnus.com)
1524
1525 * reload1.c (reload): Remove accidental code duplication.
1526
bb60ffa0
RL
1527Sun Mar 28 12:22:12 1999 Robert Lipe (robertlipe@usa.net)
1528
1529 * i386/sysv5.h: New file to describe UnixWare7/SVR5.
3fb2a045
MS
1530 * configure.in (i?86-UnixWare7*-sysv): Use it.
1531 * i386/udk.h: Use sysv5.h. Now uses Dwarf-2.
bb60ffa0 1532
f133e603 1533Sun Mar 28 01:15:04 1999 Jeff Law (law@cygnus.com)
ddb6d3dc
JL
1534
1535 * version.c: Bump for snapshot.
1536
87b8bec5
JL
1537Sun Mar 28 00:44:27 1999 Jeffrey A Law (law@cygnus.com)
1538
a51a5234
JL
1539 * sdbout.c (sdbout_symbol): Do not call build_pointer_type, build
1540 one on the fly and do not cache the result.
1541
87b8bec5
JL
1542 * gcc.cps, cpp.cps: Delete unwanted files.
1543
f133e603 1544Sat Mar 27 23:37:40 1999 John Wehle (john@feith.com)
94b596a7
JW
1545
1546 * i386.md (movdicc+3, movdicc+4): Rewrite using split_di.
1547 * i386.c (output_int_conditional_move): Delete unused code.
1548
b9ae3471
DE
1549Sat Mar 27 21:17:36 1999 David Edelsohn <edelsohn@gnu.org>
1550
1551 * rs6000/{aix41.h,aix43.h} (ASM_CPU_SPEC): Add 604e.
1552
40b5a77c
JL
1553Sat Mar 27 16:13:50 1999 Jeffrey A Law (law@cygnus.com)
1554
1555 * flow.c (mark_used_regs): Improve handling of ASMs.
1556
f133e603 15571999-03-26 Zack Weinberg <zack@rabi.columbia.edu>
922cf99e
ZW
1558
1559 * Makefile.in (xcpp, cppspec.o): New targets.
1560 (CPP_INSTALL_NAME): New macro.
1561 (install-cpp): Install xcpp. Use CPP_INSTALL_NAME.
1562 (all.build, start.encap): Build xcpp.
1563
1564 * cppspec.c: New file, implements argument filtering for a
1565 user-visible C preprocessor.
1566 * cpp.sh: Removed.
1567
2d490c9e
JW
1568Fri Mar 26 20:41:46 1999 Jim Wilson <wilson@cygnus.com>
1569
1570 * Makefile.in (stmp-fixinc): Use tooldir instead of gcc_tooldir.
1571
e14db015
NC
1572Fri Mar 26 16:02:37 1999 Nick Clifton <nickc@cygnus.com>
1573
3fb2a045 1574 * configure.in (arm-*-vxworks*): Just include arm/vxarm.h.
e14db015 1575 * configure: Regenerate.
20b78b1c
NC
1576 * config/arm/vxarm.h: Define SUBTARGET_CPU_DEFAULT before
1577 including arm/coff.h
e14db015 1578
f133e603 15791999-02-16 Scott Bambrough <scottb@corelcomputer.com>
65120c40 1580
3fb2a045 1581 * configure.in (arm*-*-linux-gnu*): Set thread_file to 'posix' if
65120c40 1582 --enable-threads[={yes,pthreads,posix}] is passed as a command
3fb2a045 1583 line parameter to configure.
65120c40 1584
3fb2a045 1585 * configure: Regenerate.
65120c40 1586
3fb2a045 1587 * gcc/config/arm/t-linux (TARGET_LIBGCC2_CFLAGS): Include -fPIC.
65120c40 1588
f133e603 1589Fri Mar 26 19:42:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
0466bdc4
R
1590
1591 * loop.c (combine_givs): Fix index into can_combine when doing
1592 benefit adjustment for remaining givs when having combined a giv.
1593
a833fb4e
NC
1594Fri Mar 26 11:38:01 1999 Nick Clifton <nickc@cygnus.com>
1595
1596 * config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Define.
1597
de77e128
NC
1598Fri Mar 26 10:48:27 1999 Nick Clifton <nickc@cygnus.com>
1599
1600 * config/arm/linux-elf.h: Include dbxelf.h
1601
cedcf937
NC
1602Fri Mar 26 10:43:47 1999 Nick Clifton <nickc@cygnus.com>
1603
1604 * config/svr4.h: Include new header file dbxelf.h.
1605 (DBX_DEBUGGING_INFO): Remove definition.
1606 (DBX_USE_BINCL): Remove definition.
1607 (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
1608 (ASM_IDENTIFY_GCC): Remove definition.
1609 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
1610 (ASM_OUTPUT_SOURCE_LINE): Remove definition.
1611 (DBX_FUNCTION_FIRST): Remove definition.
1612 (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Remove definition.
1613
1614 * config/elfos.h: Include new header file dbxelf.h.
1615 (DBX_DEBUGGING_INFO): Remove definition.
1616 (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
1617 (ASM_IDENTIFY_GCC): Remove definition.
1618 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
1619 (ASM_OUTPUT_SOURCE_LINE): Remove definition.
1620 (DBX_FUNCTION_FIRST): Remove definition.
1621
1622 * config/dbxelf.h: New header file.
1623 (DBX_DEBUGGING_INFO): Define.
1624 (DBX_BLOCKS_FUNCTION_RELATIVE): Define.
1625 (DBX_FUNCTION_FIRST): Define.
1626 (DBX_USE_BINCL): Define.
1627 (DBX_CONTIN_LENGTH): Define.
1628 (ASM_IDENTIFY_GCC): Define.
1629 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Define.
1630 (ASM_OUTPUT_SOURCE_LINE): Define.
1631 (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Define.
1632
f133e603 1633Fri Mar 26 01:59:15 1999 "Charles M. Hannum" <root@ihack.net>
14241374 1634
11a86c56
CH
1635 * fold-const.c (fold_truthop): Optimize bitfield references with
1636 different masks as long as their size and bit position are the same.
1637
bd910dcf
CH
1638 * fold-const.c (fold_truthop): Build a type for both the lhs and
1639 rhs and use it appropriately.
1640
97ea7176 1641 * fold-const.c (fold_truthop): Mask the lhs and rhs after merging
3fb2a045 1642 adjacent bitfield references.
97ea7176 1643
14241374
CH
1644 * fold-const.c (fold_truthop): Verify that the lhs and rhs are
1645 in the same bit position when optimizing bitfield references
1646 which have the same mask.
1647
5197829d
ML
1648