-
Notifications
You must be signed in to change notification settings - Fork 4
/
ChangeLog.5
8954 lines (6170 loc) · 328 KB
/
ChangeLog.5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Sun Jun 14 16:30:07 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* Version 2.2.2 released.
* Makefile.in (gcc.xtar.Z): Don't give up if texinfo files not updated.
Just sleep to emphasize the message.
* i860.h (PREFERRED_RELOAD_CLASS): Avoid f regs for HI and QI if poss.
* protoize.c: Don't include wait.h.
(gen_aux_info_file): Test wait_status as in gcc.c.
Report fatal signals explicitly. Report exit status.
* xm-next.h (wait): Definition deleted.
* sparc.c (print_operand): In `r' case, recognize any kind of zero.
Sat Jun 13 02:51:10 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* va-sparc.h (va_arg): Handle all 8-byte types, not just double.
Fri Jun 12 23:40:41 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* i860v4.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT):
Use `e' format, not `g' format.
Fri Jun 12 12:52:48 1992 Tim Moore (moore at fast.cs.utah.edu)
* pa.md (absdf2): Fix bug in output template.
Fri Jun 12 10:25:25 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* ultrix.h (WCHAR_*): Set to correct values.
Fri Jun 12 10:07:43 1992 Michael Meissner (meissner@osf.org)
* x-mips, x-mipsv, x-decstatn, x-iris (OLDCC): Add -Olimit 3000 to
bump the number of basic blocks that the MIPS compiler handles, so
that it doesn't issue warning messages saying to bump the limit.
Move the -O1 option here from X_CFLAGS, so that it doesn't
get passed when bootstraping.
(X_CFLAGS): Delete.
Thu Jun 11 15:08:01 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* sparc.h (RETURN_IN_MEMORY): Do nothing for structs and unions.
(EXTRA_CONSTRAINT): During reload, accept pseudo reg for Q.
* va-sparc.h (va_arg): Handle unaligned doubles.
* fixincludes: Fix return type of `free' in malloc.h.
Recognize #define.NULL only at start of line.
In sys/types.h, find size_t only in a typedef.
In netdnet/dnetdb.h, don't add semicolon in wrong place.
* configure: Set use_collect2 to empty rather than unsetting.
* gstddef.h (__need_wchar_t): Fix typo in #undef.
Wed Jun 10 04:30:01 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* gcc.c (process_command): In gcc_exec_prefix, machine precedes vers.
* i386sco4.h (CPP_SPEC): Don't redefine __STDC__.
fixincludes knows how to fix the conditionals in system headers.
* collect2.c (scan_prog_file): Initialize ldptr.
* dbxout.c (dbxout_symbol): Make tag precede typedef.
* configure: Initialize host, host_xm_file, host_xmake_file,
host_broken_install, and broken_install.
* Makefile.in (enquire.o): Add `./' when removing enquire.c.
Tue Jun 9 20:52:05 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* Version 2.2.1 released.
* Makefile.in (clean): Don't delete unprotoize.c.
* configure: Fix typo in modifying INSTALL variable in Makefile.
Mon Jun 8 15:14:09 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* Version 2.2 released.
* Makefile.in (extraclean): Delete *.rej and *.orig under config.
Delete *.xtar.
(dist): Update README *before* making tar file.
Fix quoting of error message about gcc.texi; exit if that test fails.
Don't print error messages from ln.
* assert.h [__cplusplus]: Use `extern "C"' around __eprintf decl.
* configure (rs6000-*-mach*, pyramid-*-*, mips-sgi-*):
Patterns made canonical.
(rs6000-*-mach*): Fix typo in `xmake_file'.
* configure (i386-*-osfrose*): Renamed from i386-osfrose*.
* Makefile.in (.NOEXPORT): Moved after `all'.
Comments put on separate lines.
Mon Jun 8 18:33:01 1992 Michael Meissner (meissner@osf.org)
* configure (mips-dec-osf*): Set xmake_file to x-mips.
Sun Jun 7 15:55:34 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* gcc.c (set_spec): Fix braino in "appending" spec values.
* integrate.c (expand_inline_function): Fix dumb bug in last change.
Sun Jun 7 07:16:25 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* romp.md: Disable two more define_splits during the first sched
pass until long-standing sched.c bug is fixed.
Thu Jun 4 16:49:56 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* reorg.c (dbr_schedule): Global registers are needed at function end.
Sat Jun 6 17:07:16 1992 Torbjorn Granlund (tege at david.ultra.nyu.edu)
* pyr.md (shift patterns): Declare output_shift.
(movdi, movdf): Declare output_move_double.
Sat Jun 6 15:07:11 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* Makefile.in (c-parse.o): Depend on c-parse.h.
* reload.c (find_reloads): Fix typo in format string.
* mips.c (override_options): BSD 4.3 does line buffering differently.
* Makefile.in (SYSCALLS.c.X): Put GCC output in file, not /dev/null.
(mostlyclean): Delete temp file.
* configure (handling broken_install): Add -c option.
Sat Jun 6 11:34:00 1992 James Van Artsdalen (james at bigtex.cactus.org)
* gstdarg.h (va_arg): Fix typo incrementing AP.
Sat Jun 6 16:27:18 1992 Michael Meissner (meissner@osf.org)
* mips-n5.h, mips-sysv.h: Include sys/param.h, not types.h.
Fri Jun 5 19:00:36 1992 Howard Chu (hyc@hanauma.jpl.nasa.gov)
* fx2800.h (ASM_OUTPUT_FUNCTION_PREFIX): Output a nop before
every function, to accomodate tdescs. Also, save function
name in current_function_original_name for use in i860.c.
Also define OUTPUT_TDESC to get ABI-compliant tdesc info
generated for each function.
* i860.c (function_epilogue): Add code to output tdesc info
after each function. Tdesc structure versions 1-4 are
supported.
* i860v4.h (ASM_FILE_END) [OUTPUT_TDESC]: Output a null tdesc entry
after the last function in a file.
Fri Jun 5 19:03:22 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* collect2.c (main, scan_prog_file): Use bcopy, not memcpy.
Fri Jun 5 16:27:18 1992 Michael Meissner (meissner@osf.org)
* mips.h, mips.c, mips.md: Undo June 3 changes.
* mips-n5.h, mips-sysv.h (getpagesize): If _SC_PAGE_SIZE is undefined,
use NBPC defined in sys/types.h.
Thu Jun 4 14:36:43 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* cse.c (delete_dead_from_cse): Don't delete anything inside a libcall.
* Makefile.in (install-libgcc): Depend on install-dir.
* c-lex.c (yylex): Suppress int out of range warning if -traditional.
Thu Jun 4 23:34:05 1992 Howard Chu (hyc@hanauma.jpl.nasa.gov)
* fx2800.h (DBX_OUTPUT_ENUM): Add missing argument, add a
missing semi-colon.
(ASM_OUTPUT_DOUBLE): undef definition from i860v4.h, replace
with definition used in i860.h.
(ASM_OUTPUT_FLOAT): same as above
Also undef MD_EXEC_PREFIX which is defined in i860v4.h.
Also define I860_STRICT_ABI_PROLOGUES for ABI-compliant function
prologues.
Thu Jun 4 13:15:30 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* enquire.c (fake_f_rep): Use __extension__ to avoid pedantic warnings.
* cse.c (cse_process_notes): Don't stick VOIDmode into *_extract.
* c-decl.c (get_parm_info): For forward parm decls, check for
non-parm before checking TREE_ASM_WRITTEN.
Thu Jun 4 13:57:47 1992 Tim Moore (moore at defmacro.cs.utah.edu)
* pa.h (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Delete
FP_OR_SNAKE_FP_REGS (useless), add GENERAL_OR_FP_REGS,
GENERAL_OR_SNAKE_FP_REGS.
(ASM_DECLARE_FUNCTION_NAME): Handle DImode arguments correctly.
(PROFILE_BEFORE_PROLOGUE, FUNCTION_PROFILER): Do the same thing
for BSD and HPUX.
* pa.c (output_function_prologue): Do profiling right (compatible
with HPUX).
(output_arg_descriptor): Handle DImode argument registers.
Thu Jun 4 13:48:24 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* reload1.c (reload): Count reload register used by caller-save
handling in any basic block that contains a CALL_INSN.
Thu Jun 4 09:23:19 1992 Ron Guilmette (rfg at ncd.com)
* i860v4.h (ASM_OUTPUT_DOUBLE, ASM_OUTPUT_FLOAT): Remove leading 0r.
(ASM_OUTPUT_FLOAT): Use .float (not .single).
Fri Jun 5 14:58:43 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* pyr.h (REGNO_OK_FOR_{INDEX,BASE}): Correctly test reg_renumber.
* configure (pyramid): Turn it back on.
Thu Jun 4 11:26:55 1992 Torbjorn Granlund (tege@mole.gnu.ai.mit.edu)
* pa.c (output_move_double): Handle overlapping moves between
registers.
Wed Jun 3 22:08:18 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* fold-const.c (fold, NOP_EXPR case): Don't drop intermediate in
(unsigned int) (unsigned short) char-variable.
Wed Jun 3 11:18:43 1992 Ron Guilmette (rfg at ncd.com)
* stdarg.h (va_arg): Use casts to avoid doing (pedantically invalid)
arithmetic on `void *' values when __svr4__ is defined.
Wed Jun 3 17:51:21 1992 Torbjorn Granlund (tege@zevs.sics.se)
* longlong.h (sparc): Test symbol __sparcv8__ for sparc.h conformance.
Wed Jun 3 16:22:38 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
* sparc.c (print_operand): Correct typo.
(sparc_type_code): Correctly handle C int and float types.
* sparc.h (CONSTANT_ALIGNMENT): Align strings to 8 byte boundary.
(DATA_ALIGNMENT): Likewise for character arrays.
* i960.c (function_prologue): Fixed calculation of offsets for
compiler's register save area.
* sparc.md (mulsi3,mulsidi3,umulsidi3,divsi3,udivsi3): Patterns
added to support V8 sparc architectures.
* sparc.h (TARGET_DEFAULTS): Add -mv8 and -msparclite options.
* reload1.c (reload): If can't satisfy reload for a group of more
than two registers, then abort to avoid an infinite loop.
(count_possible_groups): Skip to last reg of group, not first reg
of next group.
Wed Jun 3 14:35:00 1992 Tom Wood (wood at gen-rtx)
* c-lex.c (yylex): Let skip_white_space handle \r.
* expr.c (expand_builtin, fsqrt case): Stabilize the argument in
case a library call is done.
* final.c (final_scan_insn): Function begin, and block begin/end
notes are "real" in that they depend on the current line number.
Wed Jun 3 14:34:28 1992 Michael Meissner (meissner@osf.org)
* mips.md (andsi3_internal2): Fix typo in previous change, to
use %3, the clobbered register, instead of %@, the assembler
temporary.
(iorsi3_internal2): Ditto.
(xorsi3_internal2): Ditto.
* mips.h (MIPS_VERSION): Bump Meissner version # to 20.
(final_prescan_insn): Add declaration.
(lui_int): Add declaration.
(FINAL_PRESCAN_INSN): Just call final_prescan_insn.
* mips.c (lui_int): New function, return true if value fits in a
LUI instruction.
(final_prescan_insn): Move the checking for filling the delay
slots here from the FINAL_PRESCAN_INSN macro. If the safe
attribute is set, we do not need a NOP to fill a load delay slot.
* mips.md (safe attribute): New attribute to indicate that the
current insn is safe to fill a delay slot even if the register
operand(s) are set in the load instruction which has the delay
slot. This is for and/ior/xor expansions that have a large
constant integer as operand[2]. The load of the constant can
overlap the load.
(andsi3, iorsi3, xorsi3): Replace logical define_insn's with
define_expand's that either map directly to the hardware
instruction, or have a clobbered register to load the large
constant into. This is instead of using $1 to hold the
intermeidate value. Set the safe attribute to yes for the cases
where we need to load the integer. Add define_split's to break
the large logical operations into the separate pieces.
Wed Jun 3 00:00:36 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* cccp.c (do_warning): Do just a warning, not an error.
Tue Jun 2 17:30:09 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* cse.c (cse_basic_block): When a jump becomes unconditional,
check whether this caused TO to be deleted.
Tue Jun 2 16:11:42 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* combine.c (subst, case IF_THEN_ELSE): Don't try reversing
something that isn't a comparison.
Tue Jun 2 16:50:47 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* cccp.c (do_pragma): Don't warn about #pragma once if used in a
system header file.
Tue Jun 2 15:21:07 1992 Michael Meissner (meissner@osf.org)
* mips.h (MIPS_VERSION): Bump Meissner version # to 19.
(ASM_OUTPUT_DOUBLE): Call mips_output_double.
(ASM_OUTPUT_FLOAT): Call mips_output_float.
* mips.c (mips_output_double): If REAL_VALUE_TO_TARGET_DOUBLE is
defined, use it to split the floating point value into 2 long
integers, and print them out in hex. Otherwise use .double.
(mips_output_float): If REAL_VALUE_TO_TARGET_FLOAT is defined, use
it to split the floating point value into a long integer, and
print in out in hex. Otherwise use .float.
* dec-osf1.h (new file): Config file for DEC's offical OSF/1
product (as opposed to the OSF/1 reference port from OSF).
* configure: Support mips-dec-osf1 target.
* config.sub: Support mips-dec-osf1 target.
* decstatn.h (CPP_PREDEFINES): If CPP_PREDEFINES is defined, don't
supply another definition. Also, define _SYSTYPE_BSD.
Mon Jun 1 00:04:01 1992 Ron Guilmette (rfg at ncd.com)
* gstdarg.h (va_list) [__svr4__]: Typedef it to `void *'.
* va-sparc.h (__va___list) [__svr4__]: Typedef this as `void *'.
Sun May 31 15:26:32 1992 John F Carr (jfc at Achates.mit.edu)
* calls.c (stack_arg_under_construction): New variable.
(store_one_arg): Set stack_arg_under_construction before calling
expand_expr if expand_expr might call a constructor to initialize
a stack argument.
(expand_call): Push the stack around function calls if
stack_arg_under_construction is nonzero.
Also copy structure_value_addr in that case.
Push the stack around an inline function if it makes calls
and there are outgoing arguments on the stack which must be preserved.
Move the call to expand_cleanups_to before that.
Do this stack adjustment before computing argument locations.
Sun May 31 01:03:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* sdbout.c (sdbout_symbol): Test DECL_IGNORED_P only for
variables and types.
* dwarfout.c (output_decl): Never ignore a FUNCTION_DECL
even if DECL_IGNORED_P is set.
Sat May 30 07:07:55 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* rs6000.h, romp.h (FUNCTION_ARG): Fix typo in last change.
* combine.c (subst, significant_bits, simplify_comparison):
Only look at STORE_FLAG_VALUE if comparison result is integer.
Fri May 29 18:04:45 1992 Ron Guilmette (rfg at ncd.com)
* dwarfout.c (output_decl): Moved test for ERROR_MARK node out of
switch statement and added a test for DECL_IGNORED_P after that.
(dwarfout_file_scope_decl): Check input node to see if it is an
ERROR_MARK before checking for DECL_IGNORED_P. Also makes sure that
any node marked as DECL_IGNORED_P isn't also a function definition.
Fri May 29 14:46:06 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* integrate.c (expand_inline_function):
Don't discard setting return value from a volatile source.
* c-decl.c (init_decl_processing): If traditional, strlen returns int.
(sizet_ftype_string): Deleted.
* expr.c (expand_builtin, fsqrt case): Return proper mode if arg error.
Fri May 29 13:36:32 1992 Tom Wood (wood@dg-rtp.dg.com)
* m88k.c (m88k_builtin_saveregs): Don't copy result to a register.
* m88k.h (FIXED_REGISTERS): Allow use of r1.
(REG_LEAF_ALLOC_ORDER): Choose r1 last.
(REG_ALLOC_ORDER): Choose r1 before any preserve register.
(ORDER_REGS_FOR_LOCAL_ALLOC): Switch between orderings.
* m88k.c (m88k_layout_frame): Save r30 when used as an ordinary
register.
* m88k.h (CHECK_FLOAT_VALUE): Delete, not needed.
* m88k.c (check_float_value): Delete, not needed.
* m88k.c (mostly_false_jump): Fix return check.
* m88k.md (mstore type): Delete.
(return, indirect_jump): These are jumps, not branches.
* m88k.c (eligible_for_epilogue_delay): No TYPE_MSTORE insns.
Fri May 29 12:33:21 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* reload1.c (emit_reload_insns): Add missing arg to gen_input_reload.
Fri May 29 06:43:15 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* rs6000.h, romp.h (FUNCTION_ARG): Don't put variable-sized
operands in registers.
* explow.c (emit_stack_{save,restore}): Don't call validize_mem
on a null rtx.
* cse.c (cse_insn): Don't call canon_reg on entry from
hash table; instead, call it after we did the substitution.
Thu May 28 18:47:00 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* fixincludes (malloc.h): Allow space or tab btwn typedef and char.
Thu May 28 17:35:37 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* reload1.c (reload_as_needed): Properly disable optional reload
that we can't do.
Don't abort if disabled reload uses a register we don't have.
Thu May 28 14:43:01 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* next.c (get_directive_line): Declare it.
* defaults.h (ASM_OUTPUT_ASCII): Use unsigned chars.
* i860v4.h, i386v4.h, sparcv4.h (ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE):
Use the override definitions only if word order matches host.
Wed May 27 17:32:36 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
* unroll.c (find_splittable_givs): When completely unrolling loop,
precompute giv value into a reg before loop if it is complex.
* sparc.c (singlemove_string): Handle SFmode CONST_DOUBLE.
* sparc.h (PREFERRED_RELOAD_CLASS): Don't allow reloads of
constants to FP registers, nor reloads of FP constants that won't
match the 'E' constraint.
* sparc.md (movsf-1): Add pattern to efficiently handle SFmode
constants.
* sparc.md (lo_sum:DI pattern): Use constraint "0" for operand 1.
* i960.h (OVERRIDE_OPTIONS): Disable function inlining.
* function.c (assign_parms): When MAYBE_REG_PARM_STACK_SPACE,
don't assume that register parameters already have a stack slot.
* i960 (*): Change all tests of current_functions_args_size from
48 to 0 due to above change.
* i960.md (*): Likewise.
* sparc.h (LONG_DOUBLE_TYPE_SIZE): Add ifdefed out definition.
(FIXED_REGISTERS): g4 is not a fixed register.
(RETURN_IN_MEMORY): Define.
(FUNCTION_ARG_PASS_BY_REFERENCE): Also pass TFmode by reference.
* fixincludes: Fix stdio.h and math.h for Ultrix 4.0.
Tue May 26 15:29:21 1992 Brendan Kehoe (brendan@cs.widener.edu)
* x-we32k: new file, need alloca.o
* xm-we32k.h [NO_SYS_SIGLIST]: define this
* we32k.h [STRICT_ALIGNMENT] define as `1'
[NO_WAIT_H]: also define this
* collect2.c [NO_WAIT_H]: don't include sys/wait.h if this is
defined.
* Makefile.in (clean): rm libgcc1.null.
Wed May 27 15:36:51 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* real.h (REAL_VALUE_TO_TARGET_SINGLE): Test HOST_BITS_PER_WORD right.
* i386sco.h (SIZE_TYPE): New definition.
* c-typeck.c (build_binary_op): When shortening, handle case
where op0 and arg0 are different but have same width. op1/arg1 too.
* toplev.c (compile_file): Cast xmalloc when arg to setvbuf.
* expmed.c (expand_divmod): Clear can_clobber_op0 if doing mod.
* Makefile.in (protoize.1, unprotoize.1): Delete target before mv'ing.
(mostlyclean): Delete tmp-unproto.1.
* sdbout.c (sdbout_symbol, sdbout_toplevel_data): Test DECL_IGNORED_P.
* dwarfout.c (dwarfout_file_scope_decl): Likewise.
Wed May 27 13:48:36 1992 James Van Artsdalen (james at bigtex.cactus.org)
* i386.md (ashldi3,ashrdi3,lshrdi3): Fix typo in comparison.
Wed May 27 02:11:22 1992 Ron Guilmette (rfg at ncd.com)
* i386v4.h, i860v4.h, sparcv4.h: Include real.h.
(ASM_OUTPUT_FLOAT, ASM_OUTPUT_DOUBLE):
New definitions, if host and target formats match.
* real.h (REAL_VALUE_TO_TARGET_SINGLE, REAL_VALUE_TO_TARGET_DOUBLE):
Defined, but only if host and target formats match.
Wed May 27 06:20:26 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* reload1.c (reload_as_needed): For asm insn, check all reload
insns for validity.
(emit_reload_insns, gen_input_reload): Remove previous change that
checked them here.
* recog.c (constrain_operands, case 'm', 'o', 'g'): Accept pseudo if
reload is in progress.
Tue May 26 19:24:21 1992 Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
* combine.c (combinable_i3pat): Allow a hard register as the
destination even if SMALL_REGISTER_CLASSES if source is a CALL.
* emit-rtl.c (gen_lowpart_common): Fix handling of int->float
union conversions.
Tue May 26 19:23:43 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* a29k.h (HARD_REGNO_MODE_OK): Don't let anything larger than
UNITS_PER_WORD be allocated to an odd numbered register.
Tue May 26 15:22:27 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* config.sub (defaulting the OS): Separate subversions with periods.
* limits.h: Fix condition for defining long-long macros, to suit libc.
* Makefile.in (specs): New target.
(gcc): Don't write `specs' here.
(start.encap): Depend on `specs'.
(all.cross): Depend on EXTRA_PARTS.
(rest.cross): New target.
* c-common.c (declare_function_name):
Set TREE_USED, not TREE_NO_UNUSED_WARNING.
Tue May 26 04:52:53 1992 Michael Meissner (meissner@osf.org)
* loop.c (loop_has_volatile): New static variable to record
whether the loop has any volatile references in it.
(prescan_loop): Set loop_has_volatile.
(check_dbra_loop): Don't reverse loop if there are any volatile
references in it.
Mon May 25 16:04:08 1992 James Van Artsdalen (james at bigtex.cactus.org)
* i386gas.h (ASM_OUTPUT_OPCODE): Translate "repnz" to "repne".
* seq386gas.h (ASM_OUTPUT_OPCODE): Likewise.
Mon May 25 15:53:31 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* optabs.c (emit_indirect_jump): Emit barrier here.
* stmt.c (expand_computed_goto): Not here.
Mon May 25 06:22:59 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* cse.c (canon_reg): Must call validate_change if insn has any
MATCH_DUPs even if replacing a pseudo with another pseudo.
* explow.c (emit_stack_{save,restore)}: Call validize_mem on save area.
* combine.c (simplify_shift_const, case PLUS): Simplify cases where
the PLUS is just turning on bits that will be shifted out.
* emit-rtl.c (gen_lowpart_common): Add new case for single-word
float->integer conversion; all others already present.
Check for -fpretend-float in this and the other cases.
* stmt.c (expand_goto): Fix typo in previous change.
* reload1.c (gen_input_reload): When checking for validity of
reloads made for asms, also check the constraints.
* explow.c (allocate_dynamic_stack_space): Don't add to size
if we aren't going to need to align the size.
* fold-const.c (fold, case *_DIV_EXPR): Fold (a * C1) / C2 for
some C1 and C2.
Sun May 24 14:07:53 1992 Ron Guilmette (rfg at ncd.com)
* toplev.c (main):
Fix typo setting use_gdb_dbx_extensions in xcoff case.
* c-decl.c (pushdecl): Call `build_type_copy' rather than calling
`c_build_type_variant' to duplicate a type.
Sun May 24 16:56:09 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* reload1.c (reload): Refine setting of basic_block_needs.
Sun May 24 15:43:08 1992 John F Carr (jfc at Achates.mit.edu)
* combine.c (try_combine): Don't split an insn if that would move
a use of a register across a set of the same register.
Sun May 24 14:50:38 1992 James Van Artsdalen (james at bigtex.cactus.org)
* reg-stack.c (constrain_asm_operands): Ignore constraint letters
following '#' in each alternative.
Sun May 24 02:28:45 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* gcc.c (pexecute): New alternative definition for OS2.
Take SEARCH_FLAG as arg instead of FUNC.
(execute): Change call to pexecute.
* toplev.c (main): Don't run ps for -dm if on OS2.
* cccp.c (main): Use PATH_SEPARATOR computing num_dirs.
(path_include): Likewise, setting q.
* gcc.c: Include sys/file.h.
* Makefile.in (extraclean): Delete install1.texi.
Sat May 23 14:14:06 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* crtstuff.c (__do_global_ctors) [not INVOKE__main]: Make body empty.
* fold-const.c (float_error): Renamed from const_binop_error.
(const_binop, fold_convert):
Call set_float_handler around REAL_VALUE_TRUNCATE.
* Makefile.in ($(srcdir)/INSTALL): New target.
(doc): Depend on that.
($(srcdir)/gcc.info, $(srcdir)/cpp.info): Delete $(srcdir) from deps.
($(srcdir)/gcc.info): List all subfiles as deps.
* math-68881.h: Use %! instead of fpcr.
* install.sh: New file.
* configure: Changed install_with_cp to broken_install.
Test that flag for the host, not for the target.
If set, use install.sh.
* Makefile.in (EXTRA_HEADERS): New variable.
(USER_H): Use that.
* configure: Let alternatives set EXTRA_HEADERS via var header_files.
(m68k-...): Set header_files to install math-68881.h.
* Makefile.in (install-dir): Create (libsubdir)/include.
(install-limits-h, install-float-h): Depend on install-dir.
* Makefile.in (gcc.xtar): Warn if version in gcc.texi is old.
* genconfig.c (main): Add 1 when outputting MAX_RECOG_OPERANDS.
Initialize to just 9.
* gcc.c (MD_STARTFILE_PREFIX_1): New config macro.
(main): Use that like MD_STARTFILE_PREFIX.
Sat May 23 08:13:38 1992 John F Carr (jfc at Achates.mit.edu)
* reload1.c (reload): Copy MEM_IN_STRUCT_P flag when converting
pseudo register to equivalent memory location.
Sat May 23 07:12:15 1992 Michael Meissner (meissner@osf.org)
* x-iris (OLDCC): Add -cckr to turn off strict ANSI checking.
* mips.c (current_function_name): Delete definition, function.c
defines this and mips.h has a declaration.
* longlong.h (mips umul_ppmm): Use "d" constraint instead of "r", so
that we know the value is an integer register.
Sat May 23 01:14:49 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* vax.h (PRINT_OPERAND): Undo last change.
Fix the comment instead.
* x-dpx2200, x-dpx2300 (ALLOCA_FINISH, AS): New variables.
Fri May 22 01:52:22 1992 Ron Guilmette (rfg at ncd.com)
* svr4.h (MD_EXEC_PREFIX): Added definition.
* protoize.c [POSIX]: Include dirent.h rather than sys/dir.h.
(_POSIX_SOURCE): Undef before defining.
(getpwd): Change declaration to an `extern'.
(open): Add declaration in the #if 0 section along with fprintf.
(link, unlink, access, execvp): Add `extern' declarations.
(strlen): Don't mention arg type in declaration.
(main): Declare `params' as `const char *' to avoid botch when doing
test-protoize-simple.
Fri May 22 17:15:36 1992 John F Carr (jfc at Achates.mit.edu)
* calls.c (expand_call): Allocate stack space for arguments passed
in registers when OUTGOING_REG_PARM_STACK_SPACE is defined and
stack space has not been preallocated.
Fri May 22 17:16:55 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* combine.c (simplify_comparison): Try to reduce size of a
constant by changing comparison code; don't only do for 1 and -1.
* reload.h (reg_equiv_memory_loc): Declare.
* reload.c (refers_to_regno_for_reload_p): Use reg_equiv_memory_loc
instead of reg_equiv_mem and reg_equiv_address; look for constant.
(reg_overlap_mentioned_for_reload_p): LIkewise.
Use new function to check for MEM.
(refers_to_mem_for_reload_p): New function.
* reload1.c (reg_equiv_memory_loc): No longer static.
Fri May 22 17:15:12 1992 Ron Guilmette (rfg at ncd.com)
* Makefile.in (test-protoize-simple): Only delete files made by this
target (not the man pages!)
(test-protoize-simple): Use -x option to avoid munging getopt.h.
(test-protoize-simple): Fixed number of differences message.
(mostly-clean): Properly remove all temp files relating to protoize/
unprotoize.
(install-common): Force removal of previously installed g++ and c++
command files before trying to install new ones.
* spc-sol2.h: New file.
* configure (sparc-*-solaris2*): New configuration added.
* x-sparcv4 (X_CFLAGS): Removed -Bstatic and -dn options.
Fri May 22 15:30:05 1992 Chip Salzenberg (chip@tct.com)
* c-common.c (declare_function_name): Move from c-decl.c.
Construct function names instead of expecting them as parameters.
Set TREE_READONLY and other attributes before calling pushdecl.
* c-decl.c (init_decl_processing, store_parm_decls): Calls changed.
(declare_function_name): Remove to c-common.c.
* cp-decl.c (init_decl_processing, store_parm_decls):
Call declare_function_name.
Fri May 22 12:15:16 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
* sparcv4.h (ASM_OUTPUT_CASE_LABEL): Define.
Fri May 22 11:40:00 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* x-dpx2200, x-dpx2300 (CFLAGS): Definition deleted.
* c-decl.c, cp-decl.c (pushdecl): No shadow warnings if DECL_IGNORED_P.
* c-decl.c (declare_function_name):
Change names to __FUNCTION__ and __PRETTY_FUNCTION__
* vax.h (PRINT_OPERAND): In M case, don't complement after subtract 1.
* c-lex.c (yylex): Use pedwarn for overflow warnings.
Pedwarn if constant doesn't fit its type.
Fri May 22 13:32:39 1992 Chip Salzenberg (chip@tct.com)
* xcoffout.h (DBX_TYPE_DECL_STABS_CODE): Was DBX_DECL_STABS_CODE.
Fri May 22 08:31:16 1992 Torbjorn Granlund (tege@hal.gnu.ai.mit.edu)
* longlong.h (all machines): Define UMUL_TIME and UDIV_TIME.
Auxiliary formatting changes.
(header): Define __CLOBBER_CC and __AND_CLOBBER_CC.
(__sparc__ macros): Use them.
(__hppa__ add_ssaaaa,sub_ddmmss): Accept zero using `M' constraint.
(__hppa__ umul_ppmm): Define if _PA_RISC1_1.
(__mc88110__ umul_ppmm,udiv_qrnnd): New.
(__pyr__ umul_ppmm): Rewrite.
(default count_leading_zeros): Make it work for 64 bit longs.
Fri May 22 06:27:31 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* cse.c (cse_insn): Invalidate a volatile destination.
* expmed.c (expand_divmod): Correctly handle volatile operands.
Fri May 22 06:26:50 1992 Chip Salzenberg (chip@tct.com)
* rs6000.h (ASM_DECLARE_FUNCTION_NAME): Use new function
xcoffout_declare_function.
* rs6000.c (output_epilog): Shorten internal label.
(output_toc, output_function_profiler): Likewise.
* xcoffout.c (xcoffout_declare_function): New function, created
to localize knowledge of end-of-function internal label.
(xcoffout_end_epilogue): Shorten internal label.
Thu May 21 15:31:42 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* reorg.c (relax_delay_slots): Clear INSN_FROM_TARGET_P when
remove insns from a delay slot.
Thu May 21 13:54:15 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* reload.c (find_reloads):
Don't abort for % in last operand in asm_operands.
* alloca.c: Make symlink to master copy.
* stmt.c (expand_asm_operands): Count nclobbers properly.
* explow.c (allocate_dynamic_stack_space): Call mark_reg_pointer.
* c-parse.y (stmt, WHILE case): Start loop *after* parsing end test.
(do_stmt_start): Broken out from DO rule.
(stmt, DO case): Use that.
Add error-handler rule for parse error in end test.
* sparc.h (ADDITIONAL_REGISTER_NAMES): Support `cc'.
* c-lex.c (yylex): Pedwarn if `f' constant exceeds range of `float'.
Just once even if `f' appears twice.
This and the like warning for `double' are only if -pedantic.
Thu May 21 08:46:30 1992 Jim Wilson (wilson@sphagnum.cygnus.com)
* Makefile.in (STAGESTUFF): Add stamp-proto.
Thu May 21 04:04:33 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* svr3.h (LOCAL_LABEL_PREFIX): Override as a period.
(ASM_OUTPUT_INTERNAL_LABEL, ASM_GENERATE_INTERNAL_LABEL):
Use LOCAL_LABEL_PREFIX.
* dpx2.h (LOCAL_LABEL_PREFIX): Definition deleted.
* tower-as.h (LOCAL_LABEL_PREFIX): Override as empty.
Wed May 20 23:29:15 1992 (Eric Youngdale at youngdale@v6550c.nrl.navy.mil)
* config-gcc.com: Take care of situation if sources are NFS mounted.
Wed May 20 14:35:10 1992 Richard Kenner (kenner at vlsi1.ultra.nyu.edu)
* jump.c (jump_optimize): Add additional validation check to
case that detects "if (foo) bar++;".
Wed May 20 13:18:09 1992 Tim Moore (moore@defmacro.cs.utah.edu)
* pa.md : Changed "xy" constraints to "x" constraints.
(movsi+6): Let "r" registers match too. Add define_split to change
into 2 insns if needed.
(decrement_and_branch_until_zero): New pattern.
* pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Fix for TYPE == 0.
(REGISTER_MOVE_COST): Do stuff for SNAKE_FP_REGS.
(PRINT_OPERAND_ADDRESS): Write CONST_INT case.
Wed May 20 00:04:55 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* ns32k.h (NS32K_DISPLACEMENT_P): Fix typo.
* ns32k.md (extzv-1): New pattern for extracting from SImode.
* c++: -M suppresses -lg++.
* svr3.h (DO_GLOBAL_CTORS_BODY): Flush spurious #endif.
* reload1.c (gen_input_reload): New arg IS_ASM. Can now return 0.
(emit_reload_insns): Pass new arg. Error if it returns 0.
* configure: Use $cpu_type to default $tm_file.
* configure, config.sub: Correct we32 to we32k.
* configure (decstation-dec): Deleted--doesn't fit as machine alias.
(we32k): Add company default.
(fx2800): This is a machine alias, not a company default.
* configure (i386-*-bsd*, we32-att-sysv*, m68k-crds-unos*):
Missing *'s added at ends of config names.
* c-typeck.c (convert_arguments): Use warn_for_assignment to handle
-Wconversion. Fix typo in width-mismatch test.
* svr3.h (ASM_GENERATE_INTERNAL_LABEL): Put a * at the front.
Tue May 19 21:53:05 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* Makefile.in (clean): Add -f in rm *.dvi.
* x-dpx2200, x-dpx2300 (CFLAGS): Make value conditional on CC.
* genattrtab.c (simplify_test_exp, evaluate_eq_attr):
Delete tests of current_alternative_string; they caused bugs.
* cross-test.c: New file.
* Makefile.in (cross-test, cross-test.o): New targets.
(all.cross): Depend on cross-test.
* c-decl.c (declare_function_name): Fix bug in previous change.
Tue May 19 19:57:39 1992 Jim Wilson (wilson@wookumz.gnu.ai.mit.edu)
* i960.h (FUNCTION_ARG_BOUNDARY): Return mode's alignment if type 0.
* calls.c (expand_call): Set MEM_IN_STRUCT_P for aggregate return
values in memory.
* function.c (locate_and_pad_parm): Use MAYBE_REG_PARM_STACK_SPACE
if defined.
* i960.c (i960_function_arg_advance): Put MUST_PASS_IN_STACK
parameters on the stack.
(i960_function_arg): Likewise.
* m68k.md (zero_extendqisi2+1): Add condition to exclude MEM/MEM
case which would require reloading.
* unroll.c: Delete incorrect Feb 26 1992 change.
(copy_loop_body): For combined address givs, scale giv_inc by the
two giv's multiplicative factors if they are different.
* i960.md (zero_extendqisi2): Add comment.
* combine.c (apply_distributive_law): Don't distribute subregs
which change the mode class.
* fixincludes: Fix memory.h for SunOS.
* sparc.h (EXTRA_CC_MODES, EXTRA_CC_NAMES): Add CCFPEmode, for
compares which should generate exceptions for qNaNs.
(SELECT_CC_MODE): Use CCFPEmode for non EQ/NE FP compares.
* sparc.c (normal_comp_operator): Handle CCFPEmode.
(C_MODES, output_cbranch): Likewise.
* sparc.md (cmpdf, cmpsf): Modify patterns to use fcmpe for CCFPE
mode, and fcmp for CCFP mode.
From rfg:
* sparc.h: Declare output_move_quad, output_fp_move_quad and
output_floatsitf2.
* sparc.c (mem_aligned_8): New function.
(output_move_double): Clean up a little. Call mem_aligned_8.
Load operands[] into register variables for efficiency.
(output_move_quad, output_fp_move_quad): New functions.
(output_floatsitf2): New function.
(print_operand): Support 'S' and 'T'.
* sparc.md (cmptf, movtf, extendsftf2, extenddftf2, trunctfsf2,
trunctfdf2, floatsitf2, fix_trunctfsi2, addtf3, subtf3, multf3,
divtf3, negtf2, abstf2, sqrttf2): New patterns added for TFmode
support.
Tue May 19 19:34:10 1992 Ron Guilmette (rfg at ncd.com)
* i386v4.h (DBX_REGISTER_NUMBER): Fixed DWARF numbers for
x86 floating-point registers.
Tue May 19 15:30:32 1992 Mats Lofkvist (d87-mal@nada.kth.se)
* fixincludes: Fix return type of malloc and friends.
Tue May 19 13:30:16 1992 Richard Stallman (rms@mole.gnu.ai.mit.edu)
* config.sub (iris4d): If $os is some kind of Irix, don't clobber it.
Make the default -irix4.
* c-decl.c (declare_function_name): New arg printable_name.
Declare __PRINTABLE_NAME__.
(init_decl_processing, store_parm_decls): Pass the new arg.
Tue May 19 09:50:01 1992 Tom Wood (wood@dg-rtp.dg.com)
* m88k.c (output_options): Check profile_block_flag.
(m88k_layout_frame): Ditto.
(output_function_block_profiler): Save and restore the parameter
registers when calling __bb_init_func.
(output_block_profiler): Use @LPBX2.
* m88k.h (CASE_VECTOR_INSNS): Choose a table of branch
instructions or addresses. The latter is a win for the m88110.
(ASM_OUTPUT_CASE_END): Nothing needed for table of addresses.
(ASM_OUTPUT_ADDR_VEC_ELT): Use "br" or "word".
* m88k.md (casesi, casesi_jump): Updated.
* m88k.md (m88110 function units): Count in half cycles.
* m88k.md (call insns): Clobber rather than use r1.