]> gcc.gnu.org Git - gcc.git/blame - gcc/ChangeLog
pa.h (PRINT_OPERAND_ADDRESS): Output "%r0", not "r0" for the base register in an...
[gcc.git] / gcc / ChangeLog
CommitLineData
81a1c8c3
JL
1Sat May 8 23:05:35 1999 Jeffrey A Law (law@cygnus.com)
2
3 * pa.h (PRINT_OPERAND_ADDRESS): Output "%r0", not "r0" for the
4 base register in an absolute memory address.
5 * pa.md (conditional moves): Avoid using immediate zero for
6 register zero.
7
86efdc8e
PB
8Sat May 8 06:23:21 1999 Philip Blundell <pb@nexus.co.uk>
9
10 Based on patch by Scott Bambrough:
11 * config/arm/arm.h (NEED_PLT_GOT): New macro. Set to 0 if not
12 already defined.
13 * config/arm/elf.h (NEED_PLT_GOT): Define to flag_pic.
14 * config/arm/arm.md (call_symbol, call_value_symbol et al.): If
15 NEED_PLT_GOT is true, add explicit "(PLT)" to generated branches.
16 * config/arm/arm.c (output_func_epilogue,
17 output_return_instruction): Likewise for calls to abort.
18
91ab1046
DT
19Sat May 8 01:57:58 1999 Donn Terry (donn@interix.com)
20
21 * calls.c (rtx_for_function_call): Extend function pointer being
22 passed to chkr_check_exec_libfunc, if needed.
23
fdc829c7
DE
24Sat May 8 01:51:50 1999 David Edelsohn <edelsohn@gnu.org>
25
26 * ginclude/stdarg.h (__va_rounded_size): Use long type for
27 rounding on AIX.
28 * ginclude/varargs.h: Likewise.
29
62a1403d
AS
30Sat May 8 01:47:20 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
31
32 * invoke.texi: Remove duplicates in the description of -d
33 letters. Fix use of @item vs. @itemx.
34
bd227acc
FS
35Sat May 8 01:43:02 1999 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
36
37 * rs6000.h (RS6000_VARARGS_OFFSET): Die die die.
38 (CUMULATIVE_ARGS): Remove varargs_offset; update commentary.
39 * rs6000.c (setup_incoming_varargs): Fix typo last change.
40 (init_cumulative_args): Remove varargs_offset references.
41
42 * rs6000/linux.h (NO_IMPLICIT_EXTERN_C): Define.
43 (MD_EXEC_PREFIX, MD_STARTFILE_PREFIX): Undefine.
44
ccc4ae07
AS
45Sat May 8 01:34:19 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
46
47 * reload1.c (gen_mode_int): New function.
48 (reload_cse_move2add): Use it to generate the new constants.
49
e9996db7
AS
50Sat May 8 01:25:09 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
51
52 * varasm.c (output_constant): Do nothing if -fsyntax-only.
53
d0ae1ce3
VM
54Fri May 7 19:10:15 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
55
56 * sparc.h (GO_IF_LEGITIMATE_ADDRESS): Prohibit REG+REG addressing
57 for TFmode when there are no instructions which accept REG+REG
58 instructions.
59
52ecdfda
JW
60Fri May 7 12:38:54 1999 Jim Wilson <wilson@cygnus.com>
61
62 * mips/elf64.h (MAKE_DECL_ONE_ONLY, UNIQUE_SECTION_P): Define.
63 * mips/mips.c (mips_select_rtx_section): When TARGET_MIPS16, use
64 function_section instead of text_section.
65 * mips/mips.h (ENCODE_SECTION_INFO): Add check for UNIQUE_SECTION_P
66 in TARGET_MIPS16 STRING_CST handling.
67
ef179a26
NC
68Fri May 7 09:54:11 1999 Nick Clifton <nickc@cygnus.com>
69
70 Patch from: Nick Burrett <nick.burrett@btinternet.com>
71
72 * arm.c (arm_poke_function_name): New function to implement
73 -mpoke-function-name.
74 * aof.h (ASM_DECLARE_FUNCTION_NAME): Call it.
75 * aout.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
76 * elf.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
77 * arm.h: Prototype it.
78 (TARGET_SWITCHES): Add `no-poke-function-name'.
79
475836b1 80Fri May 7 14:19:31 1999 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
e42dc604
RO
81
82 * fixinc/server.c (load_data): Cast text_size to long, adapt
83 format.
475836b1
RO
84 * fixinc/server.c (read_pipe_timeout): Declare volatile, modified
85 in signal handler.
86 (sig_handler): Add debug code.
87 * fixinc/server.c (run_shell): Don't \-escape cd, it breaks the
88 Ultrix V4.3 /bin/sh.
e42dc604
RO
89 * fixinc/server.c (def_args): Use static instead of STATIC to
90 avoid redefinition error from linker iff DEBUG.
91
92 * fixinc/hackshell.tpl: Don't strip trailing directory from
93 DESTDIR - that is already done
94
7d032a4f 95 * fixinc/fixincl.c (run_compiles): fix memory leak
475836b1 96
a5045352
MM
97Thu May 6 20:34:00 1999 Mark Mitchell <mark@codesourcery.com>
98
99 * resource.c (mark_referenced_resources): Make volatil
100 monotonically increasing.
101 (mark_set_resources): Likewise.
102
3dde7044
FF
103Thu May 6 20:02:33 1999 Fred Fish <fnf@be.com>
104
105 * rs6000/xm-beos.h (HAVE_VPRINTF): Don't redefine if already defined.
106 (HAVE_PUTENV, HAVE_ATEXIT, HAVE_RENAME): Likewise.
107
0d9d12fc
JM
108Wed May 5 20:28:32 1999 Jason Merrill <jason@yorick.cygnus.com>
109
110 * install.texi (Header Dirs): s/GPLUS/GPLUSPLUS/.
111
36e9ee91
R
112Wed May 5 23:44:15 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
113
114 * unroll.c (copy_loop_body): Don't copy VTOP notes from copy_notes_from.
115
8b04083b
VM
116Wed May 5 16:26:13 1999 Vladimir Makarov <vmakarov@tofu.to.cygnus.com>
117
118 * function.c (purge_addressof_replacements): Rename into
119 purge_bitfield_addressof_replacements.
120 (purge_addressof_replacements): New variable.
121 (purge_addressof_1): Add code for changing addressof in notes for
122 field values which are extracted by usage MEM with narrower mode.
123 (purge_addressof): Initialize purge_bitfield_addressof_replacements.
124
afef3d7a
NC
125Wed May 5 07:40:02 1999 Nick Clifton <nickc@cygnus.com>
126
127 Patch from: Nick Burrett <nick.burrett@btinternet.com>
128 * config/arm/arm.h (ARM_MCOUNT_NAME): Define.
129 (FUNCTION_PROFILER): Remove assembler dialect dependency and use
130 ARM_MCOUNT_NAME.
131 (TRAMPOLINE_TEMPLATE): Remove assembler dialect dependency.
132
133 * config/arm/aof.h (ARM_MCOUNT_NAME): Define.
134
9ba051d3
ZW
1351999-05-05 09:58 -0400 Zack Weinberg <zack@rabi.columbia.edu>
136
137 * gcc.c (default_compilers): Fix brace nesting bug.
138 * objc/lang-specs.h: Use %i, not %g.mi, for the input file
139 when processing an .mi file.
140
3d298f8f
MM
141Tue May 4 13:17:55 1999 Mark Mitchell <mark@codesourcery.com>
142
143 * resource.c (mark_set_resources): Handle UNSPEC_VOLATILE,
144 ASM_INPUT, TRAP_IF, and ASM_OPERANDS just like in
145 mark_referenced_resources.
146
bf034054
DE
147Mon May 3 22:38:41 1999 David Edelsohn <edelsohn@gnu.org>
148
149 * rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Change non-PowerPC
150 and AIX64 combination to warning. Add warning for disabling
151 PowerPC64 support when using 64-bit mode.
152 (LIB_SPEC): Do not link with libg.a in 64-bit mode.
153 (LINK_SPEC): Do not export libg.exp symbols in 64-bit mode.
154 * rs6000/rs6000.h (MY_ISCOFF): Treat import/export files as valid
155 XCOFF files.
156 (read_only_data_section, private_data_section,
157 read_only_private_data_section): Always align CSECTs to doubleword
158 boundary regardless of mode.
159 (TEXT_SECTION_ASM_OP): Align text CSECT on doubleword boundary in
160 64-bit mode.
161 (DATA_SECTION_ASM_OP): Always align CSECT to doubleword boundary.
162 (ASM_OUTPUT_LOCAL): Use rounded size in 64-bit mode to
163 maintain doublword alignment.
164
d750f6f7
JL
165Mon May 3 14:45:23 1999 Jeffrey A Law (law@cygnus.com)
166
167 * mn10200.md (btst insns): btst does not leave cc0 in a useable
168 state for redundant tst eliminatino.
169 * mn10300.md (btst insns): Likewise.
170
58690ba8
KG
171Mon May 3 16:14:32 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
172
173 * mips.h (Pmode): Revert Oct 14th change which added a cast.
174
59182242
MM
175Sun May 2 14:02:21 1999 Mark Mitchell <mark@codesourcery.com>
176
177 * tree.h (struct tree_decl): Add comdat_flag.
178 (DECL_COMDAT): Define it.
179 * toplev.c (wrapup_global_declarations): Don't output a
180 DECL_COMDAT function just because it's public.
181
af36a4d2
JM
182Sun May 2 15:16:42 1999 Joseph S. Myers <jsm28@cam.ac.uk>
183
184 * pdp11.h (TARGET_SWITCHES): Fix error in previous change.
185 (ASSEMBLER_DIALECT): Define.
186 (CONDITIONAL_REGISTER_USAGE): Rename floating point registers if
187 required for the UNIX assembler.
188 (ASM_OUTPUT_INT): Remove. The compiler will synthesise it.
189 (ASM_OUTPUT_ADDR_VEC_PROLOGUE): Remove.
190 (ASM_OPEN_PAREN, ASM_CLOSE_PAREN): Change to "[" and "]".
191 (TRAMPOLINE_TEMPLATE): Use ASM_OUTPUT_SHORT.
192 * pdp11.c (output_addr_const_pdp11): Copy of output_addr_const
193 adapted to output constants in octal.
194 * pdp11.c, pdp11.h, pdp11.md: Use output_addr_const_pdp11 instead
195 of output_addr_const. Output constants in octal. Use assembler
196 dialect alternatives where DEC and UNIX assemblers use different
197 instruction names.
198
f6a72cb6
JL
199Sun May 2 01:15:06 PDT 1999 Jeff Law (law@cygnus.com)
200
201 * version.c: Bump for snapshot.
202
2c4974b7
RH
203Fri Apr 30 13:55:43 1999 Richard Henderson <rth@cygnus.com>
204
205 * va-ppc.h (__va_start_common): Let __builtin_saveregs do the work.
206 * rs6000.c (expand_builtin_saveregs): For V4, initialize a private
207 va_list struct, and return a pointer to it.
208 (setup_incoming_varargs): V4 save area based off virtual_stack_vars
209 instead of frame_pointer.
210
5c7a310f
MM
211Thu Apr 29 23:02:22 1999 Mark Mitchell <mark@codesourcery.com>
212
213 * emit-rtl.c (start_sequence): Expand comments.
214 (start_sequence_for_rtl_expr): Likewise.
215 (push_to_sequence): Likewise.
216 (end_sequence): Likewise.
217 * expr.c (inhibit_defer_pop): Likewise.
218 * expr.h (inhibit_defer_pop): Likewise.
219 (NO_DEFER_POP): Likewise.
220 (OK_DEFER_POP): Likewise.
221
01e39005
RL
222Thu Apr 29 22:13:46 1999 Robert Lipe <robertlipe@usa.net>
223
224 * configure.in (i?86-UnixWare7*-sysv): Set thread_file to 'posix'
225 --enable-threads[={yes,pthreads,posix}] is passed as a command
226 line parameter to configure.
227 * config/i386/sysv5.h (LIB_SPEC): Add support for '-pthread'.
228 (CPP_SPEC): Likewise.
229
7cae975e
RH
230Thu Apr 29 17:23:59 1999 Richard Henderson <rth@cygnus.com>
231
232 * emit-rtl.c (operand_subword): Religiously mask and sign-extend
233 from 32-bits to HOST_WIDE_INT.
5b61e89f
RL
234
235Thu Apr 29 15:58:52 1999 Robert Lipe <robertlipe@usa.net>
236
237 * fixinc/regex.c, fixinc/regex.h: Removed. Replace with...
238 * fixinc/gnu-regex.c, fixinc/gnu-regex.h: Imported from GDB 4.18.
239 * fixinc/Makefile.in (OBJ, HDR): Handle name changes from above.
240 (gnu-regex.o): Define REGEX_MALLOC to avoid memory leak.
b56a20f6
BK
241 * fixinc/fixincl.c: new regex.h header name
242 * Makefile.in: new regex.[ch] file names
5b61e89f 243
062e7fd8
RH
244Thu Apr 29 12:53:33 1999 Richard Henderson <rth@cygnus.com>
245
246 * calls.c (emit_call_1): Pass rounded_stack_size to emit_call
247 instead of the unrounded size.
248
fef01b21
BK
2491999-04-28 14:40 Bruce Korb <ddsinc09@ix.netcom.com>
250
251 * fixinc/mkfixinc.sh: Makesure the result shell script is writable
252
41a12ce7
AS
253Wed Apr 28 10:36:39 1999 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
254
255 * config/m68k/m68k.md (cmpsi+1): Use cmp.w when comparing a 16 bit
256 constant with an address register.
257
74c065e0
JL
258Wed Apr 28 00:14:41 PDT 1999 Jeff Law (law@cygnus.com)
259
260 * version.c: Bump for snapshot.
261
6af57aae
AM
262Tue Apr 27 19:50:25 EDT 1999 Andrew MacLeod <amacleod@cygnus.com>
263
264 * rtl.h (REG_EH_REGION): Update comment to indicate a value of -1
265 indicates no throw and no nonlocal gotos.
266 * optabs.c (emit_libcall_block): Emit REG_EH_REGION with a value
267 of -1 instead of 0 to indicate a nonlocal goto won't happen either.
268 * flow.c (count_basic_blocks, find_basic_blocks_1): Ignore libcall
269 blocks, look for REG_EH_REGION note exclusively.
270 (make_edges): Check for REG_EH_REGION > 0 for specified handlers.
271
bfc79d3b
DE
272Tue Apr 27 15:33:42 1999 David Edelsohn <edelsohn@gnu.org>
273
274 * rs6000.h (read_only_data_section, private_data_section,
275 read_only_private_data_section, toc_section): Align CSECT on
276 doubleword boundary for 64-bit target.
277 (DATA_SECTION_ASM_OP): Likewise.
278 * rs6000.c (rs6000_stack_info): Leaf procedure stack limit is 288.
279
ea3cbda5
R
280Tue Apr 27 20:19:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
281
282 * sh.md (insv): Use copy_addr_to_reg.
283
a5cf6c1c 284 * final.c (insn_lengths_max_uid): New variable.
ea3cbda5
R
285 (init_insn_lengths, shorten_branches): Set it.
286 (get_attr_lengths): Test insn uid against insn_lengths_max_uid.
287
76bbe028
ZW
2881999-04-27 08:32 -0400 Zack Weinberg <zack@rabi.columbia.edu>
289
290 * expr.c (emit_move_insn_1): Abort if MODE argument is invalid.
291 (compare): Punt if TREE_OPERAND (exp, 0) is an ERROR_MARK.
292
e6980e1b
JL
293Tue Apr 27 01:33:43 1999 Jeffrey A Law (law@cygnus.com)
294
295 * Makefile.in (ORDINARY_FLAGS_TO_PASS): Renmaed from FLAGS_TO_PASS.
296 Remove "CC".
297 (FLAGS_TO_PASS): New variable.
298
6a6fc514
NB
299Tue Apr 27 00:36:44 1999 Nick Burrett <nick.burrett@btinternet.com>
300
301 * arm.md (nop): Output instruction using output_asm_insn to fix
302 assembler dialect problems.
303
26e2e81d
RL
304Mon Apr 26 23:55:50 1999 Robert Lipe <robertlipe@usa.net>
305
5d55e5cd
RL
306 * Makefile.in (fixinc.sh): Fix dependencies.
307
26e2e81d
RL
308 * fixinc/inclhack.def (avoid_bool): Enable match if typedefs are
309 prepended by spaces.
310 (sco5_stat_wrappers): New fix. Make sys/stat.h C++ safe.
311 * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
312
112cedb0
MK
313Mon Apr 26 23:28:54 1999 Mumit Khan <khan@xraylith.wisc.edu>
314 Donn Terry <donn@interix.com>
315
6a9c4aed
MK
316 * function.c (put_var_into_stack): Change ptr_mode to Pmode
317 in setup for chkr_set_right_libfunc calls.
318 (assign_params): Likewise.
319 * expr.c (emit_push_insn): Change ptr_mode to Pmode in
320 setup for chkr_copy_bitmap_libfunc and chkr_set_right_libfunc calls.
321 (expand_assignment): Change ptr_mode to Pmode in
322 setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc.
323 (store_expr): Change ptr_mode to Pmode in
324 setup for chkr_add_libfunc and chkr_copy_bitmap_libfunc.
325 (expand_expr): Change ptr_mode to Pmode in
326 setup for chkr_check_addr_libfunc.
327 (expand_builtin): Change ptr_mode to Pmode in
328 setup for chkr_check_str_libfunc, chkr_copy_bitmap_libfunc and
329 chkr_check_addr_libfunc.
330 * calls.c (rtx_for_function_call): Change ptr_mode to Pmode in
331 setup for chkr_check_exec_libfunc.
332 (expand_call): Change ptr_mode to Pmode in
333 setup for chkr_set_right_libfunc.
334 (expand_call): Change ptr_mode to Pmode in
335 setup for chkr_set_right_libfunc.
336 (store_one_arg): Change ptr_mode to Pmode in
337 setup for chkr_set_right_libfunc.
338
112cedb0
MK
339 * c-parse.in (absdcl1): Allow attributes in explicit typespecs.
340 (%expect): Update.
341 * c-parse.y: Regenerate.
342 * c-parse.c: Likewise.
343 * objc/objc-parse.c: Likewise.
344 * objc/objc-parse.y: Likewise.
345
0f92adae
JM
346Mon Apr 26 21:17:41 1999 Jason Merrill <jason@yorick.cygnus.com>
347
348 * c-pragma.c (push_alignment): Don't ignore alignments greater than
349 4 bytes.
350 (handle_pragma_token): Likewise.
351
352 * c-pragma.c: Support for #pragma pack (push, <id>, <n>).
353 (struct align_stack): Add id field.
354 (push_alignment, pop_alignment): Take id parameter.
355 (handle_pragma_token): Add necessary states.
356 * c-pragma.h (enum pragma_state): Add necessary states.
357
ccd63d90
MH
358Tue Apr 27 13:58:23 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
359
360 * config/c4x/c4x.md (*cmpqf, *cmpqf_noov, *cmpqi_test,
361 *cmpqi_test_noov): Remove ? modifier from constraints list.
362 (*smulqi3_highpart_clobber, *umulqi3_highpart_clobber): Swap
363 output strings to match new constraint ordering.
364
3caee4a8
ZW
3651999-04-26 19:16 -0400 Zack Weinberg <zack@rabi.columbia.edu>
366
367 * cpphash.c (dump_definition): New function.
368 * cpphash.h: Prototype it.
369
370 * cpplib.c (handle_directive): Don't output anything here.
371 Streamline.
372 (pass_thru_directive): Take a length, not a pointer to the
373 end. All callers changed.
374 (do_define): Handle -dD, -dN, -g3 entirely here. Streamline.
375 (do_include): Handle -dI here.
376 (do_ident): Correct to match cccp.
377 (do_pragma): Copy the pragma through here.
378 (do_assert, do_unassert): Tidy.
379
380 * cppinit.c (cpp_finish): If -dM was specified, walk the macro
381 hash table and call dump_definition on all the entries.
382 * cppmain.c: cpp_finish may produce output.
383
641be6fe
MM
384Mon Apr 26 15:27:33 1999 Mark Mitchell <mark@codesourcery.com>
385
386 * toplev.c (compile_file): Move call to check_global_declarations
387 after output_exception_table to restore behavior as it was before
388 1999-04-22 change.
389
2a081858
BK
3901999-04-26 10:50 -0700 Bruce Korb <ddsinc09@ix.netcom.com>
391
392 * fixinc/fixincl.c: Improve the handling of child process exits
393 * fixinc/server.[ch]: Export the interface for shutting down
394 the server process
395 * fixinc/inclhack.tpl: Remove unnecessary character quote
5dadc304 396 * fixinc/fixincl.sh, fixinc/inclhack.sh: Regenerate
2a081858 397
6af57aae 398Mon Apr 26 10:41:42 EDT 1999 Andrew MacLeod <amacleod@cygnus.com>
ba46ca47
AM
399
400 * alpha.md (builtin_setjmp_receiver): Use a label_ref instead of
401 a code label.
402
b89d20aa
ZW
4031999-04-26 09:47 -0400 Zack Weinberg <zack@rabi.columbia.edu>
404
405 * rtl.texi: Document the rtl classes and their relation to
406 formats.
407
be5090b0
RH
408Mon Apr 26 01:02:38 1999 Richard Henderson <rth@cygnus.com>
409
410 * alpha.md (fix_trunc patterns): Use reg_no_subreg_operand on op0
411 for less work in reload.
412 (movsf and movdf patterns): Put fp reg alternatives first.
413
766518a0
ME
414Mon Apr 26 01:55:56 1999 Marc Espie <espie@cvs.openbsd.org>
415
416 * configure.in (openbsd): Factorize xmake_file.
417 (ix86 openbsd): Trim obsolete comment.
418 (vax openbsd): Fix typo.
419 * configure: Rebuilt.
420
ab40f612
DT
421Mon Apr 26 01:30:59 1999 Donn Terry <donn@interix.com>
422
423 * expr.c (expand_assignment): Improve test for pointer type.
424
e03ec28f
RH
425Mon Apr 26 00:26:18 1999 Richard Henderson <rth@cygnus.com>
426
427 * alpha.c (print_operand_address): Account for the subreg word.
428
07444f1d
TM
429Mon Apr 26 01:08:36 1999 Toshiyasu Morita (tm@netcom.com)
430
431 * fold-const.c (make_range): Always initialize arg0 and arg1.
432 (fold): Simlarly for alt0 and alt1.
433 * function.c (fixup_var_refs_insns): Initialize insn_list.
434 (instantiate_virtual_regs_1): Initialize offset.
435 * optabs.c (expand_binop): Initialize carry_in, carry_out, op0_xhigh
436 and op1_xhigh.
437 * stmt.c (expand_end_case): Initialize minval and maxval.
438
c1709d0c
NS
439Mon Apr 26 01:02:34 1999 Nathan Sidwell <nathan@acm.org>
440
441 * toplev.c (report_error_function): Reorder file stack and
442 function name printing. Ignore FILE parameter.
443
13ee407e
JQ
444Mon Apr 26 00:58:54 1999 Jerry Quinn <jquinn@nortelnetworks.com>
445
ea3bfbfe
JQ
446 * pa.h (architecture_type): New enum.
447 (pa_arch_string, pa_arch): Declare.
448 (MASK_PA_10, MASK_PA_20): New flags.
449 (TARGET_SWITCHES): Add pa-risc-2-0. Update docs for PA1.0 codegen.
450 (TARGET_OPTIONS): Add -march= option.
451 * pa.c (pa_arch, pa_arch_string): Define.
452 (override_options): Set them.
453 * pa/pa-hpux10.h (ASM_FILE_START): Output LEVEL 2.0 asm directive for
454 2.0 architecture.
455 * invoke.texi (Option Summary, HPPA Options): Document new
456 architecture flags.
457
13ee407e
JQ
458 * pa/pa-hpux.h, pa/pa-hpux10.h, pa/pa-hpux9.h, pa/pa-osf.h, pa.h,
459 pa.c, pa.md, configure.in, configure: Replace TARGET_SNAKE by
460 TARGET_PA_11 and MASK_SNAKE by MASK_PA_11.
461
f9e814f1
TP
462Mon Apr 26 00:28:25 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
463
464 * flags.h (inline_max_insns): Declare.
465 * integrate.c (inline_max_insns): New variable.
466 (function_cannot_inline_p): Use it.
467 * toplev.c (main): Add the flag -finline-limit-n.
468 (display_help): Document -finline-limit-n.
469 * invoke.texi: Document -finline-limit-n
470
947255ed
RH
471Sun Apr 25 23:03:32 1999 Richard Henderson <rth@cygnus.com>
472
473 * stmt.c (expand_asm_operands): Reload in-out reg-only memory operands.
474
4433e339
RH
475Sun Apr 25 13:06:13 1999 Richard Henderson <rth@cygnus.com>
476
477 * function.c (assign_parms/STACK_BYTES): Revert last change,
478 and that of 19 Nov.
479
fb5eebb9
RH
480Sun Apr 25 12:30:50 1999 Richard Henderson <rth@cygnus.com>
481
482 * calls.c (emit_call_1): New arg rounded_stack_size; update callers.
483 Update pending_stack_adjust based on this value.
484 (compute_argument_block_size): Include pending_stack_adjust in
485 PREFERRED_STACK_BOUNDARY alignment.
486 * function.c (assign_parms): Don't round to PREFERRED_STACK_BOUNDARY.
487
10195bd8
JW
488Sun Apr 25 14:38:10 EDT 1999 John Wehle (john@feith.com)
489
490 * stupid.c (stupid_mark_refs): Generate a REG_UNUSED note
491 for a register which is clobbered even if the register
492 was used by an earlier instruction.
493
494 * i386.md (fix_truncsfdi2, fix_truncdfdi2,
495 fix_truncxfdi2): Don't bother with the gen_reg_RTX.
496 (fix_truncsfsi2, fix_truncsfdi2, fix_truncdfsi2,
497 fix_truncdfdi2, fix_truncxfsi2, fix_truncxfdi2): Update
498 operand constraints and modes.
499 * i386.c (output_fix_trunc): Use HImode register to avoid
500 memory stalls. Call output_move_double instead of output_to_reg.
501 (output_to_reg): Remove.
502 * i386.h: Likewise.
503
504 * i386.md (negsf2, negdf2, negxf2): Set the type
505 attribute to fpop.
506
5b9ba539
DT
507Sat Apr 24 23:15:57 1999 Donn Terry (donn@interix.com)
508
509 * alpha.md (call_value_nt): Correct subscripts.
510
714b019c
RH
511Sat Apr 24 20:49:20 1999 Richard Henderson <rth@cygnus.com>
512
513 * alpha.h (PRINT_OPERAND_ADDRESS): Break out to ...
514 * alpha.c (print_operand_address): here. Handle subregs.
515
53b5ce19
JW
516Fri Apr 23 22:35:41 EDT 1999 John Wehle (john@feith.com)
517
518 * acconfig.h (HAVE_GAS_FILDS_FISTS): Add.
519 * configure.in: Check assembler instructions.
520 * configure: Rebuild.
521 * config.in: Likewise.
522 * i386.md (floathisf2, floathidf2, floathixf2): New patterns.
523 * i386.c (print_operand): Use the proper suffix for a 387 HImode
524 operand. Abort if a 387 operand has an unsupported size.
525
4c020733
RH
526Fri Apr 23 16:57:40 1999 Richard Henderson <rth@cygnus.com>
527
528 * alpha.c (alpha_write_verstamp): Mark `file' unused.
529 * alpha.h (FUNCTION_VALUE): Use gen_rtx_REG not gen_rtx.
530 (LIBCALL_VALUE): Likewise.
531 (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Handle normal subregs.
532
98283b42
DT
533Fri Apr 23 14:57:33 1999 Donn Terry <donn@interix.com>
534
535 * alpha32.h (INITIALIZE_TRAMPOLINE): Get offsets right.
536
d2692ef8
DT
537 * alpha.c (alpha_initialize_trampoline): Add covert_memory_address
538 calls as needed.
539
14eecd34
RH
540Fri Apr 23 14:36:47 1999 Richard Henderson <rth@cygnus.com>
541
542 * alpha.c (alpha_expand_prologue): Don't negate frame size
543 for use with subq.
544
75c437de
NC
545Fri Apr 23 09:43:18 1999 Nick Clifton <nickc@cygnus.com>
546
547 * print-rtl.c (print_rtx): Display LABEL_NUSES for labels.
548
32291f94
MM
549Thu Apr 22 23:08:37 1999 Mark Mitchell <mark@codesourcery.com>
550
551 * toplev.h (wrapup_global_declarations): Declare.
552 (check_global_declarations): Likewise.
553 * toplev.c (wrapup_global_declarations): New function, split out
554 from ...
555 (check_global_declarations): Likewise...
556 (compile_file): Here.
557
01680a25 558Thu Apr 22 22:34:41 1999 Richard Henderson <rth@cygnus.com>
19d6ff23
RH
559
560 * c-parse.in (expr_no_commas): Verify we've an expr before
561 calling C_SET_EXP_ORIGINAL_CODE.
562
5ad9b85f
JW
563Thu Apr 22 22:22:15 EDT 1999 John Wehle (john@feith.com)
564
565 * toplev.c (rest_of_compilation): Always set
566 current_function_uses_only_leaf_regs appropriately.
567
4197ac78
MK
568Thu Apr 22 14:39:43 1999 Mumit Khan <khan@xraylith.wisc.edu>
569
570 * i386/xm-cygwin.h (HAVE_BCOPY): Delete unneeded macro.
571 (HAVE_BZERO): Likewise.
572 (HAVE_BCMP): Likewise.
573 (HAVE_RINDEX): Likewise.
574 (HAVE_INDEX): Likewise.
575 (DIR_SEPARATOR_2): Define.
576 (GET_ENV_PATH_LIST): Turn path lists into POSIX.
577 (PATH_SEPARATOR): Use ':'.
578
76c8f855
BK
5791999-04-22 Bruce Korb <ddsinc09@ix.netcom.com>
580
581 * configure.in: enable disabling of fast fixincludes
582 * configure: regenerate
583
b323effe
ZW
5841999-04-21 14:55 -0400 Zack Weinberg <zack@rabi.columbia.edu>
585
586 * gen-protos.c: #undef abort after including system.h.
587 Delete defns of fancy_abort and fatal.
588 * fix-header.c: Delete defn of fancy_abort.
589
4cd4ea91
MK
590Wed Apr 21 12:09:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
591
592 * cccp.c (simplify_filename): Always preserve leading double slash.
593
82bfb8e3
MH
594Wed Apr 21 18:15:55 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
595
596 * config/c4x/c4x.md: Add new peepholes to remove redundant loads.
597
65c78c7d
MH
598Wed Apr 21 17:41:29 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
599
600 * config/c4x/c4x.md (binary patterns): Reorder alternatives
601 so that two operand instructions are chosen before three operand
82bfb8e3
MH
602 instructions.
603
604Tue Apr 20 23:38:58 1999 Nathan Sidwell <nathan@acm.org>
40e4e3fd 605
191b6fc9
NS
606 * objc/Make-lang.in (objc-parse.c): Put BISON parameters in correct
607 order.
608
609 * Makefile.in (c-parse.c): Put BISON parameters in correct
40e4e3fd
NS
610 order.
611
37679e06
RH
612Tue Apr 20 16:38:11 1999 Richard Henderson <rth@cygnus.com>
613
614 * alpha.md (nt_lda): New pattern.
615 * alpha.c (alpha_expand_prologue): Use it for large frames
616 under windows nt.
617
0f834f0a
CM
618Tue Apr 20 17:57:14 1999 Catherine Moore <clm@cygnus.com>
619
620 * config/arm/arm.md (movhi): Add check for odd offset.
621
296967fe
JW
622Tue Apr 20 13:14:58 EDT 1999 John Wehle (john@feith.com)
623
624 * i386.c (output_move_double): Abort if a non-offsettable
625 memory operand is encountered. Delete unused code.
626 (find_addr_reg): Remove.
627
5b916f26
CB
628Mon Apr 19 21:13:02 1999 Craig Burley <craig@jcb-sc.com>
629
630 * tree.def (BLOCK): Fix typo in comment.
631
80e9dcb4
ZW
6321999-04-19 14:51 -0400 Zack Weinberg <zack@rabi.columbia.edu>
633
634 * cpplib.c (output_line_command): Drop CONDITIONAL argument.
635 We can omit unnecessary line commands if file_change ==
636 same_file and pfile->lineno != 0. All callers changed.
637 (cpp_get_token [case '\n']): Don't bump pfile->lineno if
638 CPP_OPTIONS (pfile)->no_line_commands is set.
639 * cpplib.h: Fix prototype of output_line_command.
640
6b84a1ba
ZW
6411999-04-18 17:46 -0400 Zack Weinberg <zack@rabi.columbia.edu>
642
643 * cppfiles.c (find_position, read_and_prescan): Use `unsigned
644 long' variables consistently to count line and column numbers.
645
54ff41b7
JW
646Sun Apr 18 15:50:33 EDT 1999 John Wehle (john@feith.com)
647
648 * output.h (current_function_is_leaf,
649 current_function_uses_only_leaf_regs): Declare.
650 * function.c (current_function_is_leaf,
651 current_function_uses_only_leaf_regs): Define.
652 (init_function_start): Initialize current_function_is_leaf
653 and current_function_uses_only_leaf_regs.
654 * final.c (leaf_function): Don't define.
655 (final_start_function): Replace uses of leaf_function with
656 current_function_uses_only_leaf_regs.
657 * toplev.c (rest_of_compilation): Set current_function_is_leaf
658 prior to invoking local register allocation.
659 (rest_of_compilation): Replace uses of leaf_function with
660 current_function_uses_only_leaf_regs.
661 * dbxout.c (dbxout_symbol, dbxout_parms): Likewise.
662 * dwarf2out.c (add_location_or_const_vaule_attribute): Likewise.
663 * dwarfout.c (add_location_or_const_value_attribute): Likewise.
664 * sdbout.c (sdbout_symbol): Likewise.
665 * sparc.h (FUNCTION_PROLOGUE, FUNCTION_EPILOGUE): Likewise.
666 * sparc.c (eligible_for_epilogue_delay, output_return,
667 sparc_return_peephole_ok): Likewise.
668 * sparc.md (leaf_function attribute, untyped_return): Likewise.
669 * i386.c (ix86_compute_frame_size): Don't align the stack
670 for leaf functions which don't allocate any stack slots.
671 * tm.texi: Update documentation.
672
a3f2e0fc
JL
673Sun Apr 18 02:15:09 PDT 1999 Jeff Law (law@cygnus.com)
674
675 * version.c: Bump for snapshot.
676
6fab83fd
RH
677Sun Apr 18 00:08:45 1999 Richard Henderson <rth@cygnus.com>
678
679 * alpha.h (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Correct last change --
680 make sure FP_BASE_P registers are only used with an integer.
681
5d02b6c2
RH
682Sat Apr 17 22:54:17 1999 Richard Henderson <rth@cygnus.com>
683
684 * alpha.h (REG_OK_FP_BASE_P): New macro.
685 (GO_IF_LEGITIMATE_SIMPLE_ADDRESS): Use it.
686 * alpha.md (adddi3+1): New insn to handle large constants off
687 the soft frame pointer.
688 (adddi3+2): Don't split soft frame pointer or arg pointer additions.
689
87ba6944
MH
690Sun Apr 18 17:24:10 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
691
692 * config/c4x/c4x.c (legitimize_operands): Use rtx_cost
693 to determine if it is worthwhile forcing a constant into a register.
694 * config/c4x/c4x.h (CONST_COSTS): An integer value of 255 or 65535
695 used with a logical and or an integer value of 16 or 24 used with
696 a right shift has zero cost on the C40.
697
695ab36a
BS
698Sat Apr 17 21:30:11 1999 Bernd Schmidt <crux@pool.informatik.rwth-aachen.de>
699
700 * gcse.c (compute_local_properties): If setp is nonzero, clear
701 TRANSP instead of setting it to all ones.
702
3af4bd89
JH
703Sat Apr 17 21:10:10 1999 Jan Hubicka <hubicka@freesoft.cz>
704
705 * i386.c (i386_preferred_stack_boundary_string): New global variable.
706 (i386_preferred_stack_boundary): New global variable.
707 (override_functions): Set it. Tidy option setting code.
708 * i386.h (TARGET_OPTIONS): New command line option.
709 (i386_preferred_stack_boundary_string): Declare it.
710 (i386_preferred_stack_boundary): Likewise.
711 (PREFERRED_STACK_BOUNDARY): Use i386_preferred_stack_boundary.
712
73fe76e4
JH
713Sat Apr 17 19:22:38 1999 Jan Hubicka <hubicka@freesoft.cz>
714
715 * i386.c (k6_cost): Take into account the decoding time.
716
d119f84c
RH
717Sat Apr 17 19:13:22 1999 Donn Terry <donn@interix.com>
718
719 * i386.h (PRINT_OPERAND_PUNCT_VALID_P): Allow _.
720 * i386.c (print_operand): New %_ operator.
721 (load_pic_register): Proper number of leading _ in GOT literal.
722 * i386.md (prologue_get_pc_and_set_got): Likewise.
723 * i386/unix.h (ASM_OUTPUT_MI_THUNK): Likewise.
724
725Sat Apr 17 19:13:07 1999 Richard Henderson <rth@cygnus.com>
f9d7e5cd
RH
726
727 * alpha.c (alpha_expand_prologue): Use gen_adddi3 instead of
728 emit_move_insn+plus_constant. For NT, don't use the stack probe
729 loop pointer to allocate stack space.
730 * alpha.md (adddi3): Always use lda to set the stack pointer.
731
01198c2f
ZW
7321999-04-17 20:11 -0400 Zack Weinberg <zack@rabi.columbia.edu>
733
734 * c-aux-info.c, emit-rtl.c, explow.c, expmed.c, gcse.c,
735 haifa-sched.c, optabs.c, reorg.c, resource.c, sched.c: Include
736 toplev.h for real declaration of trim_filename.
737 * Makefile.in: Update dependencies.
738
0f4668ef
CB
739Sat Apr 17 14:36:19 1999 Craig Burley <craig@jcb-sc.com>
740
741 * tree.c (chainon): Check for circularity only if
742 ENABLE_CHECKING is defined.
743
fc5045f3
ZW
7441999-04-17 10:15 -0400 Zack Weinberg <zack@rabi.columbia.edu>
745
746 * cccp.c: Make fatal non-static.
747
d98d16b1
MH
748Sat Apr 17 23:47:24 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
749
750 * config/c4x/c4x.md (*andqi3_255_clobber,*andqi3_65535_clobber):
751 New logical and patterns using C40 bit-field insert instructions.
752 (*lshrqi3_24_clobber,*ashrqi3_24_clobber,*lshrqi3_16_clobber,
753 *ashrqi3_16_clobber): New shift patterns using C40 bit-field insert
754 instructions.
755
2a611d21
ZW
7561999-04-16 22:44 -0400 Zack Weinberg <zack@rabi.columbia.edu>
757
758 * system.h: Always prototype abort. Prototype fatal. Define
759 abort to call fatal, not fprintf/exit. Define a stub macro
760 for trim_filename.
761 * toplev.c: Define DIR_SEPARATOR. (trim_filename): New
762 function.
763 * toplev.h: Prototype trim_filename, and #undef system.h's stub.
764
765 * gcc.c, genattr.c, genattrtab.c, gencodes.c, genconfig.c,
766 genemit.c, genextract.c, genflags.c, genopinit.c, genoutput.c,
767 genpeep.c, genrecog.c: Make fatal non-static.
768 * gcov.c, gengenrtl.c, protoize.c: #undef abort after
769 including system.h.
770
771 * config/i386/dgux.h, config/m68k/xm-amix.h: Remove stale code
772 relating to abort.
773
d8b173bb
MH
774Sat Apr 17 11:25:44 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
775
776 * config/c4x/c4x.md (mulqf3_clrqf_clobber, mulqi3_clrqi_clobber):
777 New patterns to support parallel multiply and load of zero.
778
ace3c40a
JM
779Fri Apr 16 01:23:47 1999 Jason Merrill <jason@yorick.cygnus.com>
780
781 * tree.c (valid_machine_attribute): If we're modifying the
782 FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl,
783 update the POINTER_TYPE.
784
a14003ee
JH
785Fri Apr 16 00:19:31 1999 Jan Hubicka <hubicka@freesoft.cz>
786
787 * i386.c (x86_adjust_cost): Move break statement to correct place.
788
7c311035
JQ
789Thu Apr 15 23:17:33 1999 Jerry Quinn <jquinn@nortelnetworks.com>
790
791 * pa.h (HAVE_PRE_INCREMENT, HAVE_POST_INCREMENT,
792 HAVE_PRE_DECREMENT, HAVE_POST_DECREMENT): Fix pa_cpu value from
793 8000 to PROCESSOR_8000.
794
aefe40b1
DT
795Thu Apr 15 20:46:57 1999 Donn Terry (donn@interix.com)
796
6419e5b0
DT
797 * expr.c (expand_assignment): Force pointers to proper mode if
798 POINTERS_EXTEND_UNSIGNED is defined.
799
79dc434e
DT
800 * xm-alpha.h (alloca.h): Add Interix to list of special machines
801 that don't like alloca.h, pending using autoconf results.
802
30bf7f73
DT
803 * except.c (start_catch_hadler): Be sure rtime_address is Pmode
804 if POINTERS_EXTEND_UNSIGNED.
805
aefe40b1
DT
806 * except.c (expand_eh_return): Force pointers to proper mode if
807 POINTERS_EXTEND_UNSIGNED.
808
1ac7a7f5
MH
809Thu Apr 15 23:13:35 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
810
811 * config/c4x/c4x.h: Tweaked comment formatting.
812 * config/c4x/c4x.c: Likewise.
813
75923b2f
MK
814Thu Apr 15 02:45:19 1999 Mumit Khan <khan@xraylith.wisc.edu>
815
816 * aclocal.m4 (GCC_FUNC_MKDIR_TAKES_ONE_ARG): Define.
817 * configure.in: Use.
818 * configure: Rebuilt.
819 * acconfig.h (MKDIR_TAKES_ONE_ARG): Add.
820 * config.in: Rebuilt.
821 * system.h: Use.
822
b222082e
JH
823Thu Apr 15 01:03:21 1999 Jan Hubicka <hubicka@freesoft.cz>
824 Jeff Law <law@cygnus.com>
825
7c802a40
JH
826 * i386.md (QImode add pattern): Support lea instruction.
827 (HImode add pattern): Likewise.
828
6ec6d558
JH
829 * i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3.
830 (ashlqi): Use expander, separate LEA and SAL / ADD patterns; call
831 output_ashl.
832 (ashlhi): Likewise.
833 * i386.h (output_ashl): Renamed from output_ashlsi3.
834 * i386.c (output_ashl): Likewise; support HImode and QImode operands
835 as well.
836
b222082e
JH
837 * i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call
838 memory_address_displacement_length instead of memory_address_length.
839 * i386.c (memory_address_info): Renamed from memory_address_length.
840 Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH,
841 then return the displacement length. Else return length of the
842 entire memory address. Handle MULT case correctly.
843 * i386.h (memory_address_info): Update declaration.
844
845 * i386.md (memory_bit_test): Fix paren error.
846
a3e924fc
AH
847Wed Apr 14 21:29:18 1999 Andrew Haley <aph@cygnus.com>
848
849 * flow.c: (make_edges): Always make edges from a basic block
850 to its exception handlers, even if the block ends with a jump.
851
a30d557c
ZW
8521999-04-14 23:26 -0400 Zack Weinberg <zack@rabi.columbia.edu>
853
854 * graph.c (node_data): Return void. Ignore result of
855 print_rtl_single. Change caller to match.
856 * integrate.c (subst_constants): Initialize op0_mode to an
857 invalid mode, and abort before use if it's still invalid.
858 (Can only happen if the RTX_CLASS, RTX_FORMAT tables are corrupted.)
859 * objc/objc-act.c (get_objc_string_decl,
860 build_selector_translation_table, generate_protocol_list,
861 synth_id_with_class_suffix, build_keyword_selector,
862 build_selector_expr, gen_declarator): Abort when the tree
863 structure is corrupted.
864
8354da48
JL
865Wed Apr 14 19:57:49 1999 Jeffrey A Law (law@cygnus.com)
866
867 * configure.in (alpha interix): Use symbolic names to set
868 target_cpu_default.
869 * configure: Rebuilt.
870
e0a52410
JL
871 * explow.c (allocate_dynamic_stack_space): Undo last change. Use
872 convert_memory_address instead.
873
2abed3c1
DT
874Wed Apr 14 19:42:02 1999 Donn Terry (donn@interix.com)
875
ff1555f8
DT
876 * alpha/lib1funcs.asm: New file.
877 * alpha/t-interix (lib1funcs.asm): Add to build.
878
2abed3c1
DT
879 * explow.c (allocate_dynamic_stack_space): Correctly convert TARGET
880 to Pmode.
881
cda749b1
JW
882Wed Apr 14 14:26:36 1999 John Wehle (john@feith.com)
883
ffac3509
JW
884 * i386.md (truncxfdf): Output the template supplied
885 by output_move_double with the correct operands.
886
a30d557c
ZW
887 * i386.md (extendsfdf, extendsfxf, extenddfxf): Use
888 output_float_extend instead specifying '#' as the template.
889 * i386.c (output_float_extend): Define.
890 * i386.h (output_float_extend): Declare.
cda749b1 891
d8265d29
CM
892Wed Apr 14 10:48:03 1999 Catherine Moore <clm@cygnus.com>
893
a30d557c
ZW
894 * config/mips/elf.h, config/mips/elf64.h
895 (CTORS_SECTION_ASM_OP): Define.
896 (DTORS_SECTION_ASM_OP): Define.
897 (EXTRA_SECTIONS): Define.
898 (INVOKE__main): Define.
899 (NAME__MAIN): Define.
900 (SYMBOL__MAIN): Define.
901 (EXTRA_SECTIONS_FUNCTIONS): Define.
902 (SECTION_FUNCTION_TEMPLATE): Define.
903 (ASM_OUTPUT_CONSTRUCTOR): Define.
904 (ASM_OUTPUT_DESTRUCTOR): Define.
905 (CTOR_LIST_BEGIN): Define.
906 (CTOR_LIST_END): Define.
907 (DTOR_LIST_BEGIN): Define.
908 (DTOR_LIST_END): Define.
909 (LIB_SPEC): Define.
910 (STARTFILE_SPEC): Define.
911 (ENDFILE_SPEC): Define.
912 * config/mips/linux.h: Undefine all of the above.
913 * config/mips/rtems64.h: Likewise.
914 * config/mips/t-r3900: Likewise.
915 * config/mips/t-elf: New file.
916 * config/mips/vxworks.h: New file.
917 * configure.in (mips-wrs-vxworks): Use mips/vxworks.h.
918 (mips*-*-*elf*): Use t-elf instead of t-ecoff.
919 * configure: Regenerate.
d8265d29 920
4eea1672
RH
921Wed Apr 14 09:59:38 1999 Richard Henderson <rth@cygnus.com>
922
923 * reload1.c (emit_reload_insns): Also find equivalent mems
924 for subregs of pseudos.
925
4e46365b
RH
926 * alpha.c (aligned_memory_operand): Recognize the output of
927 LEGITIMIZE_RELOAD_ADDRESS. Examine reg_equiv_memory_loc in
928 the event of a pseudo.
929 (unaligned_memory_operand): Likewise. Don't otherwise accept
930 completely illegal addresses.
931 (normal_memory_operand): Likewise. Handle subregs of pseudos.
932 (get_aligned_mem): Revert previous change. Abort if we don't have a
933 mem. During reload, call find_replacement on all illegal memories.
934 (get_unaligned_address): Likewise.
935 * alpha.h (SECONDARY_INPUT_RELOAD_CLASS): Use !aligned_memory_operand
936 instead of unaligned_memory_operand.
937 * alpha.md: Revert extra argument to get_aligned_mem.
938 (reload_inqi): Use any_memory_operand in constraints. Abort if
939 we're not given some sort of mem.
940 (reload_inhi): Likewise.
941 (reload_outqi, reload_outhi): Likewise.
942
c5fb6d4a
RH
943Wed Apr 14 09:39:20 1999 Richard Henderson <rth@cygnus.com>
944
945 * i386.md (neghi): Use the whole register when widening the op.
946
34ca9541
ZW
9471999-04-14 12:37 -0400 Zack Weinberg <zack@rabi.columbia.edu>
948
949 * cpperror.c, cppexp.c, cpplib.c: Never call abort.
950 * cpphash.c: Only call abort when we detect corruption of the
951 malloc arena.
952 * cppmain.c: Don't define fatal or fancy_abort.
953
42ebbb0a
JH
954Wed Apr 14 09:19:39 1999 Jan Hubicka <hubicka@freesoft.cz>
955
956 * i386.c (x86_adjust_cost): Agi stall takes 1 cycle on Pentium, fst
957 requires value to be ready one extra cycle.
958
d2328603
DB
959Wed Apr 14 11:28:34 1999 Dave Brolley <brolley@cygnus.com>
960
961 * config/i386/i386.c (memory_address_length): Add missing parenthesis.
962
2de45c06
ML
963Wed Apr 14 13:59:27 1999 Martin von Loewis <loewis@informatik.hu-berlin.de>
964
965 * extend.texi (Deprecated Features): New node.
966 * invoke.texi (-Wdeprecated): Document.
967
c0b9be67
JH
968Wed Apr 14 00:18:22 1999 Jan Hubicka <hubicka@freesoft.cz>
969
853c37e3
JH
970 * i386.md (SImode logical compare): Avoid outputing non-pariable testw
971 and testl on Pentium.
972 (register and memory bit tests): Likewise.
973 (setcc, normal and reversed conditional branches): Use shorter
974 sequence for testing flags stored in EAX.
975
bb524860
JH
976 * i386.md (xorsi3): Do not output NOT instrctions on Pentium.
977 (xorqi3): Likewise.
978 (xorhi3): Likewise.
979 (notsi2): Likewise.
980 (notqi2): Likewise.
981 (nothi2): Likewise; do not output prefixed opcodes when possible.
982
c0b9be67
JH
983 * i386.md (neghi2): Do not output prefixed opcode when possible.
984 (ashlhi3): Likewise.
985
fb693d44
RH
986Wed Apr 14 00:08:46 1999 Richard Henderson <rth@cygnus.com>
987
988 * i386.c (memory_address_length): New function.
989 * i386.h (memory_address_length): Declare it.
990
615c8231 991Tue Apr 13 22:52:04 1999 Donn Terry (donn@interix.com)
34ca9541 992 Martin Heller (Ing.-Buero_Heller@t-online.de)
615c8231
DT
993
994 * configure.in (interix Alpha): Add.
995 (winnt Alpha): Use alpha32.h
996 (interix i386): Parallel Alpha32.
997 * configure: Rebuilt.
998
999 * config/interix.h: Move common elements from i386-interix.h.
1000 * config/i386/i386-interix.h: Delete same.
1001 * config/alpha/alpha-interix.h: New file.
1002
1003 * config/alpha/alpha32.h: New file, part fron win-nt.h.
1004 * config/alpha/win-nt.h: Deletions (-> alpha32.h).
1005 * config/alpha/interix.h: New file
1006
1007 * config/alpha/alpha.md (interix): Comment.
1008
1009 * config/alpha/xm-alpha-interix.h: New file.
1010
34ca9541 1011 * config/alpha/t-interix: New file.
615c8231
DT
1012
1013 * fixinc/mkfixinc.sh (interix/Alpha): Add.
1014
5e37fb50
MS
10151999-04-13 Mike Stump <mrs@wrs.com>
1016
1017 * i386/vxi386.h (CPP_CPU_SPEC): Define appropriately for vxworks.
1018 (CPP_PREDEFINES, LIB_SPEC, STARTFILE_SPEC, ENDFILE_SPEC): likewise.
1019
adfaf194
JM
1020Tue Apr 13 21:01:36 1999 Jason Merrill <jason@yorick.cygnus.com>
1021
1022 * c-common.c (default_valid_lang_attribute): New fn.
1023 (valid_lang_attribute): New callback ptr.
1024 (decl_attributes): Call it. Move init_priority support into
1025 C++ frontend.
1026
63a4a903
JW
1027Tue Apr 13 17:47:14 1999 John Wehle (john@feith.com)
1028
1029 * i386.md (movdi): Add splitter.
1030
ebcc44f4
MH
1031Wed Apr 14 10:04:27 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1032
1033 * config/c4x/c4x.md (storeqf_int, storeqf_int_clobber, loadqf_int,
f133e603
MS
1034 loadqf_int_clobber): Add new patterns with corresponding splitters
1035 to handle moves of floating point values into and out of intager
1036 registers by using memory.
ebcc44f4
MH
1037
1038 * config/c4x/c4x.c (c4x_check_legit_addr): Disallow PRE_INC for modes
1039 other than QFmode and QImode.
1040 (mixed_subreg_operand): New function.
1041 (c4x_emit_move_sequence): If moving a floating point value into or
1042 out of an integer register, use the new patterns storeqf_int_clobber
1043 or loadqf_int_clobber.
1044 (reg_imm_operand, *_reg_operand): Call reg_operand instead of
1045 register_operand.
1046 (reg_operand, src_operand): Disallow operand if it satisifes
1047 mixed_subreg_operand.
1048
1049 * config/c4x/c4x.h (mixed_subreg_operand): Add prototype.
1050
f133e603 1051Tue Apr 13 14:49:13 1999 Jan Hubicka <hubicka@freesoft.cz>
b985a30f
JH
1052
1053 * i386.c (agi_dependent): Handle push operation more correctly.
1054
f133e603 1055Tue Apr 13 14:45:17 1999 Jan Hubicka <hubicka@freesoft.cz>
6e383e61
JH
1056
1057 * i386.md (anddi3): Add % constraint.
1058 (iordi3, xordi3): Likewise.
1059
f133e603 1060Tue Apr 13 14:29:58 1999 Jan Hubicka <hubicka@freesoft.cz>
813d245a
JH
1061
1062 * i386.md (extendhisi2): Output mov instead of cw instruction for K6
1063 to improve decoding bandwidth.
1064 * i386.md (extendhiqi2): Likewise.
1065
f133e603 1066Tue Apr 13 14:26:31 1999 Jan Hubicka <hubicka@freesoft.cz>
f72b27a5
JH
1067
1068 * i386.md (movsf_push): Handle memory to memory case too, new splitter.
1069 (movdf_push, movxf_push): Likewise.
1070 (movsf_push_memory, movdf_push_memory, movxf_push_memory): Remove.
1071
f133e603 1072Tue Apr 13 14:14:06 1999 Jan Hubicka <hubicka@freesoft.cz>
0ffc4dca
JH
1073
1074 * i386.md: Do not output mov %0,reg on AMD K6.
1075
9e934a98
DB
1076Tue Apr 13 12:14:07 1999 Dave Brolley <brolley@cygnus.com>
1077
1078 * cppinit.c (cpp_start_read): Fix buffer overwrite.
1079 * Makefile.in (cppinit.o): Typo in dependencies.
1080
f133e603 1081Tue Apr 13 05:04:59 1999 Richard Earnshaw (rearnsha@arm.com)
0e8285f1
RE
1082
1083 * arm.h (function prototypes for arm.c): Ifdef these out if
1084 HAVE_CONFIG_H is not defined.
1085
d2d28085
JL
1086Tue Apr 13 02:11:11 1999 Jeffrey A Law (law@cygnus.com)
1087
f133e603
MS
1088 * pa.c: Avoid Using immediate zero for register zero.
1089 * pa.md: Likewise.
55abf18a 1090
f133e603
MS
1091 * pa.c (print_operand, case 'f'): New case for FP register or 0.0.
1092 (print_operand, case 'r'): Use %r0 for zero value.
1093 * pa.md (move patterns, fcmp patterns): Use new %f output arg.
55abf18a 1094
f133e603 1095 * pa.c: Use a register name, not a raw immediate in branch,
3b5e5fb3
JL
1096 compare/clear, sub, subb, uaddcm and vshd instructions.
1097 * pa.md: Likewise.
1098
f133e603 1099 * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
3b5e5fb3 1100
f24d52e1
JL
1101 * pa.c: Use a register name, not a raw immediate in "bv" instructions.
1102 * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
1103
d2d28085
JL
1104 * pa.c: Remove space register specification in memory addresses,
1105 except where it is actually needed.
1106 * pa.md, pa.h, ee.asm, ee_fp.asm, lib2funcs.asm: Likewise.
1107
f133e603 1108Mon Apr 12 23:34:35 1999 Jeff Law (law@cygnus.com)
c499fa64
JL
1109
1110 * version.c: Bump for snapshot.
1111
f133e603 1112Mon Apr 12 14:58:30 1999 Jan Hubicka <hubicka@freesoft.cz>
791ca74c
JH
1113
1114 * reg-stack.c (check_stack_regs_mentioned): Remove variable SIZE.
1115
f133e603 1116Mon Apr 12 19:15:17 1999 Daniel Jacobowitz <dan@debian.org>
3c59b7ab
DJ
1117
1118 * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Add missing backslash.
1119
c6df90d8
MK
1120Mon Apr 12 19:11:38 1999 Mumit Khan <khan@xraylith.wisc.edu>
1121
1122 * i386/cygwin.h (SUBTARGET_SWITCHES): Add -mconsole; fix
1123 -mno-nop-fun-dllimport and minor doc fixes.
1124 (STARTFILE_SPEC): Cygwin DLLs don't have dllcrt0.
1125 (LINK_SPEC): Add -mconsole support.
1126 * i386/mingw32.h (LIB_SPEC): Make libraries consistent with
1127 Cygwin.
1128 (LINK_SPEC): Remove. Use Cygwin's version.
1129 (MATH_LIBRARY): Make it null.
1130 * i386/crtdll.h (MATH_LIBRARY): Likewise.
1131
f133e603 1132Fri Apr 12 15:00:52 1999 Stan Cox <scox@cygnus.com>
007aaed0
SC
1133
1134 * c-decl.c (c_decode_option, start_decl, start_function,
1135 finish_function) : Recognize -Wno-main so we can avoid warnings.
1136
f133e603 11371999-04-12 Zack Weinberg <zack@rabi.columbia.edu>
ed45de98
ZW
1138
1139 * cpphash.c (collect_expansion, macroexpand,
1140 push_macro_expansion): Make the escape character in macro
1141 buffers '\r', not '@'. Remove code to protect literal
1142 occurences of the escape character; '\r' cannot appear
1143 in a macro buffer unless we put it there.
1144 * cpplib.c (skip_comment, copy_comment, cpp_skip_hspace,
1145 copy_rest_of_line, cpp_get_token, parse_string,
1146 parse_assertion): '\r' might be a backslash-newline marker, or
1147 it might be a macro escape marker, depending on
1148 CPP_BUFFER (pfile)->has_escapes. '@' is not a special
1149 character.
1150 * cpplib.h: Update commentary.
1151
f133e603 1152Mon Apr 12 09:30:03 1999 Richard Earnshaw (rearnsha@arm.com)
f9cc092a
RE
1153
1154 * arm.h (target_fp_name, structure_size_string, arm_cpu_select):
1155 Const-ify.
1156 * arm.c (target_fp_name, structure_size_string): Const-ify.
1157
1158 * arm.md (reload_inhi, reload_outhi): Make the scratch DImode.
1159 * arm.c (arm_reload_in_hi): Handle cases when the input is still
1160 a pseudo, make use of scratch registers for reloading the address
1161 as appropriate.
1162 (arm_reload_outhi): Similarly for when the output is still a pseudo.
1163
1164 * riscix.h (SUBTARGET_SWITCHES): Document.
1165
f133e603 11661999-04-12 Bruce Korb <ddsinc09@ix.netcom.com>
9ae0257f 1167
c3c55f86
BK
1168 * fixincludes:
1169 make fixincludes behave like the scripts in fixinc/
1170
f853036b
BK
1171 * Makefile.in( stmp-fixinc ):
1172 ensure the SHELL value is that of the make
1173
9ae0257f
BK
1174 * fixincl/inclhack.tpl:
1175 the file name lists ought to be restricted to "*.h" anyway
1176 C++ files may be named .../[a-z]++/... also
1177 Adding copyright year and attribution to output
1178
1179 * fixincl/inclhack.def:
1180 fixed broken expression
1181 Clarify a some comments
1182
1183 * fixincl/fixincl.tpl:
1184 Clarify a some comments
1185 Remove dead template text
1186 Correct the counting of regular expressions
1187
96043e7e
RH
1188Mon Apr 12 03:07:44 1999 Richard Henderson <rth@cygnus.com>
1189
1190 * alpha.c (aligned_memory_operand): Handle out of range stack slots.
1191 Take a new SCRATCH argument for the occasion. Update all callers.
1192 (get_unaligned_address): Abort on out of range stack slots.
1193 * alpha.md (adddi3 splitter): Check s_p_rtx not REGNO.
1194 (reload_inqi): Check for aligned mems before unaligned.
1195 (reload_inhi): Likewise.
1196
55a98783
JL
1197Mon Apr 12 03:11:30 1999 Jeffrey A Law (law@cygnus.com)
1198
1199 * flow.c (flow_delete_insn): If we delete a CODE_LABEL, also remove
1200 it from the nonlocal_goto_handler_labels list.
1201 * jump.c (delete_insn): Likewise.
1202 (jump_optimize_1): Also recompute LABEL_NUSES when we are just
1203 marking labels.
1204 * rtl.h (remove_node_from_expr_list): Declare.
1205 * rtlanal.c (remove_node_from_expr_list): New function.
1206
f133e603 1207Mon Apr 12 02:37:02 1999 Jan Hubicka <hubicka@freesoft.cz>
21b2cd73
JH
1208
1209 * reg-stack.c: Update comment, include varray.h.
1210 (stack_regs_mentioned_data): New global variable.
1211 (check_stack_regs_mentioned): New function.
1212 (stack_regs_mentioned): New function.
1213 (reg_to_stack): Initialize and free stack_regs_mentioned_data,
1214 use stack_regs_mentioned.
1215 (record_asm_reg_life): Change insn type cache for changed insn.
1216 (record_reg_life): Do not change the insn mode.
1217 (emit_pop_insn): Likewise.
1218 (emit_swap_insn): Likewise.
1219 (move_for_stack_reg): Likewise.
1220 (stack_reg_life_analysis): Use stack_regs_mentioned.
1221 (emit_swap_insn): Likewise.
1222 (subst_stack_regs): Likewise.
1223 (convert_regs): Likewise.
1224 * jump.c (find_cross_jump): Use stack_regs_mentioned.
1225 * rtl.h (stack_regs_mentioned): Declare.
1226
f133e603 1227Mon Apr 12 00:57:10 1999 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
c51262cf
TP
1228
1229 * integrate.c (INTEGRATE_THRESHOLD): Sync it with the comment.
1230
10c5bca8
MM
1231Sun Apr 11 10:24:18 1999 Mark Mitchell <mark@codesourcery.com>
1232
1233 * rtl.h (rtx_def): Update documentation for jump and call.
1234
1ae5c6c2
KG
1235Sun Apr 11 07:43:44 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1236
1237 * jump.c (jump_optimize_1): Make the definition static to match
1238 the prototype.
1239
f133e603 1240Sat Apr 10 22:51:53 1999 Jan Hubicka <hubicka@limax.paru.cas.cz>
11f246f6
JH
1241
1242 * flow.c (life_analysis): New parameter remove_dead_code.
1243 (life_analysis_1): Likewise.
1244 (propagate_block): Likewise; use it.
1245 * output.h: Update prototype.
1246 * toplev.c: Update calls to life_analysis.
1247
f133e603
MS
1248Sat Apr 10 22:12:12 1999 Jan Hubicka <hubicka@freesoft.cz>
1249
62674ffe
JH
1250 * recog.c (constrain_operands): Ignore unary operators when
1251 matching operands. Recognize '5'..'9' as well.
1252
83f4345f
PT
1253Sat Apr 10 21:53:02 1999 Philipp Thomas (kthomas@gwdg.de)
1254 Richard Henderson <rth@cygnus.com>
1255
1256 * configure.in: Set target_cpu_default2 for target_alias k6.
1257 * i386.h (TARGET_SWITCHES): Remove no-<cpu> entries.
1258 (CC1_CPU_SPEC): Likewise.
1259 (CPP_CPU_DEFAULT_SPEC): Streamline definition. Add K6 version.
1260 (CPP_K6_SPEC): New.
1261 (CPP_CPU_SPEC): Add K6 variant.
1262 (EXTRA_SPECS): Likewise.
1263
f5c14c21
RH
1264Fri Apr 9 11:29:17 1999 Richard Henderson <rth@cygnus.com>
1265
1266 * flow.c (merge_blocks_nomove): Rewrite to properly handle two
1267 blocks that vanish entirely during merging.
1268
f133e603 1269Sat Apr 10 20:09:55 1999 John Wehle (john@feith.com)
6a4a5d95
JW
1270
1271 * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
1272 floatsixf2, floatdixf2, movsicc, movhicc, movsfcc, movdfcc,
1273 movxfcc, movdicc): Remove unused register constraints from
1274 the splitters.
1275
1276 * i386.md (fixuns_truncsfsi2, fixuns_truncdfsi2,
1277 fixuns_truncxfsi2): Delete.
1278
1279 * reg-stack.c (delete_insn_for_stacker): Ensure that
1280 the only side effects of a PARALLEL are clobbers.
1281 (subst_stack_regs): Handle subst_stack_regs_pat deleting
1282 a PARALLEL.
1283 * i386.md (extendsfdf2, extenddfxf2,
1284 extendsfxf2): Rewrite using a splitter.
1285 * i386.c (output_op_from_reg): Remove.
1286 * i386.h: Likewise.
1287
e9c6b69b
NC
1288Sat Apr 10 13:09:18 1999 Nick Clifton <nickc@cygnus.com>
1289
1290 * config/arm/arm.c (di_operand): Allow SUBREGs as well.
1291 (soft_df_operand): Allow SUBREGs as well.
1292
fe0ce426
JH
1293Sat Apr 10 06:14:31 1999 Jan Hubicka <hubicka@paru.cas.cz>
1294
1295 * extend.texi (Assembler Instructions with C Expression Operands):
1296 Document the i386 floating point operands.
1297
28897609
MS
12981999-04-10 Mike Stump <mrs@wrs.com>
1299
1300 * configure.in (*-*-vxworks): Add vxWorks thread support for all
1301 vxWorks targets.
1302 * configure.in (thumb-wrs-xvworks): Add vxWorks support for thumb.
1303 * configure: Rebuilt.
1304
f133e603 1305Sat Apr 10 06:04:50 1999 Donn Terry (donn@interix.com)
97ad1d43
DT
1306
1307 * i386/t-interix: Use mostly system headers unchanged.
1308 Use system assert.h
1309 * fixinc/fixinc.interix: Ditto (make almost no-op).
1310 * config/x-interix.h (_ALL_SOURCE): add -D
1311 * config/x-interix.h (crti.o): Delete dependency.
1312 * config/xm-interix.h (ONLY_INT_FIELDS): Define only when bootstrapping.
1313 * i386/xm-i386-interix.h: New file.
1314 * i386/interix.h (ASM_OUTPUT_LIMITED_STRING): Fix warnings.
1315 * i386/i386-interix.h: Renamed from interix.h.
1316 * configure.in (interix): Use new files.
1317 * configure: Rebuilt.
1318
f133e603 1319Sat Apr 10 05:25:28 1999 Daniel Jacobowitz <dan@debian.org>
f58f9450
DJ
1320
1321 * rs6000/sysv4.h (CPP_OS_LINUX_SPEC): Fix conditions
1322 for -Dunix and -Dlinux, and remove duplicate definition.
1323 Change -Asystem(linux) to -Asystem(posix).
1324 (CPP_OS_SOLARIS_SPEC): Fix conditions for -Dunix, -Dsun,
1325 -DSVR4, -D__EXTENSIONS__.
1326
1327 * rs6000/linux.h (CPP_PREDEFINES): Remove -Dunix,
1328 -Dlinux, -Asystem(linux), and -Asystem(unix).
1329
509781a4
ME
1330Sat Apr 10 05:14:50 1999 Mark Elbrecht <snowball3@usa.net>
1331
9ee9f4f0
ME
1332 * i386/djgpp.h (SET_ASM_OP): Define.
1333
e6cfbc9e
ME
1334 * cccp.c (DIR_SEPARATOR): Move to the top of the file.
1335 (is_dir_separator): New function.
1336 (simplify_filename): Use it.
509781a4
ME
1337 * collect2.c (find_a_file): Use HAVE_DOS_BASED_FILE_SYSTEM in place
1338 of the DIR_SEPARATOR test.
1339 Consider any file starting with a drivename to be absolute.
1340 If the absolute filename test fails and EXECUTABLE_SUFFIX is
1341 defined, append EXECUTABLE_SUFFIX to the file and try again.
1342 * cppinit.c (base_name): Use HAVE_DOS_BASED_FILE_SYSTEM
1343 in place of __MSDOS__ and _WIN32.
1344 * cppfiles.c (simplify_pathname): Likewise.
1345 * gcc.c (IS_DIR_SEPARATOR): Define new macro. Returns true if a
1346 character is a directory separator.
1347 (find_a_file): Use it.
1348 (convert_filename): Likewise.
1349 (process_command): Likewise.
1350 (do_spec_1): Likewise.
1351 (is_directory): Likewise.
1352 (main): Likewise.
1353 * prefix.c (IS_DIR_SEPARATOR): Define. Tests whether a character is
1354 a directory separator.
1355 (translate_name): Use it.
1356 (update_path): Change DIR_SEPARATOR_2 to DIR_SEPARATOR. Fix
1357 warning in block where '/' is changed to DIR_SEPARATOR.
1358 * i386/xm-djgpp.h (DIR_SEPARATOR): Set to '/'.
1359 (DIR_SEPARATOR_2): New macro. Set to '\'.
1360 (HAVE_DOS_BASED_FILESYS): Define.
1361 * i386/xm-mingw32.h: Updated copyright. Set
1362 DIR_SEPARATOR_2 to '/'. Define HAVE_DOS_BASED_FILE_SYSTEM.
1363 * i386/xm-os2.h: Likewise.
1364 * winnt/xm-winnt.h: Likewise.
1365 * i386/xm-dos.h: Likewise. Add copyright.
1366
d14ff9bd
JM
13671999-04-10 Joseph S. Myers <jsm28@cam.ac.uk>
1368
1369 * pdp11.h (TARGET_SWITCHES): Add option to vary assembler syntax.
1370 (TARGET_DEFAULT): Possibly use UNIX syntax.
1371 (TARGET_UNIX_ASM, TARGET_UNIX_ASM_DEFAULT): New macros.
1372 (REGISTER_NAMES): Use "r5" instead of "fp".
1373 (ASM_OUTPUT_ALIGN): Use ".even" directive, and abort for any
1374 greater alignment.
1375 * 2bsd.h (TARGET_UNIX_ASM_DEFAULT): Default to UNIX assembler
1376 syntax for 2BSD.
1377 * pdp11.c (output_ascii): Use working syntax for ".byte".
1378 (print_operand_address): Use "*" instead of "@" when using UNIX
1379 assembler syntax.
1380
3f1b9b1b
JL
1381Sat Apr 10 03:50:12 1999 Jeffrey A Law (law@cygnus.com)
1382
c4403371
JL
1383 * rtl.h (rebuild_jump_labels): Declare.
1384 * jump.c (jump_optimize_1): Renamed from jump_optimize. Make static.
1385 Add new argument MARK_LABELS_ONLY. Quit after mark_all_labels if
1386 requested.
1387 (jump_optimize, rebuild_jump_labels): New wrapper functions for
1388 jump_optimize_1.
1389 * toplev.c (rest_of_compilation): Use rebuild_jump_labels instead of
1390 running the entire jump optimizer.
1391
3f1b9b1b
JL
1392 * rtl.h (local_alloc): Returns an integer now.
1393 * local-alloc.c (recorded_label_ref): New file scoped variable.
1394 (local_alloc): Initialize recorded_label_ref to zero. Return its
1395 value when local allocation has completed.
1396 (update_equiv_regs); If we create an equivalence for a LABEL_REF,
1397 set recorded_label_ref.
5d90cd8f 1398 * toplev.c (rest_of_compilation): Run the jump optimizer after
3f1b9b1b
JL
1399 register allocation and reloading if needed.
1400
f133e603 1401Fri Apr 9 21:02:57 1999 Krister Walfridsson (cato@df.lth.se)
a059f76b 1402
f133e603 1403 * i386/gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Fix typo.
a059f76b
KW
1404 * i386/freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
1405
f133e603 14061999-04-09 Zack Weinberg <zack@rabi.columbia.edu>
5e4df1ae
ZW
1407
1408 * cpphash.c (special_symbol): When expanding __LINE__, use the
1409 top file buffer, not the top buffer.
1410
73a3903d
JW
1411Fri Apr 9 13:41:04 1999 Jim Wilson <wilson@cygnus.com>
1412
1413 * Makefile.in (check-g++, check-gcc, check-g77, check-objc): Add
1414 cd .. to TCL_LIBRARY command.
1415
0122a613
NC
1416Fri Apr 9 13:04:52 1999 Nick Clifton <nickc@cygnus.com>
1417
1418 * config/arm/unknown-elf.h (SUBTARGET_CPU_DEFAULT): Only define if
1419 not already specified.
1420
09a07623
JM
1421Fri Apr 9 11:18:55 1999 Jason Merrill <jason@yorick.cygnus.com>
1422
1423 * c-common.c (decl_attributes, A_INIT_PRIORITY): Allow arrays
1424 of classes, too.
1425
d330fd93
KG
1426Fri Apr 9 10:40:10 1999 Kaveh R. Ghazi <ghazi@snafu.rutgers.edu>
1427
1428 * rs6000.c (rs6000_override_options, ptt, rs6000_file_start,
1429 rs6000_float_const, rs6000_replace_regno, debug_stack_info,
1430 rs6000_output_load_toc_table, output_prolog, output_epilog):
1431 Const-ify a char*.
1432 (output_mi_thunk): Likewise. Mark parameter `thunk_fndecl' with
1433 ATTRIBUTE_UNUSED. Hide unused variables `r0', `sp', `toc',
1434 `schain', `r12', `buf' and `labelno'.
1435 (output_ascii): Const-ify a char*.
1436 (rs6000_gen_section_name): Initialize variable `last_period'.
1437 (rs6000_adjust_priority): Mark parameter `insn' with
1438 ATTRIBUTE_UNUSED.
1439 (rs6000_trampoline_template, rs6000_dll_import_ref,
1440 rs6000_longcall_ref, rs6000_encode_section_info): Const-ify a char*.
1441
1442 * rs6000.h (offsettable_mem_operand, optimization_options): Add
1443 prototypes.
1444
1445 * rs6000.md (movdi, define_split): Cast a value to HOST_WIDE_INT
1446 when comparing against one.
1447
d4ca58b3
JL
1448Thu Apr 8 19:20:18 1999 Jeffrey A Law (law@cygnus.com)
1449
efd07ca7
JL
1450 * expr.c (expand_expr, case ARRAY_REF, COMPONENT_REF, BIT_FIELD_REF):
1451 Do not try to optimize a aggregate address which has VOIDmode.
1452 Mirrors March 23 change to expand_assignment.
1453
4f282ba1
JL
1454 * flow.c (delete_unreachable_blocks): Do not require EDGE_FALLTHRU
1455 for an edge when tidying an edge which connects consecutive basic
1456 blocks.
abb3f0a9
JL
1457
1458 * flow.c (can_delete_label_p): Do not convert a label into a
1459 deleted label here.
1460
01e752d3
JL
1461 * cse.c (flush_hash_table): New function.
1462 (cse_insn): Flush the hash table when we encounter a volatile asm.
1463 (cse_basic_block): Use flush_hash_table instead of doing it
1464 inline.
1465
1466 * reload1.c (reload_cse_regs_1): Flush known register values if
1467 we encounter a volatile asm.
1468
d4ca58b3
JL
1469 * loop.c (strength_reduce): Re-enable Joern's loop improvements.
1470
36ba9cb8
NC
1471Thu Apr 8 09:37:40 1999 Nick Clifton <nickc@cygnus.com>
1472
1473 * config/arm/arm.c (arm_print_operand): Undo previous change -
1474 always print large constants in decimal.
1475
64ccbc99
KG
1476Thu Apr 8 10:22:23 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1477
1478 * configure.in (host_xm_file, build_xm_file): Include hwint.h.
1479 Use case statements instead of "if test -a ... -a ... -a ..."
1480
1481 * machmode.h: Don't define HOST_WIDE_INT, etc. Wrap use of
3fb2a045 1482 HOST_WIDE_INT in #ifdef.
64ccbc99
KG
1483
1484 * mips.h: Include hwint.h instead of providing definitions for
1485 HOST_WIDE_INT, etc. Wrap uses of HOST_WIDE_INT in #ifdef.
1486
f133e603 1487Thu Apr 8 06:16:14 1999 John Wehle (john@feith.com)
e4ad1003
JW
1488
1489 * i386.md (truncdfsf2, truncxfsf2,
1490 truncxfdf2): Rewrite using a splitter.
1491
f133e603 1492Thu Apr 8 01:26:05 1999 Arg Haas (ahaas@neosoft.com)
0385ba57
AH
1493 Jeffrey A Law (law@cygnus.com)
1494
3fb2a045 1495 * freebsd-elf.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Avoid ambiguous
0385ba57
AH
1496 else statement.
1497 * gas.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
1498 * linux.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
1499 * openbsd.h (ASM_OUTPUT_MAX_SKIP_ALIGN): Likewise.
1500
a45f3331
JW
1501Wed Apr 7 22:40:19 1999 Jim Wilson <wilson@cygnus.com>
1502
1503 * i960/i960.c (i960_function_prologue): Don't save static chain
1504 pointer.
1505 * i960/i960.h (STACK_CHAIN_REGNUM): Change from r3 to g12.
1506 (TRAMPOLINE_TEMPLATE): Likewise.
1507 (FRAME_POINTER_REQUIRED): Check current_function_has_nonlocal_goto.
1508 * i960/i960.md (nonlocal_goto): Rewrite.
1509
140fa895
PB
1510Tue Apr 6 17:49:49 1999 Philip Blundell <pb@nexus.co.uk>
1511
1512 * config/arm/lib1funcs.asm: Test for __ELF__ not __elf__.
1513
94d5c456
JL
1514Wed Apr 7 14:07:34 1999 Jeffrey A Law (law@cygnus.com)
1515
098f2a1e
JL
1516 * h8300.c (h8300_adjust_insn_length): Also avoid recognizing
1517 ADDR_VEC and ADDR_DIFF_VEC insns.
1518
47cf37f9
JL
1519 * h8300.c (h8300_adjust_insn_length): Avoid trying to recognize
1520 USE, CLOBBER or SEQUENCE insns.
1521
1522 * unroll.c (unroll_loop): For HAVE_cc0 machines, adjust copy_end_luid
1523 to account for the uncopied insn that sets cc0 at the end of the loop.
1524
94d5c456
JL
1525 * unroll.c (copy_loop_body): Always ensure at least two insns
1526 are in the copied loop.
1527
6ed173d0
CM
1528Wed Apr 7 14:52:18 1999 Catherine Moore <clm@cygnus.com>
1529
3fb2a045
MS
1530 * config/mips/elf.h (MAKE_DECL_ONE_ONLY): Define.
1531 (UNIQUE_SECTION_P): Define.
6ed173d0 1532
f133e603 15331999-04-07 Bruce Korb <ddsinc09@ix.netcom.com>
12408bb3
BK
1534
1535 * fixinc/inclhack.tpl & fixincl.tpl:
1536 Remove dynamic content from generated files
1537
f133e603 1538Wed Apr 7 13:16:22 1999 John Wehle (john@feith.com)
61a1397b
JW
1539
1540 * i386.c (output_move_memory): Remove.
1541 * i386.h: Likewise.
1542
1543 * i386.md (movsi, movhi, movstricthi, movqi, movstrictqi,
1544 movsf, movdf, movxf, movdi): Check no_new_pseudos instead
1545 of (reload_in_progress | reload_completed).
1546
5e62dee5
RH
1547Wed Apr 7 03:16:45 1999 Richard Henderson <rth@cygnus.com>
1548
1549 * alpha.c (reg_no_subreg_operand): New function.
1550 * alpha.h (PREDICATE_CODES): Add it.
1551 * alpha.md (floatdi?f patterns): Use it for op1.
1552
1553 * alpha.c (alpha_end_function): Don't flag weak functions.
1554
d22cba0a
RH
1555Wed Apr 7 02:11:55 1999 Richard Henderson <rth@cygnus.com>
1556
1557 * expr.c (expand_builtin) [BUILT_IN_RETURN_ADDRESS]: Use
1558 copy_to_mode_reg; don't force constants into a register.
1559
78327a73
RH
1560Tue Apr 6 22:55:25 1999 Richard Henderson <rth@cygnus.com>
1561
1562 * toplev.c (compile_file): Typo flow_dump -> flow2_dump.
1563
ed03c6cd
JM
15641999-04-06 Joseph S. Myers <jsm28@cam.ac.uk>
1565
1566 * pdp11.c (simple_memory_operand): Add default case in switch.
1567 * pdp11.h (TARGET_SWITCHES): Add help strings.
1568 (NOTICE_UPDATE_CC): Don't include excess argument to format.
1569 (ASM_OUTPUT_DOUBLE_INT): Remove.
1570
34487bf8
RH
1571Tue Apr 6 22:09:40 1999 Richard Henderson <rth@cygnus.com>
1572
1573 * expr.c (expand_builtin_setjmp): Put setjmp return label on
1574 nonlocal_goto_handler_labels for flow.
1575
1576Tue Apr 6 22:05:21 1999 Jan Hubicka <hubicka@paru.cas.cz>
1577 Richard Henderson <rth@cygnus.com>
1578
1579 * flow.c (verify_flow_info): New function.
1580 (find_basic_blocks): Call it if ENABLE_CHECKING.
1581 (merge_blocks): Don't merge if there are non-deletable labels.
1582 * toplev.c (fatal_insn): Allow a printf-style arg list.
1583 * toplev.h (fatal_insn): Update prototype.
1584
1e7d57a3
JH
1585Tue Apr 6 16:18:58 1999 Jan Hubicka <hubicka@paru.cas.cz>
1586
1587 * flow.c (split_edge) update correctly flow graph, disable
1588 EDGE_CRITICAL flag on the split edge, update NUSES for new label.
1589
2454beaf
RH
1590Tue Apr 6 15:47:51 1999 Richard Henderson <rth@cygnus.com>
1591
1592 * emit-rtl.c (gen_rtx_CONST_DOUBLE): Use XWINT not XINT.
1593 Clear third and following slots, if they exist.
1594
eeea333e
RH
1595Tue Apr 6 15:45:28 1999 Richard Henderson <rth@cygnus.com>
1596
1597 * flow.c (create_basic_block): Make sure the bb note is in the block.
1598 (can_delete_note_p): Rename from delete_note_p.
1599 (delete_insn_chain): Preserve undeleteable labels too.
1600 (tidy_fallthru_edge): Use next_real_insn instead of confusing
1601 inline code.
1602
f133e603 16031999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
099a9dd0
ZW
1604
1605 * cppexp.c (parse_charconst): Initialize c.
1606 (cpp_parse_expr): Initialize rprio.
1607 * cppfiles.c (merge_include_chains): Initialize prev.
f133e603 1608 (finclude): Set fp->line_base to fp->buf before returning.
099a9dd0 1609 * cpphash.c (macroexpand): Initialize token.
3fb2a045 1610 * cppspec.c (lang_specific_driver): Change suff to
099a9dd0
ZW
1611 const char *const *.
1612
f133e603 16131999-04-06 Zack Weinberg <zack@rabi.columbia.edu>
507df939
ZW
1614
1615 * cppinit.c (install_predefs): Delete function.
1616 (cpp_start_read): Don't call install_predefs.
1617 (cpp_handle_option): Remove case 'u' and all refs to
1618 opts->inhibit_predefs.
1619 (print_help): Don't mention -undef.
1620 (initialize_builtins): Define __HAVE_BUILTIN_SETJMP__, to
1621 match cccp.
1622 * cpplib.h (struct cpp_options): Remove inhibit_predefs
1623 member.
1624
1625 * cccp.c (predefs): Delete variable.
1626 (main): Remove case 'u' in argument parse loop,
1627 'inhibit_predefs' variable, and the code block that would
1628 process CPP_PREDEFINES.
1629 (initialize_builtins): Don't define __OBJC__, the driver will
1630 do that.
1631
1632 * gcc.c (default_compilers): Remove -undef from all specs that
1633 invoke a C preprocessor.
1634 * ch/lang-specs.h: Likewise.
1635 * cp/lang-specs.h: Likewise.
1636 * f/lang-specs.h: Likewise.
1637 * objc/lang-specs.h: Likewise.
1638
f133e603 1639Mon Apr 5 11:55:31 1999 Donn Terry (donn@interix.com)
7325ab47
DT
1640
1641 * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix misapplied patch.
1642
9f22acc4
JL
1643Mon Apr 5 11:51:38 1999 Jeffrey A Law (law@cygnus.com)
1644
1645 * m68k.md (movdf): Hide GPR sources & destinations from regclass.
1646
f133e603 1647Mon Apr 5 09:54:42 1999 Jeff Law (law@cygnus.com)
a566f004
JL
1648
1649 * version.c: Bump for snapshot.
1650
f133e603 1651Mon Apr 5 05:55:15 1999 Bruce Korb <ddsinc09@ix.netcom.com>
ac95d436
BK
1652
1653 * fixincl.tpl: Separate "-e" from its argument, a la
1654 the Sat Apr 3 17:05:13 1999 fix.
ee8c4259 1655 * genfixes: Ensure that the server shell is _NOT_ csh.
ac95d436 1656
f133e603 1657Mon Apr 5 03:52:30 1999 Jeff Law (law@cygnus.com)
788d09ba
JL
1658
1659 * version.c: Bump for snapshot.
1660
0a726ef1
JL
1661Mon Apr 5 04:47:14 1999 Jeffrey A Law (law@cygnus.com)
1662
1663 * i386.c (x86_double_with_add): Turn off for Pentium and PPro.
1664 (small_shift_operand, output_ashlsi3): New functions.
1665 * i386.h (small_shift_operand, output_ashlsi3): Declare.
1666 * i386.md (ashlsi3): Simplify ahlsi3 patterns. Remove splitters
1667 that are no longer needed.
1668
f114df20
JL
1669Sun Apr 4 04:05:04 1999 Jeffrey A Law (law@cygnus.com)
1670
1671 * stmt.c (expand_loop_end): When copying the loop exit test,
1672 do not walk into a nested loop.
1673
20cc423f
JL
1674Sun Apr 4 00:14:54 1999 Jeffrey A Law (law@cygnus.com)
1675
1676 * fixinc/hackshell.tpl: Skip links to directories, to avoid
1677 removing them.
1678 * fixinc/inclhack.tpl: Likewise.
1679 * fixinc/fixinc.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Rebuilt.
1680
677a9668
DE
1681Sat Apr 3 23:46:13 1999 David Edelsohn <edelsohn@gnu.org>
1682
1683 * rs6000.md (addsi3, iorsi3, xorsi3, adddi3, iordi3, xordi3,
1684 movsi_got, movsi, movsf): Use no_new_pseudos.
1685 * rs6000.c (rs6000_got_register): Likewise.
1686 (offsettable_mem_opereand): Use || not |.
1687
264b1a9c
JL
1688Sat Apr 3 22:02:56 1999 Jeffrey A Law (law@cygnus.com)
1689
1690 * acconfig.h (ENABLE_CHECKING): Remove redundant #undef.
1691 * config.in: Rebuilt.
1692
1ed9faee
TM
1693Sat Apr 3 16:22:59 1999 Toshiyasu Morita (tm@netcom.com)
1694
3fb2a045 1695 * gcc.texi: Add info on regmove pass.
0ea78edb 1696
1ed9faee
TM
1697 * regmove.c (fixup_match_1): Consistently evaluate
1698 HAVE_POST_INCREMENT and HAVE_POST_DECREMENT.
1699
e154a394
AO
1700Sat Apr 3 19:21:05 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1701
1702 * configure.in (DEFAULT_LINKER, DEFAULT_ASSEMBLER): Use grep
1703 instead of test and sed to check whether they're GNU programs.
1704 * configure: Rebuilt.
1705
965c3f43
AO
1706Sat Apr 3 17:57:35 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1707
3fb2a045
MS
1708 * Makefile.in (install-headers-tar, install-headers-cpio): Avoid
1709 problems with CDPATH.
965c3f43
AO
1710 Reported by Ralf Canis <canis@bigfoot.com>
1711
ebc7e094
JL
1712Sat Apr 3 13:50:16 1999 Jeffrey A Law (law@cygnus.com)
1713
1714 * fixinc.x86-linux-gnu: Deleted.
1715
706e665a
AO
1716Sat Apr 3 17:05:13 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1717
3fb2a045 1718 * inclhack.tpl: Insert spaces between `sed -e' and '...'.
706e665a 1719 Reported by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3fb2a045 1720 * fixinc/fixincl.sh, fixinc/fixincl.x, fixinc/inclhack.sh: Regen.
706e665a 1721
d9c2af5b
CB
1722Sat Apr 3 14:54:46 1999 Craig Burley <craig@jcb-sc.com>
1723
1724 * tree.def (BLOCK): Fix typo in comment.
1725
f133e603 1726Sat Apr 3 00:53:29 1999 John Wehle (john@feith.com)
bc725565
JW
1727
1728 * i386.md (floatsisf2, floatdisf2, floatsidf2, floatdidf2,
1729 floatsixf2, floatdixf2): Rewrite using a splitter.
1730
4bc74ece
NC
1731Fri Apr 2 17:36:10 1999 Nick Clifton <nickc@cygnus.com>
1732
1733 * config/arm/arm.c (arm_print_operand): Print large constants in
1734 hex rather than decimal.
1735
7b028dba
NC
1736Fri Apr 2 17:23:58 1999 Nick Clifton <nickc@cygnus.com>
1737
1738 * print-rtl.c (print_rtx): Use both HOST_WIDE_INT_PRINT_DEC
1739 and HOST_WIDE_INT_PRINT_HEX to display constants.
1740
f133e603 17411999-04-02 Zack Weinberg <zack@rabi.columbia.edu>
1cc6c9bd
ZW
1742
1743 * config/i386/i386.h: Document all TARGET_SWITCHES or add
1744 explicit null initializer.
1745
1746 * config/i386/cygwin.h: Document all SUBTARGET_SWITCHES.
1747 * config/i386/dgux.h: Likewise.
1748 * config/i386/osf1elf.h: Likewise.
1749 * config/i386/win32.h: Likewise.
1750 * config/i386/osfrose.h: Likewise. Drop obsolete -mno-ident option.
1751
f133e603 1752Fri Apr 2 17:49:44 1999 Toshiyasu Morita <tm@netcom.com>
cb084004
TM
1753
1754 * regmove.c (fixup_match_1): Remove now useless if (0).
1755
6e01bd94
MH
1756Sat Apr 3 11:37:20 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1757
1758 * tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
1759 USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document.
1760 (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
1761 USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation.
1762
1763 * rtl.h (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
1764 USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT,
1765 USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
1766 USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default
1767 definition.
1768
3fb2a045 1769 * expr.c (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
6e01bd94
MH
1770 USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default
1771 definition.
1772
4f71d8e4
JL
1773Fri Apr 2 16:03:05 1999 Jeffrey A Law (law@cygnus.com)
1774
1775 * fixinc.dgux, fixinc.interix, fixinc.irix, fixinc.ptx: Deleted.
1776 * fixinc.sco, fixinc.svr4, fixinc.winnt, fixinc.wrap: Likewise.
1777
f133e603 1778Fri Apr 2 15:46:25 1999 Donn Terry (donn@interix.com)
5aa82ace 1779
3fb2a045 1780 * configure.in: Set and substitute quoted_cc_set_by_configure.
5aa82ace
DT
1781 * configure: Rebuilt.
1782 * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix quoting problem with ``.
1783
ffb6cec0
SC
1784Fri Apr 2 14:35:45 1999 Stan Cox <scox@cygnus.com>
1785
1786 * config/i386/cygwin.h (CPP_SPEC): Use mingw_include_path instead
1787 of a hardcoded path for -mno-cygwin.
1788 (mingw_include_path): New.
1789
09b893bb
JM
17901999-04-02 Joseph S. Myers <jsm28@cam.ac.uk>
1791
1792 * pdp11.c: Include "recog.h".
1793 (output_function_prologue): Remove unused variables `nregs', `i',
1794 `offset'.
1795 (output_function_epilogue): Remove unused variables
1796 `may_call_alloca', `nregs', `regno', `adjust_fp'.
1797 (output_ascii): Mark as returning void.
1798 (print_operand_address: Likewise.
1799 (simple_memory_operand): Remove unused variables `plus0', `plus1',
1800 `offset'.
1801 * pdp11.h: Declare functions `arith_operand',
1802 `const_immediate_operand', `expand_shift_operand',
1803 `legitimate_address_p', `notice_update_cc_on_set', `output_ascii',
1804 `output_function_epilogue', `output_function_prologue',
1805 `print_operand_address', `register_move_cost',
1806 `simple_memory_operand'.
3fb2a045 1807 (HARD_REGNO_MODE_OK): Parenthesize `REGNO' arg.
09b893bb
JM
1808 (REGNO_REG_CLASS): Likewise.
1809 * pdp11.md: Add explicit `int' to `static count' (in two places).
1810 (addhi3): Add explicit braces to avoid ambiguous else.
1811 (addqi3): Likewise.
1812 (ashlhi3): Likewise.
1813
f133e603 1814Fri Apr 2 14:17:10 1999 Jerry James <jerry@cs.ucsb.edu>
8b9243df
JJ
1815
1816 * gcc/invoke.texi: Add documentation for additional supported
1817 MIPS CPU types, options -mips16 and -mentry, and ABI and ISA
1818 defaults.
1819
f133e603 1820Fri Apr 2 14:12:06 1999 John Wehle (john@feith.com)
87aa5246
JW
1821
1822 * i386.md: Delete floating point compare, add, subtract,
1823 multiply, and divide patterns which allowed integer
1824 operands.
54ff41b7 1825 * i386.c (output_387_binary_op): Delete unused code.
87aa5246
JW
1826 (output_float_compare): Likewise.
1827
9f567f56
JW
1828Fri Apr 2 11:53:37 1999 John Wehle (john@feith.com)
1829
1830 * i386.md (movsf+1, movdf+1, movxf+1): Update constraints
1831 so that SECONDARY_MEMORY_RELOAD is used. Remove dead code.
1832
f133e603 18331999-04-02 Bruce Korb <ddsinc09@ix.netcom.com>
a734e0bf 1834
3fb2a045
MS
1835 * fixinc/mkfixinc.sh: Added support for x86-interix.
1836 * fixinc/fixinc.interix: Fixincludes script, slight changes
a734e0bf 1837 from ./fixinc.interix. Untested (needs interix box).
c095d84a 1838 * fixinc/inclhack.def:
3fb2a045
MS
1839 Complete the change to the 'fixinc.tmp' file.
1840 Fixed regex for finding C++ headers.
1841 * fixincl.x, fixincl.sh, inclhack.sh: Regenerate.
a734e0bf 1842
69a8af43
JH
1843Fri Apr 2 11:36:12 1999 Jan Hubicka (hubicka@paru.cas.cz)
1844
1845 * i386.c (print_operand_address, case REG): Do not use ESI addressing
1846 mode for the K6.
1847
1848 * i386.c (print_operand_address, case MULT): Use more efficient
1849 encoding (mult (reg) (const_int 2)).
1850
0133b7d9
RH
1851Thu Apr 1 17:01:50 1999 Richard Henderson <rth@cygnus.com>
1852
1853 Move over patch from Bernd Schmidt from GC branch:
1854 * emit-rtl.c (gen_rtx_CONST_DOUBLE): New function.
1855 (gen_rtx): Call it. Tidy cases.
1856 * rtl.h (gen_rtx_CONST_DOUBLE): Prototype it.
1857 * gengenrtl.c: Add commentary.
1858 (special_rtx): Also match CONST_DOUBLE.
1859 (gencode): Emit call to memset instead of bzero.
1860
4b97aaeb
MH
1861Fri Apr 2 12:58:26 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1862
1863 * config/c4x/c4x.md (ashlhi3, lshrhi3, ashrhi3): Force operand 1
1864 into a register if shift count not constant.
1865 (ashlhi3_reg, lshrhi3_reg, ashrhi3_reg): Ensure that operand 1
1866 is a register.
1867
8de858c0
MH
1868Fri Apr 2 12:19:17 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1869
1870 * config/c4x/c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED
1871 is non-zero.
1872 (movstrqi_small, movstrqi_large, *cmpstrqi): Add + modifier to address
3fb2a045 1873 register constraints.
8de858c0
MH
1874 (*movhi_clobber+1): Modify splitter pattern to handle destination
1875 register that is used in the source address.
1876 (*xorhi3_clobber): Replace AND with XOR in call to legitimize_operands.
1877
4adf744b
MH
1878Fri Apr 2 12:16:15 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1879
1880 * config/c4x/c4x.h: Added more comments.
1881
305902b0
MH
1882Fri Apr 2 11:58:22 1999 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
1883
1884 * config/c4x/c4x.c (c4x_emit_move_sequence): Force invalid QImode
1885 constants into memory if we get called directly from gen_move_insn
1886 rather than emit_move_insn.
1887 (c4x_legitimize_address): Fix up LABEL_REF addresses.
1888
6ab06cbb
JW
1889Thu Apr 1 12:04:05 1999 Jim Wilson <wilson@cygnus.com>
1890
1891 * expr.c (store_field): When check direct_store, assume all complex
1892 modes can be directly stored.
1893
f133e603 18941999-04-01 Bruce Korb <ddsinc09@ix.netcom.com>
b7c8ae04 1895
3fb2a045 1896 * fixinc/genfixes: New shell script that runs autogen
b7c8ae04
BK
1897 to create the generated files.
1898
454e562f
MH
18991999-04-01 Manfred Hollstein <manfred@s-direktnet.de>
1900
1901 * Makefile.in (cppmain$(exeext)): Depend on intl.o. Link in intl.o.
1902
a32126ad
L
1903Thu Apr 1 03:48:34 1999 H.J. Lu (hjl@gnu.org)
1904
80309a9c
L
1905 * i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT
1906 signed integer comparisons.
1907
9a6ac4b0
L
1908 * i386.c (output_int_conditional_move): Use "enum rtx_code" for code
1909 type.
1910
a32126ad
L
1911 * i386.c (notice_update_cc): No need to check the INT mode for
1912 conditional moves since FLOAT conditional moves don't affect cc0.
1913
ccce12f3
JL
1914Thu Apr 1 02:17:18 1999 Jeffrey A Law (law@cygnus.com)
1915
1916 * fixinc/inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger
1917 string to only match on hpux11.
1918 * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
1919
adc8046e
AO
1920Thu Apr 1 01:09:27 1999 Alexandre Oliva <oliva@dcc.unicamp.br>
1921
0cb97c8d
AO
1922 * fixinc/hackshell.tpl: Complete transition to fixinc.tmp.
1923 * fixinc/inclhack.sh: Rebuilt.
1924
adc8046e
AO
1925 * fixinc/inclhack.def: Fix typos in c_asm.h fix.
1926 * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.
1927
bbd2180d
JL
1928Wed Mar 31 17:20:11 1999 Jeffrey A Law (law@cygnus.com)
1929
1930 * toplev.c (rest_of_compilation): Allow dbr_schedule to write to
1931 the dump file too.
1932
359da67d
RH
1933Wed Mar 31 12:32:43 1999 Richard Henderson <rth@cygnus.com>
1934
1935 * flow.c (find_basic_blocks): New argument `do_cleanup'.
1936 Conditionally call delete_unreachable_blocks.
1937 (free_basic_block_vars): Zero ENTRY/EXIT data.
1938 (allocate_for_life_analysis): Kill. Split into...
1939 (allocate_bb_life_data, allocate_reg_life_data): ... new functions.
1940 (life_analysis_1): Update.
1941 * gcse.c (gcse_main): Update find_basic_blocks call.
1942 * toplev.c (rest_of_compilation): Likewise.
1943 * stupid.c (stupid_life_analysis): Update life data calls.
1944 * rtl.h, output.h: Update prototypes.
1945
f133e603 1946Wed Mar 31 12:10:00 1999 Bruce Korb <ddsinc09@ix.netcom.com>
42493273 1947
3fb2a045 1948 * inclhack.def (several): Added spaces in tests to ensure
42493273 1949 correct shell syntax. Added c_asm.h fix from fixincludes.
b7c8ae04 1950 Also corrected the corrected fix to C++ comments :-}
42493273 1951
3fb2a045 1952 * inclhack.tpl: Changed method of traversing symlink trees
42493273
BK
1953 so that file name matching will work correctly.
1954
3fb2a045 1955 * fixincl.c, hackshell.tpl: Fallout from above.
42493273
BK
1956 * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
1957
863ebdad
PB
1958Tue Mar 30 10:43:49 1999 Philip Blundell <pb@nexus.co.uk>
1959
1960 * config/arm/aout.h (DBX_DEBUGGING_INFO): Avoid redefinition if
1961 dbxelf.h was previously included.
1962 (CPP_APCS_PC_DEFAULT_SPEC): No need to undefine.
1963
1964 * config/arm/linux-elf.h (FP_DEFAULT): Correctly override the
1965 definition from arm.h.
1966
0728688f
KG
1967Wed Mar 31 10:33:37 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1968
3fb2a045
MS
1969 * Makefile.in (c-gperf.h): Generate using gperf language 'C', not
1970 'KR-C', so gperf uses the `const' keyword on strings.
1971
1972 * c-parse.gperf (resword): Const-ify a char*.
0728688f 1973
d1c7c495
ILT
1974Wed Mar 31 01:49:31 1999 Ian Lance Taylor <ian@zembu.com>
1975
1976 * t-rtems (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
1977
b080ce78
JL
1978Wed Mar 31 00:50:48 1999 Jeffrey A Law (law@cygnus.com)
1979
924d8a7c
JL
1980 * system.h (STDERR_FILENO): Fix typo.
1981
3fb2a045 1982 * inclhack.def (bool): Also fix bogus bool in curses_colr/curses.h.
b080ce78
JL
1983 * fixincl.x, inclhack.sh, fixincl.sh: Rebuilt.
1984
30f72379
MM
1985Tue Mar 30 20:51:40 1999 Mark Mitchell <mark@codesourcery.com>
1986
1987 * alias.c (alias_set_compare): Remove.
3fb2a045 1988 (record_alias_subset): Use splay_tree_compare_ints instead of
30f72379
MM
1989 alias_set_compare.
1990 (init_alias_once): Likewise.
1991 * cse.c: Include splay-tree.h.
1992 (reg_qty): Remove.
1993 (reg_tick): Likewise.
1994 (reg_table): Likewise.
1995 (cse_reg_info): New structure.
1996 (cse_reg_info_free_list): New variable.
1997 (cse_reg_info_tree): Likewise.
1998 (cached_regno): Likewise.
1999 (cached_cse_reg_info): Likewise.
2000 (all_minus_one): Remove.
2001 (consec_ints): Likewise.
2002 (GET_CSE_REG_INFO): New macro.
2003 (REG_TICK): Likewise. Use throughout instead of reg_tick.
2004 (REG_IN_TABLE): Likewise. Use throughout instead of reg_in_table.
2005 (REG_QTY): Likewise. Use throughout instead of reg_qty.
2006 (get_cse_reg_info): New function.
2007 (free_cse_reg_info): Likewise.
2008 (new_basic_block): Reinitialize cse_reg_info_tree instead of
2009 reg_tick, all_minus_one, and consec_ints.
2010 * Makefile.in (cse.o): Depend on splay-tree.h
2011
51980de6
JM
2012Tue Mar 30 13:19:36 1999 Jason Merrill <jason@yorick.cygnus.com>
2013
2014 * libgcc2.c (throw_helper): Just return the SP offset, rather than
2015 a whole udata. Include args_size in the offset.
2016 (__throw, __rethrow): Adjust.
2017
24f98470
CB
2018Tue Mar 30 11:39:27 1999 Craig Burley <craig@jcb-sc.com>
2019
2020 * extend.texi (Extended Asm): Delete spurious `b' before
2021 `@end example', which was confusing texi2html.
2022
2f22d404
JM
2023Tue Mar 30 00:26:34 1999 Jason Merrill <jason@yorick.cygnus.com>
2024
2025 * dwarf2out.c (output_line_info): Don't emit redundant info.
2026 Do start a new row if the file changes and the line # doesn't.
2027
bba975d4
JM
2028Mon Mar 29 15:48:39 1999 Jason Merrill <jason@yorick.cygnus.com>
2029
2030 * invoke.texi (Invoking G++, C++ Dialect Options): Update.
2031
b68e8bdd
RH
2032Mon Mar 29 15:05:39 1999 Richard Henderson <rth@cygnus.com>
2033
3fb2a045 2034 * except.c (start_dynamic_handler): Force jmp_buf address to
b68e8bdd
RH
2035 and operand before moving to memory.
2036
d3111037
CB
2037Mon Mar 29 15:11:10 1999 Craig Burley <craig@jcb-sc.com>
2038
2039 * invoke.texi (Code Gen Options): Attempt to clarify
2040 -fcheck-memory-usage. Minor edits to -fprefix-function-name.
2041
f133e603 2042Mon Mar 29 20:52:47 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
fdb1833a
R
2043
2044 * loop.c (maybe_eliminate_biv): For libcalls that set a giv, skip to
2045 end of libcall.
2046
f133e603 2047Mon Mar 29 20:35:49 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
aa4778b6
R
2048
2049 * sh.md (mulsi3): Tag an extra REG_EQUAL note to the middle insn.
2050
f133e603 2051Mon Mar 29 11:50:34 1999 Jerry Quinn <jquinn@nortelnetworks.com>
51c2de46
JQ
2052
2053 * pa.h (HAVE_PRE_INCREMENT): Disable when optimizing for a PA8000
2054 class machine.
2055 (HAVE_PRE_DECREMENT, HAVE_POST_INCREMENT): Likewise.
2056 (HAVE_POST_DECREMENT): Likewise.
2057
f133e603 2058Mon Mar 29 08:24:43 1999 Bruce Korb <korb@datadesign.com>
411b293c 2059
3fb2a045 2060 * fixinc/mkfixinc.sh: Fix portability problems with old shells.
411b293c 2061
3fb2a045 2062 * fixinc/README: Updated for release announcement
411b293c 2063
3228bc05
KG
2064Sun Mar 28 20:26:55 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2065
2066 * recog.h (insn_outfun, insn_operand_predicate): Add prototype
2067 arguments.
2068
2069 * rtl.h (note_stores): Likewise.
2070
2071 * rtlanal.c (note_stores): Likewise.
2072
8f0e7be4
RH
2073Sun Mar 28 15:34:28 1999 Richard Henderson <rth@cygnus.com>
2074
2075 * varasm.c (output_constant_pool): Always mark the constant pool.
2076
f133e603 2077Sun Mar 28 16:09:01 1999 Jerry Quinn <jquinn@nortelnetworks.com>
86001391 2078
d2bac0c4
JQ
2079 * pa.md (pa7100LCshiftmem, pa7100LCalu): Change simultaneity. Use
2080 shift/mem ops in pa7100LCalu.
2081
86001391
JQ
2082 * pa.c (pa_adjust_cost): Don't do cost adjustments on pa8000.
2083 (pa_reorg): Don't call pa_combine_instructions on pa8000.
2084
0a76126b
JL
2085Sun Mar 28 15:27:26 1999 Jeffrey A Law (law@cygnus.com)
2086
2087 * reload1.c (reload): Remove accidental code duplication.
2088
bb60ffa0
RL
2089Sun Mar 28 12:22:12 1999 Robert Lipe (robertlipe@usa.net)
2090
2091 * i386/sysv5.h: New file to describe UnixWare7/SVR5.
3fb2a045
MS
2092 * configure.in (i?86-UnixWare7*-sysv): Use it.
2093 * i386/udk.h: Use sysv5.h. Now uses Dwarf-2.
bb60ffa0 2094
f133e603 2095Sun Mar 28 01:15:04 1999 Jeff Law (law@cygnus.com)
ddb6d3dc
JL
2096
2097 * version.c: Bump for snapshot.
2098
87b8bec5
JL
2099Sun Mar 28 00:44:27 1999 Jeffrey A Law (law@cygnus.com)
2100
a51a5234
JL
2101 * sdbout.c (sdbout_symbol): Do not call build_pointer_type, build
2102 one on the fly and do not cache the result.
2103
87b8bec5
JL
2104 * gcc.cps, cpp.cps: Delete unwanted files.
2105
f133e603 2106Sat Mar 27 23:37:40 1999 John Wehle (john@feith.com)
94b596a7
JW
2107
2108 * i386.md (movdicc+3, movdicc+4): Rewrite using split_di.
2109 * i386.c (output_int_conditional_move): Delete unused code.
2110
b9ae3471
DE
2111Sat Mar 27 21:17:36 1999 David Edelsohn <edelsohn@gnu.org>
2112
2113 * rs6000/{aix41.h,aix43.h} (ASM_CPU_SPEC): Add 604e.
2114
40b5a77c
JL
2115Sat Mar 27 16:13:50 1999 Jeffrey A Law (law@cygnus.com)
2116
2117 * flow.c (mark_used_regs): Improve handling of ASMs.
2118
f133e603 21191999-03-26 Zack Weinberg <zack@rabi.columbia.edu>
922cf99e
ZW
2120
2121 * Makefile.in (xcpp, cppspec.o): New targets.
2122 (CPP_INSTALL_NAME): New macro.
2123 (install-cpp): Install xcpp. Use CPP_INSTALL_NAME.
2124 (all.build, start.encap): Build xcpp.
2125
2126 * cppspec.c: New file, implements argument filtering for a
2127 user-visible C preprocessor.
2128 * cpp.sh: Removed.
2129
2d490c9e
JW
2130Fri Mar 26 20:41:46 1999 Jim Wilson <wilson@cygnus.com>
2131
2132 * Makefile.in (stmp-fixinc): Use tooldir instead of gcc_tooldir.
2133
e14db015
NC
2134Fri Mar 26 16:02:37 1999 Nick Clifton <nickc@cygnus.com>
2135
3fb2a045 2136 * configure.in (arm-*-vxworks*): Just include arm/vxarm.h.
e14db015 2137 * configure: Regenerate.
20b78b1c
NC
2138 * config/arm/vxarm.h: Define SUBTARGET_CPU_DEFAULT before
2139 including arm/coff.h
e14db015 2140
f133e603 21411999-02-16 Scott Bambrough <scottb@corelcomputer.com>
65120c40 2142
3fb2a045 2143 * configure.in (arm*-*-linux-gnu*): Set thread_file to 'posix' if
65120c40 2144 --enable-threads[={yes,pthreads,posix}] is passed as a command
3fb2a045 2145 line parameter to configure.
65120c40 2146
3fb2a045 2147 * configure: Regenerate.
65120c40 2148
3fb2a045 2149 * gcc/config/arm/t-linux (TARGET_LIBGCC2_CFLAGS): Include -fPIC.
65120c40 2150
f133e603 2151Fri Mar 26 19:42:19 1999 J"orn Rennecke <amylaar@cygnus.co.uk>
0466bdc4
R
2152
2153 * loop.c (combine_givs): Fix index into can_combine when doing
2154 benefit adjustment for remaining givs when having combined a giv.
2155
a833fb4e
NC
2156Fri Mar 26 11:38:01 1999 Nick Clifton <nickc@cygnus.com>
2157
2158 * config/arm/t-arm-elf (EXTRA_MULTILIB_PARTS): Define.
2159
de77e128
NC
2160Fri Mar 26 10:48:27 1999 Nick Clifton <nickc@cygnus.com>
2161
2162 * config/arm/linux-elf.h: Include dbxelf.h
2163
cedcf937
NC
2164Fri Mar 26 10:43:47 1999 Nick Clifton <nickc@cygnus.com>
2165
2166 * config/svr4.h: Include new header file dbxelf.h.
2167 (DBX_DEBUGGING_INFO): Remove definition.
2168 (DBX_USE_BINCL): Remove definition.
2169 (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
2170 (ASM_IDENTIFY_GCC): Remove definition.
2171 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
2172 (ASM_OUTPUT_SOURCE_LINE): Remove definition.
2173 (DBX_FUNCTION_FIRST): Remove definition.
2174 (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Remove definition.
2175
2176 * config/elfos.h: Include new header file dbxelf.h.
2177 (DBX_DEBUGGING_INFO): Remove definition.
2178 (DBX_BLOCKS_FUNCTION_RELATIVE): Remove definition.
2179 (ASM_IDENTIFY_GCC): Remove definition.
2180 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Remove definition.
2181 (ASM_OUTPUT_SOURCE_LINE): Remove definition.
2182 (DBX_FUNCTION_FIRST): Remove definition.
2183
2184 * config/dbxelf.h: New header file.
2185 (DBX_DEBUGGING_INFO): Define.
2186 (DBX_BLOCKS_FUNCTION_RELATIVE): Define.
2187 (DBX_FUNCTION_FIRST): Define.
2188 (DBX_USE_BINCL): Define.
2189 (DBX_CONTIN_LENGTH): Define.
2190 (ASM_IDENTIFY_GCC): Define.
2191 (ASM_IDENTIFY_GCC_AFTER_SOURCE): Define.
2192 (ASM_OUTPUT_SOURCE_LINE): Define.
2193 (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Define.
2194
f133e603 2195Fri Mar 26 01:59:15 1999 "Charles M. Hannum" <root@ihack.net>
14241374 2196
11a86c56
CH
2197 * fold-const.c (fold_truthop): Optimize bitfield references with
2198 different masks as long as their size and bit position are the same.
2199
bd910dcf
CH
2200 * fold-const.c (fold_truthop): Build a type for both the lhs and
2201 rhs and use it appropriately.
2202
97ea7176 2203 * fold-const.c (fold_truthop): Mask the lhs and rhs after merging
3fb2a045 2204 adjacent bitfield references.
97ea7176 2205
14241374
CH
2206 * fold-const.c (fold_truthop): Verify that the lhs and rhs are
2207 in the same bit position when optimizing bitfield references
2208 which have the same mask.
2209
5197829d
ML
2210