]>
Commit | Line | Data |
---|---|---|
4017e262 JJ |
1 | 2009-01-09 Jakub Jelinek <jakub@redhat.com> |
2 | ||
3 | PR middle-end/38771 | |
4 | * fold-const.c (fold_unary): For COMPOUND_EXPR and COND_EXPR, | |
5 | fold_convert arg0 operands to TREE_TYPE (op0) first. | |
6 | ||
7cd06356 VM |
7 | 2009-01-08 Vladimir Makarov <vmakarov@redhat.com> |
8 | ||
9 | * params.def (ira-max-conflict-table-size): Decrease default value | |
10 | to 1000. | |
11 | ||
96867bbd JJ |
12 | 2009-01-08 Jakub Jelinek <jakub@redhat.com> |
13 | ||
14 | PR tree-optimization/37031 | |
15 | * lambda-code.c (lambda_collect_parameters): Call pointer_set_destroy | |
16 | on parameter_set. | |
17 | (build_access_matrix): Reserve correct size for AM_MATRIX vector, | |
18 | allocate it using gc instead of heap, use VEC_quick_push instead of | |
19 | VEC_safe_push. | |
20 | * graphite.c (build_access_matrix): Allocate AM_MATRIX vector using gc | |
21 | instead of heap, use VEC_quick_push instead of VEC_safe_push. | |
22 | * tree-data-ref.h (struct access_matrix): Change matrix to gc | |
23 | allocated vector from heap allocated. | |
24 | * lambda.h: Add DEF_VEC_ALLOC_P for gc allocated lambda_vector. | |
25 | * tree-loop-linear.c (linear_transform_loops): Allocate nest | |
26 | vector only after perfect_loop_nest_depth call. | |
27 | ||
68f61c3d SP |
28 | 2009-01-08 Sebastian Pop <sebastian.pop@amd.com> |
29 | Jan Sjodin <jan.sjodin@amd.com> | |
30 | ||
31 | PR tree-optimization/38559 | |
32 | * graphite.c (debug_value, copy_constraint, | |
33 | swap_constraint_variables, scale_constraint_variable, ): New. | |
34 | (get_lower_bound, get_upper_bound): Removed. | |
35 | (graphite_trans_bb_strip_mine): Clean up this code that works | |
36 | only for constant number of iterations. Fully copy upper and | |
37 | lower bound constraints, not only the constant part of them. | |
38 | * graphite.h (debug_value): Declared. | |
39 | ||
82567e33 IR |
40 | 2009-01-08 Ira Rosen <irar@il.ibm.com> |
41 | ||
42 | PR tree-optimization/37194 | |
43 | * tree-vect-transform.c (vect_estimate_min_profitable_iters): | |
44 | Don't add the cost of cost model guard in prologue to scalar | |
45 | outside cost in case of known number of iterations. | |
46 | ||
7da13f1d NF |
47 | 2009-01-07 Nathan Froyd <froydnj@codesourcery.com> |
48 | Alan Modra <amodra@bigpond.net.au> | |
49 | ||
50 | * config/rs6000/rs6000.c (rs6000_legitimize_address): Check for | |
51 | non-word-aligned REG+CONST addressing. | |
52 | ||
c0f64575 UB |
53 | 2009-01-07 Uros Bizjak <ubizjak@gmail.com> |
54 | ||
55 | PR target/38706 | |
56 | * config/alpha/alpha.c (alpha_end_function): For TARGET_ABI_OSF, call | |
57 | free_after_compilation when outputting a thunk. | |
58 | (alpha_output_mi_thunk_osf): Assert that we are processing a thunk. | |
59 | Do not call free_after_compilation here. | |
60 | ||
301b6a4e UB |
61 | 2009-01-07 Uros Bizjak <ubizjak@gmail.com> |
62 | ||
63 | * config/i386/i386.c (ix86_target_string): Use ARRAY_SIZE. | |
301b6a4e UB |
64 | (ix86_valid_target_attribute_inner_p): Ditto. |
65 | ||
6a114766 JS |
66 | 2009-01-07 Jan Sjodin <jan.sjodin@amd.com> |
67 | ||
68 | PR tree-optimization/38492 | |
69 | PR tree-optimization/38498 | |
70 | * tree-check.c (operator_is_linear, scev_is_linear_expression): New. | |
71 | * tree-chrec.h (scev_is_linear_expression): Declared. | |
72 | * graphite.c (graphite_cannot_represent_loop_niter): New. | |
73 | (scopdet_basic_block_info): Call graphite_cannot_represent_loop_niter. | |
74 | (graphite_loop_normal_form): Use gcc_assert. | |
75 | (scan_tree_for_params): Use CASE_CONVERT. | |
76 | (phi_node_is_iv, bb_contains_non_iv_scalar_phi_nodes): New. | |
77 | (build_scop_conditions_1): Call bb_contains_non_iv_scalar_phi_nodes. | |
78 | Use gcc_assert. Discard scops that contain unhandled cases. | |
79 | (build_scop_conditions): Return a boolean status for unhandled cases. | |
80 | (strip_mine_profitable_p): Print the loop number, not its depth. | |
81 | (is_interchange_valid): Pass the depth of the loop nest, don't | |
82 | recompute it wrongly. | |
83 | (graphite_trans_bb_block): Same. | |
84 | (graphite_trans_bb_block): Print tentative of loop blocking. | |
85 | (graphite_trans_scop_block): Do not print that the loop has been | |
86 | blocked. | |
87 | (graphite_transform_loops): Do not handle scops that contain condition | |
88 | scalar phi nodes. | |
89 | ||
65b82caa L |
90 | 2009-01-07 H.J. Lu <hongjiu.lu@intel.com> |
91 | ||
92 | AVX Programming Reference (December, 2008) | |
93 | * config/i386/avxintrin.h (_mm256_stream_si256): New. | |
94 | (_mm256_stream_pd): Likewise. | |
95 | (_mm256_stream_ps): Likewise. | |
96 | ||
97 | * config/i386/i386.c (ix86_builtins): Add IX86_BUILTIN_MOVNTDQ256, | |
98 | IX86_BUILTIN_MOVNTPD256 and IX86_BUILTIN_MOVNTPS256. | |
99 | (ix86_special_builtin_type): Add VOID_FTYPE_PV4DI_V4DI. | |
100 | (bdesc_special_args): Add __builtin_ia32_movntdq256, | |
101 | __builtin_ia32_movntpd256 and __builtin_ia32_movntps256. | |
102 | (ix86_init_mmx_sse_builtins): Handle VOID_FTYPE_PV4DI_V4DI. | |
103 | (ix86_expand_special_args_builtin): Likewise. | |
104 | ||
105 | * config/i386/sse.md (AVXMODEDI): New. | |
106 | (avx_movnt<mode>): Likewise. | |
107 | (avx_movnt<mode>): Likewise. | |
108 | (<sse>_movnt<mode>): Remove AVX support. | |
109 | (sse2_movntv2di): Likewise. | |
110 | ||
cef158f9 RG |
111 | 2009-01-07 Richard Guenther <rguenther@suse.de> |
112 | ||
113 | PR middle-end/38751 | |
114 | * fold-const.c (extract_muldiv): Remove obsolete comment. | |
115 | (fold_plusminus_mult_expr): Undo MINUS_EXPR | |
116 | to PLUS_EXPR canonicalization for the canonicalization. | |
117 | ||
246cb5be GP |
118 | 2009-01-07 Gerald Pfeifer <gerald@pfeifer.com> |
119 | ||
120 | * doc/install.texi (alpha*-dec-osf*): Remove note on 32-bit | |
121 | hosted cross-compilers generating less efficient code. | |
122 | ||
84b9b872 RS |
123 | 2009-01-06 Richard Sandiford <rdsandiford@googlemail.com> |
124 | ||
125 | * function.h (rtl_data): Add a dbr_scheduled_p field. | |
126 | * reorg.c (dbr_schedule): Set it. | |
127 | (gate_handle_delay_slots): Check it. | |
128 | * config/mips/mips.c (mips_base_delayed_branch): Delete. | |
129 | (mips_reorg): Check flag_delayed_branch instead of | |
130 | mips_base_delayed_branch. | |
131 | (mips_override_options): Don't set mips_base_delayed_branch | |
132 | or flag_delayed_branch. | |
133 | ||
ace984c8 RS |
134 | 2009-01-06 Richard Sandiford <rdsandiford@googlemail.com> |
135 | ||
136 | PR rtl-optimization/38426. | |
137 | * ira.c (ira): Set current_function_is_leaf earlier. | |
138 | ||
7ad7809b JJ |
139 | 2009-01-06 Jakub Jelinek <jakub@redhat.com> |
140 | ||
141 | PR rtl-optimization/38722 | |
142 | * combine.c (try_combine): Don't modify PATTERN (i3) and notes | |
143 | too early, only set a flag and modify after last possible | |
144 | undo_all point. | |
145 | ||
c52ec948 JJ |
146 | 2009-01-06 Janis Johnson <janis187@us.ibm.com> |
147 | ||
148 | PR c/34252 | |
149 | * ginclude/float.h: Rename DECnn_DEN to DECnn_SUBNORMAL_MIN. | |
150 | * real.c (decimal_single_format): Correct values of emin and emax. | |
151 | (decimal_double_format): Ditto. | |
152 | (decimal_quad_format): Ditto. | |
153 | * c-cppbuiltin.c (builtin_define_decimal_float_constants): Adjust | |
154 | computation of DECnn_MIN and DECnn_MAX for corrected values of | |
155 | emin and emax. Define __DECnn_SUBNORMAL_MIN__ instead of | |
156 | __DECnn_MIN__, and adjust its computation for the corrected value | |
157 | of emin. | |
158 | ||
300240e1 JH |
159 | 2009-01-06 Jan Hubicka <jh@suse.cz> |
160 | ||
161 | PR target/38744 | |
301b6a4e | 162 | * i386.c (ix86_expand_call): Use ARRAY_SIZE. |
300240e1 | 163 | |
271c069e GP |
164 | 2009-01-06 Gerald Pfeifer <gerald@pfeifer.com> |
165 | ||
166 | * doc/contrib.texi (Contributors): Slightly adjust the end note. | |
167 | Add Robert Clark to the list of testers. | |
168 | ||
64e4c301 JH |
169 | 2009-01-06 Jan Hubicka <jh@suse.cz> |
170 | Kai Tietz <kai.tietz@onevision.com> | |
171 | ||
172 | * i386.md (*msabi_syvabi): Add SSE regs clobbers. | |
173 | * i386.c (ix86_expand_call): Add clobbers. | |
174 | ||
7650b83e JH |
175 | 2009-01-06 Jan Hubicka <jh@suse.cz> |
176 | Kai Tietz <kai.tietz@onevision.com> | |
177 | ||
178 | * i386.h (CONDITIONAL_CALL_USAGE): SSE regs are not used for w64 ABI. | |
179 | * i386.c (struct ix86_frame): Add padding0 and nsseregs. | |
180 | (ix86_nsaved_regs): Count only general purpose regs. | |
181 | (ix86_nsaved_sseregs): New. | |
182 | (ix86_compute_frame_layout): Update nsseregs; set preferred alignment | |
183 | to 16 for w64; compute padding and size of sse reg save area. | |
301b6a4e UB |
184 | (ix86_emit_save_regs, ix86_emit_save_regs_using_mov): Save only |
185 | general purpose regs. | |
7650b83e JH |
186 | (ix86_emit_save_sse_regs_using_mov): New. |
187 | (ix86_expand_prologue): Save SSE regs if needed. | |
188 | (ix86_emit_restore_regs_using_mov): Use only general purpose regs. | |
189 | (ix86_emit_restore_sse_regs_using_mov): New. | |
190 | (ix86_expand_epilogue): Save SSE regs if needed. | |
191 | ||
9aa5c1b2 JH |
192 | 2009-01-06 Jan Hubicka <jh@suse.cz> |
193 | Kai Tietz <kai.tietz@onevision.com> | |
194 | ||
195 | * i386.h (ACCUMULATE_OUTGOING_ARGS): Enable for MSABI | |
301b6a4e UB |
196 | * i386.c (init_cumulative_args): Disallow calls of MSABI functions |
197 | when accumulate outgoing args is off. | |
9aa5c1b2 | 198 | |
f7556aae L |
199 | 2009-01-06 H.J. Lu <hongjiu.lu@intel.com> |
200 | ||
201 | PR bootstrap/38742 | |
202 | * ira-color.c (ira_reuse_stack_slot): Check ENABLE_IRA_CHECKING | |
203 | before using pseudos_have_intersected_live_ranges_p. | |
204 | ||
205 | * ira-int.h (ira_assert): Always define. | |
206 | ||
e47b7d04 L |
207 | 2009-01-06 H.J. Lu <hongjiu.lu@intel.com> |
208 | ||
209 | AVX Programming Reference (December, 2008) | |
210 | * config/i386/avxintrin.h (_mm_permute2_pd): Removed. | |
211 | (_mm256_permute2_pd): Likewise. | |
212 | (_mm_permute2_ps): Likewise. | |
213 | (_mm256_permute2_ps): Likewise. | |
214 | * config/i386/i386.md (UNSPEC_VPERMIL2): Likewise. | |
215 | * config/i386/sse.md (avx_vpermil2<mode>3): Likewise. | |
216 | ||
217 | * config/i386/i386.c (ix86_builtins): Remove | |
218 | IX86_BUILTIN_VPERMIL2PD, IX86_BUILTIN_VPERMIL2PS, | |
219 | IX86_BUILTIN_VPERMIL2PD256 and IX86_BUILTIN_VPERMIL2PS256. | |
220 | (ix86_builtin_type): Remove V8SF_FTYPE_V8SF_V8SF_V8SI_INT, | |
221 | V4DF_FTYPE_V4DF_V4DF_V4DI_INT, V4SF_FTYPE_V4SF_V4SF_V4SI_INT | |
222 | and V2DF_FTYPE_V2DF_V2DF_V2DI_INT. | |
223 | (bdesc_args): Remove __builtin_ia32_vpermil2pd, | |
224 | __builtin_ia32_vpermil2ps, __builtin_ia32_vpermil2pd256 and | |
225 | __builtin_ia32_vpermil2ps256. | |
226 | (ix86_init_mmx_sse_builtins): Updated. | |
227 | (ix86_expand_args_builtin): Likewise. | |
228 | ||
44b86471 JDA |
229 | 2009-01-05 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
230 | ||
e47b7d04 L |
231 | * pa.c (output_call): Relocate non-jump insns in the delay slot of |
232 | long absolute calls when generating PA 2.0 code. | |
44b86471 | 233 | |
311aab06 VM |
234 | 2009-01-05 Vladimir Makarov <vmakarov@redhat.com> |
235 | ||
236 | PR rtl-optimization/38583 | |
237 | * params.h (IRA_MAX_CONFLICT_TABLE_SIZE): New macro. | |
238 | ||
239 | * params.def (ira-max-conflict-table-size): New. | |
240 | ||
241 | * doc/invoke.texi (ira-max-conflict-table-size): Decribe. | |
242 | ||
243 | * ira.h (ira_conflicts_p): New external definition. | |
244 | ||
245 | * ira-conflicts.c (build_conflict_bit_table): Do not build too big | |
246 | table. Report this. Return result of building. | |
247 | (ira_build_conflicts): Use ira_conflicts_p. Check result of | |
248 | building conflict table. | |
249 | ||
301b6a4e | 250 | * ira-color.c (fast_allocation): Use num instead of ira_allocnos_num. |
311aab06 VM |
251 | (ira_color): Use ira_conflicts_p. |
252 | ||
253 | * global.c: Include ira.h. | |
254 | (pseudo_for_reload_consideration_p, build_insn_chain): Use | |
255 | ira_conflicts_p. | |
256 | ||
257 | * Makefile.in (global.o): Add ira.h. | |
258 | ||
259 | * ira-build.c (mark_all_loops_for_removal, | |
260 | propagate_some_info_from_allocno): New. | |
261 | (remove_unnecessary_allocnos): Call | |
262 | propagate_some_info_from_allocno. | |
263 | (remove_low_level_allocnos): New. | |
264 | (remove_unnecessary_regions): Add parameter. Call | |
265 | mark_all_loops_for_removal and remove_low_level_allocnos. Pass | |
266 | parameter to remove_unnecessary_regions. | |
267 | (ira_build): Remove all regions but root if the conflict table was | |
268 | not built. Update conflict hard regs for allocnos crossing calls. | |
269 | ||
270 | * ira.c (ira_conflicts_p): New global. | |
271 | (ira): Define and use ira_conflicts_p. | |
272 | ||
273 | * reload1.c (compute_use_by_pseudos, reload, count_pseudo, | |
274 | count_spilled_pseudo, find_reg, alter_reg, finish_spills, | |
301b6a4e | 275 | emit_input_reload_insns, delete_output_reload): Use ira_conflicts_p. |
311aab06 | 276 | |
5641785f BE |
277 | 2009-01-06 Ben Elliston <bje@au.ibm.com> |
278 | ||
279 | * gengtype-lex.l (YY_NO_INPUT): Define. | |
280 | ||
e4e5261f AP |
281 | 2009-01-05 Andrew Pinski <andrew_pinski@playstation.sony.com> |
282 | ||
283 | PR c/34911 | |
5641785f BE |
284 | * c-common.c (handle_vector_size_attribute): Also reject |
285 | BOOLEAN_TYPE types. | |
e4e5261f | 286 | |
7b10257f SP |
287 | 2009-01-05 Sebastian Pop <sebastian.pop@amd.com> |
288 | ||
289 | PR tree-optimization/38492 | |
290 | * graphite.c (rename_map_elt, debug_rename_elt, | |
301b6a4e UB |
291 | debug_rename_map_1, debug_rename_map, new_rename_map_elt, |
292 | rename_map_elt_info, eq_rename_map_elts, | |
293 | get_new_name_from_old_name, bb_in_sese_p): Moved around. | |
7b10257f SP |
294 | (sese_find_uses_to_rename_use): Renamed sese_build_livein_liveouts_use. |
295 | (sese_find_uses_to_rename_bb): Renamed sese_build_livein_liveouts_bb. | |
296 | (sese_build_livein_liveouts): New. | |
297 | (new_sese, free_sese): New. | |
298 | (new_scop): Call new_sese. | |
299 | (free_scop): Call free_sese. | |
300 | (rename_variables_from_edge, rename_phis_end_scop): Removed. | |
301 | (register_old_new_names): Renamed register_old_and_new_names. | |
302 | (register_scop_liveout_renames, add_loop_exit_phis, | |
303 | insert_loop_close_phis, struct igp, | |
304 | default_liveout_before_guard, add_guard_exit_phis, | |
305 | insert_guard_phis, copy_renames): New. | |
306 | (translate_clast): Call insert_loop_close_phis and insert_guard_phis. | |
307 | (sese_add_exit_phis_edge): Renamed scop_add_exit_phis_edge. | |
308 | (rewrite_into_sese_closed_ssa): Renamed scop_insert_phis_for_liveouts. | |
309 | (scop_adjust_phis_for_liveouts): New. | |
310 | (gloog): Call scop_adjust_phis_for_liveouts. | |
311 | ||
312 | * graphite.h (struct sese): Documented. Added fields liveout, | |
301b6a4e | 313 | num_ver and livein. |
7b10257f SP |
314 | (SESE_LIVEOUT, SESE_LIVEIN, SESE_LIVEIN_VER, SESE_NUM_VER): New. |
315 | (new_sese, free_sese, sese_build_livein_liveouts): Declared. | |
316 | (struct scop): Added field liveout_renames. | |
317 | (SCOP_LIVEOUT_RENAMES): New. | |
318 | ||
9761fcc7 HJ |
319 | 2009-01-05 Harsha Jagasia <harsha.jagasia@amd.com> |
320 | ||
321 | PR tree-optimization/38510 | |
322 | * graphite.c (recompute_all_dominators): Call mark_irreducible_loops. | |
323 | (translate_clast): Call recompute_all_dominators before | |
324 | graphite_verify. | |
325 | (gloog): Call recompute_all_dominators before graphite_verify. | |
326 | ||
327 | 2009-01-05 Harsha Jagasia <harsha.jagasia@amd.com> | |
328 | Jan Sjodin <jan.sjodin@amd.com> | |
329 | ||
330 | PR tree-optimization/38500 | |
331 | * graphite.c (create_sese_edges): Call fix_loop_structure after | |
332 | splitting blocks. | |
333 | ||
48a01864 JS |
334 | 2009-01-05 Joel Sherrill <joel.sherrill@oarcorp.com> |
335 | ||
336 | * config.gcc: Add m32r*-*-rtems*. | |
337 | * config/m32r/rtems.h: New file. | |
338 | ||
fc0cd180 BE |
339 | 2009-01-05 Ben Elliston <bje@au.ibm.com> |
340 | ||
341 | * Makefile.in (.po.gmo): Use mkinstalldirs, not test -d || mkdir. | |
342 | (.po.pox): Likewise. | |
343 | (po/gcc.pot): Likewise. | |
344 | ||
3106d8e5 DM |
345 | 2009-01-04 David S. Miller <davem@davemloft.net> |
346 | ||
347 | * config/sparc/sparc.h (SECONDARY_MEMORY_NEEDED_RTX): Delete. | |
348 | (STARTING_FRAME_OFFSET): Always set to zero. | |
349 | ||
0009b473 RS |
350 | 2009-01-04 Richard Sandiford <rdsandiford@googlemail.com> |
351 | ||
352 | * tree.def (LSHIFT_EXPR, RSHIFT_EXPR): Add commentary. | |
353 | * tree-cfg.c (verify_gimple_assign_binary): Allow shifts of | |
354 | fixed-point types, and vectors of the same. | |
355 | ||
4f24c6d6 RS |
356 | 2009-01-04 Richard Sandiford <rdsandiford@googlemail.com> |
357 | ||
358 | * config/mips/sync.md (*mb_barrier): Rename to... | |
359 | (*memory_barrier): ...this. | |
360 | ||
1df48f5c JW |
361 | 2009-01-04 Jonathan Wakely <jwakely.gcc@gmail.com> |
362 | ||
363 | * doc/extend.texi (Function Attributes): Move @cindex after @item | |
eefe5da0 | 364 | for 'artificial' and 'flatten'. Fix grammar for 'externally_visible' |
1df48f5c JW |
365 | and put in alphabetical order. Fix 'target' name and put in order. |
366 | * doc/invoke.texi (-Wstrict-null-sentinel, -fipa-matrix-reorg): Fix | |
367 | typos. | |
368 | ||
1a8c13b3 UB |
369 | 2009-01-04 Uros Bizjak <ubizjak@gmail.com> |
370 | ||
371 | * config/s390/s390.md (UNSPEC_MB): Rename from UNSPECV_MB. | |
372 | (memory_barrier): Expand as unspec instead of unspec_volatile. | |
373 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
374 | (*memory_barrier): Define as unspec instead of unspec_volatile. | |
375 | Use (match_dup 0) as input operand. | |
376 | ||
377 | * config/sparc/sparc.md (UNSPEC_MEMBAR): Rename from UNSPECV_MEMBAR. | |
378 | * config/sparc/sync.md (memory_barrier): Expand as unspec instead of | |
379 | unspec_volatile. Remove mem:BLK from insn operands. Use Pmode | |
380 | scratch register. Remove operand 1. | |
381 | (*stbar): Define as unspec instead of unspec_volatile. | |
382 | Use (match_dup 0) as input operand, remove (const_int 8). | |
383 | (*membar): Define as unspec instead of unspec_volatile. | |
384 | Use (match_dup 0) as input operand, remove input operand 2. | |
385 | ||
386 | * config/xtensa/xtensa.md (UNSPEC_MEMW): Rename from UNSPECV_MEMW. | |
387 | (memory_barrier): Expand as unspec instead of unspec_volatile. | |
388 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
389 | (*memory_barrier): Define as unspec instead of unspec_volatile. | |
390 | Use (match_dup 0) as input operand. | |
391 | ||
392 | * config/ia64/sync.md (memory_barrier): Redefine as expander pattern. | |
393 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
394 | Set volatile flag on operand 0. | |
395 | (*memory_barrier): New insn pattern. | |
396 | ||
397 | * config/rs6000/sync.md (memory_barrier): Remove mem:BLK from | |
398 | insn operands. | |
399 | (*memory_barrier): Use (match_dup 0) as input operand. | |
400 | ||
401 | * config/mips/sync.md (memory_barrier): Redefine as expander pattern. | |
402 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
403 | Set volatile flag on operand 0. | |
301b6a4e | 404 | (*mb_internal): New insn pattern. |
1a8c13b3 UB |
405 | |
406 | * config/alpha/sync.md (*memory_barrier): Rename from *mb_internal. | |
407 | ||
fb0703f7 SB |
408 | 2009-01-04 Steven Bosscher <steven@gcc.gnu.org> |
409 | ||
410 | PR middle-end/38586 | |
411 | * function.c (struct temp_slot): Move to the section of the file | |
412 | that deals with temp slots. Remove field 'address'. | |
413 | (temp_slot_address_table): New hash table of address -> temp slot. | |
414 | (struct temp_slot_address_entry): New struct, items for the table. | |
415 | (temp_slot_address_compute_hash, temp_slot_address_hash, | |
416 | temp_slot_address_eq, insert_temp_slot_address): Support functions | |
417 | for the new table. | |
418 | (find_temp_slot_from_address): Rewrite to use the new hash table. | |
419 | (remove_unused_temp_slot_addresses): Remove addresses of temp | |
420 | slots that have been made available. | |
421 | (remove_unused_temp_slot_addresses_1): Call-back for htab_traverse, | |
422 | worker function for remove_unused_temp_slot_addresses. | |
423 | (assign_stack_temp_for_type): Don't clear the temp slot address list. | |
424 | Add the temp slot address to the address -> temp slot map. | |
425 | (update_temp_slot_address): Update via insert_temp_slot_address. | |
426 | (free_temp_slots): Call remove_unused_temp_slot_addresses. | |
427 | (pop_temp_slots): Likewise. | |
428 | (init_temp_slots): Allocate the address -> temp slot map, or empty | |
429 | the map if it is already allocated. | |
430 | (prepare_function_start): Initialize temp slot processing. | |
431 | ||
b5a430f3 SB |
432 | 2009-01-04 Steven Bosscher <steven@gcc.gnu.org> |
433 | ||
434 | PR middle-end/38584 | |
435 | * cfgexpand.c (estimate_stack_frame_size): Simplify the estimate: | |
436 | Calculate the size of all stack vars assuming no packing of stack | |
437 | vars will happen, replacing a quadratic algorithm with a linear one. | |
438 | ||
5d560619 JJ |
439 | 2009-01-03 Jakub Jelinek <jakub@redhat.com> |
440 | ||
441 | PR target/38707 | |
442 | * expmed.c (store_bit_field_1): Don't modify op0 if movstrict insn | |
443 | can't be used. | |
444 | ||
953a7caa DN |
445 | 2009-01-03 Diego Novillo <dnovillo@google.com> |
446 | ||
447 | * doc/contrib.texi: Update contributions. | |
448 | ||
5f26a230 JJ |
449 | 2009-01-03 Jakub Jelinek <jakub@redhat.com> |
450 | ||
493aa551 JJ |
451 | PR c++/38705 |
452 | * builtins.c (fold_builtin_memory_op): Give up if either operand | |
453 | is volatile. Set srctype or desttype to non-qualified version | |
454 | of the other type. | |
455 | ||
5f26a230 JJ |
456 | PR c/38700 |
457 | * builtins.c (fold_builtin_expect): Only check DECL_WEAK for VAR_DECLs | |
458 | and FUNCTION_DECLs. | |
459 | ||
fafe34f9 KZ |
460 | 2009-01-02 Kenneth Zadeck <zadeck@naturalbridge.com> |
461 | ||
462 | PR rtl-optimization/35805 | |
463 | * df-problems.c (df_lr_finalize): Add recursive call to resolve lr | |
464 | problem if fast dce is able to remove any instructions. | |
465 | * dce.c (dce_process_block): Fix dump message. | |
466 | ||
0b355794 MM |
467 | 2009-01-02 Mark Mitchell <mark@codesourcery.com> |
468 | ||
469 | PR 33649 | |
470 | * tree-ssa-pre.c (compute_antic): Correct loop bounds. | |
471 | ||
0cf0d02b JJ |
472 | 2009-01-02 Jakub Jelinek <jakub@redhat.com> |
473 | ||
474 | PR middle-end/38690 | |
475 | * tree-flow.h (op_code_prio, op_prio): New prototypes. | |
476 | * tree-pretty-print.c (op_code_prio): New function. | |
477 | (op_prio): No longer static. Use op_code_prio. | |
478 | * gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs): | |
479 | Use op_prio and op_code_prio to determine if () should be | |
480 | printed around operand(s) or not. | |
481 | ||
482 | * gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs, | |
483 | dump_gimple_call, dump_gimple_switch, dump_gimple_cond, | |
484 | dump_gimple_label, dump_gimple_try, dump_symbols, dump_gimple_phi, | |
485 | dump_gimple_mem_ops, dump_bb_header, dump_bb_end, pp_cfg_jump): Use | |
486 | pp_character instead of pp_string for single letter printing. | |
487 | ||
e3606f3b RS |
488 | 2009-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
489 | ||
490 | * doc/extend.texi: Fix '#pragma GCC option' typo. | |
491 | ||
00f39bd5 RG |
492 | 2009-01-02 Richard Guenther <rguenther@suse.de> |
493 | ||
a5f061dc RG |
494 | * doc/install.texi (--enable-checking): Mention different |
495 | default for stage1. | |
496 | (--enable-stage1-checking): Document. | |
00f39bd5 | 497 | |
26de0bcb AP |
498 | 2009-01-01 Andrew Pinski <pinskia@gmail.com> |
499 | ||
500 | PR middle-end/30142 | |
501 | * tree-cfg.c (verify_expr): Add INDIRECT_REF case. Change MODIFY_EXPR | |
502 | case to be an error. | |
503 | ||
7a7d8fab BE |
504 | 2009-01-02 Ben Elliston <bje@au.ibm.com> |
505 | ||
506 | * config/fp-bit.h (pack_d): Constify argument. | |
507 | * config/fp-bit.c (makenan): Constify return type. Remove casts. | |
508 | (isnan): Constify argument. | |
509 | (isinf): Likewise. | |
510 | (iszero): Likewise. | |
511 | (pack_d): Likewise. | |
512 | (_fpadd_parts): Constify return type. | |
513 | (_fpmul_parts): Likewise. | |
514 | (_fpdiv_parts): Likewise. | |
515 | ||
b295aee2 JJ |
516 | 2009-01-01 Jakub Jelinek <jakub@redhat.com> |
517 | ||
518 | PR c/36489 | |
519 | * c-typeck.c (add_pending_init): Add IMPLICIT argument. Only | |
520 | warn about overwriting initializer with side-effects or | |
521 | -Woverride-init if !IMPLICIT. | |
522 | (output_init_element): Likewise. Pass IMPLICIT down to | |
523 | add_pending_init. | |
524 | (process_init_element): Add IMPLICIT argument. Pass it down | |
525 | to output_init_element. | |
526 | (push_init_element, pop_init_level, set_designator): Adjust | |
527 | process_init_element callers. | |
528 | (set_nonincremental_init, set_nonincremental_init_from_string): | |
529 | Adjust add_pending_init callers. | |
530 | (output_pending_init_elements): Adjust output_init_element callers. | |
531 | * c-tree.h (process_init_element): Adjust prototype. | |
532 | * c-parser.c (c_parser_initelt, c_parser_initval): Adjust | |
533 | process_init_element callers. |