]>
Commit | Line | Data |
---|---|---|
b4ab7d34 KS |
1 | 2013-02-13 Kostya Serebryany <kcc@google.com> |
2 | ||
3 | * config/i386/i386.c: Use 0x7fff8000 as asan_shadow_offset on x86_64 | |
4 | linux. | |
5 | * sanitizer.def: Rename __asan_init to __asan_init_v1. | |
6 | ||
bdcbe80c DS |
7 | 2013-02-12 Dodji Seketeli <dodji@redhat.com> |
8 | ||
9 | Avoid instrumenting duplicated memory access in the same basic block | |
10 | * Makefile.in (asan.o): Add new dependency on hash-table.h | |
11 | * asan.c (struct asan_mem_ref, struct mem_ref_hasher): New types. | |
12 | (asan_mem_ref_init, asan_mem_ref_get_end, get_mem_ref_hash_table) | |
13 | (has_stmt_been_instrumented_p, empty_mem_ref_hash_table) | |
14 | (free_mem_ref_resources, has_mem_ref_been_instrumented) | |
15 | (has_stmt_been_instrumented_p, update_mem_ref_hash_table) | |
16 | (get_mem_ref_of_assignment): New functions. | |
17 | (get_mem_refs_of_builtin_call): Extract from | |
18 | instrument_builtin_call and tweak a little bit to make it fit with | |
19 | the new signature. | |
20 | (instrument_builtin_call): Use the new | |
21 | get_mem_refs_of_builtin_call. Use gimple_call_builtin_p instead | |
22 | of is_gimple_builtin_call. | |
23 | (instrument_derefs, instrument_mem_region_access): Insert the | |
24 | instrumented memory reference into the hash table. | |
25 | (maybe_instrument_assignment): Renamed instrument_assignment into | |
26 | this, and change it to advance the iterator when instrumentation | |
27 | actually happened and return true in that case. This makes it | |
28 | homogeneous with maybe_instrument_assignment, and thus give a | |
29 | chance to callers to be more 'regular'. | |
30 | (transform_statements): Clear the memory reference hash table | |
31 | whenever we enter a new BB, when we cross a function call, or when | |
32 | we are done transforming statements. Use | |
33 | maybe_instrument_assignment instead of instrumentation. No more | |
34 | need to special case maybe_instrument_assignment and advance the | |
35 | iterator after calling it; it's now handled just like | |
36 | maybe_instrument_call. Update comment. | |
37 | ||
4861a1f7 RB |
38 | 2013-02-13 Richard Biener <rguenther@suse.de> |
39 | ||
40 | * config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc): | |
41 | Fix loop discovery code. | |
42 | ||
1c86bd80 VM |
43 | 2013-02-12 Vladimir Makarov <vmakarov@redhat.com> |
44 | ||
45 | PR inline-asm/56148 | |
46 | * lra-constraints.c (process_alt_operands): Match early clobber | |
47 | operand with itself. Check conflicts with earlyclobner only if | |
48 | the operand is not reloaded. Prefer to reload conflicting operand | |
49 | if earlyclobber and matching operands are the same. | |
50 | ||
7cbda518 RB |
51 | 2013-02-12 Richard Biener <rguenther@suse.de> |
52 | ||
53 | PR lto/56297 | |
54 | * lto-streamer-out.c (write_symbol): Do not output symbols | |
55 | for hard register variables. | |
56 | ||
e68a4ef6 GJL |
57 | 2013-02-12 Georg-Johann Lay <avr@gjlay.de> |
58 | ||
59 | PR target/54222 | |
60 | * config/avr/avr-dimode.md (umulsidi3, mulsidi3): New expanders. | |
61 | (umulsidi3_insn, mulsidi3_insn): New insns. | |
62 | ||
2597da22 CL |
63 | 2013-02-12 Christophe Lyon <christophe.lyon@linaro.org> |
64 | ||
65 | * config/arm/arm-protos.h (struct cpu_vec_costs): New struct type. | |
66 | (struct tune_params): Add vec_costs field. | |
67 | * config/arm/arm.c (arm_builtin_vectorization_cost) | |
68 | (arm_add_stmt_cost): New functions. | |
69 | (TARGET_VECTORIZE_BUILTIN_VECTORIZATION_COST) | |
70 | (TARGET_VECTORIZE_ADD_STMT_COST): Define. | |
71 | (arm_default_vec_cost): New struct of type cpu_vec_costs. | |
72 | (arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune) | |
73 | (arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune) | |
74 | (arm_cortex_a15_tune, arm_cortex_a5_tune, arm_cortex_a9_tune) | |
75 | (arm_v6m_tune, arm_fa726te_tune): Define new vec_costs field. | |
76 | ||
43320568 RB |
77 | 2013-02-12 Richard Biener <rguenther@suse.de> |
78 | ||
79 | PR lto/56295 | |
80 | * gimple-streamer-in.c (input_gimple_stmt): Strip MEM_REFs off | |
81 | decls again if possible. | |
82 | ||
a011aa39 RB |
83 | 2013-02-12 Richard Biener <rguenther@suse.de> |
84 | ||
85 | PR middle-end/56288 | |
86 | * tree-ssa.c (verify_ssa_name): Fix check, move | |
87 | SSA_NAME_IN_FREE_LIST check up. | |
88 | ||
6da26889 JJ |
89 | 2013-02-12 Jakub Jelinek <jakub@redhat.com> |
90 | Steven Bosscher <steven@gcc.gnu.org> | |
91 | ||
92 | PR rtl-optimization/56151 | |
93 | * optabs.c (add_equal_note): Don't return 0 if target is a MEM, | |
94 | equal to op0 or op1, and last_insn pattern is CODE operation | |
95 | with MEM dest and one of the operands matches that MEM. | |
96 | ||
f80e0faf ST |
97 | 2013-02-11 Sriraman Tallam <tmsriramgoogle.com> |
98 | ||
99 | * doc/extend.texi: Document Function Multiversioning and "default" | |
100 | parameter string to target attribute. | |
101 | * config/i386/i386.c (get_builtin_code_for_version): Return 0 if | |
102 | target attribute parameter is "default". | |
103 | (ix86_compare_version_priority): Remove checks for target attribute. | |
104 | (ix86_mangle_function_version_assembler_name): Change error to sorry. | |
105 | Remove check for target attribute equal to NULL. Add assert. | |
106 | (ix86_generate_version_dispatcher_body): Change error to sorry. | |
107 | ||
6c59ffd1 IS |
108 | 2013-02-11 Iain Sandoe <iain@codesourcery.com> |
109 | Jack Howarth <howarth@bromo.med.uc.edu> | |
110 | Patrick Marlier <patrick.marlier@gmail.com> | |
111 | ||
112 | PR libitm/55693 | |
113 | * config/darwin.h: Replace ENDFILE_SPEC with TM_DESTRUCTOR and | |
114 | define ENDFILE_SPEC as TM_DESTRUCTOR. | |
115 | * config/i386/darwin.h (ENDFILE_SPEC): Use TM_DESTRUCTOR. | |
116 | ||
6a52ccb3 AP |
117 | 2013-02-11 Alexander Potapenko <glider@google.com> |
118 | Jack Howarth <howarth@bromo.med.uc.edu> | |
119 | Jakub Jelinek <jakub@redhat.com> | |
120 | ||
121 | PR sanitizer/55617 | |
122 | * config/darwin.c (cdtor_record): Rename ctor_record. | |
123 | (sort_cdtor_records): Rename sort_ctor_records. | |
124 | (finalize_dtors): New routine to sort destructors by | |
125 | priority before use in assemble_integer. | |
126 | (machopic_asm_out_destructor): Use finalize_dtors if needed. | |
127 | ||
b63fe007 UB |
128 | 2013-02-11 Uros Bizjak <ubizjak@gmail.com> |
129 | ||
130 | PR rtl-optimization/56275 | |
131 | * simplify-rtx.c (avoid_constant_pool_reference): Check that | |
132 | offset is non-negative and less than cmode size before | |
133 | calling simplify_subreg. | |
134 | ||
8e89b5b5 RB |
135 | 2013-02-11 Richard Biener <rguenther@suse.de> |
136 | ||
137 | PR tree-optimization/56264 | |
138 | * cfgloop.h (fix_loop_structure): Adjust prototype. | |
139 | * loop-init.c (fix_loop_structure): Return the number of | |
140 | newly discovered loops. | |
141 | * tree-cfgcleanup.c (repair_loop_structures): When new loops | |
142 | are discovered, do a full loop-closed SSA rewrite. | |
143 | ||
b4a4b56d RB |
144 | 2013-02-11 Richard Biener <rguenther@suse.de> |
145 | ||
146 | PR tree-optimization/56273 | |
147 | * tree-vrp.c (simplify_cond_using_ranges): Disable for the | |
148 | first VRP run. | |
149 | (check_array_ref): Fix missing newline in dumps. | |
150 | (search_for_addr_array): Likewise. | |
151 | ||
0c885229 DE |
152 | 2013-02-09 David Edelsohn <dje.gcc@gmail.com> |
153 | ||
154 | * config/rs6000/aix61.h (OS_MISSING_ALTIVEC): Undefine. | |
155 | ||
59ac9a55 JJ |
156 | 2013-02-09 Jakub Jelinek <jakub@redhat.com> |
157 | ||
158 | PR target/56256 | |
159 | * config/rs6000/rs6000.h (ASSEMBLER_DIALECT): Define. | |
160 | ||
25bb0bb5 VM |
161 | 2013-02-08 Vladimir Makarov <vmakarov@redhat.com> |
162 | ||
163 | PR rtl-optimization/56246 | |
0c885229 | 164 | * lra-constraints.c (simplify_operand_subreg): Try to reuse |
25bb0bb5 VM |
165 | reload pseudo. |
166 | * lra.c (lra): Clear lra_optional_reload_pseudos only when all | |
167 | constraints are satisfied. | |
168 | ||
a698cc03 JL |
169 | 2013-02-08 Jeff Law <law@redhat.com> |
170 | ||
171 | PR debug/53948 | |
172 | * emit-rtl.c (reg_is_parm_p): New function. | |
173 | * regs.h (reg_is_parm_p): New prototype. | |
174 | * ira-conflicts.c (ira_build_conflicts): Allow parameters in | |
175 | callee-clobbered registers. | |
176 | ||
e1122ddd MM |
177 | 2013-02-08 Michael Meissner <meissner@linux.vnet.ibm.com> |
178 | ||
179 | PR target/56043 | |
180 | * config/rs6000/rs6000.c (rs6000_builtin_vectorized_libmass): | |
181 | If there is no implicit builtin declaration, just return NULL. | |
182 | ||
19c5f6e6 UB |
183 | 2013-02-08 Uros Bizjak <ubizjak@gmail.com> |
184 | ||
185 | * config/i386/sse.md (FMAMODEM): New mode iterator. | |
186 | (fma<mode>4, fms<mode>4, fnma<mode>4, fnms<mode>4): Use FMAMODEM | |
187 | mode iterator. Do not use TARGET_SSE_MATH in insn constraint. | |
188 | ||
2480f2ca | 189 | 2013-02-08 Uros Bizjak <ubizjak@gmail.com> |
76ef61fb | 190 | |
2480f2ca UB |
191 | * config/i386/gnu-user.h (TARGET_CAN_SPLIT_STACK): Define only |
192 | when HAVE_GAS_CFI_PERSONALITY_DIRECTIVE is set. | |
193 | * config/i386/gnu-user64.h (TARGET_CAN_SPLIT_STACK): Ditto. | |
194 | ||
195 | 2013-02-08 Edgar E. Iglesias <edgar.iglesias@gmail.com> | |
196 | ||
197 | * config.gcc (microblaze*-linux*): Add TARGET_BIG_ENDIAN_DEFAULT. | |
198 | (microblaze*-*-elf): Likewise. | |
199 | * config/microblaze/linux.h: Add -mbig-endian / -mlittle-endian to | |
200 | LINK_SPEC. | |
201 | * config/microblaze/microblaze-c.c: Add builtin defines for | |
202 | _LITTLE_ENDIAN and _BIG_ENDIAN. | |
203 | * config/microblaze/microblaze.h: Add TARGET_ENDIAN_DEFAULT and | |
204 | add to TARGET_DEFAULT flags. | |
76ef61fb | 205 | Expand ASM_SPEC and LINK_SPEC. |
2480f2ca UB |
206 | Update BYTES_BIG_ENDIAN and WORDS_BIG_ENDIAN. |
207 | * config/microblaze/microblaze.md: Update extendsidi2 and | |
208 | movdi_internal instructions to use low-order / high-order reg | |
209 | print_operands. | |
210 | * config/microblaze/microblaze.opt: Add mbig-endian and mlittle-endian | |
211 | options and inversemask / mask of LITTLE_ENDIAN. | |
212 | * config/microblaze/t-microblaze: Expand multilib options to | |
213 | include mlittle-endian (le) and update exceptions patterns. | |
214 | ||
600a5961 JJ |
215 | 2013-02-08 Jakub Jelinek <jakub@redhat.com> |
216 | ||
5df81313 JJ |
217 | PR rtl-optimization/56195 |
218 | * lra-constraints.c (get_reload_reg): Don't reuse regs | |
219 | if they have smaller mode than requested, if they have | |
220 | wider mode than requested, try to return a SUBREG. | |
221 | ||
600a5961 JJ |
222 | PR tree-optimization/56250 |
223 | * fold-const.c (extract_muldiv_1) <case NEGATE_EXPR>: Don't optimize | |
224 | if type is unsigned and code isn't MULT_EXPR. | |
225 | ||
ff544649 GJL |
226 | 2013-02-08 Georg-Johann Lay <avr@gjlay.de> |
227 | ||
228 | PR tree-optimization/56064 | |
229 | * fixed-value.c (fixed_from_double_int): Sign/zero extend payload | |
230 | bits according to mode. | |
231 | * fixed-value.h (fixed_from_double_int) | |
232 | (const_fixed_from_double_int): Adjust comments. | |
233 | ||
e45cde98 RB |
234 | 2013-02-08 Richard Biener <rguenther@suse.de> |
235 | ||
236 | PR lto/56231 | |
237 | * lto-streamer.h (struct data_in): Remove current_file, current_line | |
238 | and current_col members. | |
239 | * lto-streamer-out.c (lto_output_location): Stream changed bits | |
240 | en-block for efficiency. | |
241 | * lto-streamer-in.c (clear_line_info): Remove. | |
242 | (lto_input_location): Cache current file, line and column | |
243 | globally via local statics. Read changed bits en-block. | |
244 | (input_function): Do not call clear_line_info. | |
245 | (lto_read_body): Likewise. | |
246 | (lto_input_toplevel_asms): Likewise. | |
247 | ||
c1ca73d8 MM |
248 | 2013-02-08 Michael Matz <matz@suse.de> |
249 | ||
250 | PR tree-optimization/52448 | |
251 | * tree-ssa-phiopt.c (struct name_to_bb): Add phase member. | |
252 | (nt_call_phase): New static. | |
253 | (add_or_mark_expr): Only mark accesses with newer phase than any | |
254 | call seen. | |
255 | (nonfreeing_call_p): New. | |
256 | (nt_init_block): Update nt_call_phase, mark blocks as visited. | |
257 | (nt_fini_block): Keep blocks marked as visited. | |
258 | (get_non_trapping): Initialize nt_call_phase, and reset aux pointer. | |
259 | ||
57548aa2 RB |
260 | 2013-02-08 Richard Biener <rguenther@suse.de> |
261 | ||
262 | * ira.c (ira): Free broken dominator information. | |
263 | ||
8e10366f UB |
264 | 2013-02-08 Uros Bizjak <ubizjak@gmail.com> |
265 | ||
266 | * config/i386/i386.c (ix86_spill_class): Use INTEGER_CLASS_P macro. | |
267 | ||
f64fb0fa MP |
268 | 2013-02-08 Marek Polacek <polacek@redhat.com> |
269 | ||
8e10366f | 270 | * cfgloop.c (verify_loop_structure): Add more checking of headers. |
f64fb0fa | 271 | |
0375167b RB |
272 | 2013-02-08 Richard Biener <rguenther@suse.de> |
273 | ||
274 | PR middle-end/56181 | |
275 | * cfgloop.h (flow_loops_find): Adjust. | |
276 | (bb_loop_header_p): Declare. | |
277 | * cfgloop.c (bb_loop_header_p): New function split out from ... | |
278 | (flow_loops_find): ... here. Adjust function signature, | |
279 | support incremental loop structure update. | |
280 | (verify_loop_structure): Cleanup. Verify a loop is a loop. | |
281 | * cfgloopmanip.c (fix_loop_structure): Move ... | |
282 | * loop-init.c (fix_loop_structure): ... here. | |
283 | (apply_loop_flags): Split out from ... | |
284 | (loop_optimizer_init): ... here. | |
285 | (fix_loop_structure): Use apply_loop_flags. Use flow_loops_find | |
286 | in incremental mode, only remove dead loops here. | |
287 | ||
85d768f3 GJL |
288 | 2013-02-08 Georg-Johann Lay <avr@gjlay.de> |
289 | ||
290 | PR target/54222 | |
291 | * config/avr/avr.md (unspec) <UNSPEC_ROUND>: Add. | |
292 | * config/avr/avr-fixed.md (ALL4QA, ALL124QA): New mode iterators. | |
293 | (round<mode>3, round<mode>3_const): New expanders for fixed-mode. | |
294 | (*round<mode>3.libgcc): New insns for fixed-modes. | |
295 | * config/avr/builtins.def (ABSxx): Use a non-NULL LIBNAME. | |
296 | (ROUNDxx, COUNTLSxx, BITSxx, xxBITS): New DEF_BUILTINs. | |
297 | (ROUNDFX, COUNTLSFX, ABSFX): New DEF_BUILTINs. | |
298 | * config/avr/stdfix.h (absFX, bitsFX, FXbits): Remove inline | |
299 | implementations. Define to __builtin_avr_absFX, | |
300 | __builtin_avr_bitsFX, __builtin_avr_FXbits, respectively. | |
301 | (roundFX, countlsFX): Define to __builtin_avr_roundFX, | |
302 | __builtin_avr_countlsFX, respectively. | |
303 | * config/avr/avr-c.c (target.h): Include it. | |
304 | (enum avr_builtin_id): New enum. | |
305 | (avr_resolve_overloaded_builtin): New static function. | |
306 | (avr_register_target_pragmas): Use it to set | |
307 | targetm.resolve_overloaded_builtin. | |
308 | * config/avr/avr.c (avr_init_builtins): Supply myriads of local | |
309 | tree nodes used by DEF_BUILTIN. | |
310 | (avr_expand_builtin) <AVR_BUILTIN_ROUNDxx>: Sanity-check them. | |
311 | (avr_fold_builtin) <AVR_BUILTIN_BITSxx>: Fold to VIEW_COVERT_EXPR. | |
312 | <AVR_BUILTIN_xxBITS>: Same. | |
313 | ||
661bc682 RB |
314 | 2013-02-08 Richard Biener <rguenther@suse.de> |
315 | ||
316 | * cfgloop.c (verify_loop_structure): Properly handle | |
317 | a loop exiting to another loop header. | |
318 | * ira-int.h (ira_loops): Remove. | |
319 | * ira.c (ira_loops): Remove. | |
320 | (ira): Use loop_optimizer_init and loop_optimizer_finalize. | |
321 | (do_reload): Use loop_optimizer_finalize. | |
322 | * ira-build.c (create_loop_tree_nodes): Use get_loops and | |
323 | number_of_loops to access the loop tree. | |
324 | (more_one_region_p): Likewise. | |
325 | (finish_loop_tree_nodes): Likewise. | |
326 | (rebuild_regno_allocno_maps): Likewise. | |
327 | (mark_loops_for_removal): Likewise. | |
328 | (mark_all_loops_for_removal): Likewise. | |
329 | (remove_unnecessary_regions): Likewise. | |
330 | (ira_build): Likewise. | |
331 | * ira-emit.c (setup_entered_from_non_parent_p): Likewise. | |
332 | ||
0d5049b2 RB |
333 | 2013-02-08 Richard Biener <rguenther@suse.de> |
334 | ||
335 | * Makefile.in (tree-tailcall.o): Add $(CFGLOOP_H) dependency. | |
336 | * ipa-pure-const.c (analyze_function): Avoid calling | |
337 | mark_irreducible_loops twice. | |
8e10366f | 338 | * tree-tailcall.c (tree_optimize_tail_calls_1): Mark loops for fixup. |
0d5049b2 | 339 | |
499f32e8 DM |
340 | 2013-02-07 David S. Miller <davem@davemloft.net> |
341 | ||
342 | * dwarf2out.c (based_loc_descr): Perform leaf register remapping | |
343 | on 'reg'. | |
344 | * var-tracking.c (vt_add_function_parameter): Test the presence of | |
345 | HAVE_window_save properly and do not remap argument registers when | |
346 | we have a leaf function. | |
347 | ||
6edc3e32 UB |
348 | 2013-02-07 Uros Bizjak <ubizjak@gmail.com> |
349 | ||
350 | PR bootstrap/56227 | |
351 | * ggc-page.c (ggc_print_statistics): Use HOST_LONG_LONG_FORMAT | |
352 | instead of "ll". | |
353 | * config/i386/i386.c (ix86_print_operand): Ditto. | |
354 | ||
5306401f VM |
355 | 2013-02-07 Vladimir Makarov <vmakarov@redhat.com> |
356 | ||
6edc3e32 | 357 | * lra-constraints.c (process_alt_operands): Fix recently added comment. |
5306401f | 358 | |
027ece11 VM |
359 | 2013-02-07 Vladimir Makarov <vmakarov@redhat.com> |
360 | ||
361 | PR rtl-optimization/56225 | |
362 | * lra-constraints.c (process_alt_operands): Check that reload hard | |
363 | reg can hold value for strict_low_part. | |
364 | ||
f980dfdb JJ |
365 | 2013-02-07 Jakub Jelinek <jakub@redhat.com> |
366 | ||
367 | PR debug/56154 | |
368 | * dwarf2out.c (dwarf2_debug_hooks): Set end_function hook to | |
369 | dwarf2out_end_function. | |
370 | (in_first_function_p, maybe_at_text_label_p, | |
371 | first_loclabel_num_not_at_text_label): New variables. | |
372 | (dwarf2out_var_location): In the first function find out | |
6edc3e32 | 373 | lowest loclabel_num N where .LVLN is known not to be equal to .Ltext0. |
f980dfdb JJ |
374 | (find_empty_loc_ranges_at_text_label, dwarf2out_end_function): New |
375 | functions. | |
376 | ||
73dd3123 EB |
377 | 2013-02-07 Eric Botcazou <ebotcazou@adacore.com> |
378 | ||
379 | PR rtl-optimization/56178 | |
380 | * cse.c (cse_insn): Do not create a REG_EQUAL note if the source is a | |
381 | SUBREG of a register. Tidy up related block of code. | |
382 | * fwprop.c (forward_propagate_and_simplify): Do not create a REG_EQUAL | |
383 | note if the source is a register or a SUBREG of a register. | |
384 | ||
e3936f47 JJ |
385 | 2013-02-07 Jakub Jelinek <jakub@redhat.com> |
386 | ||
387 | PR target/56228 | |
388 | * config/rs6000/rs6000.md (ptrm): New mode attr. | |
389 | (call_indirect_aix<ptrsize>, call_indirect_aix<ptrsize>_nor11, | |
390 | call_value_indirect_aix<pttrsize>, | |
391 | call_value_indirect_aix<pttrsize>_nor11): Use <ptrm> instead of | |
392 | m in constraints. | |
393 | ||
d96d674b MH |
394 | 2013-02-07 Michael Haubenwallner <michael.haubenwallner@salomon.at> |
395 | ||
396 | * collect2.c (main): Set aix64_flag for -G and -bsvr4 too, disable | |
397 | if -bnortl. Convert to strcmp and strncmp. | |
398 | ||
921f2dee AM |
399 | 2013-02-07 Alan Modra <amodra@gmail.com> |
400 | ||
401 | PR target/54009 | |
402 | * config/rs6000/rs6000.c (mem_operand_gpr): Check that LO_SUM | |
403 | addresses won't wrap when offsetting. | |
404 | (rs6000_secondary_reload): Provide secondary reloads needed for | |
405 | wrapping LO_SUM addresses. | |
406 | ||
d09c7dba TS |
407 | 2013-02-06 Thomas Schwinge <thomas@codesourcery.com> |
408 | ||
409 | * config/gnu.h (GNU_USER_TARGET_OS_CPP_BUILTINS): Never define | |
410 | MACH, just __MACH__. | |
411 | ||
a44bbd48 RB |
412 | 2013-02-06 Richard Biener <rguenther@suse.de> |
413 | ||
414 | * tracer.c (tracer): Mark loops with LOOPS_NEED_FIXUP | |
415 | instead of calling fix_loop_structure. | |
416 | ||
6d840d99 JJ |
417 | 2013-02-06 Jakub Jelinek <jakub@redhat.com> |
418 | ||
419 | PR middle-end/56217 | |
420 | * omp-low.c (use_pointer_for_field): Return false if | |
421 | lower_send_shared_vars doesn't generate any copy-out code. | |
422 | ||
0f33baa9 TV |
423 | 2013-02-06 Tom de Vries <tom@codesourcery.com> |
424 | ||
425 | PR rtl-optimization/56131 | |
426 | * cfgrtl.c (delete_insn): Use NOTE_BASIC_BLOCK instead of BLOCK_FOR_INSN | |
427 | to get the bb of a NOTE_INSN_BASIC_BLOCK. Handle the case that the bb | |
428 | of the label is NULL. Add comment. | |
429 | ||
11f1e3ab JJ |
430 | 2013-02-05 Jakub Jelinek <jakub@redhat.com> |
431 | ||
31502f9f JJ |
432 | * tree.h (struct tree_decl_with_vis): Remove thread_local field. |
433 | ||
a74db9bd JJ |
434 | PR sanitizer/55374 |
435 | * config/gnu-user.h (LIBTSAN_EARLY_SPEC): Define. | |
436 | (STATIC_LIBTSAN_LIBS): Likewise. | |
437 | * gcc.c (ADD_STATIC_LIBTSAN_LIBS, LIBTSAN_EARLY_SPEC): Define. | |
438 | (LIBTSAN_SPEC): Add ADD_STATIC_LIBTSAN_LIBS, if LIBTSAN_EARLY_SPEC | |
439 | is defined, don't add anything else beyond that. | |
440 | (SANITIZER_EARLY_SPEC, SANITIZER_SPEC): Define. | |
441 | (LINK_COMMAND_SPEC): Use them. | |
442 | ||
11f1e3ab JJ |
443 | PR tree-optimization/56205 |
444 | * tree-stdarg.c (check_all_va_list_escapes): Return true if | |
445 | there are any PHI nodes that set non-va_list_escape_vars SSA_NAME | |
446 | and some va_list_escape_vars SSA_NAME appears in some PHI argument. | |
447 | ||
14ac6aa2 RB |
448 | 2013-02-05 Richard Biener <rguenther@suse.de> |
449 | ||
450 | PR tree-optimization/53342 | |
451 | PR tree-optimization/53185 | |
452 | * tree-vectorizer.h (vect_check_strided_load): Remove. | |
453 | * tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Do | |
454 | not disallow peeling for vectorized strided loads. | |
455 | (vect_check_strided_load): Make static and simplify. | |
456 | (vect_analyze_data_refs): Adjust. | |
457 | * tree-vect-stmts.c (vectorizable_load): Handle peeled loops | |
458 | correctly when vectorizing strided loads. | |
459 | ||
6f22445a RB |
460 | 2013-02-05 Richard Biener <rguenther@suse.de> |
461 | ||
462 | * doc/install.texi: Refer to ISL, not PPL. | |
463 | ||
39f9719e JH |
464 | 2013-02-05 Jan Hubicka <jh@suse.cz> |
465 | ||
ec4224ac JH |
466 | PR tree-optimization/55789 |
467 | * params.def (PARAM_EARLY_INLINER_MAX_ITERATIONS): Drop to 1. | |
468 | ||
469 | 2013-02-05 Jan Hubicka <jh@suse.cz> | |
470 | ||
471 | PR tree-optimization/55789 | |
39f9719e JH |
472 | * cgraphclones.c (cgraph_remove_node_and_inline_clones): Remove |
473 | the dead call anyway. | |
474 | ||
956d3b33 EB |
475 | 2013-02-05 Eric Botcazou <ebotcazou@adacore.com> |
476 | ||
477 | PR sanitizer/55374 | |
478 | * config/gnu-user.h (LIBASAN_EARLY_SPEC): Add missing guard. | |
479 | ||
480 | 2013-02-04 Alexander Potapenko <glider@google.com> | |
481 | Jack Howarth <howarth@bromo.med.uc.edu> | |
ae526fe5 AP |
482 | Jakub Jelinek <jakub@redhat.com> |
483 | ||
484 | PR sanitizer/55617 | |
485 | * config/darwin.c (sort_ctor_records): Stabilized qsort | |
486 | on constructor priority by using original position. | |
487 | (finalize_ctors): New routine to sort constructors by | |
488 | priority before use in assemble_integer. | |
489 | (machopic_asm_out_constructor): Use finalize_ctors if needed. | |
490 | ||
7ac3af38 JJ |
491 | 2013-02-04 Jakub Jelinek <jakub@redhat.com> |
492 | ||
493 | PR libstdc++/54314 | |
494 | * config/i386/winnt.c (i386_pe_assemble_visibility): Don't warn | |
495 | about visibility on artificial decls. | |
496 | * config/sol2.c (solaris_assemble_visibility): Likewise. | |
497 | ||
152689dc KT |
498 | 2013-02-04 Kai Tietz <ktietz@redhat.com> |
499 | ||
500 | PR target/56186 | |
501 | * config/i386/i386.c (function_value_ms_64): Add additional valtype | |
502 | argument and improve checking of return-argument types for 16-byte | |
503 | modes. | |
504 | (ix86_function_value_1): Add additional valtype argument on call | |
505 | of function_value_64. | |
506 | (return_in_memory_ms_64): Sync 16-byte sized mode handling with | |
507 | handling infunction_value_64 function. | |
508 | ||
2b5987b5 MGD |
509 | 2013-02-04 Matthew Gretton-Dann <matthew.gretton-dann@linaro.org> |
510 | ||
7ac3af38 | 511 | * reload.c (subst_reloads): Fix DEBUG_RELOAD build issue. |
2b5987b5 | 512 | |
14597080 RB |
513 | 2013-02-04 Richard Biener <rguenther@suse.de> |
514 | ||
515 | PR tree-optimization/56188 | |
516 | * tree-ssa-structalias.c (label_visit): Consider case with | |
517 | initially non-empty points-to set. | |
518 | (perform_var_substitution): Dump node mapping and clean up. | |
519 | ||
ed73881e RG |
520 | 2013-02-04 Richard Guenther <rguenther@suse.de> |
521 | ||
522 | PR lto/56168 | |
523 | * lto-symtab.c (lto_symtab_merge_decls_1): Make non-builtin | |
524 | node prevail as last resort. | |
525 | (lto_symtab_merge_decls): Remove guard on LTRANS here. | |
6edc3e32 | 526 | (lto_symtab_prevailing_decl): Builtins are their own prevailing decl. |
ed73881e | 527 | |
139a0707 RB |
528 | 2013-02-04 Richard Biener <rguenther@suse.de> |
529 | ||
530 | PR tree-optimization/56113 | |
531 | * tree-ssa-structalias.c (equiv_class_lookup, equiv_class_add): | |
532 | Merge into ... | |
533 | (equiv_class_lookup_or_add): ... this. | |
534 | (label_visit): Adjust and fix error in previous patch. | |
535 | (perform_var_substitution): Adjust. | |
536 | ||
50fe8924 OE |
537 | 2013-02-03 Oleg Endo <olegendo@gcc.gnu.org> |
538 | ||
539 | * config/sh/divtab.c: Fix formatting and comments throughout the file. | |
540 | * config/sh/sh4-300.md: Likewise. | |
541 | * config/sh/sh4a.md: Likewise. | |
542 | * config/sh/constraints.md: Likewise. | |
543 | * config/sh/sh.md: Likewise. | |
544 | * config/sh/netbsd-elf.h: Likewise. | |
545 | * config/sh/predicates.md: Likewise. | |
546 | * config/sh/sh-protos.h: Likewise. | |
547 | * config/sh/ushmedia.h: Likewise. | |
548 | * config/sh/linux.h: Likewise. | |
549 | * config/sh/sh.c: Likewise. | |
550 | * config/sh/superh.h: Likewise. | |
551 | * config/sh/elf.h: Likewise. | |
552 | * config/sh/sh4.md: Likewise. | |
553 | * config/sh/sh.h: Likewise. | |
554 | ||
1a04ac2b JDA |
555 | 2013-02-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
556 | ||
557 | * config/pa/constraints.md: Adjust unused letters. Change "T" | |
558 | constraint to match_test floating_point_store_memory_operand(). | |
559 | * config/pa/predicates.md (reg_plus_base_memory_operand): New. | |
560 | (base14_operand): New. | |
561 | (floating_point_store_memory_operand): New. | |
562 | (integer_store_memory_operand): Revise to use base14_operand and | |
563 | reg_plus_base_memory_operand. | |
564 | (move_dest_operand): Allow symbolic_memory_operands. | |
565 | (symbolic_memory_operand): Check for LO_SOM. | |
566 | (symbolic_operand): Change default case to break. | |
567 | * config/pa/pa.md: Remove unamed DFmode and SFmode patterns to force | |
568 | CONST_DOUBLE values to be reloaded by putting them into memory when | |
569 | the destination is a floating point register. | |
570 | (movdf): Remove code to handle CONST_DOUBLE. | |
571 | (movsf): Likewise. | |
572 | (reload_indf_r1): New. | |
573 | (reload_insf_r1): New. | |
574 | Consistently use "Q" and "T" constraints with integer and floating | |
575 | point move instructions, respectively. | |
576 | (movdi): Remove FAIL. | |
577 | Change predicate for source operand unamed DImode move from | |
578 | general_operand to move_src_operand. | |
579 | (umulsidi3): Change predicate for destination operand to | |
580 | register_operand. | |
581 | Likewise for similar unamed patterns. | |
582 | * config/pa/pa-protos.h (pa_legitimize_reload_address): Declare. | |
583 | * config/pa/pa.c (pa_symbolic_expression_p): Remove extra parenthesis. | |
584 | (hppa_legitimize_address): Simplify mask calculation. | |
585 | (pa_emit_move_sequence): Revised handling of secondary reloads from | |
586 | REG+D addresses for floating point loads and stores. Directly handle | |
587 | loading CONST0_RTX (mode) to a floating point register. | |
588 | (pa_secondary_reload): Handle reloading DF and SFmode constant values | |
589 | to floating point registers. Don't restrict secondary reloads to | |
590 | floating point registers to integer modes. Revise some comments and | |
591 | cleanup some code. | |
592 | (TARGET_LEGITIMATE_ADDRESS_P): Define. | |
593 | (pa_legitimate_address_p): New. | |
594 | (pa_legitimize_reload_address): New. | |
595 | * config/pa/pa.h (STRICT_REG_OK_FOR_INDEX_P): New. | |
596 | (STRICT_REG_OK_FOR_BASE_P): New. | |
597 | (GO_IF_LEGITIMATE_ADDRESS): Delete. Update some related comments. | |
598 | (LEGITIMIZE_RELOAD_ADDRESS): Revise to use pa_legitimize_reload_address. | |
599 | ||
3bf65591 DE |
600 | 2013-02-03 David Edelsohn <dje.gcc@gmail.com> |
601 | Andrew Dixie <andrewd@gentrack.com> | |
602 | ||
603 | * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY | |
604 | flag set. | |
605 | ||
c0a8a3e6 RS |
606 | 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com> |
607 | ||
608 | * expmed.c (extract_bit_field_1): Pass the full width of the | |
609 | structure to get_best_reg_extraction_insn. | |
610 | ||
99113dff DE |
611 | 2013-02-01 David Edelsohn <dje.gcc@gmail.com> |
612 | ||
613 | PR target/54601 | |
614 | * configure.ac (use_cxa_atexit): Add AIX. | |
615 | * configure: Regenerate. | |
616 | ||
617 | * config/rs6000/aix61.h (STARTFILE_SPEC): Add crtcxa.o. | |
618 | ||
ddd84654 JJ |
619 | 2013-02-01 Jakub Jelinek <jakub@redhat.com> |
620 | ||
621 | PR debug/54793 | |
622 | * final.c (need_profile_function): New variable. | |
623 | (final_start_function): Drop ATTRIBUTE_UNUSED from first argument. | |
624 | If first of NOTE_INSN_BASIC_BLOCK or NOTE_INSN_FUNCTION_BEG | |
625 | is only preceeded by NOTE_INSN_VAR_LOCATION or NOTE_INSN_DELETED | |
626 | notes, targetm.asm_out.function_prologue doesn't emit anything, | |
627 | HAVE_prologue and profiler should be emitted before prologue, | |
628 | set need_profile_function instead of emitting it. | |
629 | (final_scan_insn): If need_profile_function, emit | |
630 | profile_function on the first NOTE_INSN_BASIC_BLOCK or | |
631 | NOTE_INSN_FUNCTION_BEG note. | |
632 | ||
633 | 2013-02-01 Richard Henderson <rth@redhat.com> | |
749af8ee RH |
634 | |
635 | * config/rs6000/rs6000.md (smulditi3): New. | |
636 | (umulditi3): New. | |
637 | ||
ff2a9d88 RH |
638 | * config/alpha/alpha.md (umulditi3): New. |
639 | ||
14d52b90 DE |
640 | 2013-02-01 David Edelsohn <dje.gcc@gmail.com> |
641 | ||
642 | * config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_COMMON): Use floor_log2. | |
643 | (ASM_OUTPUT_ALIGNED_LOCAL): New. | |
644 | ||
8c7ca45c RB |
645 | 2013-02-01 Richard Biener <rguenther@suse.de> |
646 | ||
647 | PR tree-optimization/56113 | |
648 | * tree-ssa-structalias.c (label_visit): Reduce work for | |
649 | single-predecessor nodes. | |
650 | ||
9f419393 EB |
651 | 2013-02-01 Eric Botcazou <ebotcazou@adacore.com> |
652 | ||
653 | * fold-const.c (make_range_step) <TRUTH_NOT_EXPR>: Bail out if the | |
654 | range isn't testing for zero. | |
655 | ||
c5f4be84 SB |
656 | 2013-01-31 Steven Bosscher <steven@gcc.gnu.org> |
657 | ||
658 | PR middle-end/56113 | |
659 | * fwprop.c (fwprop_init): Set up loops without CFG modifications. | |
660 | ||
dbdbd982 NC |
661 | 2013-01-31 Hiroyuki Ono <hiroyuki.ono.jc@renesas.com> |
662 | Nick Clifton <nickc@redhat.com> | |
663 | ||
664 | * config/v850/constraints.md (Q): Define as a memory constraint. | |
665 | * config/v850/predicates.md (label_ref_operand): New predicate. | |
666 | (e3v5_shift_operand): New predicate. | |
667 | (ior_operator): New predicate. | |
668 | * config/v850/t-v850: Add e3v5 multilib. | |
669 | * config/v850/v850-protos.h (v850_adjust_insn_length): Prototype. | |
670 | (v850_gen_movdi): Prototype. | |
671 | * config/v850/v850.c: Add support for e3v5 architecture. | |
672 | Rename all uses of TARGET_V850E || TARGET_V850E2_ALL to | |
673 | TARGET_V850E_UP. | |
674 | (construct_save_jarl): Add e3v5 long JARL support. | |
675 | (v850_adjust_insn_length): New function. Adjust length of call | |
676 | insns when using e3v5 instructions. | |
677 | (v850_gen_movdi): New function: Generate instructions to move a | |
678 | DImode value. | |
679 | * config/v850/v850.h (TARGET_CPU_v850e3v5): Define. | |
680 | (CPP_SPEC): Define __v850e3v5__ as appropriate. | |
681 | (TARGET_USE_FPU): Enable for e3v5. | |
682 | (CONST_OK_FOR_W): New macro. | |
683 | (ADJUST_INSN_LENGTH): Define. | |
684 | * config/v850/v850.md (UNSPEC_LOOP): Define. | |
685 | (attr cpu): Add v850e3v5. | |
686 | Rename all uses of TARGET_V850E2 to TARGET_V850E2V3_UP. | |
687 | (movdi): New pattern. | |
688 | (movdi_internal): New pattern. | |
689 | (cbranchsf4): Conditionalize on TARGET_USE_FPU. | |
690 | (cbranchdf4): Conditionalize on TARGET_USE_FPU. | |
691 | (cstoresf4): Likewise. | |
692 | (cstoredf4): Likewise. | |
693 | (insv): New pattern. | |
694 | (rotlso3_a): New pattern. | |
695 | (rotlsi3_b): New pattern | |
696 | (rotlsi3_v850e3v5): New pattern. | |
697 | (doloop_begin): New pattern. | |
698 | (fix_loop_counter): New pattern. | |
699 | (doloop_end): New pattern. | |
700 | (branch_normal): Add e3v5 long branch support. | |
701 | (branch_invert): Likewise. | |
702 | (branch_z_normal): Likewise. | |
703 | (branch_z_invert): Likewise. | |
704 | (branch_nz_normal): Likewise. | |
705 | (branch_nz_invert): Likewise. | |
706 | (call_internal_short): Add e3v5 register-indirect JARL support. | |
707 | (call_internal_long): Likewise. | |
708 | (call_value_internal_short): Likewise. | |
709 | (call_value_internal_long): Likewise. | |
710 | * config/v850/v850.opt (mv850e3v5, mv850e2v4): New options. | |
711 | (mloop): New option. | |
712 | * config.gcc: Add support for configuring v840e3v5 target. | |
6edc3e32 | 713 | * doc/invoke.texi: Document new v850 specific command line options. |
dbdbd982 | 714 | |
73861a41 PK |
715 | 2013-01-31 Paul Koning <ni1d@arrl.net> |
716 | ||
717 | PR debug/55059 | |
718 | PR debug/54508 | |
719 | * dwarf2out.c (prune_unused_types_mark): Mark all of parent's | |
720 | children if parent is a class. | |
721 | (prune_unused_types_prune): Don't add DW_AT_declaration. | |
722 | ||
e44978dc RB |
723 | 2013-01-31 Richard Biener <rguenther@suse.de> |
724 | ||
725 | PR tree-optimization/56157 | |
726 | * tree-vect-slp.c (vect_get_slp_defs): More thoroughly try to | |
727 | match up operand with SLP child. | |
728 | ||
90b10dec JM |
729 | 2013-01-31 Jason Merrill <jason@redhat.com> |
730 | ||
04d2dadd | 731 | PR debug/54410 |
90b10dec JM |
732 | * dwarf2out.c (gen_struct_or_union_type_die): Always schedule template |
733 | parameters the first time. | |
734 | (gen_scheduled_generic_parms_dies): Check completeness here. | |
735 | ||
6e616110 RB |
736 | 2013-01-31 Richard Biener <rguenther@suse.de> |
737 | ||
738 | PR middle-end/53073 | |
739 | * common.opt (faggressive-loop-optimizations): New flag, | |
740 | enabled by default. | |
741 | * doc/invoke.texi (faggressive-loop-optimizations): Document. | |
742 | * tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop): Guard | |
743 | infer_loop_bounds_from_undefined by it. | |
744 | ||
636f59cf RB |
745 | 2013-01-31 Richard Biener <rguenther@suse.de> |
746 | ||
747 | PR tree-optimization/56150 | |
748 | * tree-ssa-loop-manip.c (find_uses_to_rename_stmt): Do not | |
749 | visit virtual operands. | |
750 | (find_uses_to_rename_bb): Likewise. | |
751 | ||
752 | 2013-01-31 Richard Biener <rguenther@suse.de> | |
fcfa87ac RB |
753 | |
754 | PR tree-optimization/56150 | |
755 | * tree-ssa-tail-merge.c (gimple_equal_p): Properly handle | |
756 | mixed store non-store stmts. | |
757 | ||
32887460 JJ |
758 | 2013-01-30 Jakub Jelinek <jakub@redhat.com> |
759 | ||
e60e09a0 JJ |
760 | PR sanitizer/55374 |
761 | * gcc.c (LIBASAN_SPEC): Define just to ADD_STATIC_LIBASAN_LIBS if | |
762 | LIBASAN_EARLY_SPEC is defined. | |
763 | (LIBASAN_EARLY_SPEC): Define to empty string if not already defined. | |
764 | (LINK_COMMAND_SPEC): Add LIBASAN_EARLY_SPEC for -fsanitize=address, | |
765 | before %o. | |
766 | * config/gnu-user.h (LIBASAN_EARLY_SPEC): Define. | |
767 | ||
32887460 JJ |
768 | PR c++/55742 |
769 | * config/i386/i386.c (ix86_valid_target_attribute_inner_p): Diagnose | |
770 | invalid args instead of ICEing on it. | |
771 | (ix86_valid_target_attribute_tree): Return error_mark_node if | |
772 | ix86_valid_target_attribute_inner_p failed. | |
773 | (ix86_valid_target_attribute_p): Return false only if | |
774 | ix86_valid_target_attribute_tree returned error_mark_node. Allow | |
775 | target("default") attribute. | |
776 | (sorted_attr_string): Change argument from const char * to tree, | |
777 | merge in all target attribute arguments rather than just one. | |
778 | Formatting fix. Use XNEWVEC instead of xmalloc and XDELETEVEC | |
779 | instead of free. Avoid using strcat. | |
780 | (ix86_mangle_function_version_assembler_name): Mangle | |
781 | target("default") as if no target attribute is present. Adjust | |
782 | sorted_attr_string caller. Avoid leaking memory. Use XNEWVEC | |
783 | instead of xmalloc and XDELETEVEC instead of free. | |
784 | (ix86_function_versions): Don't return true if one of the decls | |
785 | doesn't have target attribute. If they don't and one of the decls | |
786 | is DECL_FUNCTION_VERSIONED, report an error. Adjust | |
787 | sorted_attr_string caller. Use XDELETEVEC instead of free. | |
788 | (ix86_supports_function_versions): Remove. | |
789 | (make_name): Fix up formatting. | |
790 | (make_dispatcher_decl): Remove resolver_name and its initialization. | |
791 | Avoid leaking memory. | |
792 | (is_function_default_version): Return true if there is | |
793 | target("default") attribute rather than no target attribute at all. | |
794 | (make_resolver_func): Avoid leaking memory. | |
795 | (ix86_generate_version_dispatcher_body): Likewise. | |
796 | (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Remove. | |
797 | * target.def (supports_function_versions): Remove. | |
798 | * doc/tm.texi.in (SUPPORTS_FUNCTION_VERSIONS): Remove. | |
799 | * doc/tm.texi: Regenerated. | |
800 | ||
73cca0cc VM |
801 | 2013-01-30 Vladimir Makarov <vmakarov@redhat.com> |
802 | ||
803 | PR rtl-optimization/56144 | |
804 | * lra-constraints.c (get_reload_reg): Don't reuse reload pseudo | |
805 | for values with side effects. | |
806 | ||
11452e7b RB |
807 | 2013-01-30 Richard Biener <rguenther@suse.de> |
808 | ||
809 | * sparseset.h (sparseset_bit_p): Use gcc_checking_assert. | |
810 | (sparseset_pop): Likewise. | |
811 | * cfganal.c (compute_idf): Likewise. Increase work-stack size | |
812 | to be able to use quick_push in the worker loop. | |
813 | ||
01cb1ef5 MP |
814 | 2013-01-30 Marek Polacek <polacek@redhat.com> |
815 | ||
816 | * cfgcleanup.c (cleanup_cfg): Don't mark affected BBs. | |
817 | ||
e892936e RB |
818 | 2013-01-30 Richard Biener <rguenther@suse.de> |
819 | ||
820 | PR lto/56147 | |
6edc3e32 | 821 | * lto-symtab.c (lto_symtab_merge_decls_1): Guard DECL_BUILT_IN check. |
e892936e | 822 | |
cc06c01d GJL |
823 | 2013-01-30 Georg-Johann Lay <avr@gjlay.de> |
824 | ||
825 | PR tree-optimization/56064 | |
826 | * fixed-value.c (fixed_from_double_int): New function. | |
827 | * fixed-value.h (fixed_from_double_int): New prototype. | |
828 | (const_fixed_from_double_int): New static inline function. | |
829 | * fold-const.c (native_interpret_fixed): New static function. | |
830 | (native_interpret_expr) <FIXED_POINT_TYPE>: Use it. | |
831 | (can_native_interpret_type_p) <FIXED_POINT_TYPE>: Return true. | |
832 | (native_encode_fixed): New static function. | |
833 | (native_encode_expr) <FIXED_CST>: Use it. | |
834 | (native_interpret_int): Move double_int worker code to... | |
835 | * double-int.c (double_int::from_buffer): ...this new static method. | |
836 | * double-int.h (double_int::from_buffer): Prototype it. | |
837 | ||
d394a308 RB |
838 | 2013-01-30 Richard Biener <rguenther@suse.de> |
839 | ||
840 | * tree-ssa-structalias.c (final_solutions, final_solutions_obstack): | |
841 | New pointer-map and obstack. | |
842 | (init_alias_vars): Allocate pointer-map and obstack. | |
843 | (delete_points_to_sets): Free them. | |
844 | (find_what_var_points_to): Cache result. | |
845 | (find_what_p_points_to): Adjust for changed interface of | |
846 | find_what_var_points_to. | |
847 | (compute_points_to_sets): Likewise. | |
848 | (ipa_pta_execute): Likewise. | |
849 | ||
20804d96 RO |
850 | 2013-01-30 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> |
851 | ||
852 | * configure.ac (HAVE_AS_SPARC_NOBITS): New test. | |
853 | * configure: Regenerate. | |
854 | * config.in: Regenerate. | |
855 | * config/sparc/sparc.c (sparc_solaris_elf_asm_named_section): Emit | |
856 | #nobits/#progbits if supported. | |
857 | ||
a7ad88a2 OE |
858 | 2013-01-29 Oleg Endo <olegendo@gcc.gnu.org> |
859 | ||
860 | PR target/56121 | |
861 | * config/sh/sh.md (bclr_m2a, bset_m2a, bst_m2a, bld_m2a, bldsign_m2a, | |
862 | bld_reg, *bld_regqi, band_m2a, bandreg_m2a, bor_m2a, borreg_m2a, | |
863 | bxor_m2a, bxorreg_m2a): Add satisfies_constraint_K03 condition. | |
864 | ||
7af79f92 GY |
865 | 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
866 | ||
91bfca59 OE |
867 | * config/arm/cortex-a7.md (cortex_a7_neon, cortex_a7_all): Remove. |
868 | (cortex_a7_idiv): Use cortex_a7_both instead of cortex_a7_all. | |
7af79f92 | 869 | |
753bcf7b GY |
870 | 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
871 | ||
91bfca59 OE |
872 | * config/arm/arm.c (cortexa7_younger): Return true for TYPE_CALL. |
873 | * config/arm/cortex-a7.md (cortex_a7_call): Update required units. | |
753bcf7b | 874 | |
8cbc2ea8 GY |
875 | 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
876 | ||
91bfca59 OE |
877 | * config/arm/arm-protos.h (arm_mac_accumulator_is_result): New |
878 | declaration. | |
879 | * config/arm/arm.c (arm_mac_accumulator_is_result): New function. | |
880 | * config/arm/cortex-a7.md: New bypasses using | |
881 | arm_mac_accumulator_is_result. | |
8cbc2ea8 | 882 | |
697a3325 GY |
883 | 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
884 | ||
91bfca59 | 885 | * config/arm/cortex-a7.md (cortex_a7_neon_mul): New reservation. |
697a3325 | 886 | (cortex_a7_neon_mla): Likewise. |
91bfca59 OE |
887 | (cortex_a7_fpfmad): New reservation. |
888 | (cortex_a7_fpmacs): Use ffmas and update required units. | |
889 | (cortex_a7_fpmuld): Update required units and latency. | |
890 | (cortex_a7_fpmacd): Likewise. | |
891 | (cortex_a7_fdivs, cortex_a7_fdivd): Likewise. | |
892 | (cortex_a7_neon). Likewise. | |
893 | (bypass) Update participating units. | |
697a3325 | 894 | |
29637783 GY |
895 | 2013-01-29 Greta Yorsh <Greta.Yorsh@arm.com> |
896 | ||
91bfca59 OE |
897 | * config/arm/arm.md (type): Add ffmas and ffmad to "type" attribute. |
898 | * config/arm/vfp.md (fma,fmsub,fnmsub,fnmadd): Change type | |
899 | from fmac to ffma. | |
900 | * config/arm/vfp11.md (vfp_farith): Use ffmas. | |
901 | (vfp_fmul): Use ffmad. | |
902 | * config/arm/cortex-r4f.md (cortex_r4_fmacs): Use ffmas. | |
903 | (cortex_r4_fmacd): Use ffmad. | |
904 | * config/arm/cortex-m4-fpu.md (cortex_m4_fmacs): Use ffmas. | |
905 | * config/arm/cortex-a9.md (cortex_a9_fmacs): Use ffmas. | |
906 | (cortex_a9_fmacd): Use ffmad. | |
907 | * config/arm/cortex-a8-neon.md (cortex_a8_vfp_macs): Use ffmas. | |
908 | (cortex_a8_vfp_macd): Use ffmad. | |
909 | * config/arm/cortex-a5.md (cortex_a5_fpmacs): Use ffmas. | |
910 | (cortex_a5_fpmacd): Use ffmad. | |
911 | * config/arm/cortex-a15-neon.md (cortex_a15_vfp_macs) Use ffmas. | |
912 | (cortex_a15_vfp_macd): Use ffmad. | |
913 | * config/arm/arm1020e.md (v10_fmul): Use ffmas and ffmad. | |
29637783 | 914 | |
2ee8a2d5 JM |
915 | 2013-01-29 Jason Merrill <jason@redhat.com> |
916 | ||
917 | PR libstdc++/54314 | |
918 | * varasm.c (default_assemble_visibility): Don't warn about | |
919 | visibility on artificial decls. | |
920 | ||
78d087bc RB |
921 | 2013-01-29 Richard Biener <rguenther@suse.de> |
922 | ||
923 | PR tree-optimization/56113 | |
924 | * tree-ssa-structalias.c (equiv_class_lookup): Also return | |
925 | the bitmap leader. | |
926 | (label_visit): Free duplicate bitmaps and record the leader instead. | |
927 | (perform_var_substitution): Adjust. | |
928 | ||
83ba4d6f RB |
929 | 2013-01-29 Richard Biener <rguenther@suse.de> |
930 | ||
931 | PR tree-optimization/55270 | |
932 | * tree-ssa-dom.c (eliminate_degenerate_phis): If we changed | |
933 | the CFG, schedule loops for fixup. | |
934 | ||
66dfe13f NC |
935 | 2013-01-29 Nick Clifton <nickc@redhat.com> |
936 | ||
937 | * config/rl78/rl78.c (rl78_regno_mode_code_ok_for_base_p): Allow | |
938 | SP_REG. | |
939 | ||
5a579c3b LE |
940 | 2013-01-28 Leif Ekblad <leif@rdos.net> |
941 | ||
942 | * config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets. | |
943 | * config/i386/i386.h (TARGET_RDOS): New macro. | |
944 | (DEFAULT_LARGE_SECTION_THRESHOLD): New macro. | |
945 | * config/i386/i386.c (ix86_option_override_internal): For 64bit | |
946 | TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1. | |
947 | * config/i386/i386.opt (mlarge-data-threshold): Initialize to | |
948 | DEFAULT_LARGE_SECTION_THRESHOLD. | |
949 | * config/i386/i386.md (R14_REG, R15_REG): New constants. | |
950 | * config/i386/rdos.h: New file. | |
951 | * config/i386/rdos64.h: New file. | |
952 | ||
51e44392 BS |
953 | 2013-01-28 Bernd Schmidt <bernds@codesourcery.com> |
954 | ||
955 | PR other/54814 | |
956 | * reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of | |
957 | TEST_HARD_REG_BIT. | |
958 | ||
db1fb332 JJ |
959 | 2013-01-28 Jakub Jelinek <jakub@redhat.com> |
960 | ||
961 | PR rtl-optimization/56117 | |
962 | * sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib | |
963 | call cselib_lookup_from_insn on the MEM before calling | |
964 | add_insn_mem_dependence. | |
965 | ||
16917761 RB |
966 | 2013-01-28 Richard Biener <rguenther@suse.de> |
967 | ||
968 | * tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK | |
969 | to a stmt that didn't have one. | |
970 | (copy_phis_for_bb): Likewise for PHI arguments. | |
971 | (copy_debug_stmt): Likewise for debug stmts. | |
972 | ||
b9fc0497 RB |
973 | 2013-01-28 Richard Biener <rguenther@suse.de> |
974 | ||
975 | PR tree-optimization/56034 | |
6edc3e32 | 976 | * tree-loop-distribution.c (enum partition_kind): Add PKIND_REDUCTION. |
b9fc0497 RB |
977 | (partition_builtin_p): Adjust. |
978 | (generate_code_for_partition): Handle PKIND_REDUCTION. Assert | |
979 | it is the last partition. | |
980 | (rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking | |
981 | up the vertex for the definition. | |
982 | (classify_partition): Classify whether a partition is a | |
983 | PKIND_REDUCTION, thus has uses outside of the loop. | |
984 | (ldist_gen): Inherit PKIND_REDUCTION when merging partitions. | |
985 | Merge all PKIND_REDUCTION partitions into the last partition. | |
986 | (tree_loop_distribution): Seed partitions from reductions as well. | |
987 | ||
aa710d25 JJ |
988 | 2013-01-28 Jakub Jelinek <jakub@redhat.com> |
989 | ||
0bfbca58 JJ |
990 | PR tree-optimization/56125 |
991 | * tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize | |
992 | pow(x,c) into sqrt(x) * powi(x, n/2) or | |
993 | 1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when | |
994 | optimizing for size. | |
995 | Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or | |
996 | 1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an | |
997 | integer. | |
998 | ||
aa710d25 JJ |
999 | PR tree-optimization/56094 |
1000 | * gimplify.c (force_gimple_operand_1): Temporarily set input_location | |
1001 | to UNKNOWN_LOCATION while gimplifying expr. | |
1002 | ||
77dc5297 UB |
1003 | 2013-01-27 Uros Bizjak <ubizjak@gmail.com> |
1004 | ||
1005 | PR target/56114 | |
1006 | * config/i386/i386.md (*movabs<mode>_1): Add square brackets around | |
1007 | operand 0 in movabs insn template for -masm=intel asm alternative. | |
1008 | (*movabs<mode>_2): Ditto for operand 1. | |
1009 | ||
0bfbca58 | 1010 | 2013-01-26 David Holsgrove <david.holsgrove@xilinx.com> |
fbf0cf90 DH |
1011 | |
1012 | PR target/54663 | |
1013 | * config.gcc (microblaze*-linux*): Add tmake_file to allow building | |
1014 | of microblaze-c.o | |
1015 | ||
0bfbca58 | 1016 | 2013-01-26 Edgar E. Iglesias <edgar.iglesias@gmail.com> |
6f14eef2 EI |
1017 | |
1018 | * config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update | |
1019 | tm_file. | |
1020 | ||
0bfbca58 | 1021 | 2013-01-25 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> |
706b2314 N |
1022 | |
1023 | * config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS): | |
1024 | Undef to avoid warning. | |
1025 | ||
478f60f9 MH |
1026 | 2013-01-25 Michael Haubenwallner <michael.haubenwallner@salomon.at> |
1027 | ||
1028 | * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld. | |
1029 | * configure: Regenerate. | |
1030 | ||
d7fa6ee2 JJ |
1031 | 2013-01-25 Jakub Jelinek <jakub@redhat.com> |
1032 | ||
1033 | PR tree-optimization/56098 | |
1034 | * tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr | |
1035 | for stmts with volatile ops. | |
1036 | (cond_store_replacement): Don't optimize if assign has volatile ops. | |
1037 | (cond_if_else_store_replacement_1): Don't optimize if either | |
1038 | then_assign or else_assign have volatile ops. | |
1039 | (hoist_adjacent_loads): Don't optimize if either def1 or def2 have | |
1040 | volatile ops. | |
1041 | ||
f8fe87bd GJL |
1042 | 2013-01-25 Georg-Johann Lay <avr@gjlay.de> |
1043 | ||
1044 | * doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__. | |
1045 | ||
28398d0d GJL |
1046 | 2013-01-25 Georg-Johann Lay <avr@gjlay.de> |
1047 | ||
1048 | * doc/extend.texi (Example of asm with clobbered asm reg): Fix | |
1049 | missing ':' in asm example. | |
1050 | ||
b7d7d917 TB |
1051 | 2013-01-25 Tejas Belagod <tejas.belagod@arm.com> |
1052 | ||
1053 | * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane | |
1054 | entries into lane and laneq entries. | |
77dc5297 UB |
1055 | * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>): |
1056 | Remove AdvSIMD scalar modes. | |
b7d7d917 TB |
1057 | (aarch64_sq<r>dmulh_laneq<mode>): New. |
1058 | (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD | |
1059 | modes. | |
1060 | * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics' | |
1061 | builtin implementations to relfect changes in RTL in aarch64-simd.md. | |
1062 | * config/aarch64/iterators.md (VCOND): New. | |
1063 | (VCONQ): New. | |
1064 | ||
556f9906 GJL |
1065 | 2013-01-25 Georg-Johann Lay <avr@gjlay.de> |
1066 | ||
1067 | PR target/54222 | |
1068 | * config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument. | |
1069 | Add NULL LIBNAME argument to existing definitions. | |
1070 | (ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New. | |
1071 | * config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument. | |
1072 | * config/avr/avr.c (DEF_BUILTIN): Same. | |
1073 | (avr_init_builtins): Pass down LIBNAME to add_builtin_function. | |
1074 | (avr_expand_builtin): Expand to a vanilla call if a libgcc | |
1075 | implementation is available (DECL_ASSEMBLER_NAME is set). | |
1076 | (avr_fold_absfx): New static function. | |
1077 | (avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR, | |
1078 | AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR, | |
1079 | AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK, | |
1080 | AVR_BUILTIN_ABSLLK. | |
1081 | * config/avr/stdfix.h (abshr, absr, abslr, absllr) | |
1082 | (abshk, absk, abslk, absllk): Provide as static inline functions. | |
1083 | ||
1f546bbb MP |
1084 | 2013-01-25 Marek Polacek <polacek@redhat.com> |
1085 | ||
1086 | PR tree-optimization/56035 | |
1087 | * cfgloopmanip.c (fix_loop_structure): Remove redundant condition. | |
1088 | ||
7e184bd7 UB |
1089 | 2012-01-24 Uros Bizjak <ubizjak@gmail.com> |
1090 | ||
1091 | * config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative. | |
1092 | (*movtf_internal_rex64): Add (!o,C) alternative | |
1093 | (*movxf_internal_rex64): Ditto. | |
1094 | (*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives. | |
1095 | ||
f5ba49ac SM |
1096 | 2013-01-24 Shenghou Ma <minux.ma@gmail.com> |
1097 | ||
1098 | * doc/invoke.texi: fix typo. | |
1099 | * doc/objc.texi: fix typo. | |
1100 | ||
a6343728 RS |
1101 | 2013-01-24 Richard Sandiford <rdsandiford@googlemail.com> |
1102 | ||
1103 | * config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint | |
1104 | for the first two alternatives. | |
1105 | ||
cd030c07 DN |
1106 | 2013-01-24 Diego Novillo <dnovillo@google.com> |
1107 | ||
77dc5297 | 1108 | * Makefile.in (GGC): Remove. Replace all instances with ggc-page.o. |
cd030c07 DN |
1109 | (ggc-zone.o): Remove. |
1110 | * configure.ac: Remove option --with-gc. | |
1111 | * configure: Re-generate. | |
1112 | * doc/install.texi: Remove documentation for --with-gc. | |
1113 | * gengtype.c (write_enum_defn): Remove. Update all users. | |
1114 | (write_Types_process_field): Remove generation of gt_e_* argument. | |
1115 | (output_type_enum): Remove. Update all users. | |
1116 | (write_enum_defn): Remove. Update all users. | |
1117 | (enum alloc_zone): Remove. Update all users. | |
77dc5297 | 1118 | (write_splay_tree_allocator_def): Remove generation of gt_e_* argument. |
cd030c07 DN |
1119 | * ggc-common.c (ggc_splay_alloc): Remove first argument. |
1120 | Update all callers. | |
1121 | (struct ptr_data): Remove field TYPE. Update all users. | |
77dc5297 | 1122 | (gt_pch_note_object): Remove argument TYPE. Update all users. |
cd030c07 DN |
1123 | * ggc-internal.h (ggc_pch_alloc_object): Remove last argument. |
1124 | Update all users. | |
aaf1e810 | 1125 | * ggc-none.c (ggc_alloc_typed_stat): Remove. |
cd030c07 DN |
1126 | (struct alloc_zone): Remove. |
1127 | (ggc_internal_alloc_zone_stat): Remove. | |
1128 | (ggc_internal_cleared_alloc_zone_stat): Remove. | |
1129 | * ggc-page.c (ggc_alloc_typed_stat): Remove. | |
77dc5297 UB |
1130 | (ggc_pch_count_object): Remove last argument. Update all users. |
1131 | (ggc_pch_alloc_object): Remove last argument. Update all users. | |
cd030c07 DN |
1132 | (struct alloc_zone): Remove. |
1133 | * ggc-zone.c: Remove. | |
77dc5297 | 1134 | * ggc.h (gt_pch_note_object): Remove last argument. Update all users. |
cd030c07 DN |
1135 | (struct alloc_zone): Remove. |
1136 | (ggc_alloc_typed_stat): Remove. | |
1137 | (ggc_alloc_typed): Remove. | |
1138 | (ggc_splay_alloc): Remove first argument. | |
1139 | (rtl_zone): Remove. Update all users. | |
1140 | (tree_zone): Remove. Update all users. | |
1141 | (tree_id_zone): Remove. Update all users. | |
1142 | (ggc_internal_zone_alloc_stat): Remove. Update all users. | |
77dc5297 | 1143 | (ggc_internal_zone_cleared_alloc_stat): Remove. Update all users. |
cd030c07 | 1144 | (ggc_internal_zone_vec_alloc_stat): Remove. Update all users. |
77dc5297 | 1145 | * tree-ssanames.c: Remove references to zone allocator in comments. |
cd030c07 | 1146 | |
a861ffa4 GJL |
1147 | 2013-01-24 Georg-Johann Lay <avr@gjlay.de> |
1148 | ||
1149 | * config/avr/avr.c (avr_out_fract): Make register numbers that | |
1150 | might be outside of source operand signed. | |
1151 | ||
593c0ddd UB |
1152 | 2013-01-24 Uros Bizjak <ubizjak@gmail.com> |
1153 | ||
1154 | * config/i386/constraints.md (Yf): New constraint. | |
1155 | * config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead | |
1156 | of f constraint to conditionaly disable x87 register preferences. | |
1157 | (*movdf_internal): Ditto. | |
1158 | (*movsf_internal): Ditto. | |
1159 | ||
e86c0101 SB |
1160 | 2013-01-24 Steven Bosscher <steven@gcc.gnu.org> |
1161 | ||
1162 | PR inline-asm/55934 | |
1163 | * lra-assigns.c (assign_by_spills): Throw away the pattern of asms | |
1164 | that have operands with impossible constraints. | |
1165 | Add a FIXME for a speed-up opportunity. | |
1166 | * lra-constraints.c (process_alt_operands): Verify that a class | |
1167 | selected from constraints on asms is valid for the operand mode. | |
1168 | (curr_insn_transform): Remove incorrect comment. | |
1169 | ||
f6fee35f DE |
1170 | 2013-01-23 David Edelsohn <dje.gcc@gmail.com> |
1171 | ||
1172 | * config/rs6000/rs6000.c (rs6000_delegitimize_address): Check that | |
1173 | TOC operand is a valid symbol ref in the constant pool. | |
1174 | ||
1175 | 2013-01-23 Edgar E. Iglesias <edgar.iglesias@gmail.com> | |
c7729184 | 1176 | |
aaf1e810 | 1177 | * config/microblaze/linux.h: Add TARGET_OS_CPP_BUILTINS |
c7729184 | 1178 | |
dc62d7d1 GJL |
1179 | 2013-01-23 Georg-Johann Lay <avr@gjlay.de> |
1180 | ||
1181 | PR target/54222 | |
1182 | * config/avr/stdfix.h: New file. | |
1183 | * t-avr (stdfix-gcc.h): New rule to build it. | |
1184 | (EXTRA_HEADERS): Set it to install stdfix.h, stdfix-gcc.h. | |
1185 | ||
2660d12d KS |
1186 | 2013-01-23 Kostya Serebryany <kcc@google.com> |
1187 | ||
77dc5297 UB |
1188 | * config/darwin.h: remove dependency on |
1189 | CoreFoundation (asan on Mac OS). | |
2660d12d | 1190 | |
a70418fc JJ |
1191 | 2013-01-23 Jakub Jelinek <jakub@redhat.com> |
1192 | ||
1193 | PR target/49069 | |
1194 | * config/arm/arm.md (cbranchdi4, cstoredi4): Use s_register_operand | |
1195 | instead of cmpdi_operand for first comparison operand. | |
1196 | Don't assert that comparison operands aren't both constants. | |
1197 | ||
47876a2a JW |
1198 | 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com> |
1199 | ||
1200 | * doc/install.texi (Downloading the Source): Update references to | |
1201 | downloading separate components. | |
1202 | ||
1203 | 2013-01-22 Jonathan Wakely <jwakely.gcc@gmail.com> | |
4ebd56a5 JW |
1204 | |
1205 | * doc/extend.texi (__int128): Improve grammar. | |
1206 | ||
47876a2a | 1207 | 2013-01-22 Uros Bizjak <ubizjak@gmail.com> |
32fc5b8a UB |
1208 | |
1209 | PR target/56028 | |
1210 | * config/i386/i386.md (*movti_internal_rex64): Change (o,riF) | |
1211 | alternative to (o,r). | |
1212 | (*movdi_internal_rex64): Remove (!o,n) alternative. | |
1213 | (DImode immediate->memory splitter): Remove. | |
1214 | (DImode immediate->memory peephole2): Remove. | |
1215 | (movtf): Enable for TARGET_64BIT || TARGET_SSE. | |
1216 | (*movtf_internal_rex64): Rename from *movtf_internal. Change (!o,F*r) | |
1217 | alternative to (!o,*r). | |
1218 | (*movtf_internal_sse): New pattern. | |
1219 | (*movxf_internal_rex64): New pattern. | |
1220 | (*movxf_internal): Disable for TARGET_64BIT. | |
1221 | (*movdf_internal_rex64): Remove (!o,F) alternative. | |
1222 | ||
3a984f10 JJ |
1223 | 2013-01-22 Jakub Jelinek <jakub@redhat.com> |
1224 | ||
502498d5 JJ |
1225 | PR middle-end/56074 |
1226 | * dumpfile.c (dump_loc): Only print loc if LOCATION_LOCUS (loc) | |
1227 | isn't UNKNOWN_LOCATION nor BUILTINS_LOCATION. | |
1228 | * tree-vect-loop-manip.c (find_loop_location): Also ignore | |
1229 | stmt locations where LOCATION_LOCUS of the stmt location is | |
1230 | UNKNOWN_LOCATION or BUILTINS_LOCATION. | |
1231 | ||
3a984f10 JJ |
1232 | PR target/55686 |
1233 | * config/i386/i386.md (UNSPEC_STOS): New. | |
1234 | (strset_singleop, *strsetdi_rex_1, *strsetsi_1, *strsethi_1, | |
1235 | *strsetqi_1): Add UNSPEC_STOS. | |
1236 | ||
fa817f7f PC |
1237 | 2013-01-22 Paolo Carlini <paolo.carlini@oracle.com> |
1238 | ||
1239 | PR c++/56067 | |
1240 | * doc/invoke.texi: Remove left over -Wsynth example. | |
1241 | ||
8f498c1b JJ |
1242 | 2013-01-21 Jakub Jelinek <jakub@redhat.com> |
1243 | ||
1244 | PR tree-optimization/56051 | |
1245 | * fold-const.c (fold_binary_loc): Don't fold | |
1246 | X < (cast) (1 << Y) into (X >> Y) != 0 if cast is either | |
1247 | a narrowing conversion, or widening conversion from signed | |
1248 | to unsigned. | |
1249 | ||
47876a2a | 1250 | 2013-01-21 Uros Bizjak <ubizjak@gmail.com> |
35d59da7 UB |
1251 | |
1252 | PR rtl-optimization/56023 | |
1253 | * haifa-sched.c (fix_inter_tick): Do not update ticks of instructions, | |
1254 | dependent on debug instruction. | |
1255 | ||
5b9db1bc MJ |
1256 | 2013-01-21 Martin Jambor <mjambor@suse.cz> |
1257 | ||
1258 | PR middle-end/56022 | |
1259 | * function.c (allocate_struct_function): Call | |
1260 | invoke_set_current_function_hook earlier. | |
1261 | ||
e8bb7d68 JJ |
1262 | 2013-01-21 Jakub Jelinek <jakub@redhat.com> |
1263 | ||
1264 | * reload1.c (init_reload): Only initialize reload_obstack | |
1265 | during the first call. | |
1266 | ||
616a4e32 MP |
1267 | 2013-01-21 Marek Polacek <polacek@redhat.com> |
1268 | ||
1269 | * cfgloop.c (verify_loop_structure): Fix up grammar. | |
1270 | ||
4401981b YHH |
1271 | 2013-01-21 Yi-Hsiu Hsu <ahsu@marvell.com> |
1272 | ||
1273 | * config/arm/marvell-pj4.md (pj4_shift_conds, pj4_alu_shift, | |
1274 | pj4_alu_shift_conds, pj4_shift): Handle simple_alu_shift. | |
1275 | ||
8e87740b RR |
1276 | 2013-01-21 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> |
1277 | ||
1278 | PR target/56058 | |
1279 | * config/arm/marvell-pj4.md: Update copyright year. | |
1280 | Fix up use of alu to alu_reg and simple_alu_imm. | |
1281 | ||
47876a2a | 1282 | 2013-01-21 Uros Bizjak <ubizjak@gmail.com> |
1f6bc337 UB |
1283 | |
1284 | * config/i386/i386.md (enabled): Do not disable fma4 for TARGET_FMA. | |
1285 | ||
89d56d79 VM |
1286 | 2013-01-20 Vladimir Makarov <vmakarov@redhat.com> |
1287 | ||
1288 | PR target/55433 | |
1289 | * lra-constraints.c (curr_insn_transform): Don't reuse original | |
1f6bc337 | 1290 | insn for secondary memory move when memory mode should be different. |
89d56d79 | 1291 | |
fe603553 JDA |
1292 | 2013-01-20 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
1293 | ||
1294 | * config/pa/pa.md (atomic_loaddi, atomic_loaddi_1, atomic_storedi, | |
1295 | atomic_storedi_1): New patterns. | |
1296 | ||
01284895 VK |
1297 | 2013-01-20 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
1298 | ||
1299 | btver2 pipeline descriptions. | |
1300 | * config/i386/i386.c: Enable CPU_BTVER2 to use btver2 pipeline | |
1301 | descriptions. | |
1302 | * config/i386/i386.md (btver2_decode): New type attributes. | |
1f6bc337 | 1303 | * config/i386/sse.md (btver2_decode, btver2_sse_attr): New |
01284895 VK |
1304 | type attributes. |
1305 | * config/i386/btver2.md: New file describing btver2 pipelines. | |
1306 | ||
5630e3e1 JL |
1307 | 2013-01-19 Andrew Pinski <apinski@cavium.com> |
1308 | ||
1309 | PR tree-optimization/52631 | |
1310 | * tree-ssa-sccvn (visit_use): Before looking up the original | |
1311 | statement, try looking up the simplified expression. | |
1312 | ||
650ae806 AG |
1313 | 2013-01-19 Anthony Green <green@moxielogic.com> |
1314 | ||
1315 | * config/moxie/moxie.c (moxie_expand_prologue): Set | |
1316 | current_function_static_stack_size. | |
1317 | ||
e300ec2d JJ |
1318 | 2013-01-18 Jakub Jelinek <jakub@redhat.com> |
1319 | ||
1320 | PR tree-optimization/56029 | |
1321 | * tree-phinodes.c (reserve_phi_args_for_new_edge): Set | |
1322 | gimple_phi_arg_location for the new arg to UNKNOWN_LOCATION. | |
1323 | ||
a3d7af04 SS |
1324 | 2013-01-18 Sharad Singhai <singhai@google.com> |
1325 | ||
1326 | PR tree-optimization/55995 | |
1327 | * dumpfile.c (dump_loc): Print location only if available. | |
1328 | * tree-vectorizer.c (increase_alignment): Intialize vect_location. | |
1329 | ||
66aa7879 VM |
1330 | 2013-01-18 Vladimir Makarov <vmakarov@redhat.com> |
1331 | ||
1332 | PR target/55433 | |
1333 | * lra-constraints.c (curr_insn_transform): Reuse original insn for | |
1334 | secondary memory move. | |
1335 | (inherit_reload_reg): Use rclass instead of cl for | |
1336 | check_secondary_memory_needed_p. | |
1337 | ||
3f0fee7b JJ |
1338 | 2013-01-18 Jakub Jelinek <jakub@redhat.com> |
1339 | ||
1340 | PR middle-end/56015 | |
1341 | * expr.c (expand_expr_real_2) <case COMPLEX_EXPR>: Handle | |
1f6bc337 | 1342 | the case where writing real complex part of target modifies op1. |
3f0fee7b | 1343 | |
70c67693 JG |
1344 | 2013-01-18 James Greenhalgh <james.greenhalgh@arm.com> |
1345 | ||
1346 | * config/aarch64/aarch64-simd.md | |
1347 | (aarch64_vcond_internal<mode>): Handle unordered cases. | |
1348 | * config/aarch64/iterators.md (v_cmp_result): New. | |
1349 | ||
df8de9b3 YHH |
1350 | 2013-01-18 Yi-Hsiu Hsu <ahsu@marvell.com> |
1351 | Ramana Radhakrishnan <ramana.radhakrishnan@arm.com> | |
1352 | ||
1353 | * config/arm/marvell-pj4.md: New file. | |
1354 | * config/arm/arm.c (arm_issue_rate): Add marvell_pj4. | |
1355 | * config/arm/arm.md (generic_sched): Add marvell_pj4. | |
1356 | (generic_vfp): Likewise. | |
1357 | * config/arm/arm-cores.def: Add marvell-pj4. | |
1358 | * config/arm/arm-tune.md: Regenerate. | |
1359 | * config/arm/arm-tables.opt: Regenerate. | |
1360 | * config/arm/bpabi.h (BE8_LINK_SPEC): Add marvell_pj4. | |
1361 | * doc/invoke.texi: Document marvell-pj4. | |
1362 | ||
be30c356 TB |
1363 | 2013-01-18 Tejas Belagod <tejas.belagod@arm.com> |
1364 | ||
1365 | * config/aarch64/arm_neon.h: Map scalar types to standard types. | |
1366 | ||
0bfbca58 | 1367 | 2013-01-18 Alexandre Oliva <aoliva@redhat.com> |
af6236c1 AO |
1368 | |
1369 | PR debug/54114 | |
1370 | PR debug/54402 | |
1371 | PR debug/49888 | |
1372 | * var-tracking.c (negative_power_of_two_p): New. | |
1373 | (global_get_addr_cache, local_get_addr_cache): New. | |
1374 | (get_addr_from_global_cache, get_addr_from_local_cache): New. | |
1375 | (vt_canonicalize_addr): Rewrite using the above. Adjust the | |
1376 | heading comment. | |
1377 | (vt_stack_offset_p): Remove. | |
1378 | (vt_canon_true_dep): Always canonicalize loc's address. | |
1379 | (clobber_overlapping_mems): Make sure we have a MEM. | |
1380 | (local_get_addr_clear_given_value): New. | |
1381 | (val_reset): Clear local cached entries. | |
1382 | (compute_bb_dataflow): Create and release the local cache. | |
1383 | Disable duplicate MEMs clobbering. | |
1384 | (emit_notes_in_bb): Clobber MEMs likewise. | |
1385 | (vt_emit_notes): Create and release the local cache. | |
1386 | (vt_initialize, vt_finalize): Create and release the global | |
1387 | cache, respectively. | |
1f6bc337 | 1388 | * alias.c (rtx_equal_for_memref_p): Compare operands of ENTRY_VALUEs. |
af6236c1 | 1389 | |
0bfbca58 | 1390 | 2013-01-18 Alexandre Oliva <aoliva@redhat.com> |
7ff37ffa AO |
1391 | |
1392 | PR libmudflap/53359 | |
1393 | * tree-mudflap.c (mudflap_finish_file): Skip deferred decls | |
1394 | not found in the symtab. | |
1395 | ||
0bfbca58 | 1396 | 2013-01-18 Alexandre Oliva <aoliva@redhat.com> |
3aa03517 | 1397 | |
c350ba53 | 1398 | PR debug/56006 |
3aa03517 AO |
1399 | PR rtl-optimization/55547 |
1400 | PR rtl-optimization/53827 | |
1401 | PR debug/53671 | |
1402 | PR debug/49888 | |
1403 | * alias.c (offset_overlap_p): New, factored out of... | |
1404 | (memrefs_conflict_p): ... this. Use absolute sizes. Retain | |
1405 | the conservative special case for symbolic constants. Don't | |
1406 | adjust zero sizes on alignment. | |
1407 | ||
c664546f JL |
1408 | 2013-01-18 Bernd Schmidt <bernds@codesourcery.com> |
1409 | ||
1410 | PR rtl-optimization/52573 | |
1411 | * regrename.c (build_def_use): Ignore REG_DEAD notes if there is a | |
1412 | REG_UNUSED for the same register. | |
1413 | ||
1bd3f750 MP |
1414 | 2013-01-17 Richard Biener <rguenther@suse.de> |
1415 | Marek Polacek <polacek@redhat.com> | |
1416 | ||
1417 | PR rtl-optimization/55833 | |
1418 | * loop-unswitch.c (unswitch_loops): Move loop verification... | |
1419 | (unswitch_single_loop): ...here. Call mark_irreducible_loops. | |
1420 | * cfgloopmanip.c (fix_loop_placement): Add IRRED_INVALIDATED parameter. | |
1421 | Set it to true when we're removing a loop from hierarchy tree in | |
1422 | an irreducible region. | |
1423 | (fix_bb_placements): Adjust caller. | |
1424 | (fix_loop_placements): Likewise. | |
1425 | ||
e52a8b71 GJL |
1426 | 2013-01-17 Georg-Johann Lay <avr@gjlay.de> |
1427 | ||
1428 | * config/avr/builtins.def (DEF_BUILTIN): Factor out | |
1429 | "__builtin_avr_" from NAME, turn NAME to an uppercase identifier. | |
1430 | Factor out 'CODE_FOR_' from ICODE, use 'nothing' instead of '-1'. | |
1431 | Remove ID. Adjust comments. | |
1432 | * config/avr/avr-c.c (avr_builtin_name): Remove. | |
1433 | (avr_cpu_cpp_builtins): Use DEF_BUILTIN instead of for-loop. | |
1434 | * config/avr/avr.c (avr_tolower): New static function. | |
1435 | (DEF_BUILTIN): Remove parameter ID. Prefix ICODE by 'CODE_FOR_'. | |
1436 | Stringify NAME, prefix it with "__builtin_avr_" and lowercase it. | |
1437 | (avr_expand_builtin): Assert insn_code != CODE_FOR_nothing for | |
1438 | default expansion. | |
1439 | ||
8386a7ea JH |
1440 | 2013-01-17 Jan Hubicka <jh@suse.cz> |
1441 | ||
610fb637 | 1442 | PR tree-optimization/55273 |
8386a7ea JH |
1443 | * loop-iv.c (iv_number_of_iterations): Consider zero iteration case. |
1444 | ||
47876a2a | 1445 | 2013-01-17 Uros Bizjak <ubizjak@gmail.com> |
8abaebcd UB |
1446 | |
1447 | PR target/55981 | |
1448 | * config/i386/sync.md (atomic_store<mode>): Always generate SWImode | |
1449 | store through atomic_store<mode>_1. | |
1450 | (atomic_store<mode>_1): Macroize insn using SWI mode iterator. | |
1451 | ||
8222c37e MJ |
1452 | 2013-01-17 Martin Jambor <mjambor@suse.cz> |
1453 | ||
1454 | PR tree-optimizations/55264 | |
1455 | * ipa-inline-transform.c (can_remove_node_now_p_1): Never return true | |
1456 | for virtual methods. | |
1457 | * ipa.c (symtab_remove_unreachable_nodes): Never return true for | |
1458 | virtual methods before inlining is over. | |
1459 | * cgraph.h (cgraph_only_called_directly_or_aliased_p): Return false for | |
1460 | virtual functions. | |
1461 | * cgraphclones.c (cgraph_create_virtual_clone): Mark clones as | |
1462 | non-virtual. | |
1463 | ||
79f01c76 VM |
1464 | 2013-01-16 Vladimir Makarov <vmakarov@redhat.com> |
1465 | ||
1466 | PR rtl-optimization/56005 | |
1467 | * sched-deps.c (sched_analyze_2): Check deps->readonly for adding | |
1468 | pending reads for prefetch. | |
1469 | ||
d0b6bb1b IB |
1470 | 2013-01-16 Ian Bolton <ian.bolton@arm.com> |
1471 | ||
aaf1e810 | 1472 | * config/aarch64/aarch64.md |
d0b6bb1b IB |
1473 | (*cstoresi_neg_uxtw): New pattern. |
1474 | (*cmovsi_insn_uxtw): New pattern. | |
1475 | (*<optab>si3_uxtw): New pattern. | |
1476 | (*<LOGICAL:optab>_<SHIFT:optab>si3_uxtw): New pattern. | |
1477 | (*<optab>si3_insn_uxtw): New pattern. | |
1478 | (*bswapsi2_uxtw): New pattern. | |
1479 | ||
cb9cf03b RB |
1480 | 2013-01-16 Richard Biener <rguenther@suse.de> |
1481 | ||
1482 | * tree-inline.c (tree_function_versioning): Remove set but | |
1483 | never used variable. | |
1484 | ||
2cfc56b9 RB |
1485 | 2013-01-16 Richard Biener <rguenther@suse.de> |
1486 | ||
1487 | PR tree-optimization/55964 | |
1488 | * tree-flow.h (rename_variables_in_loop): Remove. | |
1489 | (rename_variables_in_bb): Likewise. | |
1490 | * tree-loop-distribution.c (update_phis_for_loop_copy): Remove. | |
1491 | (copy_loop_before): Adjust and delete update-ssa status. | |
1492 | * tree-vect-loop-manip.c (rename_variables_in_bb): Make static. | |
8abaebcd | 1493 | (rename_variables_in_bb): Likewise. Properly walk over predecessors. |
2cfc56b9 RB |
1494 | (rename_variables_in_loop): Remove. |
1495 | (slpeel_update_phis_for_duplicate_loop): Likewise. | |
1496 | (slpeel_tree_duplicate_loop_to_edge_cfg): Handle nested loops, | |
1497 | use available cfg machinery instead of duplicating it. | |
1498 | Update PHI nodes and perform poor-mans SSA update here. | |
1499 | (slpeel_tree_peel_loop_to_edge): Adjust. | |
1500 | ||
c25a0c60 RB |
1501 | 2013-01-16 Richard Biener <rguenther@suse.de> |
1502 | ||
1503 | PR tree-optimization/54767 | |
1504 | PR tree-optimization/53465 | |
1505 | * tree-vrp.c (vrp_meet_1): Revert original fix for PR53465. | |
1506 | (vrp_visit_phi_node): For PHI arguments coming via backedges | |
1507 | drop all symbolical range information. | |
1508 | (execute_vrp): Compute backedges. | |
1509 | ||
04b535af RB |
1510 | 2013-01-16 Richard Biener <rguenther@suse.de> |
1511 | ||
1512 | * doc/install.texi: Update CLooG and ISL requirements to | |
1513 | 0.18.0 and 0.11.1. | |
1514 | ||
8b0a1e0b CB |
1515 | 2013-01-16 Christian Bruel <christian.bruel@st.com> |
1516 | ||
1517 | PR target/55301 | |
1518 | * config/sh/sh.c (sh_expand_prologue): Postpone new_stack mem symbol. | |
1519 | (broken_move): Handle UNSPECV_SP_SWITCH_B. | |
1520 | * config/sh/sh.md (sp_switch_1): Use set (reg:SI SP_REG). | |
1521 | ||
1522 | 2013-01-16 DJ Delorie <dj@redhat.com> | |
1523 | ||
1524 | * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New. | |
1525 | (UNSPECV_SP_SWITCH_E): New. | |
1526 | (sp_switch_1): Change to an unspec. | |
1527 | (sp_switch_2): Change to an unspec. Don't use post-inc when we | |
1528 | replace $r15. | |
1529 | ||
1530 | 2013-01-16 Uros Bizjak <ubizjak@gmail.com> | |
88e784e6 UB |
1531 | |
1532 | * emit-rtl.c (need_atomic_barrier_p): Mask memory model argument | |
1533 | with MEMMODEL_MASK before comparing with MEMMODEL_* memory types. | |
1534 | * optabs.c (maybe_emit_sync_lock_test_and_set): Ditto. | |
1535 | (expand_mem_thread_fence): Ditto. | |
1536 | (expand_mem_signal_fence): Ditto. | |
1537 | (expand_atomic_load): Ditto. | |
1538 | (expand_atomic_store): Ditto. | |
1539 | ||
0bfbca58 | 1540 | 2013-01-16 Alexandre Oliva <aoliva@redhat.com> |
5147bf6a AO |
1541 | |
1542 | PR rtl-optimization/55547 | |
1543 | PR rtl-optimization/53827 | |
1544 | PR debug/53671 | |
1545 | PR debug/49888 | |
1546 | * alias.c (memrefs_conflict_p): Set sizes to negative after | |
1547 | AND adjustments. | |
1548 | ||
305e3ac1 JJ |
1549 | 2013-01-15 Jakub Jelinek <jakub@redhat.com> |
1550 | ||
1551 | PR target/55940 | |
1552 | * function.c (thread_prologue_and_epilogue_insns): Always | |
1553 | add crtl->drap_reg to set_up_by_prologue.set, even if | |
1554 | stack_realign_drap is false. | |
1555 | ||
f78ac4f2 JBG |
1556 | 2013-01-15 Jan-Benedict Glaw <jbglaw@lug-owl.de> |
1557 | ||
1558 | * config/vax/vax.md (add<mode>3, sub<mode>3, mul<mode>3, div<mode>3, | |
1559 | and<mode>3, *and<mode>_const_int, ior<mode>3, xor<mode>3, ashrsi3, | |
1560 | *call): Fix indention. | |
1561 | ||
a78a8cc4 TV |
1562 | 2013-01-15 Tom de Vries <tom@codesourcery.com> |
1563 | ||
1564 | PR target/55876 | |
1565 | * optabs.c (widen_operand): Use gen_lowpart instead of gen_rtx_SUBREG. | |
1566 | Update comment. | |
1567 | ||
0e80383f VM |
1568 | 2013-01-15 Vladimir Makarov <vmakarov@redhat.com> |
1569 | ||
305e3ac1 | 1570 | PR rtl-optimization/55153 |
0e80383f VM |
1571 | * sched-deps.c (sched_analyze_2): Add pending reads for prefetch. |
1572 | ||
207b5956 MJ |
1573 | 2013-01-15 Martin Jambor <mjambor@suse.cz> |
1574 | ||
1575 | PR tree-optimization/55920 | |
1576 | * tree-sra.c (analyze_access_subtree): Do not mark non-removable | |
1577 | accesses as grp_to_be_debug_replaced. | |
1578 | ||
a7818b54 JJ |
1579 | 2013-01-15 Jakub Jelinek <jakub@redhat.com> |
1580 | ||
1581 | PR tree-optimization/55920 | |
1582 | * tree-sra.c (sra_modify_assign): If for lacc->grp_to_be_debug_replaced | |
1583 | there is non-useless type conversion needed from debug rhs to lhs, | |
1584 | use build_debug_ref_for_model and/or VIEW_CONVERT_EXPR. | |
1585 | ||
b0fe107e JM |
1586 | 2013-01-15 Joseph Myers <joseph@codesourcery.com> |
1587 | Mikael Pettersson <mikpe@it.uu.se> | |
1588 | ||
1589 | PR target/43961 | |
1590 | * config/arm/arm.h (ADDR_VEC_ALIGN): Align SImode jump tables for | |
1591 | Thumb. | |
1592 | (ASM_OUTPUT_CASE_LABEL): Remove. | |
1593 | (ASM_OUTPUT_BEFORE_CASE_LABEL): Define to empty. | |
1594 | * final.c (shorten_branches): Update alignment of labels before | |
1595 | jump tables if CASE_VECTOR_SHORTEN_MODE. | |
1596 | ||
34ab62ee RB |
1597 | 2013-01-15 Richard Biener <rguenther@suse.de> |
1598 | ||
1599 | PR bootstrap/55961 | |
1600 | * system.h: Do not include gmp.h for building host tools. | |
1601 | ||
783a3a05 RB |
1602 | 2013-01-15 Richard Biener <rguenther@suse.de> |
1603 | ||
1604 | PR middle-end/55882 | |
1605 | * emit-rtl.c (set_mem_attributes_minus_bitpos): Correctly | |
1606 | account for bitpos when computing alignment. | |
1607 | ||
3a579e09 VY |
1608 | 2013-01-15 Vladimir Yakovlev <vladimir.b.yakovlev@intel.com> |
1609 | ||
1610 | * config/i386/i386-c.c (ix86_target_macros_internal): New case. | |
1611 | (ix86_target_macros_internal): Likewise. | |
1612 | ||
1613 | * config/i386/i386.c (m_CORE2I7): Removed. | |
1614 | (m_CORE_HASWELL): New macro. | |
1615 | (m_CORE_ALL): Likewise. | |
1616 | (initial_ix86_tune_features): m_CORE2I7 is replaced by m_CORE_ALL. | |
1617 | (initial_ix86_arch_features): Likewise. | |
1618 | (processor_target_table): Initializations for Core avx2. | |
1619 | (cpu_names): New names "core-avx2". | |
1620 | (ix86_option_override_internal): Changed PROCESSOR_COREI7 by | |
1621 | PROCESSOR_CORE_HASWELL. | |
1622 | (ix86_issue_rate): New case. | |
1623 | (ia32_multipass_dfa_lookahead): Likewise. | |
1624 | (ix86_sched_init_global): Likewise. | |
1625 | ||
1626 | * config/i386/i386.h (TARGET_HASWELL): New macro. | |
1627 | (target_cpu_default): New TARGET_CPU_DEFAULT_haswell. | |
1628 | (processor_type): New PROCESSOR_HASWELL. | |
1629 | ||
955f5a07 JJ |
1630 | 2013-01-15 Jakub Jelinek <jakub@redhat.com> |
1631 | ||
ff784829 JJ |
1632 | PR tree-optimization/55955 |
1633 | * tree-vect-loop.c (vectorizable_reduction): Give up early on | |
1634 | *SHIFT_EXPR and *ROTATE_EXPR codes. | |
1635 | ||
955f5a07 JJ |
1636 | PR tree-optimization/48766 |
1637 | * opts.c (common_handle_option): For -fwrapv disable -ftrapv, for | |
1638 | -ftrapv disable -fwrapv. | |
1639 | ||
aeb8b4e9 GJL |
1640 | 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
1641 | ||
1642 | PR target/55974 | |
1643 | * config/avr/avr-c.c (avr_cpu_cpp_builtins): Define __FLASH | |
1644 | etc. to 1 and not to __flash. | |
1645 | Use LL suffix for __INT24_MAX__ with -mint8. | |
1646 | Use ULL suffix for __UINT24_MAX__ with -mint8. | |
1647 | ||
1c494c6a GJL |
1648 | 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
1649 | ||
1650 | * config/avr/avr-arch.h | |
1651 | (struct base_arch_s): Use typedef avr_arch_t instead. | |
1652 | (struct arch_info_s): Use typedef avr_arch_info_t instead. | |
1653 | (struct mcu_type_s): Use typedef avr_mcu_t instead. | |
1654 | * config/avr/avr.c: Same. | |
1655 | * config/avr/avr-devices.c: Same. | |
1656 | * config/avr/driver-avr.c: Same. | |
1657 | * config/avr/gen-avr-mmcu-texi.c: Same. | |
1658 | * config/avr/avr-mcus.def: Adjust comment. | |
1659 | ||
a50344cb TB |
1660 | 2013-01-14 Tejas Belagod <tejas.belagod@arm.com> |
1661 | ||
88e784e6 UB |
1662 | * config/aarch64/aarch64-simd.md (*aarch64_simd_ld1r<mode>): New. |
1663 | * config/aarch64/iterators.md (VALLDI): New. | |
a50344cb | 1664 | |
47876a2a | 1665 | 2013-01-14 Uros Bizjak <ubizjak@gmail.com> |
e6f0e052 UB |
1666 | Andi Kleen <ak@linux.intel.com> |
1667 | ||
1668 | PR target/55948 | |
1669 | * config/i386/sync.md (atomic_store<mode>_1): New pattern. | |
1670 | (atomic_store<mode>): Call atomic_store<mode>_1 for IX86_HLE_RELEASE | |
1671 | memmodel flag. | |
1672 | ||
00892272 GJL |
1673 | 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
1674 | ||
1675 | * config/avr/avr-stdint.h: Remove trailing blanks. | |
1676 | * config/avr/avr-log.h: Same. | |
1677 | * config/avr/avr-arch.h: Same. | |
1678 | * config/avr/avr-devices.c: Same. | |
1679 | * config/avr/avr-dimode.md: Same. | |
1680 | * config/avr/predicates.md: Same. | |
1681 | * config/avr/avr-c.c: Same. And fix typo. | |
e6f0e052 | 1682 | |
00892272 GJL |
1683 | * config/avr/avr-protos.h: Same. And: |
1684 | (function_arg_regno_p): Rename to avr_function_arg_regno_p. | |
1685 | (init_cumulative_args): Rename to avr_init_cumulative_args. | |
1686 | (expand_prologue): Rename to avr_expand_prologue. | |
1687 | (expand_epilogue): Rename to avr_expand_epilogue. | |
1688 | (adjust_insn_length): Rename to avr_adjust_insn_length. | |
1689 | (notice_update_cc): Rename to avr_notice_update_cc. | |
1690 | (final_prescan_insn): Rename to avr_final_prescan_insn. | |
1691 | * config/avr/avr.c: Same. | |
1692 | * config/avr/avr.h: Same. | |
1693 | * config/avr/avr.md: Remove trailing blanks. | |
1694 | (prologue): Use avr_expand_prologue. | |
1695 | (epilogue, sibcall_epilogue): Use avr_expand_epilogue. | |
1696 | ||
7bb01996 RB |
1697 | 2013-01-14 Richard Biener <rguenther@suse.de> |
1698 | ||
1699 | * tree-cfg.c (verify_expr_location, verify_expr_location_1, | |
1700 | verify_location, collect_subblocks): New functions. | |
1701 | (verify_gimple_in_cfg): Verify that locations only reference | |
1702 | BLOCKs in the functions BLOCK tree. | |
1703 | ||
2724573f RB |
1704 | 2013-01-14 Richard Biener <rguenther@suse.de> |
1705 | ||
1706 | * tree-cfgcleanup.c (remove_forwarder_block): Unshare propagated | |
1707 | PHI argument. | |
1708 | * graphite-sese-to-poly.c (insert_out_of_ssa_copy): Properly | |
1709 | unshare reference. | |
1710 | (insert_out_of_ssa_copy_on_edge): Likewise. | |
1711 | (rewrite_close_phi_out_of_ssa): Likewise. | |
1712 | * tree-ssa.c (insert_debug_temp_for_var_def): Properly unshare | |
1713 | debug expressions. | |
1714 | * tree-ssa-pre.c (insert_into_preds_of_block): Properly unshare | |
1715 | propagated constants. | |
1716 | * tree-cfg.c (tree_node_can_be_shared): Handled component-refs | |
1717 | can not be shared. | |
1718 | ||
9a0bbab6 GJL |
1719 | 2013-01-14 Georg-Johann Lay <avr@gjlay.de> |
1720 | ||
1721 | * config/avr/avr-modes.def: Add GPL copyright notice. | |
1722 | ||
45805f17 UB |
1723 | 2013-01-13 Uros Bizjak <ubizjak@gmail.com> |
1724 | ||
1725 | * config/i386/sync.md (mem_thread_fence): Mask operands[0] with | |
1726 | MEMMODEL_MASK to determine memory model. | |
1727 | (atomic_store<mode>): Ditto from operands[2]. | |
1728 | * config/i386/i386.c (ix86_memmodel_check): Declare "strong" as bool. | |
1729 | ||
9d60be38 JJ |
1730 | 2013-01-13 Jakub Jelinek <jakub@redhat.com> |
1731 | ||
1732 | PR fortran/55935 | |
45805f17 | 1733 | * gimple-fold.c (get_symbol_constant_value): Call unshare_expr. |
9d60be38 JJ |
1734 | (fold_gimple_assign): Don't call unshare_expr here. |
1735 | (fold_ctor_reference): Call unshare_expr. | |
1736 | ||
e7f49d92 TG |
1737 | 2013-01-13 Terry Guo <terry.guo@arm.com> |
1738 | ||
aaf1e810 EB |
1739 | * Makefile.in (s-mlib): New argument MULTILIB_REUSE. |
1740 | * doc/fragments.texi: Document MULTILIB_REUSE. | |
1741 | * gcc.c (multilib_reuse): New internal spec. | |
e7f49d92 | 1742 | (set_multilib_dir): Also search multilib from multilib_reuse. |
aaf1e810 | 1743 | * genmultilib (tmpmultilib3): Refactor code. |
e7f49d92 TG |
1744 | (tmpmultilib4): Ditto. |
1745 | (multilib_reuse): New multilib argument. | |
1746 | ||
fbd03a27 RS |
1747 | 2013-01-13 Richard Sandiford <rdsandiford@googlemail.com> |
1748 | ||
1749 | * Makefile.in: Update copyright. | |
1750 | ||
b3681f13 TV |
1751 | 2013-01-12 Tom de Vries <tom@codesourcery.com> |
1752 | ||
1753 | PR middle-end/55890 | |
1754 | * calls.c (expand_call): Check if arg_nr is valid. | |
1755 | ||
3f287e4b MM |
1756 | 2013-01-11 Michael Meissner <meissner@linux.vnet.ibm.com> |
1757 | ||
1758 | * doc/extend.texi (X86 Built-in Functions): Add whitespace in | |
1759 | __builtin_ia32_paddb256 and __builtin_ia32_pavgb256 | |
5bc35113 MM |
1760 | documentation. Add missing '__' in front of |
1761 | __builtin_ia32_packssdw256. | |
3f287e4b | 1762 | |
1abcd5eb AK |
1763 | 2013-01-11 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
1764 | ||
1765 | PR target/55719 | |
1766 | * config/s390/s390.c (s390_preferred_reload_class): Do not return | |
1767 | NO_REGS for larl operands. | |
1768 | (s390_reload_larl_operand): Use s390_load_address instead of | |
1769 | emit_move_insn. | |
1770 | ||
980d0812 RB |
1771 | 2013-01-11 Richard Biener <rguenther@suse.de> |
1772 | ||
1773 | * tree-cfg.c (verify_node_sharing_1): Split out from ... | |
1774 | (verify_node_sharing): ... here. | |
1775 | (verify_gimple_in_cfg): Use verify_node_sharing_1 for walk_tree. | |
1776 | ||
7cb9fd07 EB |
1777 | 2013-01-11 Eric Botcazou <ebotcazou@adacore.com> |
1778 | ||
1779 | * configure.ac (Tree checking): Set TREECHECKING to yes if enabled. | |
1780 | Substitute TREECHECKING. | |
1781 | * configure: Regenerate. | |
1782 | * Makefile.in (TREECHECKING): New. | |
1783 | ||
47876a2a | 1784 | 2013-01-11 Richard Guenther <rguenther@suse.de> |
c7ab2530 RG |
1785 | |
1786 | PR tree-optimization/44061 | |
1787 | * tree-vrp.c (extract_range_basic): Compute zero as | |
1788 | value-range for __builtin_constant_p of function parameters. | |
1789 | ||
d1e082c2 RS |
1790 | 2013-01-10 Richard Sandiford <rdsandiford@googlemail.com> |
1791 | ||
45805f17 | 1792 | Update copyright years. |
d1e082c2 | 1793 | |
f85021b0 VM |
1794 | 2013-01-10 Vladimir Makarov <vmakarov@redhat.com> |
1795 | ||
9d60be38 | 1796 | PR rtl-optimization/55672 |
0160442c VM |
1797 | * lra-eliminations.c (mark_not_eliminable): Permit addition with |
1798 | const to be eliminable. | |
f85021b0 | 1799 | |
7a8b1ec4 DE |
1800 | 2013-01-10 David Edelsohn <dje.gcc@gmail.com> |
1801 | ||
1802 | * configure.ac (HAVE_AS_TLS): Add check for powerpc-ibm-aix. | |
1803 | * configure: Regenerate. | |
1804 | ||
ad2e5b71 RB |
1805 | 2013-01-10 Richard Biener <rguenther@suse.de> |
1806 | ||
ddf9322d | 1807 | * builtins.c (expand_builtin_init_trampoline): Use set_mem_attributes. |
ad2e5b71 | 1808 | |
ffc5b2bb RB |
1809 | 2013-01-10 Richard Biener <rguenther@suse.de> |
1810 | ||
1811 | PR bootstrap/55792 | |
1812 | * tree-into-ssa.c (rewrite_add_phi_arguments): Do not set | |
1813 | locations for virtual PHI arguments. | |
1814 | (rewrite_update_phi_arguments): Likewise. | |
1815 | ||
e1f674e4 JS |
1816 | 2013-01-10 Joel Sherrill <joel.sherrill@OARcorp.com> |
1817 | ||
1818 | * config/v850/rtems.h (ASM_SPEC): Pass -m8byte-align and -mgcc-abi | |
1819 | on to assembler. | |
1820 | ||
a57fc743 JJ |
1821 | 2013-01-10 Jakub Jelinek <jakub@redhat.com> |
1822 | ||
1823 | PR tree-optimization/55921 | |
1824 | * tree-complex.c (expand_complex_asm): New function. | |
1825 | (expand_complex_operations_1): Call it for GIMPLE_ASM. | |
1826 | ||
0ff4390d AK |
1827 | 2013-01-10 Andreas Krebbel <Andreas.Krebbel@de.ibm.com> |
1828 | ||
1829 | PR target/55718 | |
1830 | * config/s390/s390.c (s390_symref_operand_p) | |
1831 | (s390_loadrelative_operand_p): Merge the two functions. | |
1832 | (s390_check_qrst_address, print_operand_address): Add parameters | |
1833 | to s390_loadrelative_operand_p invokation. | |
1834 | (s390_check_symref_alignment): Use s390_loadrelative_operand_p. | |
1835 | (s390_reload_larl_operand, s390_secondary_reload): Use | |
1836 | s390_loadrelative_operand_p instead of s390_symref_operand_p. | |
1837 | (legitimize_pic_address): Handle @GOTENT and @PLT + addend. | |
1838 | ||
6f557e0e MS |
1839 | 2013-01-09 Mike Stump <mikestump@comcast.net> |
1840 | ||
1841 | * dse.c (record_store): Remove unnecessary assert. | |
1842 | ||
7770c9e9 JH |
1843 | 2013-01-09 Jan Hubicka <jh@suse.cz> |
1844 | ||
1845 | PR tree-optimization/55569 | |
1846 | * cfgloopmanip.c (scale_loop_profile): Make ITERATION_BOUND gcov_type. | |
1847 | * cfgloop.h (scale_loop_profile): Likewise. | |
1848 | ||
a19b1432 JH |
1849 | 2013-01-09 Jan Hubicka <jh@suse.cz> |
1850 | ||
1851 | PR lto/45375 | |
ddf9322d UB |
1852 | * ipa-inline.c (ipa_inline): Remove extern inlines and virtual |
1853 | functions. | |
a19b1432 JH |
1854 | * cgraphclones.c (cgraph_clone_node): Cpoy also LTO file data. |
1855 | ||
9a002da8 RS |
1856 | 2013-01-09 Richard Sandiford <rdsandiford@googlemail.com> |
1857 | ||
1858 | PR middle-end/55114 | |
1859 | * expr.h (maybe_emit_group_store): Declare. | |
1860 | * expr.c (maybe_emit_group_store): New function. | |
1861 | * builtins.c (expand_builtin_int_roundingfn): Call it. | |
1862 | (expand_builtin_int_roundingfn_2): Likewise. | |
1863 | ||
511dcace VM |
1864 | 2013-01-09 Vladimir Makarov <vmakarov@redhat.com> |
1865 | ||
e1f2b729 | 1866 | PR rtl-optimization/55829 |
511dcace VM |
1867 | * lra-constraints.c (match_reload): Add code for absent output. |
1868 | (curr_insn_transform): Add code for reloads of matched inputs | |
1869 | without output. | |
1870 | ||
7b0fe4f4 UB |
1871 | 2013-01-09 Uros Bizjak <ubizjak@gmail.com> |
1872 | ||
1873 | * config/i386/sse.md (*vec_interleave_highv2df): Change mode | |
1874 | attribute of movddup insn to DF. | |
1875 | (*vec_interleave_lowv2df): Ditto. | |
1876 | (vec_dupv2df): Ditto. | |
1877 | ||
870ca331 JH |
1878 | 2013-01-09 Jan Hubicka <jh@suse.cz> |
1879 | ||
1880 | PR tree-optimiation/55875 | |
1881 | * tree-ssa-loop-niter.c (number_of_iterations_cond): Add | |
1882 | EVERY_ITERATION parameter. | |
7b0fe4f4 | 1883 | (number_of_iterations_exit): Check if exit is executed every iteration. |
870ca331 JH |
1884 | (idx_infer_loop_bounds): Similarly here. |
1885 | (n_of_executions_at_most): Simplify | |
1886 | to only test for cases where statement is dominated by the | |
7b0fe4f4 | 1887 | particular bound; handle correctly the "postdominance" test. |
870ca331 JH |
1888 | (scev_probably_wraps_p): Use max loop iterations info |
1889 | as a global bound first. | |
1890 | ||
6f575fe4 | 1891 | 2013-01-09 Nguyen Duy Dat <dat.nguyen.yn@rvc.renesas.com> |
3cd232b5 NDD |
1892 | Nick Clifton <nickc@redhat.com> |
1893 | ||
1894 | * config/v850/v850.md (cbranchsf4): New pattern. | |
1895 | (cstoresf4): New pattern. | |
1896 | (cbranchdf4): New pattern. | |
1897 | (cstoredf4): New pattern. | |
1898 | (movsicc): Disallow floating point comparisons. | |
1899 | (cmpsf_le_insn): Fix order of operators. | |
1900 | (cmpsf_lt_insn): Likewise. | |
1901 | (cmpsf_eq_insn): Likewise. | |
1902 | (cmpdf_le_insn): Likewise. | |
1903 | (cmpdf_lt_insn): Likewise. | |
1904 | (cmpdf_eq_insn): Likewise. | |
1905 | (cmpsf_ge_insn): Use LE comparison. | |
1906 | (cmpdf_ge_insn): Likewise. | |
1907 | (cmpsf_gt_insn): Use LT comparison. | |
1908 | (cmpdf_gt_insn): Likewise. | |
1909 | (cmpsf_ne_insn): Delete pattern. | |
1910 | (cmpdf_ne_insn): Delete pattern. | |
1911 | * config/v850/v850.c (v850_gen_float_compare): Use | |
1912 | gen_cmpdf_eq_insn for NE comparison. | |
1913 | (v850_float_z_comparison_operator) | |
1914 | (v850_float_nz_comparison_operator): Move from here ... | |
1915 | * config/v850/predicates.md: ... to here. Move GT and GE | |
1916 | comparisons into v850_float_z_comparison_operator. | |
1917 | * config/v850/v850-protos.h (v850_float_z_comparison_operator): | |
1918 | Delete prototype. | |
1919 | (v850_float_nz_comparison_operator): Likewise. | |
1920 | ||
f0d54148 JDA |
1921 | 2013-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
1922 | ||
1923 | * config/pa/pa.c (pa_emit_move_sequence): Replace calls to gen_insv | |
1924 | with calls to gen_insvsi/gen_insvdi. | |
1925 | ||
8f01beca VK |
1926 | 2013-01-09 Venkataramanan Kumar <venkataramanan.kumar@amd.com> |
1927 | ||
1928 | * config/i386/i386.c (initial_ix86_tune_features): Set up | |
1929 | X86_TUNE_AVX128_OPTIMAL for m_BTVER2. | |
1930 | ||
2aa579ad JJ |
1931 | 2013-01-09 Steven Bosscher <steven@gcc.gnu.org> |
1932 | Jakub Jelinek <jakub@redhat.com> | |
1933 | ||
1934 | PR tree-optimization/48189 | |
1935 | * predict.c (predict_loops): If max is 0, don't call compare_tree_int. | |
1936 | If nitercst is 0, don't predict the exit edge. | |
1937 | ||
6edc3e32 | 1938 | 2013-01-08 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com> |
01a3a324 N |
1939 | |
1940 | * config/aarch64/aarch64.c (aarch64_print_operand): Replace %r | |
1941 | in asm_fprintf with reg_names. | |
1942 | (aarch64_print_operand_address): Likewise. | |
1943 | (aarch64_return_addr): Likewise. | |
1944 | * config/aarch64/aarch64.h (ASM_FPRINTF_EXTENSIONS): Remove. | |
1945 | ||
f6f94d94 JDA |
1946 | 2013-01-08 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
1947 | ||
1948 | * config/pa/pa.h (VAL_U6_BITS_P): Define. | |
1949 | (INT_U6_BITS): Likewise. | |
1950 | * config/pa/predicates.md (uint6_operand): New predicate. | |
1951 | (shift5_operand, shift6_operand): Likewise. | |
1952 | * config/pa/pa.md (lshrsi3, rotrsi3): Use shift5_operand instead of | |
1953 | arith32_operand. | |
1954 | (lshrdi3): Use shift6_operand. | |
1955 | (shrpsi4, shrpdi4): New insn patterns. | |
1956 | (extzv): Delete expander. | |
1957 | (extzvsi, extzvdi): New expanders. Use uint5_operand and uint6_operand | |
1958 | predicates in unamed zero extract patterns. Tighten common constraint. | |
1959 | (extv): Delete expander. | |
1960 | (extvsi, extvdi): New expanders. Use uint5_operand and uint6_operand | |
1961 | predicates in unamed sign extract patterns. Tighten common constraint. | |
1962 | (insv): Delete expander. | |
1963 | (insvsi, insvdi): New expanders. Use uint5_operand and uint6_operand | |
1964 | predicates in unamed insert patterns. Tighten common constraint. | |
1965 | Change uint32_operand predicate to uint6_operand predicate in unamed | |
1966 | DImode pattern to insert constant values of type 1...1xxxx. | |
1967 | ||
36b72910 JH |
1968 | 2013-01-04 Jan Hubicka <jh@suse.cz> |
1969 | ||
1970 | PR tree-optimization/55823 | |
7b0fe4f4 UB |
1971 | * ipa-prop.c (update_indirect_edges_after_inlining): Fix ordering |
1972 | issue. | |
36b72910 | 1973 | |
47876a2a | 1974 | 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
c6d851b9 JJ |
1975 | Uros Bizjak <ubizjak@gmail.com> |
1976 | ||
1977 | PR rtl-optimization/55845 | |
1978 | * df-problems.c (can_move_insns_across): Stop scanning at | |
1979 | volatile_insn_p source instruction or give up if | |
1980 | across_from .. across_to range contains any volatile_insn_p | |
1981 | instructions. | |
1982 | ||
4369c11e TB |
1983 | 2013-01-08 Tejas Belagod <tejas.belagod@arm.com> |
1984 | ||
7b0fe4f4 UB |
1985 | * config/aarch64/aarch64-simd.md (vec_init<mode>): New. |
1986 | * config/aarch64/aarch64-protos.h (aarch64_expand_vector_init): | |
1987 | Declare. | |
4369c11e | 1988 | * config/aarch64/aarch64.c (aarch64_simd_dup_constant, |
7b0fe4f4 | 1989 | aarch64_simd_make_constant, aarch64_expand_vector_init): New. |
4369c11e | 1990 | |
aeb7e7c1 JJ |
1991 | 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
1992 | ||
1993 | PR fortran/55341 | |
1994 | * asan.c (asan_clear_shadow): New function. | |
1995 | (asan_emit_stack_protection): Use it. | |
1996 | ||
a02ad1aa TB |
1997 | 2013-01-08 Tejas Belagod <tejas.belagod@arm.com> |
1998 | ||
1999 | * config/aarch64/aarch64-simd.md (aarch64_simd_vec_<su>mult_lo_<mode>, | |
2000 | aarch64_simd_vec_<su>mult_hi_<mode>): Separate instruction and operand | |
2001 | with tab instead of space. | |
2002 | ||
f90d87f5 NC |
2003 | 2013-01-08 Nick Clifton <nickc@redhat.com> |
2004 | ||
2005 | * config/rl78/rl78.c (rl78_expand_prologue): Always select | |
2006 | register bank 0 at the start of an interrupt handler. | |
83ffd964 NC |
2007 | * config/rl78/rl78.md (mulsi3_g13): Correct values for MDBL and |
2008 | MDBH registers. | |
f90d87f5 | 2009 | |
385eb93d JG |
2010 | 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com> |
2011 | ||
2012 | * config/aarch64/aarch64-simd.md | |
2013 | (aarch64_simd_bsl<mode>_internal): Add floating-point modes. | |
2014 | (aarch64_simd_bsl): Likewise. | |
2015 | (aarch64_vcond_internal<mode>): Likewise. | |
2016 | (vcond<mode><mode>): Likewise. | |
2017 | (aarch64_cm<cmp><mode>): Fix constraints, add new modes. | |
2018 | * config/aarch64/iterators.md (V_cmp_result): Add V2DF. | |
2019 | ||
4dcd1054 JG |
2020 | 2013-01-08 James Greenhalgh <james.greenhalgh@arm.com> |
2021 | ||
2022 | * config/aarch64/aarch64-builtins.c | |
2023 | (aarch64_builtin_vectorized_function): Handle sqrt, sqrtf. | |
2024 | ||
4267a4a6 MJ |
2025 | 2013-01-08 Martin Jambor <mjambor@suse.cz> |
2026 | ||
2027 | PR debug/55579 | |
2028 | * tree-sra.c (analyze_access_subtree): Return true also after | |
2029 | potentially creating a debug-only replacement. | |
2030 | ||
5f4e6de3 JJ |
2031 | 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
2032 | ||
3138f224 JJ |
2033 | PR middle-end/55890 |
2034 | * tree-ssa-ccp.c (evaluate_stmt): Use gimple_call_builtin_p. | |
2035 | ||
5f4e6de3 JJ |
2036 | PR tree-optimization/54120 |
2037 | * tree-vrp.c (range_fits_type_p): Don't allow | |
2038 | src_precision < precision from signed vr to unsigned_p | |
2039 | if vr->min or vr->max is negative. | |
2040 | (simplify_float_conversion_using_ranges): Test can_float_p | |
2041 | against CODE_FOR_nothing. | |
2042 | ||
f3ef18ff JJ |
2043 | 2013-01-08 Jakub Jelinek <jakub@redhat.com> |
2044 | Richard Biener <rguenther@suse.de> | |
2045 | ||
2046 | PR middle-end/55851 | |
2047 | * fold-const.c (int_binop_types_match_p): Allow all INTEGRAL_TYPE_P | |
2048 | types instead of just INTEGER_TYPE types. | |
2049 | ||
25c210f9 MK |
2050 | 2013-01-07 Mark Kettenis <kettenis@openbsd.org> |
2051 | ||
2052 | * config/i386/openbsdelf.h (LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT, | |
2053 | TF_SIZE): Define. | |
f90d87f5 | 2054 | |
81826a7b SE |
2055 | 2013-01-07 Steve Ellcey <sellcey@mips.com> |
2056 | ||
2057 | PR target/42661 | |
2058 | * config/mips/mips.opt: Change mad to mmad to match documentation. | |
2059 | ||
35678514 GJL |
2060 | 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
2061 | ||
2062 | PR target/55897 | |
2063 | * doc/extend.texi (AVR Named Address Spaces): __memx goes into | |
2064 | .progmemx.data now. | |
2065 | ||
e5669488 GJL |
2066 | 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
2067 | ||
2068 | PR target/55897 | |
2069 | * config/avr/avr.h (ADDR_SPACE_COUNT): New enum. | |
2070 | (avr_addrspace_t): Add .section_name field. | |
2071 | * config/avr/avr.c (progmem_section): Use ADDR_SPACE_COUNT as | |
2072 | array size. | |
2073 | (avr_addrspace): Same. Initialize .section_name. Remove last | |
2074 | NULL entry. Put __memx into .progmemx.data. | |
2075 | (progmem_section_prefix): Remove. | |
2076 | (avr_asm_init_sections): No need to initialize progmem_section. | |
2077 | (avr_asm_named_section): Use avr_addrspace[].section_name to get | |
2078 | section name prefix. | |
2079 | (avr_asm_select_section): Ditto. And use get_unnamed_section to | |
2080 | retrieve the progmem section. | |
2081 | * avr-c.c (avr_cpu_cpp_builtins): Use ADDR_SPACE_COUNT as loop | |
2082 | boundary to run over avr_addrspace[]. | |
2083 | (avr_register_target_pragmas): Ditto. | |
2084 | ||
656e6f37 JJ |
2085 | 2013-01-06 Jakub Jelinek <jakub@redhat.com> |
2086 | ||
2087 | * varasm.c (output_constant_def_contents): For asan_protect_global | |
2088 | protected strings, adjust DECL_ALIGN if needed, before testing for | |
2089 | anchored symbols. | |
2090 | (place_block_symbol): Adjust size for asan protected STRING_CSTs if | |
2091 | TREE_CONSTANT_POOL_ADDRESS_P. Increase alignment for asan protected | |
2092 | normal decls. | |
2093 | (output_object_block): For asan protected decls, emit asan padding | |
2094 | after their contents. | |
2095 | * asan.c (asan_protect_global): Don't check TREE_ASM_WRITTEN here. | |
2096 | (asan_finish_file): Test it here instead. | |
2097 | ||
6edc3e32 UB |
2098 | 2013-01-07 Nick Clifton <nickc@redhat.com> |
2099 | Matthias Klose <doko@debian.org> | |
2100 | Doug Kwan <dougkwan@google.com> | |
2101 | H.J. Lu <hongjiu.lu@intel.com> | |
b352afba NC |
2102 | |
2103 | PR driver/55470 | |
2104 | * collect2.c (main): Support -fuse-ld=bfd and -fuse-ld=gold. | |
2105 | ||
2106 | * common.opt: Add fuse-ld=bfd and fuse-ld=gold. | |
2107 | ||
2108 | * gcc.c (LINK_COMMAND_SPEC): Pass -fuse-ld=* to collect2. | |
2109 | ||
7b0fe4f4 | 2110 | * opts.c (comman_handle_option): Ignore -fuse-ld=bfd and -fuse-ld=gold. |
b352afba NC |
2111 | |
2112 | * doc/invoke.texi: Document -fuse-ld=bfd and -fuse-ld=gold. | |
2113 | ||
2a095093 GJL |
2114 | 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
2115 | ||
f3b503f4 | 2116 | PR target/54461 |
2a095093 GJL |
2117 | * doc/install.texi (Cross-Compiler-Specific Options): Document |
2118 | --with-avrlibc. | |
2119 | ||
383f9b34 TB |
2120 | 2013-01-07 Tejas Belagod <tejas.belagod@arm.com> |
2121 | ||
2122 | * config/aarch64/arm_neon.h (vmovn_high_is16, vmovn_high_s32, | |
2123 | vmovn_high_s64, vmovn_high_u16, vmovn_high_u32, vmovn_high_u64, | |
2124 | vqmovn_high_s16, vqmovn_high_s32, vqmovn_high_s64, vqmovn_high_u16, | |
2125 | vqmovn_high_u32, vqmovn_high_u64, vqmovun_high_s16, vqmovun_high_s32, | |
2126 | vqmovun_high_s64): Fix source operand number and update copyright. | |
2127 | ||
3626621a RB |
2128 | 2013-01-07 Richard Biener <rguenther@suse.de> |
2129 | ||
2130 | PR middle-end/55890 | |
2131 | * gimple.h (gimple_call_builtin_p): New overload. | |
2132 | * gimple.c (validate_call): New function. | |
2133 | (gimple_call_builtin_p): Likewise. | |
2134 | * tree-ssa-structalias.c (find_func_aliases_for_builtin_call): | |
2135 | Use gimple_call_builtin_p. | |
2136 | (find_func_clobbers): Likewise. | |
2137 | * tree-ssa-strlen.c (adjust_last_stmt): Likewise. | |
2138 | (strlen_optimize_stmt): Likewise. | |
2139 | ||
8b2ea410 JG |
2140 | 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com> |
2141 | ||
2142 | * config/aarch64/arm_neon.h (vld1_dup_*): Make argument const. | |
2143 | (vld1q_dup_*): Likewise. | |
2144 | (vld1_*): Likewise. | |
2145 | (vld1q_*): Likewise. | |
2146 | (vld1_lane_*): Likewise. | |
2147 | (vld1q_lane_*): Likewise. | |
2148 | ||
9713d329 RB |
2149 | 2013-01-07 Richard Biener <rguenther@suse.de> |
2150 | ||
2151 | * lto-streamer.h (LTO_minor_version): Bump to 2. | |
2152 | ||
3520f7cc JG |
2153 | 2013-01-07 James Greenhalgh <james.greenhalgh@arm.com> |
2154 | ||
2155 | * config/aarch64/aarch64-protos.h | |
2156 | (aarch64_const_double_zero_rtx_p): Rename to... | |
2157 | (aarch64_float_const_zero_rtx_p): ...this. | |
2158 | (aarch64_float_const_representable_p): New. | |
2159 | (aarch64_output_simd_mov_immediate): Likewise. | |
2160 | * config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): Refactor | |
2161 | move immediate case. | |
2162 | * config/aarch64/aarch64.c | |
2163 | (aarch64_const_double_zero_rtx_p): Rename to... | |
2164 | (aarch64_float_const_zero_rtx_p): ...this. | |
2165 | (aarch64_print_operand): Allow printing of new constants. | |
2166 | (aarch64_valid_floating_const): New. | |
2167 | (aarch64_legitimate_constant_p): Check for valid floating-point | |
2168 | constants. | |
2169 | (aarch64_simd_valid_immediate): Likewise. | |
2170 | (aarch64_vect_float_const_representable_p): New. | |
2171 | (aarch64_float_const_representable_p): Likewise. | |
2172 | (aarch64_simd_imm_zero_p): Also allow for floating-point 0.0. | |
2173 | (aarch64_output_simd_mov_immediate): New. | |
2174 | * config/aarch64/aarch64.md (*movsf_aarch64): Add new alternative. | |
2175 | (*movdf_aarch64): Likewise. | |
2176 | * config/aarch64/constraints.md (Ufc): New. | |
2177 | (Y): call aarch64_float_const_zero_rtx. | |
2178 | * config/aarch64/predicates.md (aarch64_fp_compare_operand): New. | |
2179 | ||
e167c04d RB |
2180 | 2013-01-07 Richard Biener <rguenther@suse.de> |
2181 | ||
2182 | PR tree-optimization/55888 | |
2183 | PR tree-optimization/55862 | |
2184 | * tree-ssa-pre.c (phi_translate_1): Revert previous change. | |
2185 | (valid_in_sets): Check if a NAME has a leader in AVAIL_OUT, | |
2186 | not if it is contained therein. | |
2187 | ||
0139aaab GJL |
2188 | 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
2189 | ||
2190 | * config/avr/t-avr: Typo. | |
2191 | ||
4a176b23 GJL |
2192 | 2013-01-07 Georg-Johann Lay <avr@gjlay.de> |
2193 | ||
2194 | PR55243 | |
2195 | * config/avr/t-avr: Don't automatically rebuild | |
2196 | $(srcdir)/config/avr/t-multilib | |
2197 | $(srcdir)/config/avr/avr-tables.opt | |
2198 | $(srcdir)/doc/avr-mmcu.texi | |
2199 | (avr-mcus): New phony target to build them on request. | |
2200 | (s-avr-mlib, s-avr-mmcu-texi): Remove. | |
2201 | * avr/avr-mcus.def: Adjust comments. | |
2202 | ||
c7afdc98 UB |
2203 | 2013-01-07 Uros Bizjak <ubizjak@gmail.com> |
2204 | ||
2205 | * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Remove. | |
2206 | ||
1ab05c31 RS |
2207 | 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com> |
2208 | ||
2209 | * file-find.c, file-find.h, realmpfr.c: Add FSF as copyright holder. | |
2210 | ||
488e3acc RS |
2211 | 2013-01-06 Richard Sandiford <rdsandiford@googlemail.com> |
2212 | ||
2213 | * config/tilepro/gen-mul-tables.cc: Put copyright on one line. | |
2214 | ||
a89599d2 DE |
2215 | 2013-01-05 David Edelsohn <dje.gcc@gmail.com> |
2216 | ||
2217 | * config/rs6000/aix53.h (LIB_SPEC): Add -lpthreads when compiling | |
2218 | to generate profiling. | |
2219 | * config/rs6000/aix64.h (LIB_SPEC): Same. | |
2220 | ||
70f09188 AP |
2221 | 2013-01-04 Andrew Pinski <apinski@cavium.com> |
2222 | ||
2223 | * config/aarch64/aarch64.c (aarch64_fixed_condition_code_regs): | |
2224 | New function. | |
2225 | (TARGET_FIXED_CONDITION_CODE_REGS): Define. | |
2226 | ||
918d445f UB |
2227 | 2013-01-04 Uros Bizjak <ubizjak@gmail.com> |
2228 | ||
2229 | * config/i386/i386.c (ix86_legitimize_address): Call convert_to_mode | |
2230 | unconditionally. | |
2231 | (ix86_expand_move): Ditto. | |
2232 | (ix86_zero_extend_to_Pmode): Ditto. | |
2233 | (ix86_expand_call): Ditto. | |
2234 | (ix86_expand_special_args_builtin): Ditto. | |
2235 | (ix86_expand_builtin): Ditto. | |
2236 | ||
361618ec RB |
2237 | 2013-01-04 Richard Biener <rguenther@suse.de> |
2238 | ||
2239 | PR tree-optimization/55862 | |
2240 | * tree-ssa-pre.c (phi_translate_1): Valueize SSA names after | |
2241 | translating them through PHI nodes. | |
2242 | ||
87eab554 MJ |
2243 | 2013-01-04 Martin Jambor <mjambor@suse.cz> |
2244 | ||
2245 | PR tree-optimization/55755 | |
2246 | * tree-sra.c (sra_modify_assign): Do not check that an access has no | |
2247 | children when trying to avoid producing a VIEW_CONVERT_EXPR. | |
2248 | ||
33879b9f MP |
2249 | 2013-01-04 Marek Polacek <polacek@redhat.com> |
2250 | ||
2251 | PR middle-end/55859 | |
2252 | * opts.c (default_options_optimization): Clarify error message. | |
2253 | ||
3068819a RB |
2254 | 2013-01-04 Richard Biener <rguenther@suse.de> |
2255 | ||
2256 | PR middle-end/55863 | |
2257 | * fold-const.c (split_tree): Undo -X - 1 to ~X folding for | |
2258 | reassociation. | |
2259 | ||
0e4ae794 JDA |
2260 | 2013-01-03 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2261 | ||
2262 | PR target/53789 | |
2263 | * config/pa/pa.md (movsi): Revert previous change. | |
e58d2e48 JDA |
2264 | * config/pa/pa.c (pa_legitimate_constant_p): Reject all TLS symbol |
2265 | references. | |
0e4ae794 | 2266 | |
65c88cef RH |
2267 | 2013-01-03 Richard Henderson <rth@redhat.com> |
2268 | ||
2269 | * config/i386/i386.c (ix86_expand_move): Always assign to op1 | |
2270 | after eliminating TLS symbols. | |
2271 | ||
8ac16127 MG |
2272 | 2013-01-03 Marc Glisse <marc.glisse@inria.fr> |
2273 | ||
2274 | PR bootstrap/50167 | |
2275 | * graphite-interchange.c (pdr_stride_in_loop): Use gmp_fprintf. | |
2276 | * graphite-poly.c (debug_gmp_value): Likewise. | |
2277 | ||
bb664f09 UB |
2278 | 2013-01-03 Uros Bizjak <ubizjak@gmail.com> |
2279 | ||
2280 | PR target/55712 | |
2281 | * config/i386/i386-c.c (ix86_target_macros_internal): Depending on | |
2282 | selected code model, define __code_mode_small__, __code_model_medium__, | |
2283 | __code_model_large__, __code_model_32__ or __code_model_kernel__. | |
2284 | * config/i386/cpuid.h (__cpuid, __cpuid_count) [__i386__]: Prefix | |
2285 | xchg temporary register with %k. Declare temporary register as | |
2286 | early clobbered. | |
2287 | [__x86_64__]: For medium and large code models, preserve %rbx register. | |
2288 | ||
bcf1ef00 RB |
2289 | 2013-01-03 Richard Biener <rguenther@suse.de> |
2290 | ||
0506634a | 2291 | * tree-data-ref.c (dump_conflict_function): Use less vertical spacing. |
bcf1ef00 RB |
2292 | (dump_subscript): Adjust. |
2293 | (finalize_ddr_dependent): Do not dump redundant info. | |
2294 | (analyze_siv_subscript): Adjust. | |
2295 | (subscript_dependence_tester): Likewise. | |
2296 | (compute_affine_dependence): Likewise. | |
2297 | ||
59fd17e3 RB |
2298 | 2013-01-03 Richard Biener <rguenther@suse.de> |
2299 | ||
2300 | Revert | |
2301 | 2013-01-03 Richard Biener <rguenther@suse.de> | |
2302 | ||
2303 | PR tree-optimization/55857 | |
2304 | * tree-vect-stmts.c (vectorizable_load): Do not setup | |
2305 | re-alignment for invariant loads. | |
2306 | ||
2307 | 2013-01-02 Richard Biener <rguenther@suse.de> | |
2308 | ||
2309 | * tree-vect-stmts.c (vectorizable_load): When vectorizing an | |
0506634a | 2310 | invariant load do not generate a vector load from the scalar location. |
59fd17e3 | 2311 | |
595c2679 RB |
2312 | 2013-01-03 Richard Biener <rguenther@suse.de> |
2313 | ||
2314 | * tree-vect-loop.c (vect_analyze_loop_form): Clarify reason | |
2315 | for not vectorizing. | |
2316 | * tree-vect-data-refs.c (vect_create_addr_base_for_vector_ref): Do | |
2317 | not build INDIRECT_REFs, call get_name once only. | |
2318 | (vect_create_data_ref_ptr): Likewise. Dump base object kind | |
2319 | based on DR_BASE_OBJECT, not DR_BASE_ADDRESS. | |
2320 | ||
90bb7d7a RB |
2321 | 2013-01-03 Richard Biener <rguenther@suse.de> |
2322 | ||
2323 | PR tree-optimization/55857 | |
2324 | * tree-vect-stmts.c (vectorizable_load): Do not setup | |
2325 | re-alignment for invariant loads. | |
2326 | ||
f09b77ca RB |
2327 | 2013-01-03 Richard Biener <rguenther@suse.de> |
2328 | ||
2329 | PR lto/55848 | |
2330 | * lto-symtab.c (lto_symtab_merge_decls_1): As last resort, always | |
2331 | prefer a built-in decl. | |
2332 | ||
3461a16e JJ |
2333 | 2013-01-03 Jakub Jelinek <jakub@redhat.com> |
2334 | ||
df8e2b4f JJ |
2335 | * gcc.c (process_command): Update copyright notice dates. |
2336 | * gcov.c (print_version): Likewise. | |
2337 | * gcov-dump.c (print_version): Likewise. | |
2338 | ||
3461a16e JJ |
2339 | PR rtl-optimization/55838 |
2340 | * loop-iv.c (iv_number_of_iterations): Call lowpart_subreg on | |
2341 | iv0.step, iv1.step and step. | |
2342 | ||
8b5546d6 JJ |
2343 | 2013-01-03 Jakub Jelinek <jakub@redhat.com> |
2344 | Marc Glisse <marc.glisse@inria.fr> | |
2345 | ||
2346 | PR tree-optimization/55832 | |
2347 | * fold-const.c (fold_binary_loc): For ABS_EXPR<x> >= 0 and | |
2348 | ABS_EXPR<x> < 0 folding use constant_boolean_node instead of | |
2349 | integer_{one,zero}_node. | |
2350 | ||
8ab1d2e9 JJ |
2351 | 2013-01-03 Jakub Jelinek <jakub@redhat.com> |
2352 | ||
2353 | PR debug/54402 | |
2354 | * params.def (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE): New param. | |
2355 | * var-tracking.c (reverse_op): Don't add reverse ops to | |
2356 | VALUEs that have already | |
0506634a | 2357 | PARAM_VALUE (PARAM_MAX_VARTRACK_REVERSE_OP_SIZE) or longer locs list. |
8ab1d2e9 | 2358 | |
5b9ad1d4 GP |
2359 | 2013-01-02 Gerald Pfeifer <gerald@pfeifer.com> |
2360 | ||
2361 | * doc/contrib.texi: Note years as release manager for Mark Mitchell. | |
2362 | ||
e25a6711 TJ |
2363 | 2013-01-02 Teresa Johnson <tejohnson@google.com> |
2364 | ||
2365 | * dumpfile.c (dump_loc): Print filename with location. | |
2366 | * tree-ssa-loop-ivcanon.c (try_unroll_loop_completely): Use | |
2367 | new location_t parameter to emit complete unroll message with | |
2368 | new dump framework. | |
2369 | (canonicalize_loop_induction_variables): Compute loops location | |
2370 | and pass to try_unroll_loop_completely. | |
2371 | * loop-unroll.c (report_unroll_peel): New function. | |
2372 | (peel_loops_completely): Use new dump format with location | |
2373 | for main dumpfile message, and invoke report_unroll_peel on success. | |
2374 | (decide_unrolling_and_peeling): Ditto. | |
2375 | (decide_peel_once_rolling): Remove old dumpfile message subsumed | |
2376 | by report_unroll_peel. | |
2377 | (decide_peel_completely): Ditto. | |
2378 | (decide_unroll_constant_iterations): Ditto. | |
2379 | (decide_unroll_runtime_iterations): Ditto. | |
2380 | (decide_peel_simple): Ditto. | |
2381 | (decide_unroll_stupid): Ditto. | |
2382 | * cfgloop.c (get_loop_location): New function. | |
2383 | * cfgloop.h (get_loop_location): Declare. | |
2384 | ||
77878621 ST |
2385 | 2013-01-02 Sriraman Tallam <tmsriram@google.com> |
2386 | ||
2387 | * config/i386/i386.c (fold_builtin_cpu): Remove unnecessary checks for | |
2388 | NULL. | |
2389 | ||
9e65d03e JDA |
2390 | 2013-01-02 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> |
2391 | ||
2392 | PR middle-end/55198 | |
2393 | * expr.c (expand_expr_real_1): Don't use bitfield extraction for non | |
2394 | BLKmode objects when EXPAND_MEMORY is specified. | |
2395 | ||
6a7da30f ST |
2396 | 2013-01-02 Sriraman Tallam <tmsriram@google.com> |
2397 | ||
2398 | * config/i386/i386.c (ix86_get_function_versions_dispatcher): Fix bug | |
2399 | in loop predicate. | |
2400 | (fold_builtin_cpu): Do not share cpu model decls across statements. | |
2401 | ||
e78167f2 JM |
2402 | 2013-01-02 Jason Merrill <jason@redhat.com> |
2403 | ||
2404 | PR c++/55804 | |
2405 | * tree.c (build_array_type_1): Revert earlier change. | |
2406 | ||
8c075fb4 YZ |
2407 | 2013-01-02 Yufeng Zhang <yufeng.zhang@arm.com> |
2408 | ||
2409 | * config/aarch64/aarch64-cores.def: Add entries for "cortex-a53" and | |
2410 | "cortex-a57". | |
2411 | * config/aarch64/aarch64-tune.md: Re-generate. | |
2412 | ||
0682ed3e RB |
2413 | 2013-01-02 Richard Biener <rguenther@suse.de> |
2414 | ||
2415 | * tree-vect-stmts.c (vectorizable_load): When vectorizing an | |
0506634a | 2416 | invariant load do not generate a vector load from the scalar location. |
0682ed3e | 2417 | |
b8f6a302 RB |
2418 | 2013-01-02 Richard Biener <rguenther@suse.de> |
2419 | ||
2420 | PR bootstrap/55784 | |
2421 | * configure.ac: Add $GMPINC to CFLAGS/CXXFLAGS. | |
2422 | * configure: Regenerate. | |
2423 | ||
04b80dbb RS |
2424 | 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
2425 | ||
2426 | * builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2) | |
2427 | (expand_builtin_mathfn_ternary, expand_builtin_mathfn_3) | |
2428 | (expand_builtin_int_roundingfn_2): Keep the original target around | |
2429 | for the fallback case. | |
2430 | ||
635b0b0c RS |
2431 | 2013-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
2432 | ||
2433 | * tree-vrp.c (range_fits_type_p): Require the MSB of the double_int | |
2434 | to be clear for sign changes. | |
2435 | ||
42d57399 JH |
2436 | 2013-01-01 Jan Hubicka <jh@suse.cz> |
2437 | ||
2438 | * ipa-inline-analysis.c: Fix formatting. | |
2439 | ||
5bb6669d JJ |
2440 | 2013-01-01 Jakub Jelinek <jakub@redhat.com> |
2441 | ||
2442 | PR tree-optimization/55831 | |
2443 | * tree-vect-loop.c (get_initial_def_for_induction): Use | |
2444 | gsi_after_labels instead of gsi_start_bb. | |
ad41bd84 | 2445 | \f |
86a2db33 | 2446 | Copyright (C) 2013 Free Software Foundation, Inc. |
ad41bd84 JM |
2447 | |
2448 | Copying and distribution of this file, with or without modification, | |
2449 | are permitted in any medium without royalty provided the copyright | |
2450 | notice and this notice are preserved. |