]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/ChangeLog
Fix solaris2 (without GNU install installed) install failure.
[thirdparty/gcc.git] / gcc / ChangeLog
1 Sun Aug 24 17:22:21 1997 Jim Wilson <wilson@cygnus.com>
2
3 * Makefile.in (install-info): Don't cd into srcdir. Add srcdir to
4 filenames. Use sed to extract base filename for install.
5
6 Sat Aug 23 18:19:40 1997 John F. Carr <jfc@mit.edu>
7
8 * unroll.c (find_splittable_givs): Only share if two givs have the
9 same add and multiply values.
10
11 Sat Aug 23 14:36:27 1997 Jim Wilson <wilson@cygnus.com>
12
13 * m68k/next.h (GO_IF_INDEXABLE_BASE): Fix typo in undef.
14 * m68k/m68kemb.h (LIB_SPEC): Add missing comment end before it.
15
16 Sat Aug 23 00:18:22 1997 Jeffrey A Law (law@cygnus.com)
17
18 * pa.c (pa_reorg): Always put begin_brtab and end_brtab insns
19 around branch tables.
20 * pa.md (begin_brtab, end_brtab): Only emit the .begin_brtab
21 and .end_brtab directives if TARGET_GAS.
22
23 Fri Aug 22 14:05:55 1997 Jim Wilson <wilson@cygnus.com>
24
25 * alias.c (true_dependence): Pass x_addr not x to varies.
26
27 * acconfig.h (NEED_DECLARATION_CALLOC): Add.
28 * configure.in: Add GCC_NEED_DECLARATION call for calloc.
29 * rs6000/xm-rs6000.h (malloc, realloc, calloc, free): Delete
30 declarations.
31 * config.in, configure: Regenerate.
32
33 Thu Aug 21 23:52:16 1997 John F. Carr <jfc@mit.edu>
34
35 * alias.c (find_base_value): Improve handling of PLUS, MINUS, and
36 LO_SUM.
37 (record_set): Handle LO_SUM like PLUS.
38 (init_alias_analysis): When following chains of base addresses,
39 do not stop on reaching a hard register.
40
41 Thu Aug 21 20:17:37 1997 Jeffrey A Law (law@cygnus.com)
42
43 * version.c: Bump for new snapshot.
44
45 Thu Aug 21 17:28:00 1997 Jim Wilson <wilson@cygnus.com>
46
47 * alpha.h (ARCH_ASM_FILE_START): Define.
48 (ASM_FILE_START): Use ARCH_ASM_FILE_START.
49 * osf12.h, osf2or3.h (ARCH_ASM_FILE_START): Redefine to null string.
50
51 Thu Aug 21 10:22:19 1997 Jeffrey A Law (law@cygnus.com)
52
53 * Makefile.in (install-common): Put gcov comment at start of line.
54
55 Wed Aug 20 22:47:33 1997 Jeffrey A Law (law@cygnus.com)
56
57 * alias.c (init_alias_analysis): When simplifying the reg_base_value
58 array, simplify entries for hard registers too.
59
60 Wed Aug 20 12:35:47 1997 Dave Love <d.love@dl.ac.uk>
61
62 * dwarf2.h (enum dwarf_call_frame_info): Remove trailing comma from
63 list.
64
65 Wed Aug 20 11:58:33 1997 Jim Wilson <wilson@cygnus.com>
66
67 * stmt.c (start_cleanup_deferal, end_cleanup_deferal): Test
68 block_stack before dereferencing it.
69
70 Wed Aug 20 11:57:11 1997 Michael Meissner <meissner@cygnus.com>
71
72 * rs6000.h (ISSUE_RATE): Define instead of MACHINE_issue_rate.
73
74 Tue Aug 19 17:10:56 1997 Jason Merrill <jason@yorick.cygnus.com>
75
76 * cplus-dem.c: Add 'extern' to prepends_underscore.
77
78 Tue Aug 19 09:34:57 1997 Jeffrey A Law (law@cygnus.com)
79
80 * haifa-sched.c (ISSUE_RATE): Renamed from MACHINE_issue_rate.
81 (get_issue_rate): Delete.
82 * pa.h (ISSUE_RATE): Define.
83
84 * configure.in: Turn on haifa by default for the PA.
85 * configure: Rebuilt.
86 * pa.c (override_options): Accept -mschedule=7200 option.
87 (pa_adjust_cost): No longer need to scale costs for newer
88 processors.
89 * pa.h (enum processor_type): Add PROCESSOR_7200.
90 * pa.md: Revamp scheduling parameters to work better with
91 haifa. Add scheduling parameters for the 7200.
92
93 * haifa-sched.c (move_insn): Reemit notes for SCHED_GROUP_P
94 insns too.
95 (schedule_block): When adjusting basic_block_{head,end}, account
96 for movement of SCHED_GROUP_P insns too.
97
98 * haifa-sched.c (debug_dependencies): Fix thinko.
99
100 * Makefile.in (EXPECT, RUNTEST, RUNTESTFLAGS): Define.
101 (site.exp, check, check-g++, check-gcc): New targets.
102
103 * haifa-sched.c: Make lots of variables static.
104
105 Tue Aug 19 07:18:34 1997 H.J. Lu (hjl@gnu.ai.mit.edu)
106
107 * expr.h, real.h: Finish prototyping.
108
109 Mon Aug 18 21:49:02 1997 Jim Wilson <wilson@cygnus.com>
110
111 * reload.c (find_reloads): Add code to convert RELOAD_FOR_OPADDR_ADDR
112 reloads to RELOAD_FOR_OPERAND_ADDRESS reloads.
113 * reload1.c: Undo bugfix from Aug 11.
114
115 Mon Aug 18 17:39:02 1997 Mike Meissner <meissner@cygnus.com>
116
117 * configure.in ({powerpc,rs6000}*-*-*, --with-cpu): Remove single
118 quotes around the name.
119 * configure: Regenerate.
120
121 Mon Aug 18 13:46:47 1997 Jim Wilson <wilson@cygnus.com>
122
123 * Makefile.in (stmp-multilib-sub): Fix typo in last change.
124
125 Thu Aug 7 10:33:13 1997 Manfred Hollstein <manfred@s-direktnet.de>
126
127 * Makefile.in (sub-makes): Pass the current value of LANGUAGES down
128 to sub-makes to avoid building more passes than the user might have
129 requested on the command line.
130
131 Sun Aug 17 15:42:17 1997 Dave Love (d.love@dl.ac.uk)
132
133 * configure.in: Expurgate `broken_install' (install is
134 autoconfed).
135
136 * configure.lang: Substitute autoconfed ${INSTALL} (not currently
137 relevant).
138
139 Sat Aug 16 01:08:12 1997 Jeffrey A Law (law@cygnus.com)
140
141 * loop.c (is_power_of_2, is_conditional_branch): Delete unused
142 functions and declarations.
143 (analyze_loop_iterations): Use condjump_p.
144 (insert_bct): Likewise. Use exact_log2.
145
146 Fri Aug 15 23:48:32 1997 Jeffrey A Law (law@cygnus.com)
147
148 * haifa-sched.c (find_post_sched_live): Call FREE_REG_SET as needed.
149 (schedule_region): Likewise.
150 (schedule_insns): Likewise.
151
152 * PROJECTS: Update with Haifa stuff.
153
154 Fri Aug 15 12:49:56 1997 Jeffrey A Law (law@cygnus.com)
155
156 * version.c: Change the version string to look like:
157 egcs-2.90.00 970814 (gcc2-970802 experimental).
158
159 * loop.c (is_conditional_branch): Make definition match declaration.
160
161 * gcc.c: Take out experimental snapshot warning message.
162
163 Fri Aug 15 13:43:39 1997 Michael Meissner <meissner@cygnus.com>
164
165 * haifa-sched.c (debug_dependencies): Use GET_NOTE_INSN_NAME to
166 print out the names of the notes. Print out the name of the insn
167 that is not a note, and not an {,CALL_,JUMP_}INSN.
168
169 Wed Aug 13 01:03:37 1997 Doug Evans <dje@canuck.cygnus.com>
170
171 * configure.in (haifa configury): Fix typo.
172 * configure: Regenerate.
173
174 Tue Aug 12 10:20:36 1997 Jeffrey A Law (law@cygnus.com)
175
176 * version.c: Bump version to "gcc-3.0.0 970802 experimental".
177
178 * gcc.info*: Rebuilt.
179
180 * COPYING.g77, README.g77: New files.
181 * real.c (ereal_unto_float, ereal_unto_double): New functions.
182 * real.h (ereal_unto_float, ereal_unto_double): Declare them.
183 (REAL_VALUE_UNTO_TARGET_DOUBLE, REAL_VALUE_UNTO_TARGET_SINGLE): Define.
184
185 Mon Aug 11 14:50:55 1997 Jeffrey A Law (law@cygnus.com)
186
187 * Integrate Haifa instruction scheduler.
188 * Makefile.in (ALL_CFLAGS): Add SCHED_CFLAGS. Prefix all references
189 to sched with $(SCHED_CFLAGS.
190 * configure.in: Handle --enable-haifa.
191 * configure: Rebuilt.
192 * flags.h: Add new flags for haifa instruction scheduler.
193 * genattrtab.c (expand_units): For haifa, don't subtract one
194 when computing blockage.
195 * toplev.h (flag_schedule_interblock): Haifa scheduler flag.
196 (flag_schedule_speculative): Ditto.
197 (flag_schedule_speculative_load): Ditto.
198 (flag_schedule_speculative_load_dangerous): Ditto.
199 (flag_schedule_reverse_before_reload): Ditto.
200 (flag_schedule_reverse_after_reload): Ditto.
201 (flag_branch_on_count_reg): Ditto.
202 (f_options): Add Haifa switches.
203 (main): Turn off some Haifa options if appropriate macro is
204 defined. Process Haifa switches.
205 * unroll.c (iteration_info): No longer static, since Haifa
206 scheduler uses it.
207 (unroll_loop): Inform HAIFA scheduler about loop unrolling factor.
208 * unroll.c (unroll_loop): Set loop_unroll_iter, loop_start_value.
209 * loop.h (loop_unroll_factor, loop_number): Add HAIFA decls.
210 * loop.h (loop_initial_value,loop_unroll_iter): New globals.
211 * loop.c (loop_optimize): If HAIFA is defined, allocate additional
212 storage for the Haifa scheduler.
213 (mark_loop_jump): If HAIFA defined, set LABEL_OUTSIDE_LOOP_P and
214 LABEL_NEXTREF.
215 (strength_reduce): If HAIFA and HAVE_decrement_and_branch_on_count
216 are defined, call analyze_loop_iterations and insert_bct to use
217 countdown loops.
218 (record_giv): Refine test for jumps out of loops if HAIFA is
219 defined.
220 (analyze_loop_iterations): New function to identify if we can use
221 a countdown loop.
222 (insert_bct): Insert countdown loop.
223 (instrument_loop_bct): Low level code to insert countdown loop.
224 (loop_number): Calculate UID of loop.
225 (indirect_jump_in_function_p): Return true if an indirect jump is
226 in the function.
227 (is_power_of_2): Return true if value is a power of 2.
228 (is_conditional_branch): Return true if insn is a conditional
229 jump.
230 (fix_bct_param): Process -fbct-{min,max}-N switches.
231 (check_bct_param): Return true if loop should be instrumented.
232 * loop.c (loop_initial_value,loop_unroll_iter): New globals.
233 (loop_optimize): Initialize.
234 (get_condition_for_loop): Ditto.
235 * loop.c (strength_reduce): Inside of code that uses #ifdef
236 HAVE_decrement_and_branch_on_count code, test it to make sure the
237 condition is true.
238 (instrument_loop_bct): Ditto.
239 * haifa-sched.c: New file.
240
241
242 * Integrate regmove pass.
243 * Makefile.in (OBJS): Add regmove.o
244 (regmove.o): Add dependencies.
245 * flow.c (find_use_as_address): No longer static.
246 * rtl.h (find_use_as_address): Declare.
247 * toplev.c (regmove_dump, flag_regmove): Define.
248 (f_options): Add -fregmove.
249 (regmove_dump_file, regmove_time): Define.
250 (fatal_insn): Close the regmove dump file.
251 (compile_file): Initialize regmove_time; open/close the regmove dump
252 file as needed. Print regmove time as needed.
253 (rest_of_compilation): Run regmove pass if requested, dump
254 RTL after regmove if requested.
255 (main): If -O2 or more, turn on regmove. Handle dump switches.
256 * regmove.c: New file.
257
258 Mon Aug 11 14:15:02 1997 Jeffrey A Law (law@cygnus.com)
259
260 * Integrate tlink patch from jason@cygnus.com
261 * gcc.c (SWITCH_TAKES_ARG): Add 'V', 'B' and 'b'.
262 (process_command): Increment n_switches for them. Don't discard
263 their args. Validate them.
264 (main): Escape " marks when creating COLLECT_GCC_OPTIONS.
265 From Rohan Lenard.
266 (process_command): Set include_prefixes from COMPILER_PATH.
267 (main): Set COLLECT_GCC_OPTIONS sooner.
268 * confiugre.in: Link ../ld/ld.new to collect-ld rather than real-ld.
269 * tlink.c, hash.c, hash.h: New files.
270 * Makefile.in (USE_COLLECT2): Always use collect2.
271 (collect2): Depend on and link in hash.o and tlink.o.
272 (tlink.o, hash.o): Add dependencies.
273
274 Mon Aug 11 10:04:49 1997 Jeffrey A Law (law@cygnus.com)
275
276 * Integrate alias analysis changes from jfc@mit.edu
277 * Makefile.in (OBJS): Add alias.o
278 (alias.o): Add dependencies.
279 * alias.c: New file.
280 * sched.c: Remove alias analysis code. It lives in alias.c now.
281 (sched_analyze_2): Add new arguments to true_dependence.
282 (schedule_insns): Always call init_alias_analysis.
283 * calls.c (expand_call): Note calls to malloc, calloc, and realloc;
284 mark return value from such functions as a pointer and keep track of
285 them for alias analysis. If a return value from a function is a
286 pointer, mark it as such.
287 * combine.c (distribute_notes): Handle REG_NOALIAS.
288 * cse.c (struct write_data): Delete. No longer needed.
289 (invalidate): Don't call set_nonvarying_address_components anymore.
290 Use true_dependence to decide if an entry should be removed from
291 the hash table.
292 (invalidate_memory): Remove WRITES argument, simplify appropriately.
293 Fix all callers.
294 (note_mem_written): Similarly for WRITE_PTR argument.
295 (invalidate_from_clobbers): Similarly for W argument.
296 (invalidate_for_call): Remove memory elements from the hash table.
297 (refers_to_mem_p, cse_rtx_addr_varies_p): Deleted.
298 (cse_rtx_varies_p): New function. Derived from old
299 cse_rtx_addr_varies_p.
300 (cse_insn): Remove WRITES_MEMORY and INIT variables and all references.
301 Don't call note_mem_written anymore. Stack pushes invalidate the stack
302 pointer if PUSH_ROUNDING is defined. No longer need to call
303 cse_rtx_addr_varies_p to decide if a MEM should be invalidated.
304 (skipped_writes_memory): Remove variable.
305 (invalidate_skipped_set): Simplify and wewrite to use invalidate_memory.
306 (invalidate_skipped_block): Simplify for new alias analysis code.
307 (cse_set_around_loop): Likewise.
308 (cse_main): Call init_alias_analysis.
309 * flags.h (flag_alias_check, flag_argument_noalias): Declare.
310 * toplev.c (flag_alias_check, flag_argument_noalias): Define.
311 (f_options): Add new alias checking arguments.
312 (main): Set flag_alias_check when optimizing.
313 * local_alloc (validate_equiv_mem_from_store): Add new arguments
314 to true_dependence.
315 (memref_referenced_p): Likewise.
316 * loop.c (NUM_STORES): Increase to 30.
317 (prescan_loop): Only non-constant calls set unknown_address_altered.
318 (invariant_p): Add new arguments to true_dependence.
319 (record_giv): Initialize unrolled and shared fields.
320 (emit_iv_add_mult): Call record_base_value as needed.
321 * loop.h (struct induction): Add unrolled and shared fields.
322 * unroll.c (unroll_loop): Call record_base_value as needed.
323 (copy_loop_body): Likewise.
324 (final_biv_value): Likewise.
325 (final_giv_value): Likewise.
326 (find_splittable_regs): Likewise. Only create one new pseudo
327 if we have multiple address GIVs that were combined with the same
328 dst_reg GIV. Note when a new register is created due to unrolling.
329 * rtl.c (reg_note_name): Add REG_NOALIAS.
330 * rtl.h (enum reg_note): Similarly.
331 (rtx_varies_p, may_trap_p, side_effects_p): Declare.
332 (volatile_refs_p, volatile_insn_p, remove_note): Likewise.
333 (note_stores, refers_to_regno_p, reg_overlap_mentioned_p): Likewise.
334 (true_dependence, read_dependence, anti_dependence): Likewise.
335 (output_dependence, init_alias_analysis, end_alias_analysis): Likewise.
336 (mark_user_reg, mark_reg_pointer): Likewise.
337
338
339 * Integrate reload bugfix from Wilon which enables the PA port
340 to bootstrap again.
341 * reload1.c (reload): Sum needs for both OPADDR_ADDR and and
342 OPERAND_ADDRESS when computing how many registers an insn needs.
343 (reload_reg_free_p): OPADDR_ADDR and OPERAND_ADDRESS reloads do
344 conflict.
345 (reload_reg_free_before_p): Treat OPERAND_ADDRESS reloads just like
346 OPADDR_ADDR reload.
347 (reload_reg_reaches_end_p): For RELOAD_FOR_OPADDR_ADDR insns, registers
348 in reload_reg_use_in_op_addr do not reach the end.
349 do not reach the end.
350 (reloads_conflict): RELOAD_FOR_OPADDR_ADDR conflicts with
351 RELOAD_FOR_OPERAND_ADDRESS.
352
353 Sun Aug 10 12:00:20 1997 Jeffrey A Law (law@cygnus.com)
354
355 * egcs project officially starts.
356