1 2004-01-05 Uros Bizjak <uros@kss-loka.si>
3 * doc/invoke.texi (Intel 386 and AMD x86-64 Options):
4 Replace i387 with 'i386 compiler' in -mfpmath=sse option.
6 2005-01-04 Roger Sayle <roger@eyesopen.com>
8 * ifcvt.c (find_if_case_1): Avoid creating an empty forwarder block,
9 if deleting the then-block allows the test-block to fallthru to the
12 2005-01-04 Andrew Pinski <pinskia@physics.uc.edu>
15 * c-decl.c (diagnose_mismatched_decls): Accept "extern inline" declared
16 after the full declaration if the are in two different TUs.
18 2005-01-04 Richard Henderson <rth@redhat.com>
21 * tree-sra.c (generate_one_element_init): Just
22 call gimplify_and_add.
23 (generate_element_init): Record the
24 new referenced variables and mark them for renaming
26 (generate_element_init_1): This.
27 (scalarize_init): Don't call push_gimplify_context/
30 2005-01-04 Geoffrey Keating <geoffk@apple.com>
32 * toplev.c (get_src_pwd): Handle failure of getpwd().
34 2005-01-04 Roger Sayle <roger@eyesopen.com>
36 * fold-const.c (fold_single_bit_test): Delete unreachable handling
38 (fold): Don't call fold_single_bit_test with a TRUTH_NOT_EXPR, as
39 all the cases handled by it are inverted by invert_truthvalue.
41 2005-01-04 Eric Botcazou <ebotcazou@libertysurf.fr>
43 * config/sparc/sparc.md (save_register_windowdi): Add missing mode.
44 (save_register_windowsi): Likewise.
46 2005-01-04 Richard Henderson <rth@redhat.com>
48 * tree-mudflap.c (mf_varname_tree): Fix thinko setting declname.
50 2005-01-04 Uros Bizjak <uros@kss-loka.si>
53 * cse.c (fold_rtx) [RTX_COMPARE, RTX_COMM_COMPARE]: Don't attempt
54 any simplifications of vector mode comparison operators.
55 * simplify-rtx.c (simplify_relational_operation): Fix variable name.
57 2005-01-04 Paolo Bonzini <bonzini@gnu.org>
58 Devang Patel <dpatel@apple.com>
60 PR tree-optimization/18308
61 * tree-if-conv.c (add_to_dst_predicate_list): Gimplify
62 the operands before creating a new expression.
63 * dojump.c (do_jump): Make drop_through_label available
64 for all cases. Add expansion of COND_EXPR.
66 2005-01-04 Ira Rosen <irar@il.ibm.com>
68 * tree-vectorizer.c (vect_analyze_offset_expr): Test for
69 INTEGER_CST instead of TREE_CONSTANT.
70 (vect_gen_niters_for_prolog_loop): Test for INTEGER_CST
71 instead of TREE_CONSTANT.
72 (vect_analyze_pointer_ref_access): Test for INTEGER_CST
73 instead of TREE_CONSTANT.
75 2005-01-04 Eric Botcazou <ebotcazou@libertysurf.fr>
77 * tree-eh.c (replace_goto_queue): Return early if the queue is empty.
79 2005-01-04 Uros Bizjak <uros@kss-loka.si>
82 * config/i386/i386.md (*fop_df_1_i387): Disable for TARGET_SSE_MATH.
83 (*fop_df_1_i387): Disable for (TARGET_SSE2 && TARGET_SSE_MATH).
85 2005-01-03 Richard Henderson <rth@redhat.com>
87 * fold-const.c (force_fit_type): Cope with types larger than 2 HWI.
88 (fold_convert_const_int_from_int, fold_convert_const_int_from_real,
89 fold_convert_const_real_from_real): Split out from ...
90 (fold_convert_const): ... here.
92 2005-01-03 Richard Henderson <rth@redhat.com>
95 * config/i386/i386.md (movdi_2): Separate SSE1 and SSE2 alternatives.
96 (mov<MMXMODEI>_internal): Likewise.
97 (movdf_nointeger): Prefer Y while not preferring, but allowing, x.
98 Add V2SF case; use it for SSE1; don't use TI.
99 (movdf_integer): Likewise.
100 (mov<SSEMODEI>_internal, movti_internal): Force V4SF for SSE1.
102 2005-01-03 Ira Rosen <irar@il.ibm.com>
104 * tree-vectorizer.c (vect_strip_conversions): New function.
105 (vect_analyze_offset_expr): Call vect_strip_conversions. Add
106 check for binary class.
108 2005-01-03 Daniel Berlin <dberlin@dberlin.org>
112 * dwarf2out.c (block_ultimate_origin): Follow decl origin if origin
114 * gimple-low.c (mark_blocks_with_used_vars): New function.
115 (mark_blocks_with_used_subblocks): Ditto.
116 (mark_used_blocks): Ditto.
117 (pass_mark_used_blocks): New pass.
118 * tree-inline.c: Include debug.h.
119 (expand_call_inline): Call outlining_inline_function here.
120 * tree-optimize.c (init_tree_optimization_passes): Add
121 pass_mark_used_blocks.
122 * tree-pass.h (pass_mark_used_blocks): New.
123 * Makefile.in (tree-inline.o): Add debug.h dependency.
125 2005-01-03 Geoffrey Keating <geoffk@apple.com>
127 * config/darwin.c (darwin_handle_weak_import_attribute): Permit
128 VAR_DECLs to have weak_import attribute.
130 * config/rs6000/darwin-fallback.c: Use 'ucontext_t' rather than
133 2004-01-03 Steven Bosscher <stevenb@suse.de>
135 * passes.c (rest_of_compilation): Don't run regmove if only
136 flag_expensive_optimizations, require flag_regmove instead.
138 2005-01-03 Eric Botcazou <ebotcazou@libertysurf.fr>
140 * config/sparc/litecoff.h (TARGET_OS_CPP_BUILTINS): Do not
142 * config/sparc/sysv4-only.h (TARGET_OS_CPP_BUILTINS): Likewise.
143 * config/sparc/rtemself.h (TARGET_SUB_OS_CPP_BUILTINS): Likewise.
144 * config/sparc/sol2-64.h (TARGET_SUB_OS_CPP_BUILTINS): Delete.
145 * config/sparc/sp64-elf.h (TARGET_SUB_OS_CPP_BUILTINS): Likewise.
147 2005-01-03 Richard Henderson <rth@redhat.com>
149 * config/ia64/ia64.c (TARGET_VECTOR_MODE_SUPPORTED_P): New.
150 (ia64_const_ok_for_letter_p): New.
151 (ia64_const_double_ok_for_letter_p): New.
152 (ia64_extra_constraint): New.
153 (ia64_expand_vecint_compare): New.
154 (ia64_expand_vcondu_v2si): New.
155 (ia64_expand_vecint_cmov): New.
156 (ia64_expand_vecint_minmax): New.
157 (ia64_print_operand): Add 'v'.
158 (ia64_preferred_reload_class): New.
159 (ia64_vector_mode_supported_p): New.
160 * config/ia64/ia64.h (UNITS_PER_SIMD_WORD): New.
161 (PREFERRED_RELOAD_CLASS): Move to function.
162 (CONST_OK_FOR_LETTER_P): Move to function.
163 (CONST_DOUBLE_OK_FOR_LETTER_P): Move to function.
164 (CONSTRAINT_OK_FOR_Q, CONSTRAINT_OK_FOR_R): Remove.
165 (CONSTRAINT_OK_FOR_S, CONSTRAINT_OK_FOR_T): Remove.
166 (EXTRA_CONSTRAINT): Move to function.
167 * config/ia64/ia64.md: Include vect.md.
168 (itanium_class): Add mmalua.
170 * config/ia64/itanium1.md (1_mmalua): New. Add it to bypasses.
172 * config/ia64/itanium2.md (2_mmalua, 2b_mmalua): Similarly.
173 * config/ia64/predicates.md (gr_reg_or_0_operand): Accept any
175 (const_int_2bit_operand): New.
176 (fr_reg_or_0_operand): New.
177 * config/ia64/ia64-modes.def: Add vector modes.
178 * config/ia64/ia64-protos.h: Update.
179 * config/ia64/vect.md: New file.
181 2005-01-03 Richard Henderson <rth@redhat.com>
183 * simplify-rtx.c (simplify_binary_operation): Handle VEC_CONCAT.
185 2005-01-03 Uros Bizjak <uros@kss-loka.si>
188 * config/i386/i386.c (log1psf2): Change mode of operands[0,1]
190 (log1pdf2): Change mode of operands[0,1] to DFmode.
192 2005-01-03 Eric Botcazou <ebotcazou@libertysurf.fr>
194 * config/sparc/sparc.h (SPARC_RELAXED_ORDERING): Define to false.
195 * config/sparc/linux.h (SPARC_RELAXED_ORDERING): Define to true.
196 * config/sparc/linux64.h (SPARC_RELAXED_ORDERING): Likewise.
197 * config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define to
198 SPARC_RELAXED_ORDERING.
200 2005-01-03 Richard Henderson <rth@redhat.com>
201 Uros Bizjak <uros@kss-loka.si>
204 * config/i386/i386.c (ix86_expand_builtin): [IX86_BUILTIN_PINSRW,
205 IX86_BUILTIN_PINSRW128]: Fix wrong selector range in error message.
206 * config/i386/i386.md (mmx_pinsrw, sse2_pinsrw): Fix selector
208 (*mmx_pinsrw, *sse2_pinsrw): New patterns.
209 * config/i386/i386/predicates.md (const_pow2_1_to_8_operand,
210 const_pow2_1_to_128_operand): New predicates.
212 2005-01-02 Greg McGary <greg@mcgary.org>
214 * tree-mudflap.c (mf_varname_tree): decl_printable_name handles
216 (mf_xform_derefs_1) [RESULT_DECL, STRING_CST]: Handle as innermost
217 object. [ptr_type]: Remove unused variable.
218 Remember nearest addressable array-element or record-component
219 when checking bitfield components. Tolerate empty BIND_EXPR.
221 2005-01-01 Richard Henderson <rth@redhat.com>
223 * tree-vectorizer.c (vect_analyze_offset_expr): Strip conversions
224 that don't narrow the value. Fail for other conversions.
226 2005-01-01 Richard Henderson <rth@redhat.com>
229 * c-decl.c (pop_file_scope): Call maybe_apply_pending_pragma_weaks.
230 * c-lang.c (finish_file): Don't do it here.
231 * objc/objc-act.c (objc_finish_file): Likewise.
233 * cgraph.c (decl_assembler_name_equal): New.
234 (cgraph_node_for_asm, cgraph_varpool_node_for_asm): New.
235 (cgraph_varpool_node): Actually link up cgraph_varpool_nodes.
236 * cgraph.h (struct cgraph_varpool_node): Add next.
237 (cgraph_node_for_asm, cgraph_varpool_node_for_asm): Declare.
238 * varasm.c (assemble_alias): Mark the target as needed.
240 2005-01-01 Andrew Pinski <pinskia@physics.uc.edu>
243 * function.c (get_arg_pointer_save_area): Use entry_of_function
244 instead of get_insns.
246 2005-01-01 Roger Sayle <roger@eyesopen.com>
247 Andrew Pinski <pinskia@physics.uc.edu>
248 James E. Wilson <wilson@specifixinc.com>
250 PR rtl-optimization/12092
251 * loop.c (emit_prefetch_instructions): Do nothing if PREFETCH_BLOCK
254 2005-01-01 Roger Sayle <roger@eyesopen.com>
255 Olivier Hainque <hainque@act-europe.fr>
257 * tree.c (int_fits_type_p): A narrower type always fits in a
258 wider one, except for negative values into unsigned types.
260 2005-01-01 Roger Sayle <roger@eyesopen.com>
262 * tree.c (int_fits_type_p): Compare the result of force_fit_type
263 with the original constant rather than require TREE_OVERFLOW.
265 2005-01-01 Steven Bosscher <stevenb@suse.de>
268 * c-decl.c (finish_function): If compiling C99, annotate the
269 compiler generated return with the current file name and line 0.
270 * tree-cfg.c (remove_useless_stmts_warn_notreached): Only warn if
271 the source line is greater than 0.
272 (remove_bb): Likewise.
274 See ChangeLog.12 for earlier changes.