OSDN Git Service

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