OSDN Git Service

2002-01-05 Daniel Berlin <dan@dberlin.org>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
1 2002-01-05  Daniel Berlin  <dan@dberlin.org>
2
3         * lcm.c: Revert change, due to performance regression it causes on
4         SPEC because it's slightly more conservative (sigh, I hate
5         edge-based LCM).
6         
7 Sat Jan  5 11:52:05 CET 2002  Jan Hubicka  <jh@suse.cz>
8
9         * cfgcleanup.c (try_forward_edges): Allow multiple jump threading.
10
11 2002-01-05  Neil Booth  <neil@daikokuya.demon.co.uk>
12
13         * doc/cppinternals.texi: Update.
14
15 2002-01-05  Hans-Peter Nilsson  <hp@bitrange.com>
16
17         * doc/invoke.texi (Option Summary) <MMIX Options>: Document
18         -mbranch-predict, -mreg-stack-fill-bug-workaround and their
19         negatives.
20         (MMIX Options): Ditto.  Fix item/itemx typo for -mno-zero-extend.
21         * config/mmix/mmix.c (mmix_target_asm_function_prologue): Rework
22         kludge for pre-october-14th mmix versions to handle new-found bug
23         with PUSHJ/PUSHGO and the register stack.
24         * config/mmix/mmix.h (struct machine_function): Rename member
25         has_call_value_without_parameters to has_call_without_parameters.
26         All referers changed.
27         (TARGET_MASK_REG_STACK_FILL_BUG, TARGET_DEFAULT
28         TARGET_MASK_BRANCH_PREDICT): New macros.
29         (TARGET_SWITCHES): New options -mreg-stack-fill-bug-workaround,
30         -mno-reg-stack-fill-bug-workaround.
31         * config/mmix/mmix.md ("call"): Set struct machine member
32         has_call_without_parameters.
33
34 Sat Jan  5 02:20:22 CET 2002  Jan Hubicka  <jh@suse.cz>
35
36         * cfgcleanup.c (thread_jump): Fix handling of reversed branches.
37
38 Sat Jan  5 01:35:29 CET 2002  Jan Hubicka  <jh@suse.cz>
39
40         * cfgcleanup.c: Include tm_p.h
41         (mark_effect): Fix handling of hard register; fix handling of SET
42
43 2002-01-04  Kazu Hirata  <kazu@hxi.com>
44
45         * config/h8300/h8300.md (anonymous patterns): Check that
46         operands are registers before using REGNO on them.
47
48 2002-01-03  Roland McGrath  <roland@frob.com>
49
50         * doc/invoke.texi (RS/6000 and PowerPC Options): Add -mcall-gnu.
51
52 2002-01-04  Jakub Jelinek  <jakub@redhat.com>
53
54         * tree.h (expand_expr_stmt_value): Add maybe_last argument.
55         * c-common.h (genrtl_expr_stmt_value): Likewise.
56         * stmt.c (expand_expr_stmt): Pass 1 as maybe_last.
57         (expand_expr_stmt_value): Add maybe_last argument.
58         Don't warn about statement with no effect if it is the last statement
59         in expression statement.
60         * c-semantics.c (genrtl_expr_stmt): Pass 1 as maybe_last.
61         (genrtl_expr_stmt_value): Add maybe_last argument, pass it down to
62         expand_expr_stmt_value.
63         (expand_stmt) [EXPR_STMT]: Pass 1 as maybe_last to
64         genrtl_expr_stmt_value if t is the last EXPR_STMT in its scope.
65         * expr.c (expand_expr) [LABELED_BLOCK_EXPR, LOOP_EXPR]: Pass 1
66         as maybe_last to expand_expr_stmt_value.
67
68 Fri Jan  4 11:45:05 2002  Jeffrey A Law  (law@redhat.com)
69
70         * c-common.c (c_expand_start_cond): Expect the IF_STMT node to
71         be passed in, do not build it.
72         (c_begin_if_stmt): New function.
73         (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
74         * c-common.h (c_expand_start_cond): Update prototype.
75         (c_begin_if_stmt): Prototype new function.
76         (c_begin_while_stmt, c_finish_while_stmt_cond): Likewise.
77         * c-parse.in (if_prefix): Use c_begin_if_stmt,
78         c_begin_while_stmt and c_finish_while_stmt_cond.
79
80 2002-01-04  William Cohen  <wcohen@redhat.com>
81
82         * config/pa/elf.h (ASM_FILE_START): Reverted to profile_flag.
83         * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
84         * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
85         * config/pa/som.h (ASM_FILE_START): Likewise.
86
87 2001-01-04  Daniel Berlin  <dan@cgsoftware.com>
88
89         * lcm.c: Include df.h.
90         Add available_transfer_function prototype.
91         (compute_available): Rework to use iterative dataflow framework.
92         (struct bb_info): s/bb_info/lcm_bb_info/g to avoid conflict
93         with bb_info in df.h
94         (available_transfer_function): New function.
95
96         * Makefile.in (lcm.o): add df.h to dependencies.
97
98 2002-01-04  Richard Henderson  <rth@redhat.com>
99
100         * config/alpha/alpha.c (some_operand): Accept HIGH.
101         (input_operand): Likewise; accept simple references to globals.
102         (alpha_const_ok_for_letter_p): New, outlined from alpha.h.
103         (alpha_const_double_ok_for_letter_p): Likewise.
104         (alpha_extra_constraint): Likewise.
105         (alpha_preferred_reload_class): Likewise.  Do not force
106         symbolic constants to memory.
107         (alpha_legitimate_address_p): Accept simple references
108         to small_symbolic_operand.
109         (alpha_legitimize_address): New arg scratch.  Be prepared to be
110         called when no_new_pseudos.  Emit simple symbolic references.
111         Split integers into low, high, and rest.
112         (alpha_expand_mov): Use alpha_legitimize_address.
113         (some_small_symbolic_mem_operand): New.
114         (split_small_symbolic_mem_operand): New.
115         * config/alpha/alpha-protos.h: Update.
116         * config/alpha/alpha.h (CONST_OK_FOR_LETTER_P): Out-line.
117         (CONST_DOUBLE_OK_FOR_LETTER_P): Likewise.
118         (EXTRA_CONSTRAINT): Likewise.
119         (PREFERRED_RELOAD_CLASS): Likewise.
120         (LEGITIMIZE_ADDRESS): Update for alpha_legitimize_address change.
121         (PREDICATE_CODES): Update.
122         * config/alpha/alpha.md: New post-reload splitters to convert
123         simplfied symbolic operands to the form that references $29.
124         (divide expanders): Use emit_move_insn, not gen_movdi_er_high_g.
125         (movdi_er_nofix, movdi_er_fix): Accept any symbolic operand.
126
127 2002-01-03  Richard Henderson  <rth@redhat.com>
128
129         * local-alloc.c (function_invariant_p): Update commentary.
130
131 2002-01-04  H.J. Lu <hjl@gnu.org>
132
133         * toplev.c (rest_of_compilation): Fix a typo when calling
134         cleanup_cfg.
135
136 2002-01-03  Kazu Hirata  <kazu@hxi.com>
137
138         * c-common.c: Fix formatting.
139         * diagnostic.c: Likewise.
140         * doloop.c: Likewise.
141         * dwarf2out.c: Likewise.
142
143 2002-01-03  Kazu Hirata  <kazu@hxi.com>
144
145         * config/h8300/h8300.c (output_logical_op): Use 'not.w' instead
146         of 'neg.w' when xoring with 0x0000ffff or 0xffff0000.
147
148 2002-01-03  Neil Booth  <neil@daikokuya.demon.co.uk>
149
150         * cpperror.c: Update comments and copyright.
151         * cppexp.c, cppfiles.c, cpphash.c, cpphash.h, cppinit.c,
152         cpplex.c, cpplib.c, cpplib.h, cppmacro.c, cppmain.c: Similarly.
153
154 2002-01-03  John David Anglin  <dave@hiauly1.hia.nrc.ca>
155
156         * collect2.c (main): Use strcmp when testing for "-shared".
157
158 2002-01-03  Neil Booth  <neil@daikokuya.demon.co.uk>
159
160         * cppmacro.c: Don't include intl.h.  Update comments.
161         (new_number_token): Allocate enough buffer for 64-bit unsigned
162         integers; update prototype.
163         * cppmain.c: Update comments.
164
165 2002-01-03  William Cohen  <wcohen@redhat.com>
166
167         * function.h (struct function): Add profile.
168         (current_function_profile): New.
169         doc/extend.texi: Update documentation.
170         * final.c (final_start_function): Use current_function_profile
171         instead of profile_flag.
172         (profile_after_prologue): Likewise.
173         * function.c (expand_function_start): Likewise.
174         (expand_function_start): Likewise.
175         * config/alpha/alpha.c (direct_call_operand):
176         (alpha_does_function_need_gp): Likewise.
177         (alpha_expand_prologue): Likewise.
178         * config/arm/arm.c (arm_expand_prologue): Likewise.
179         thumb_expand_prologue: Likewise.
180         * config/d30v/d30v.c (d30v_stack_info): Likewise.
181         * config/fr30/fr30.c (MUST_SAVE_RETURN_POINTER): Likewise.
182         (fr30_expand_prologue): Likewise.
183         * config/i386/cygwin.h (SUBTARGET_PROLOGUE): Likewise.
184         * config/i386/i386.c (ix86_osf_output_function_prologue): Likewise.
185         * config/i386/i386.h (FINALIZE_PIC): Likewise.
186         * config/i386/win32.h (SUBTARGET_PROLOGUE): Likewise.
187         * config/i960/i960.c (i960_output_function_prologue): Likewise.
188         * config/ia64/ia64.c (ia64_compute_frame_size): Likewise.
189         * config/m32r/m32r.c (MUST_SAVE_RETURN_ADDR): Likewise.
190         (m32r_expand_prologue): Likewise.
191         * config/m88k/m88k.c (m88k_layout_frame): Likewise.
192         (m88k_expand_prologue): Likewise.
193         * config/m88k/m88k.h (ADJUST_INSN_LENGTH): Likewise.
194         * config/mips/mips.c (compute_frame_size): Likewise.
195         (mips_expand_prologue): Likewise.
196         (mips_can_use_return_insn): Likewise.
197         * config/pa/elf.h (ASM_FILE_START): Likewise.
198         * config/pa/pa-linux.h (ASM_FILE_START): Likewise.
199         * config/pa/pa64-hpux.h (ASM_FILE_START): Likewise.
200         * config/pa/som.h (ASM_FILE_START): Likewise.
201         * config/romp/romp.c (romp_using_r14): Likewise.
202         * config/rs6000/rs6000.c (first_reg_to_save): Likewise.
203         (rs6000_stack_info): Likewise.
204         * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Likewise.
205         * config/rs6000/xcoff.h (ASM_FILE_START): Likewise.
206         * config/v850/v850.c (compute_register_save_size): Likewise.
207
208 2002-01-03  Jakub Jelinek  <jakub@redhat.com>
209
210         * simplify-rtx.c (simplify_binary_operation) [DIV]: If
211         gen_lowpart_common fails, use gen_lowpart_SUBREG.
212
213 2002-01-03  Turly O'Connor  <turly@apple.com>
214
215         * darwin.c (machopic_output_possible_stub_label): Don't generate
216         stub routines for pseudo-stubs which we've just defined.
217
218 2002-01-03  Kazu Hirata  <kazu@hxi.com>
219
220         * builtins.c: Fix formatting.
221         * c-typeck.c: Likewise.
222         * combine.c: Likewise.
223         * expr.c: Likewise.
224         * loop.c: Likewise.
225
226 2002-01-03  Andreas Schwab  <schwab@suse.de>
227
228         * cppfiles.c (_cpp_pop_file_buffer): Change return type to bool
229         and return true if _cpp_push_next_buffer pushed a new include
230         file.
231         * cpplib.c (_cpp_pop_buffer): Only call obstack_free if
232         _cpp_pop_file_buffer did not push a new file.
233         * cpphash.h (_cpp_pop_file_buffer): Update declaration.
234
235 2002-01-02  Eric Christopher  <echristo@redhat.com>
236
237         * final.c (final_scan_insn): Change 0 -> NULL_RTX in
238         FIND_REG_INC_NOTE call. Update copyright.
239         * loop.c (canonicalize_condition): Ditto.
240         * reorg.c (delete_scheduled_jump): Ditto.
241
242 2002-01-03  Kazu Hirata  <kazu@hxi.com>
243
244         * gcse.c: Fix formatting.
245
246 2002-01-03  Graham Stott  <grahams@redhat.com>
247
248         * mkconfig.sh: Output to config.h, hconfig.h and tconfig.h
249         forward defs for struct tags rtx_def, union_tree, rtvec_def
250         also output corresponding typedefs for rtxm, tree, and rtvcec.
251
252         * system.h: Move forward defs for struct tags rtx_def, union_tree,
253         rtvec_def along with corresponding typedefs for rtx, tree, and
254         rtvcec to config.h, hconfig.h, tconfig.h
255
256 2002-01-03  Graham Stott  <grahams@redhat.com>
257
258         * tree.h: Update copyright date.
259         (IS_EXPR_CODE_CLASS): Add parenthesis.
260         (TREE_SET_CODE): Add whitespace.
261         (TREE_CHECK): Add parenthesis.
262         (TREE_CLASS_CODE): Add parenthesis and wrap long line.
263         (CST_OR_CONSTRUCTOR_CHECK):
264         (EXPR_CHECK): Add parenthis, whitespace and wrap line.
265         (TREE_SYMBOL_REFERENCED): Whitespace.
266         (INT_CST_LT): Likewise.
267         (INT_CST_LT_UNSIGNED): Likewise.
268         (tree_real_cst): Unwrap comment.
269         (tree_string): Likewise.
270         (tree_complex): Likewise.
271         (IDENTIFIER_POINTER): correct cast.
272         (SAVE_EXPR_CONTEXT): Whitespace.
273         (EXPR_WFL_FILENAME_NODE): Likewise.
274         (EXPR_WFL_FILENAME): Remove parenthesis.
275         (DECL_ORIGIN): Add parenthesis.
276         (DECL_FROM_INLINE): Use NULL_TREE.
277         (build_int_2): Whitespace.
278         (build_type_variant): Add parenthesis.
279
280         * gcc/jcf-parse.c: Update copyright date.
281         (yyparse): Constify resource_filename.
282
283 2002-01-03  Graham Stott  <grahams@redhat.com>
284
285         * rtl.h: Update copyright date.
286         (RTL_CHECK1): Wrap long line.
287         (RTL_CHECK2): Likewise.
288         (RTL_CHECKC1): Wrap long line and whitespace.
289         (RTL_CHECKC2): Likewise.
290         (XWINT): Whitespace.
291         (XINT): Likewise.
292         (XSTR): Likewise.
293         (XEXP): Likewise.
294         (XVEC): Likewise.
295         (XMODE): Likewise.
296         (XBITMAP): Likewise.
297         (XTREE): Likewise.
298         (XBBDEF): Likewise.
299         (XTMPL): Likewise.
300         (X0WINT): Likewise.
301         (X0INT):Likewise.
302         (X0UINT): Likewise.
303         (X0STR): Likewise.
304         (X0EXP): Likewise.
305         (X0VEC): Likewise.
306         (X0MODE): Likewise.
307         (X0BITMAP): Likewise.
308         (X0TREE): Likewise.
309         (X0BBDEF): Likewise.
310         (X0ADVFLAGS): Likewise.
311         (X0CSELIB): Likewise.
312         (X0MEMATTR): Likewise.
313         (XCWINT): Likewise.
314         (XCINT): Likewise.
315         (XCUINT): Likewise.
316         (XCSTR): Likewise.
317         (XCEXP): Likewise.
318         (XCVEC): Likewise.
319         (XCMODE): Likewise.
320         (XCBITMAP): Likewise.
321         (XCTREE): Likewise.
322         (XCBBDEF): Likewise.
323         (XCADVFLAGS): Likewise.
324         (XCCSELIB): Likewise.
325         (XC2EXP): Likewise.
326         (INSN_UID): Likewise.
327         (PREV_INSN): Likewise.
328         (PATTERN): Likewise.
329         (INSN_CODE): Likewise.
330         (PUT_REG_NOTE_KIND): Likewise.
331         (CODE_LABEL_NUMBER): Likewise.
332         (NOTE_SOURCE_FILE): Likewise.
333         (NOTE_BLOCK): Likewise.
334         (NOTE_EH_HANDLER): Likewise.
335         (NOTE_RANGE_INFO): Likewise.
336         (NOTE_LIVE_INFO): Likewise.
337         (NOTE_BASIC_BLOCK): Likewise.
338         (NOTE_EXPECTED_VALUE): Likewise.
339         (NOTE_LINE_NUMBER): Likewise.
340         (LABEL_NAME): Likewise.
341         (LABEL_NUSES): Likewise.
342         (LABEL_ALTERNATE_NAME): Likewise.
343         (ADDRESSOF_DECL): Likewise.
344         (JUMP_LABEL): Likewise.
345         (LABEL_NEXTREF): Likewise.
346         (REGNO): Likewise.
347         (ORIGINAL_REGNO: Likewise.
348         (HARD_REGISTER_NUM_P): Add parenthesis.
349         (SUBREG_REG): Whitespace.
350         (SUBREG_BYTE): Likewise.
351         (ASM_OPERANDS_TEMPLATE): Remove parenthesis.
352         (ASM_OPERANDS_OUTPUT_CONSTRAINT): Likewise.
353         (ASM_OPERANDS_OUTPUT_IDX): Likewise.
354         (ASM_OPERANDS_INPUT_VEC): Likewise.
355         (ASM_OPERANDS_INPUT_CONSTRAINT_VEC): Likewise.
356         (ASM_OPERANDS_INPUT): Likewise.
357         (ASM_OPERANDS_INPUT_LENGTH): Likewise.
358         (ASM_OPERANDS_INPUT_CONSTRAINT_EXP): Likewise.
359         (ASM_OPERANDS_INPUT_CONSTRAINT): Likewise.
360         (ASM_OPERANDS_INPUT_MODE): Likewise.
361         (ASM_OPERANDS_SOURCE_FILE): Likewise.
362         (ASM_OPERANDS_SOURCE_LINE): Likewise.
363         (MEM_SET_IN_STRUCT_P): Minor reformat.
364         (TRAP_CONDITION): Whitespace.
365         (TRAP_CODE): Likewise.
366         (COND_EXEC_TEST): Likewise.
367         (COND_EXEC_CODE): Likewise.
368         (FIND_REG_INC_NOTE): Uppercase macro args and add parenthesis.
369         (PHI_NODE_P): Add parenthesis.
370         (plus_constant): Whitespace and add parenthesis.
371
372 2002-01-03  Kazu Hirata  <kazu@hxi.com>
373
374         * config/avr/avr.c: Fix comment typos.
375         * config/c4x/c4x.md: Likewise.
376         * config/dsp16xx/dsp16xx.h: Likewise.
377         * config/dsp16xx/dsp16xx.md: Likewise.
378         * config/i386/i386.md: Likewise.
379         * config/ia64/ia64.c: Likewise.
380         * config/m32r/m32r.h: Likewise.
381         * config/m68hc11/m68hc11.md: Likewise.
382         * config/mmix/mmix.c: Likewise.
383         * config/mn10200/mn10200.c: Likewise.
384         * config/romp/romp.c: Likewise.
385         * config/sh/sh.c: Likewise.
386         * config/stormy16/stormy16.c: Likewise.
387         * config/stormy16/stormy16.h: Likewise.
388         * config/stormy16/stormy16.md: Likewise.
389
390 2002-01-03  Graham Stott  <grahams@redhat.com>
391
392         * loop.h: Update copyright date.
393         (LOOP_MOVABLES): Fix typo.
394         (LOOP_REGS): Likewise.
395         (LOOP_IVS): Likewise.
396
397 2002-01-03  Graham Stott  <grahams@redhat.com>
398
399         * cppinit.c: Update copyright date.
400         Don't include output.h
401         * Makefile.in: Update copyright date.
402         Update dependency.
403
404 2002-01-02  Craig Rodrigues  <rodrigc@gcc.gnu.org>
405
406         PR c/5226
407         * invoke.texi (-mthreads): Remove from documented RS/6000 options.
408         (-pthread) Add to RS/6000 options.
409
410 2002-01-02  Kazu Hirata  <kazu@hxi.com>
411
412         * except.c: Fix comment typos.
413         * loop.c: Likewise.
414         * varasm.c: Likewise.
415         * doc/tm.texi: Fix a typo.
416
417 2002-01-02  Jakub Jelinek  <jakub@redhat.com>
418
419         * c-typeck.c (output_init_element): Allow initializing static storage
420         duration objects with compound literals.
421
422 2002-01-02  Richard Henderson  <rth@redhat.com>
423
424         * objc/objc-act.c (hack_method_prototype): Clear current_function_decl
425         after abusing it.
426
427 2002-01-02  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
428
429         * gcc.c (default_compilers): Const-ify.
430         * mips-tdump.c (stab_names): Likewise.
431         * mips-tfile.c (map_coff_types, map_coff_storage,
432         map_coff_sym_type, map_coff_derived_type, stabs_symbol,
433         pseudo_ops_t, pseudo_ops): Likewise.
434         * protoize.c (default_include): Likewise
435
436         * real.c (GET_REAL, PUT_REAL): Don't cast away const-ness.
437         (ezero, ehalf, eone, etwo, e32, elog2, esqrt2, epi): Const-ify.
438         Add array size in declaration.
439         (endian, emov, eisneg, eisinf, eisnan, eiisnan, eiisneg, emovi,
440         emovo, emovz, eiisinf, ecmpm, eaddm, esubm, m16m, edivm, emulm,
441         esub, eadd, eadd1, ediv, emul, e53toe, e64toe, e113toe, e24toe,
442         etoe113, etoe64, etoe53, etoe24, ecmp, eround, ltoe, ultoe,
443         eifrac, euifrac, e24toasc, e53toasc, e64toasc, e113toasc, etoasc,
444         efloor, efrexp, eldexp, eremain, dectoe, etodec, ibmtoe, etoibm,
445         c4xtoe, etoc4x, uditoe, ditoe, etoudi, etodi, esqrt, etens,
446         emtens, make_nan): Const-ify.
447         (TFbignan, TFlittlenan, XFbignan, XFlittlenan, DFbignan,
448         DFlittlenan, SFbignan, SFlittlenan): Make static and const-ify.
449
450 2002-01-02  Joseph S. Myers  <jsm28@cam.ac.uk>
451
452         * config.gcc (ia64-*-*): Set extra_headers.
453         (alpha*-dec-osf*): Likewise.  Don't use alpha/t-osf.
454         * config/alpha/t-osf: Remove.
455         * config/ia64/t-ia64 (EXTRA_HEADERS): Remove.
456
457 2002-01-02  David Edelsohn  <edelsohn@gnu.org>
458
459         * config/rs6000/t-aix43: Revert previous change.
460
461 2002-01-02  Jason Merrill  <jason@redhat.com>
462
463         * c-decl.c (c_expand_body): Call outlining_inline_function when
464         emitting an inline function out of line.
465
466 2002-01-02  Richard Henderson  <rth@redhat.com>
467
468         * dwarf2out.c (limbo_die_node): Add created_for member.
469         (new_die): New argument created_for.  Update all callers.
470         (mark_limbo_die_list): New.
471         (dwarf2out_init): Register limbo_die_list as a root.
472         (dwarf2out_finish): Force insert limbo dies into their function
473         context.
474
475 2002-01-02  Nathan Sidwell  <nathan@codesourcery.com>
476
477         PR c++/5089
478         * doc/invoke.texi (-Wold-style-cast): Only warn about non-void casts.
479
480 2002-01-02  Kazu Hirata  <kazu@hxi.com>
481
482         * config/h8300/fixunssfsi.c: Update copyright.
483         Fix comment typos.
484         Fix formatting.
485         * config/h8300/h8300.c: Update copyright.
486         Eliminate warnings.
487
488 2002-01-02  Kazu Hirata  <kazu@hxi.com>
489
490         * config/romp/romp.c: Fix comment formatting.
491         * config/romp/romp.h: Likewise.
492         * config/romp/romp.md: Likewise.
493         * config/s390/s390.c: Likewise.
494         * config/stormy16/stormy16.c: Likewise.
495         * config/stormy16/stormy16.h: Likewise.
496
497 2002-01-02  Alexandre Oliva  <aoliva@redhat.com>
498
499         * c-common.h (genrtl_expr_stmt_value): Declare.
500         * c-semantics.c (genrtl_goto_stmt): Redirect to...
501         (genrtl_goto_stmt_value): ... this new function.  Pass new
502         argument down to expand_expr_stmt_value, taking
503         TREE_ADDRESSABLE into account.
504         * c-common.c (c_expand_expr): Mark the last EXPR_STMT of a
505         STMT_EXPR as addressable, i.e., one whose result we want.
506         * expr.c (expand_expr): Don't save expression statement value
507         of labeled_blocks or loop_exprs.
508         * stmt.c (expand_expr_stmt): Redirect to...
509         (expand_expr_stmt_value): ... this new function.  Use new
510         argument to tell whether to save expression value.
511         (expand_end_stmt_expr): Reset last_expr_type and
512         last_expr_value if we don't have either.
513         * tree-inline.c (declare_return_variable): Mark its use
514         statement as addressable.
515         * tree.h: Document new use of TREE_ADDRESSABLE.
516         (expand_expr_stmt_value): Declare.
517
518 2002-01-01  Tom Rix  <trix@redhat.com>
519
520         * config/rs6000/rs6000.c (rs6000_emit_set_long_const): Fix for use by
521         rs6000_emit_allocate_stack.
522
523 2002-01-01  Joseph S. Myers  <jsm28@cam.ac.uk>
524
525         * configure.in: Prepend ${srcdir}/config/${cpu_type}/ instead of
526         ${srcdir}/ginclude/ to every entry in extra_headers.
527         * configure: Regenerate.
528         * ginclude/math-3300.h: Rename to config/m68k/math-3300.h.
529         * ginclude/math-68881.h: Rename to config/m68k/math-68881.h.
530         * ginclude/ppc-asm.h: Rename to config/rs6000/ppc-asm.h.
531         * ginclude/proto.h: Rename to config/convex/proto.h.
532
533 Tue Jan  1 17:12:56 2002  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
534
535         * attribs.c (handle_vector_size_attribute): Use host_integerp
536         and tree_int_cst; remove warnings.
537         * caller-save.c (insert_restore): Add cast to get rid of warning.
538         (insert_save): Likewise.
539         * emit-rtl.c (adjust_address_1, offset_address): Likewise.
540         * regmove.c (find_matches): Add temporary var to kill a warning.
541
542 2002-01-01  Douglas B Rupp  <rupp@gnat.com>
543
544         * config/alpha/vms.h (DWARF2_UNWIND_INFO, EH_RETURN_HANDLER_RTX,
545         LINK_EH_SPEC, MD_FALLBACK_FRAME_STATE_FOR): Define.
546         * config/alpha/t-vms (EXTRA_PARTS): Add vms-dwarf2eh.o
547         (vms-dwarf2eh.o): Add Makefile rule.
548         * config/alpha/vms-ld.c (main): Handle vms-dwarf2eh.o.
549         * config/alpha/vms-dwarf2eh.asm: New file.
550
551         * gcc.c (delete_if_ordinary): Delete all versions.
552
553 2002-01-01  Hans-Peter Nilsson  <hp@bitrange.com>
554
555         * config/mmix/mmix.md: Update FIXME to not mention
556         define_constants.
557         (MMIX_rJ_REGNUM): New define_constants constant.
558         ("movqi", "movsi", "movdi", "*movdicc_real_foldable",
559         "*movdicc_real"): Adjust contraints formatting.
560         ("*bCC_foldable"): Add %+ for P in output format and delete FIXME
561         for branch prediction.
562         ("*bCC", "*bCC_inverted_foldable", "*bCC_inverted"): Add %+ in
563         output template.
564         ("*call_real", "*call_value_real", "nonlocal_goto_receiver",
565         "*nonlocal_goto_receiver_expanded"): Use MMIX_rJ_REGNUM instead of
566         number.  Delete related FIXMEs.
567         * config/mmix/mmix.h (MMIX_INCOMING_RETURN_ADDRESS_REGNUM): Change
568         from number to MMIX_rJ_REGNUM.
569         (TARGET_MASK_BRANCH_PREDICT): New.
570         (TARGET_DEFAULT): Change to TARGET_MASK_BRANCH_PREDICT.
571         (TARGET_SWITCHES): Update comment.  Correct -mno-toplevel-symbols
572         value.  Add -mbranch-predict and -mno-branch-predict.
573         (TARGET_VERSION): Drop date.
574         (ADDITIONAL_REGISTER_NAMES): Use MMIX_rJ_REGNUM, not number.
575         * config/mmix/mmix.c (mmix_encode_section_info): Correct condition
576         for finding out global symbols.
577         (mmix_asm_output_labelref): Revert condition for global symbol.
578         (mmix_print_operand): <case '+'>: Emit P for a likely branch.
579         (mmix_print_operand_punct_valid_p): A '+' is valid.
580
581 See ChangeLog.6 for earlier changes.