]>
Commit | Line | Data |
---|---|---|
0009b473 RS |
1 | 2009-01-04 Richard Sandiford <rdsandiford@googlemail.com> |
2 | ||
3 | * tree.def (LSHIFT_EXPR, RSHIFT_EXPR): Add commentary. | |
4 | * tree-cfg.c (verify_gimple_assign_binary): Allow shifts of | |
5 | fixed-point types, and vectors of the same. | |
6 | ||
4f24c6d6 RS |
7 | 2009-01-04 Richard Sandiford <rdsandiford@googlemail.com> |
8 | ||
9 | * config/mips/sync.md (*mb_barrier): Rename to... | |
10 | (*memory_barrier): ...this. | |
11 | ||
1df48f5c JW |
12 | 2009-01-04 Jonathan Wakely <jwakely.gcc@gmail.com> |
13 | ||
14 | * doc/extend.texi (Function Attributes): Move @cindex after @item | |
15 | for 'artifical' and 'flatten'. Fix grammar for 'externally_visible' | |
16 | and put in alphabetical order. Fix 'target' name and put in order. | |
17 | * doc/invoke.texi (-Wstrict-null-sentinel, -fipa-matrix-reorg): Fix | |
18 | typos. | |
19 | ||
1a8c13b3 UB |
20 | 2009-01-04 Uros Bizjak <ubizjak@gmail.com> |
21 | ||
22 | * config/s390/s390.md (UNSPEC_MB): Rename from UNSPECV_MB. | |
23 | (memory_barrier): Expand as unspec instead of unspec_volatile. | |
24 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
25 | (*memory_barrier): Define as unspec instead of unspec_volatile. | |
26 | Use (match_dup 0) as input operand. | |
27 | ||
28 | * config/sparc/sparc.md (UNSPEC_MEMBAR): Rename from UNSPECV_MEMBAR. | |
29 | * config/sparc/sync.md (memory_barrier): Expand as unspec instead of | |
30 | unspec_volatile. Remove mem:BLK from insn operands. Use Pmode | |
31 | scratch register. Remove operand 1. | |
32 | (*stbar): Define as unspec instead of unspec_volatile. | |
33 | Use (match_dup 0) as input operand, remove (const_int 8). | |
34 | (*membar): Define as unspec instead of unspec_volatile. | |
35 | Use (match_dup 0) as input operand, remove input operand 2. | |
36 | ||
37 | * config/xtensa/xtensa.md (UNSPEC_MEMW): Rename from UNSPECV_MEMW. | |
38 | (memory_barrier): Expand as unspec instead of unspec_volatile. | |
39 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
40 | (*memory_barrier): Define as unspec instead of unspec_volatile. | |
41 | Use (match_dup 0) as input operand. | |
42 | ||
43 | * config/ia64/sync.md (memory_barrier): Redefine as expander pattern. | |
44 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
45 | Set volatile flag on operand 0. | |
46 | (*memory_barrier): New insn pattern. | |
47 | ||
48 | * config/rs6000/sync.md (memory_barrier): Remove mem:BLK from | |
49 | insn operands. | |
50 | (*memory_barrier): Use (match_dup 0) as input operand. | |
51 | ||
52 | * config/mips/sync.md (memory_barrier): Redefine as expander pattern. | |
53 | Remove mem:BLK from insn operands. Use Pmode scratch register. | |
54 | Set volatile flag on operand 0. | |
55 | (*memory_barrier): New insn pattern. | |
56 | ||
57 | * config/alpha/sync.md (*memory_barrier): Rename from *mb_internal. | |
58 | ||
fb0703f7 SB |
59 | 2009-01-04 Steven Bosscher <steven@gcc.gnu.org> |
60 | ||
61 | PR middle-end/38586 | |
62 | * function.c (struct temp_slot): Move to the section of the file | |
63 | that deals with temp slots. Remove field 'address'. | |
64 | (temp_slot_address_table): New hash table of address -> temp slot. | |
65 | (struct temp_slot_address_entry): New struct, items for the table. | |
66 | (temp_slot_address_compute_hash, temp_slot_address_hash, | |
67 | temp_slot_address_eq, insert_temp_slot_address): Support functions | |
68 | for the new table. | |
69 | (find_temp_slot_from_address): Rewrite to use the new hash table. | |
70 | (remove_unused_temp_slot_addresses): Remove addresses of temp | |
71 | slots that have been made available. | |
72 | (remove_unused_temp_slot_addresses_1): Call-back for htab_traverse, | |
73 | worker function for remove_unused_temp_slot_addresses. | |
74 | (assign_stack_temp_for_type): Don't clear the temp slot address list. | |
75 | Add the temp slot address to the address -> temp slot map. | |
76 | (update_temp_slot_address): Update via insert_temp_slot_address. | |
77 | (free_temp_slots): Call remove_unused_temp_slot_addresses. | |
78 | (pop_temp_slots): Likewise. | |
79 | (init_temp_slots): Allocate the address -> temp slot map, or empty | |
80 | the map if it is already allocated. | |
81 | (prepare_function_start): Initialize temp slot processing. | |
82 | ||
b5a430f3 SB |
83 | 2009-01-04 Steven Bosscher <steven@gcc.gnu.org> |
84 | ||
85 | PR middle-end/38584 | |
86 | * cfgexpand.c (estimate_stack_frame_size): Simplify the estimate: | |
87 | Calculate the size of all stack vars assuming no packing of stack | |
88 | vars will happen, replacing a quadratic algorithm with a linear one. | |
89 | ||
5d560619 JJ |
90 | 2009-01-03 Jakub Jelinek <jakub@redhat.com> |
91 | ||
92 | PR target/38707 | |
93 | * expmed.c (store_bit_field_1): Don't modify op0 if movstrict insn | |
94 | can't be used. | |
95 | ||
953a7caa DN |
96 | 2009-01-03 Diego Novillo <dnovillo@google.com> |
97 | ||
98 | * doc/contrib.texi: Update contributions. | |
99 | ||
5f26a230 JJ |
100 | 2009-01-03 Jakub Jelinek <jakub@redhat.com> |
101 | ||
493aa551 JJ |
102 | PR c++/38705 |
103 | * builtins.c (fold_builtin_memory_op): Give up if either operand | |
104 | is volatile. Set srctype or desttype to non-qualified version | |
105 | of the other type. | |
106 | ||
5f26a230 JJ |
107 | PR c/38700 |
108 | * builtins.c (fold_builtin_expect): Only check DECL_WEAK for VAR_DECLs | |
109 | and FUNCTION_DECLs. | |
110 | ||
fafe34f9 KZ |
111 | 2009-01-02 Kenneth Zadeck <zadeck@naturalbridge.com> |
112 | ||
113 | PR rtl-optimization/35805 | |
114 | * df-problems.c (df_lr_finalize): Add recursive call to resolve lr | |
115 | problem if fast dce is able to remove any instructions. | |
116 | * dce.c (dce_process_block): Fix dump message. | |
117 | ||
0b355794 MM |
118 | 2009-01-02 Mark Mitchell <mark@codesourcery.com> |
119 | ||
120 | PR 33649 | |
121 | * tree-ssa-pre.c (compute_antic): Correct loop bounds. | |
122 | ||
0cf0d02b JJ |
123 | 2009-01-02 Jakub Jelinek <jakub@redhat.com> |
124 | ||
125 | PR middle-end/38690 | |
126 | * tree-flow.h (op_code_prio, op_prio): New prototypes. | |
127 | * tree-pretty-print.c (op_code_prio): New function. | |
128 | (op_prio): No longer static. Use op_code_prio. | |
129 | * gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs): | |
130 | Use op_prio and op_code_prio to determine if () should be | |
131 | printed around operand(s) or not. | |
132 | ||
133 | * gimple-pretty-print.c (dump_unary_rhs, dump_binary_rhs, | |
134 | dump_gimple_call, dump_gimple_switch, dump_gimple_cond, | |
135 | dump_gimple_label, dump_gimple_try, dump_symbols, dump_gimple_phi, | |
136 | dump_gimple_mem_ops, dump_bb_header, dump_bb_end, pp_cfg_jump): Use | |
137 | pp_character instead of pp_string for single letter printing. | |
138 | ||
e3606f3b RS |
139 | 2009-01-02 Richard Sandiford <rdsandiford@googlemail.com> |
140 | ||
141 | * doc/extend.texi: Fix '#pragma GCC option' typo. | |
142 | ||
00f39bd5 RG |
143 | 2009-01-02 Richard Guenther <rguenther@suse.de> |
144 | ||
a5f061dc RG |
145 | * doc/install.texi (--enable-checking): Mention different |
146 | default for stage1. | |
147 | (--enable-stage1-checking): Document. | |
00f39bd5 | 148 | |
26de0bcb AP |
149 | 2009-01-01 Andrew Pinski <pinskia@gmail.com> |
150 | ||
151 | PR middle-end/30142 | |
152 | * tree-cfg.c (verify_expr): Add INDIRECT_REF case. Change MODIFY_EXPR | |
153 | case to be an error. | |
154 | ||
7a7d8fab BE |
155 | 2009-01-02 Ben Elliston <bje@au.ibm.com> |
156 | ||
157 | * config/fp-bit.h (pack_d): Constify argument. | |
158 | * config/fp-bit.c (makenan): Constify return type. Remove casts. | |
159 | (isnan): Constify argument. | |
160 | (isinf): Likewise. | |
161 | (iszero): Likewise. | |
162 | (pack_d): Likewise. | |
163 | (_fpadd_parts): Constify return type. | |
164 | (_fpmul_parts): Likewise. | |
165 | (_fpdiv_parts): Likewise. | |
166 | ||
b295aee2 JJ |
167 | 2009-01-01 Jakub Jelinek <jakub@redhat.com> |
168 | ||
169 | PR c/36489 | |
170 | * c-typeck.c (add_pending_init): Add IMPLICIT argument. Only | |
171 | warn about overwriting initializer with side-effects or | |
172 | -Woverride-init if !IMPLICIT. | |
173 | (output_init_element): Likewise. Pass IMPLICIT down to | |
174 | add_pending_init. | |
175 | (process_init_element): Add IMPLICIT argument. Pass it down | |
176 | to output_init_element. | |
177 | (push_init_element, pop_init_level, set_designator): Adjust | |
178 | process_init_element callers. | |
179 | (set_nonincremental_init, set_nonincremental_init_from_string): | |
180 | Adjust add_pending_init callers. | |
181 | (output_pending_init_elements): Adjust output_init_element callers. | |
182 | * c-tree.h (process_init_element): Adjust prototype. | |
183 | * c-parser.c (c_parser_initelt, c_parser_initval): Adjust | |
184 | process_init_element callers. |