-
Notifications
You must be signed in to change notification settings - Fork 3
/
ChangeLog.8
11080 lines (7903 loc) · 415 KB
/
ChangeLog.8
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
Tue Mar 1 19:43:31 1994 Stan Shebs ([email protected])
* a29k/a29k.h (TARGET_SOFT_FLOAT): Define.
(TARGET_SWITCHES): Add -msoft-float.
* a29k/a29k.md (all floating point): Disable floating point insns
if doing soft floats.
Tue Mar 1 19:36:05 1994 Glenn Holloway ([email protected])
* defaults.h (ASM_OUTPUT_ADDR_DIFF_ELT): Use
ASM_OUTPUT_INTERNAL_LABEL instead of ASM_GENERATE_INTERNAL_LABEL.
Tue Mar 1 19:26:47 1994 Jim Wilson ([email protected])
* sparc/sol2.h (JUMP_TABLES_IN_TEXT_SECTION): Delete.
* sparc/sysv4.h (JUMP_TABLES_IN_TEXT_SECTION): Add.
* c-typeck.c (build_binary_op): Pass TREE_TYPE (orig_op0) not
orig_op0 to TREE_UNSIGNED.
Tue Mar 1 18:33:33 1994 Richard Kenner ([email protected])
* varasm.c (output_constant): Strip off some NOP_EXPRs
before further processing.
Tue Mar 1 12:00:00 1994 Stan Cox ([email protected])
* m88k.c (legitimize_address, print_operand): Make -fPIC work
again. Put addresses inside UNSPEC when loading them to
ensure that cse won't mistakenly optimize them.
* m88k.md: Two new patterns, to match (HIGH (UNSPEC (..))) and
(LO_SUM (reg) (UNSPEC (..))) as generated above.
* m88k.h: (GO_IF_LEGITIMATE_ADDRESS) Reject invalid PIC addresses.
Tue Mar 1 11:00:14 1994 Doug Evans ([email protected])
* configure: Fix some typos.
* config.sub: Move comment to proper place.
Mon Feb 28 18:31:50 1994 Doug Evans ([email protected])
* ns32k/encore.h (ASM_OUTPUT_ASCII): Fix typo.
Mon Feb 28 18:31:42 1994 Steve Chamberlain ([email protected])
* expr.c (convert_move): Change name of truncsipsi to truncsipsi2
to conform to existing convention, same with extendpsisi.
Mon Feb 28 08:11:55 1994 Jim Meyering ([email protected])
* cccp.c (check_precompiled): Delete unused var dollar_loc.
(pcstring_used): Delete unused var TMP.
(write_output): Delete unused var WRITTEN.
(assertion_lookup): Delete unused var BP.
(pedwarn_with_file_and_line): Delete unused var I.
Mon Feb 28 07:12:24 1994 Julian Bradfield ([email protected])
* m68k.md (call): Change HPUX_ASM case.
* m68k/hp320.h (READONLY_DATA_SECTION, LEGITIMATE_PIC_OPERAND_P):
Defined.
(FUNCTION_PROLOGUE): Emit PIC prologue.
Mon Feb 28 06:21:18 1994 Richard Kenner ([email protected])
* reload1.c (eliminate_regs, case MULT): New case, to apply
distributive law, when needed.
* stor-layout.c (variable_size): If global_bindings_p < 0,
don't even make the SAVE_EXPR.
* reg-stack.c (reg_to_stack): Use GET_RTX_CLASS.
Clear LABEL_REFs here.
(find_blocks): Make algorithm identical to that inreg_to_stack.
Use GET_RTX_CLASS.
Don't clear LABEL_REFs here.
Build a list of labels referenced by other than jumps.
If computed jump, mark using that list and forced_labels.
(uses_reg_or_mem): New function, copied from flow.c.
* optabs.c (expand_binop): Use expand_divmod to do
integer division for DIV of MODE_COMPLEX_INT operands.
Sun Feb 27 20:24:30 1994 Rob Austein ([email protected])
* protoize.c (process_aux_info_file): Properly start over on
file error.
Sun Feb 27 17:42:19 1994 Jim Wilson ([email protected])
* expmed.c (store_split_bit_field): If OP0 is a SUBREG, then
compute WORD from the base register, instead of from the SUBREG.
(extract_split_bit_field): Likewise.
(extract_bit_field): Sign-extend multiword bitfield if necessary.
* emit-rtl.c (subreg_realpart_p): New function.
* integrate.c (copy_rtx_and_substitute): Use subreg_realpart_p
instead of subreg_lowpart_p for CONCAT.
* c-pragma.c (HANDLE_PRAGMA_WEAK): Depend on ASM_OUTPUT_DEF not
SET_ASM_OP when defining it.
* dwarfout.c (ASM_OUTPUT_DEF): Delete definition.
* defaults.h (ASM_OUTPUT_DEF): Add it here.
* varasm.c (handle_pragma_weak): Depend on ASM_OUTPUT_DEF not
SET_ASM_OP when defining it. Use ASM_OUTPUT_DEF to output value
instead of SET_ASM_OP and explicit ASM_OUTPUT_LABELREF calls.
* calls.c (expand_call): Set nregs to -1 for BLKmode parameter,
then before move_block_to_reg call set it to the type size.
* reorg.c (try_merge_delay_insns): Success when SLOT_NUMBER ==
NUM_SLOTS not when NEXT_TO_MATCH == 0.
* expmed.c (store_fixed_bit_field): Adjust BITPOS so that it
fits inside MODE before adjusting OFFSET to get an aligned address.
* expmed.c (store_fixed_bit_field): Move float mode to integral
mode conversion from near end of function to top of function.
* c-typeck.c (process_init_element): Check for constructor_type
set before dereferencing it in the string cst code.
Sun Feb 27 17:28:06 1994 Philippe De Muyter ([email protected])
* m68k/mot3300.h (TARGET_DEFAULT): Default to 68020-40.
(ASM_SPEC): New macro.
(FUNCTION_VALUE, FUNCTION_VALUE_REGNO_P): Return pointer in a0.
(*_LIBCALL): Use functions from sysV68's library.
(INIT_CUMULATIVE_ARGS, FUNCTION_ARG*): Some libcalls pass
parameters in registers.
Sun Feb 27 15:20:35 1994 Ron Guilmette ([email protected])
* flags.h (id_clash_len): Now unsigned.
(warn_larger_than, larger_than_size): New variables.
* toplev.c: Likewise.
(main): Support -Wlarger-than-NN.
* c-common.c (declare_hidden_char_array): Build new type if
warn_larger_than.
* c-decl.c (finish_decl, finish_function): Issue warning for
large objects, if requested.
Sun Feb 27 10:50:50 1994 Richard Kenner ([email protected])
* integrate.c (expand_inline_function): Allow extra arguments
and force their evaluation for side-effects.
* local-alloc.c (qty_compare{,_1}): Give multi-word regs higher
priority, as stated in the comments.
* global.c (allocno_compare): Likewise.
* c-common.c (binary_op_error): Initialize OPNAME.
* c-decl.c (store_parm_decls): Initialize some vars.
* c-lex.c (readescape): Initialize FIRSTDIG.
* c-typeck.c (type_lists_compatible_p): Initialize NEWVAL.
(pop_init_level): Initialize SIZE.
(output_pending_init_elements): Initialize NEXTPOS_TREE.
* calls.c (expand_call): Initialize OLD_PENDING_ADJ.
* cccp.c (main, args case 'D'): Rewrite to avoid uninitialized var.
(main, args case 'A'): Delete unused var P1.
(rescan): Initialize STR.
(do_xifdef, do_endif): Initialize arg to skip_to_end_of_comment.
* expr.c (emit_move_insn): Delete unused vars.
(emit_move_insn_1): Don't set SUBMODE unless used.
(expand_builtin, case BUILT_IN_SAVEREGS): Clean up uses of VALREG
and SAVED_VALREG.
* final.c (final_scan_insn): Always set OPS and use alloca.
* gcc.c (execute): Initialize PROG.
* optabs.c (emit_float_lib_cmp): Init LIBFUNC; abort if not reset.
* stmt.c (expand_start_bindings): Properly set NOTE if bytecode.
* tree.c (make_node, stabilize_reference_1): Abort if unknown class.
* varasm.c (make_decl_rtl): Initialize NAME and abort if not reset.
Sat Feb 26 13:09:37 1994 Doug Evans ([email protected])
* mips-tfile.c (fatal, error): Don't use prototypes
ifndef HAVE_VPRINTF.
* fixincludes: Fix including of machine/r3_cpu.h and machine/r4_cpu.h
in machine/cpu.h on Ultrix 4.3.
Sat Feb 26 07:14:04 1994 Richard Kenner ([email protected])
* rs6000.h (MASK_NO_SUM_IN_TOC, TARGET_NO_SUM_IN_TOC): New macros.
(MASK_MINIMAL_TOC): Change bit value.
(TARGET_SWITCHES): Add -mno-sum-in-toc; use -mfull-toc instead
of -mnormal-toc, other minor changes.
* rs6000.md (movsi): If -mno-sum-in-toc, do addition of
symbol + const.
* jump.c (rtx_renumbered_equal_p): Fix bug in comparing SUBREGs
and REGs.
Two commutative operations are equal if the operands are in the
opposite order.
* function.c (fixup_var_refs_insn): Delete CLOBBER of VAR. If
VAR is being assigned into by a libcall sequence, remove the
libcall notes.
* cse.c (count_reg_usage, case SET): If SRC has side-effects,
count a usage of DEST in it.
* expr.c (store_expr): In promoted TARGET case, if EXP is a
volatile MEM and WANT_VALUE is nonzero, only reference the MEM once.
Return TARGET if it is a hard register; clean up return code.
* tree.c (substitute_in_type, case REAL_TYPE): Fix typo in
previous change.
Fri Feb 25 06:42:20 1994 Richard Kenner ([email protected])
* tree.c (substitute_in_type, case REAL_TYPE): Allow
TYPE_{MIN,MAX}_VALUE to be unassigned.
* combine.c (if_then_else_cond): Fix typo in narrowing of a SUBREG.
* alpha.md (neg[sd]f2): Use %R1 consistently.
* reload.c (find_reloads): Don't restrict class of multiword
operand to preferred class.
(find_reloads_address_1): Rework to use `switch'.
Reload a SUBREG of a hard reg as a unit.
* alpha.md (mul*): Disallow multiply by constant.
Thu Feb 24 21:20:11 1994 Ian Lance Taylor ([email protected])
* fixinc.sco: In <prototypes.h>, fix prototypes of getcwd and
link.
Thu Feb 24 13:06:05 1994 Richard Stallman ([email protected])
* config.sub: Don't force os=-hpux for hp9k2... and hp9k3...
Thu Feb 24 11:17:11 1994 Jeffrey A. Law ([email protected])
* configure (hppa*-*-osf*): Renamed from hppa*-*-mach. Target
filenames changed accordingly.
Thu Feb 24 08:54:27 1994 Bob Miorelli ([email protected])
* lynx.h (LIB_SPEC, LINK_SPEC): Add missing blanks.
Thu Feb 24 08:42:07 1994 Ian Willis ([email protected])
* i386/sco.h, i386/scodbx.h (HANDLE_SYSV_PRAGMA): Define.
Thu Feb 24 07:31:44 1994 Richard Kenner ([email protected])
* loop.c (maybe_eliminate_biv_1): Ignore GIV if it isn't
always computed.
* loop.c (scan_loop, strength_reduce): Go back to LOOP_TOP, not
its NEXT_INSN (in case SCAN_START == LOOP_TOP).
Wed Feb 23 07:30:14 1994 Richard Kenner ([email protected])
* reload1.c (choose_reload_regs): If EQUIV is a SUBREG,
make a new REG.
* c-common.c (decl_attributes): Warn if attribute will be ignored.
Allow `noreturn', `volatile', and `const' on object of type
pointer to function.
Always give decl with error or warning.
* calls.c (expand_call): Functions may be const or volatile from
their type.
Tue Feb 22 11:00:12 1994 Ian Lance Taylor ([email protected])
* fixincludes: In #[el]if, put double underscores around M32,
m88k, pdp11, tower[_0-9]*, u370, u3b[0-9]*. From Kaveh R.
Ghazi.
* fixinc.sco: Fix prototype declaration of utime in <sys/times.h>;
it's broken in SCO 3.2v4.0.
Tue Feb 22 08:14:28 1994 Matthias Pfaller ([email protected])
* ns32k.h (FUNCTION_{PROLOGUE,EPILOGUE}): %$ is not supported
in fprintf.
(ADJSP): New macro to resolve %$.
* pc532.h (FRAME_POINTER_REQUIRED): Deleted.
* pc532-mach.h (FRAME_POINTER_REQUIRED): Moved to here.
(DEFAULT_PCC_STRUCT_RETURN): Deleted; redundant.
* ns32k.c (output_move_dconst): New function.
* ns32k.h (output_move_dconst): New declaration.
* ns32k.md: Added peephole patterns for stack adjustments followed
by QI/HI pushes.
(movsi): Use output_move_dconst for TARGET_32532.
(ffs): New patterns.
* ns32k.c (global_symbolic_reference_mentioned_p): New function.
(print_operand_address): Allow pc-relative mode not only
for {LABEL, SYMBOL}_REF but for CONST too. If compiling PIC,
transform "symbol+const(Rx)" to "const(symbol(sb))[Rx:b]".
* ns32k.h (OVERRIDE_OPTIONS): New macro to support PIC.
(FUNCTION_PROLOGUE): Save/Load sb when compiling PIC.
(FUNCTION_EPILOGUE): Restore sb when compiling PIC.
(INITIAL_FRAME_POINTER_OFFSET): Take saved sb into account when PIC.
(LEGITIMATE_CONSTANT_P, GO_IF_LEGITIMATE_ADDRESS):
Set current_function_uses_pic_offset_table if P uses a global
symbolic reference.
(ENCODE_SECTION_INFO): New macro to support PIC.
Tue Feb 22 07:59:27 1994 Torbjorn Granlund ([email protected])
* alpha.md (divsi3): Emit all RTL from RTL template.
(udivsi3, modsi3, umodsi3, divdi3, udivdi3, moddi3, umoddi3): Likewise.
Tue Feb 22 07:21:31 1994 Samuel A. Figueroa ([email protected])
* i386/os2.h (LINK_SPEC, LIB_SPEC): New macros.
(PATH_SEPARATOR): Delete from here.
* i386/xm-os2.h (PATH_SEPARATOR): Add to here.
Mon Feb 21 17:48:39 1994 Jim Wilson ([email protected])
* mips-tfile.c (fatal, error): Add ! HAVE_VPRINTF versions.
Sun Feb 20 16:53:02 1994 Ted Lemon ([email protected])
* mips.c (mips_move_2words): Check for TARGET_FLOAT64 != TARGET_64BIT.
(override_options): Don't override MASK_64BIT; don't allow -gp64
without -mips3.
* mips.h: Update mips3 comments.
(TARGET_OPTIONS): Add gp64 and gp32.
(SECONDARY_MEMORY_NEEDED): Don't allow fp<->gp copy if TARGET_FLOAT64
!= TARGET_64BIT.
(CC1_SPEC): Generate correct -mfp* and -mgp* from -mips*
* mips.md (movdf_internal1): Disable if TARGET_FLOAT64 != TARGET_64BIT.
(movdf_internal1a): New pattern.
* osfrose.h (CC1_SPEC): Update as above.
Sun Feb 20 15:40:45 1994 Jim Wilson ([email protected])
* sparc.h (HARD_REGNO_MODE_OK): Update comment.
* iris5.h (OBJECT_FORMAT_ELF): Add comments.
* configure (mips-sgi-irix5): Use collect.
Sat Feb 19 14:25:41 1994 Ian Lance Taylor ([email protected])
* fixincludes: Permit upper case characters in typedef of size_t
in <sys/types.h>.
Thu Feb 17 18:02:02 1994 Steve Chamberlain ([email protected])
* c-parse.in (attrib): Handle attribute ((section ("string"))).
* c-common.c (decl_attributes): Decode section attribute.
* c-decl.c (duplicate_decls): Merge section name into new decl.
* tree.h (DECL_SECTION_NAME): New macro.
(struct tree_decl): New member `section_name'.
* varasm.c (IN_NAMED_SECTION): New macro.
(named_section): New function.
(enum in_section): New value `in_named'.
(in_named_name): New global.
(make_function_rtl, make_decl_rtl, output_constant_def): Fix comment
regarding ASM_OUTPUT_LABELREF.
(make_decl_rtl): Warn if section attribute used with uninitialized
variable declaration.
(assemble_start_function, assemble_variable, output_constant_def):
Change to named section if given.
* sparc/sysv4.h (ASM_OUTPUT_SECTION_NAME): Define.
* h8300/h8300.h (ASM_OUTPUT_SECTION_NAME): Define.
(EXTRA_SECTIONS, EXTRA_SECTION_FUNCTIONS, SELECT_SECTION): Delete.
(ASM_OUTPUT_LABELREF): Call fprintf directly.
* h8300/h8300.c (asm_output_labelref): Delete.
* sh/sh.h (ASM_OUTPUT_SECTION_NAME): Define.
(ASM_OUTPUT_SECTION): Delete.
Wed Feb 16 21:46:48 1994 Doug Evans ([email protected])
* i960/i960.c (i960_function_prologue): Put register save area before
outgoing arg block.
Wed Feb 16 15:33:26 1994 Jim Wilson ([email protected])
* expr.c (get_pointer_alignment): ALIGN is alignment of innermost
object, not the MAX of alignment of all objects.
* expr.c (group_insns): Delete.
(emit_move_insn_1, expand_expr): Use emit_no_conflict_block
instead of group_insns.
* final.c (end_final): Pass BIGGEST_ALIGNMENT not align to
ASM_OUTPUT_ALIGNED_LOCAL.
* alpha.c (alpha_builtin_saveregs): Don't include
current_function_arg_offset_rtx in argsize. Subtract 48 from arg
base address when no int registers stored on the stack.
* genattrtab.c (expand_units): Fix blockage calculation.
* loop.c (scan_loop): Add no_labels_between_p call to tests which
decide if an invariant reg can be safely replaced with its SET_SRC.
Wed Feb 16 00:54:04 1994 Ian Lance Taylor ([email protected])
* fixincludes: Fix uses of new in Xm/Traversal.h. Found on
RS/6000.
Tue Feb 15 19:44:41 1994 Per Bothner ([email protected])
* tree.def: Remove STRING_TYPE. No-one uses it.
* tree.h (struct tree_type): New bitfield string_flag.
* tree.h (TYPE_STRING_FLAG): New macro.
* tree.c, sparc.c: Remove unneeded tests for STRING_TYPE.
* expr.c (expand_builtin), dwarfout.c: Use TYPE_STRING_FLAG.
* dbxout.c (dbxout_type): For SET_TYPE and ARRAY_TYPE, use
TYPE_STRING_FLAG to emit appropriate indication.
Tue Feb 15 19:36:45 1994 Stephen L Moshier ([email protected])
* real.c (real_value_truncate): If requested mode is not
supported, return the unmodified input instead of aborting.
Tue Feb 15 19:30:48 1994 Richard Kenner ([email protected])
* expr.c (expand_increment): Handle both BAD_SUBREG and POST.
Tue Feb 15 11:09:08 1994 Ian Lance Taylor ([email protected])
* fixinc.svr4: Make byteorder.h a here document, rather than
copying it from the source directory.
* byteorder.h: Removed.
* fixinc.sco: Don't install <sys/byteorder.h>.
* fixincludes: Removed references to GCCCMD. Instead of running
${GCCCMD} to determine correct value for size_t, just fix the
header files to use __SIZE_TYPE__.
* Makefile.in (fixinc.ready): Removed target.
(stmp-fixinc): Don't depend upon fixinc.ready. Don't pass fourth
argument (was "`pwd`/xgcc -B`pwd`/") to $(FIXINCLUDES).
(clean): Don't remove fixinc.ready.
* rs6000.h (RS6000_ITRUNC, RS6000_UITRUNC): Define.
* rs6000.md (fix_truncdfsi2, fixuns_truncdfsi2): Use RS6000_ITRUNC
and RS6000_UITRUNC, not "itrunc" and "uitrunc".
* rs6000.c (output_prolog): Likewise.
Mon Feb 14 19:19:06 1994 Jim Meyering ([email protected])
* gen-protos.c (main): Remove unused args in call to fprintf.
* bi-opcode.c (main): Move unused arg ++i out of call to printf.
Mon Feb 14 19:14:55 1994 Stephen L Moshier ([email protected])
* real.c (eifrac): If FIXUNS_TRUNC_LIKE_FIX_TRUNC,
convert on positive overflow as if unsigned.
Mon Feb 14 19:13:15 1994 Jason Merrill ([email protected])
* toplev.c (lang_options): Add -W{no,}extern-inline.
* gcc.c (default_compilers): Generate and use .ii files in the
intermediate stage of compiling C++ source.
Mon Feb 14 19:08:37 1994 Richard Kenner ([email protected])
* local-alloc.c (optimize_reg_copy): A register that dies in
a CALL_INSN doesn't cross that call.
* combine.c (simplify_shift_const, case AND): When remaking
binary operation, do it in SHIFT_MODE.
Mon Feb 14 11:27:35 1994 Frederic Pierresteguy ([email protected])
* config.sub: Add case for Bull dpx20.
Sun Feb 13 23:50:15 1994 Ian Lance Taylor ([email protected])
* rs6000.c (output_epilog): Don't output a traceback table if
flag_inhibit_size_directive is set.
Sun Feb 13 17:47:14 1994 Richard Kenner ([email protected])
* rs6000.c (rs6000_adjust_cost): Renamed from ppc_adjust_cost.
* rs6000.h (ADJUST_COST): Call rs6000_adjust_cost.
Sun Feb 13 17:07:02 1994 Ian Lance Taylor ([email protected])
* rs6000.h (ASM_OUTPUT_INTERNAL_LABEL_PREFIX): Define.
(ASM_OUTPUT_ADDR_VEC_ELT): Use ASM_GENERATE_INTERNAL_LABEL instead
of assuming the default format for internal labels.
(ASM_OUTPUT_ADDR_DIFF_ELT): Likewise.
* rs6000.c (output_prolog, output_epilog): Likewise.
(output_function_profiler): Likewise.
* fixincludes: Fix conflicts with C++ reserved words in
X11/ShellP.h, Xm/Traversal.h, and Xm/BaseClassI.h. Found on
RS/6000.
Sun Feb 13 13:40:17 1994 Michael Meissner ([email protected])
* halfpic.h (toplevel): Include stdio.h if it hasn't been included
already, so that STDIO_PROTO can be defined. Otherwise,
asm_fprintf gets a prototype mismatch.
Sun Feb 13 02:36:30 1994 Doug Evans ([email protected])
* gcc.c (fatal, error): Fix declarations (dependent on HAVE_VPRINTF)..
Sat Feb 12 19:46:29 1994 Michael Meissner ([email protected])
* configure (386-*-osfrose): Use i386/xm-osf.h as xm file.
* i386/xm-osf.h (new file): Define HAVE_PUTENV and HAVE_VPRINTF.
Sat Feb 12 08:51:02 1994 Richard Earnshaw ([email protected])
* calls.c (expand_call): When preserving subexpressions, don't put
expensive arguments directly into hard registers.
* combine.c (REVERSIBLE_CC_MODE): Add default definition.
(reversible_comparison_p): REVERSIBLE_CC_MODE.
* sparc.h (REVERSIBLE_CC_MODE): Define.
* combine.c (subst): Always simplify true and false arms if
if_then_else_cond succeeds.
(subst, case IF_THEN_ELSE): More canonicalizations; delete some
redundant tests.
(if_then_else_cond): Canonicalize (OP (mult COMP A) (mult REV_COMP B)).
(gen_binary): Simplify (REL_OP (compare X Y) 0) here.
Sat Feb 12 07:41:55 1994 Torbjorn Granlund ([email protected])
* cse.c (cse_main): Conditionalize special treatment of
PIC_OFFSET_TABLE_REGNUM on PIC_OFFSET_TABLE_REG_CALL_CLOBBERED.
* expmed.c (expand_shift): Truncate immediate count if
SHIFT_COUNT_TRUNCATED.
Fri Feb 11 18:49:42 1994 Per Bothner ([email protected])
* dbxout.c (dbxout_type_fields): Emit anonymous fields
just like other fields, but with an empty name. Don't
treat the fields as belonging to the containing object.
Fri Feb 11 20:08:25 1994 Torbjorn Granlund ([email protected])
* rs6000.md (definition of "type"): Add "jmpreg" as new type.
Change "mtlr" to "mtjmpr".
(movsi matcher): Pair `c' and `l' in the same constraint
alternative.
(return): Set attribute to "jmpreg".
(indirect_jump): Likewise.
* rs6000.h (ADJUST_COST): Call ppc_adjust_cost.
* rs6000.c (ppc_adjust_cost): New function. Adjust for TYPE_JMPREG.
Fri Feb 11 17:39:42 1994 Michael Collison ([email protected])
* reload1.c (gen_input_reload): If reg-reg add is not valid,
try copying reg-reg and adding reg-int.
Fri Feb 11 17:36:11 1994 Jason Merrill ([email protected])
* expr.c (expand_builtin): If the builtin was called as
__builtin_whatever, pretend we're optimizing.
Fri Feb 11 17:30:28 1994 Richard Kenner ([email protected])
* jump.c (mark_jump_label, case LABEL_REF): Update REG_LABEL
note if changing target of jump.
* regclass.c (record_reg_classes): Fix logic in case of matching
operands.
Fri Feb 11 16:03:21 1994 Doug Evans ([email protected])
* tree.h (VPROTO, VA_START): Avoid duplicate definition.
* rtl.h (VPROTO, VA_START): Likewise.
* gcc.c (VPROTO, VA_START): Define.
(PROTO): Define.
Add prototypes for static functions.
* g++.c (VPROTO, VA_START): Define.
* gstdarg.h: Don't define _STDARG_H/etc. if not gcc,
it may collide with system's header.
Thu Feb 10 19:26:37 1994 Chip Salzenberg ([email protected])
* c-typeck.c (c_expand_return): Do not warn about returning the
address of a locally declared extern variable.
Thu Feb 10 15:57:06 1994 Jeffrey A. Law ([email protected])
* final.c (IS_ASM_LOGICAL_LINE_SEPARATOR): Provide default
definition.
(asm_insn_count): Use IS_ASM_LOGICAL_LINE_SEPARATOR rather
than assuming the logical line separator is ';'.
* pa.h (IS_ASM_LOGICAL_LINE_SEPARATOR): Define.
Thu Feb 10 08:49:39 1994 Richard Kenner ([email protected])
* reload.h (reload_secondary_{reload,icode}): Deleted.
(reload_secondary_{in,out}_{reload,icode}): New variables.
* reload.c: Likewise.
(MATCHES, MERGABLE_RELOADS, MERGE_TO_OTHER): Move to front of file.
(push_secondary_reload): New function, from find_secondary_reload.
(find_secondary_reload): Deleted.
(push_reload): Call push_secondary_reload.
(combine_reloads): Use new vars for secondary reloads and icodes.
* reload1.c (emit_reload_insns): Use new vars for secondary
reloads and icodes.
* explow.c (memory_address): Fix error in last change.
Thu Feb 10 08:13:49 1994 Stephen R. van den Berg ([email protected])
* rtl.h, tree.h, mips-tfile.c (VPROTO): New macro.
* combine.c, expr.h, genattrtab.c, output.h, rtl.h, tree.h, toplev.c:
Use PROTO for varargs functions.
* genattrtab.c (attr_printf): Only declare when defined.
* bc-emit.c, calls.c, combine.c, emit-rtl.c, final.c, g++.c:
If __STDC__, include gstdarg and use ANSI form of varargs.
* gcc.c, genattrtab.c, mips-tfile.c, tree.c, toplev.c: Likewise.
Wed Feb 9 09:53:54 1994 Michael Meissner ([email protected])
* i386/osfrose.h (SUBTARGET_SWITCHES): Add -mmcount-ptr as a
synonym for -mno-mcount.
(CC1_SPEC): If -melf, pass -mmcount-ptr by default.
* i386/osfelf.h (CC1_SPEC): Unless -mrose, pass -mmcount-ptr by
default.
* configure (alpha-dec-osf): Use osf2.h and gdb-osf2.h on OSF/1 2.0 and
beyond.
* alpha/osf2.h, alpha/gdb-osf2.h (new files): Support for OSF/1 2.0
that uses 4 byte wchar_t's instead of 2 byte.
Tue Feb 8 20:18:12 1994 Paul Eggert ([email protected])
* real.c (earith, ereal_negate, eneg, eisneg, enan, emovo, esub):
Propagate the sign of NaNs, so that e.g. -(NaN) evaluates to -NaN.
(eadd, ediv, emul, eremain, e53toe, e64toe, e113toe, e24toe, esqrt):
Likewise.
(make_nan): New arg specifies sign of NaN. All callers changed.
(eiisneg): New function.
(esqrt): Compute sqrt(-0.0) to be -0.0, not 0.0.
Tue Feb 8 19:23:41 1994 Richard Kenner ([email protected])
* toplev.c: Include ctype.h.
* tree.c (int_fits_type_p): Properly handle case of variable bounds
for types.
Tue Feb 8 19:20:04 1994 Jason Merrill ([email protected])
* fixproto: Add popen and pclose to required list for stdio.h.
Add putenv to required list for stdlib.h.
Add getopt to required list for unistd.h.
* fixproto: Append "#include <stdlib.h>" to assert.h if it uses
exit or abort.
* libgcc2.c (__builtin_new): If __new_handler returns, keep trying
to allocate the memory.
(__default_new_handler): Add __ to beginning of name to avoid
namespace clashing.
Tue Feb 8 18:50:07 1994 Jim Wilson ([email protected])
* i386/x-aix (FIXINCLUDES): Delete definition.
* configure (i[34]86-ibm-aix): Delete definition of fixincludes.
* fixincludes: When edit size_t typedef, modify sed pattern to
avoid matching typedef uses of size_t. Likewise when adding
#ifndef GCC_SIZE_T.
* fixinc.ps2: Delete file.
* mips.h (ASM_OUTPUT_LOCAL, ASM_OUTPUT_COMMON): Use SIZE not ROUNDED.
* iris5.h (SIZE_TYPE, PTRDIFF_TYPE): Don't redefine.
(MAX_WCHAR_TYPE_SIZE): Define.
* mips-tdump.c (print_file_desc): Correct printf format.
(main): Likewise.
* flow.c (find_basic_blocks): Also look for REG_LABEL notes on first
instruction of each basic block.
* sparc.c (save_regs, restore_regs): Use __inline__ not inline.
Tue Feb 8 10:13:54 1994 Doug Evans ([email protected])
* toplev.c (open_dump_file): New function.
(compile_file): Open dump files with it. Remove dump_base_name_length.
Sun Feb 6 15:52:48 1994 Jim Wilson ([email protected])
* collect2.c (sys_siglist): Don't declare if
DONT_DECLARE_SYS_SIGLIST is defined.
* mips/xm-sysv4.h (DONT_DECLARE_SYS_SIGLIST): Define.
* sparc/xm-sol2.h (NO_SYS_SIGLIST): Delete.
(DONT_DECLARE_SYS_SIGLIST): Define.
* mips-tfile.c (sys_siglist): Don't declare if NO_SYS_SIGLIST or
DONT_DECLARE_SYS_SIGLIST are defined.
(catch_signal): Add code for NO_SYS_SIGLIST case.
* sched.c (reg_pending_sets, reg_pending_sets_all): New variables.
(sched_analyze_1): Set reg_pending_sets instead of reg_last_sets.
(sched_analyze_2): Set reg_pending_sets or reg_pending_sets_all
instead of reg_last_sets.
(sched_analyze_insn): Use reg_pending_sets and
reg_pending_sets_all to set reg_last_sets. Set
reg_pending_sets_all instead of reg_last_sets.
(schedule_block): Allocate and clear reg_pending_sets.
* sparc.md (movdi): Handle 'U' and 'T' constraints.
* m68k/hp320.h (FUNCTION_PROFILER): Concatenate strings to avoid
use of ANSI C specific feature.
* mips.c (function_arg): When soft-float, don't add bias for
second SFmode argument.
* iris5.h (CPP_PREDEFINES): Add _MIPSEB.
Sun Feb 6 08:40:46 1994 Richard Kenner ([email protected])
* function.c (struct temp_slot): Add new field, ADDRESS.
(assign_stack_temp): Initialize it to zero.
(find_temp_slot_from_address, update_temp_slot_address): New functions.
(preserve_temp_slots): Use find_temp_slot_from_address.
* explow.c (memory_address): Call update_temp_slot_address on
new and old address.
* cse.c (canon_hash, case LABEL_REF, SYMBOL_REF): Avoid warning
on 64-bit machines.
Sat Feb 5 17:55:52 1994 Richard Kenner ([email protected])
* configure (i[34]86-sequent-ptx): Alias for i[34]86-sequent-sysv*.
Sat Feb 5 11:46:00 1994 Steve Chamberlain ([email protected])
* sh.c (hard_regno_mode_ok): New vector.
(output_stack_adjust): Always adjust stack with an addsi insn.
(calc_live_regs): Support alernative calling conventions.
(print_operand): Delete obsolete cases.
(synth_constant): New function to generate constants by
arithmetic means.
(expand_block_move): Use new block move support routines.
(prepare_move_operands): Use synth_constant when possible, try
and geneate splits for DI moves.
(output_jump_label_table, dump_table, output_far_jump,
prepare_split_double_ops,from_compare, equality_operator,
handle_pragma, expand_acall): New functions.
(prepare_scc_operands): When condition isn't supported swap args
and alter test.
(output_move_double): Generate better code for constant moves.
(output_shift): Cope with negative shifts.
(byte_index_operand, pop_operand, painful_immediate_operand,
ok_shift_value, hard_immediate_operand, adjust_insn_length,
dump_constants, output_movepcrel): Deleted.
(final_prescan_insn): Now only prints pc.
(shiftcosts, andcosts, multcosts): Work out some insn costs.
(gen_ashift, gen_shifty): Emit code for shift operations.
(fixit, hi_const, find_barrier, broken_move,
machine_dependent_reorg): New functions to fix move instructions
with out-of-range literals.
* sh.h (OPTIMIZATION_OPTIONS, CONDITIONAL_REGISTER_USAGE): New.
(TARGET_SWITCHES): Extra -m options for experimental calling
conventions.
(HARD_REGNO_MODE_OK): Use hard_regno_mode_ok vector rather than
inline code.
(FRAME_POINTER_REQUIRED): Always 0.
(reg_class, REG_CLASS_CONTENTS, REG_CLASS_NAMES): Change order
of classes.
(FRAME_GROWS_DOWNWARD): Don't define.
(FUNCTION_ARG_PARTIAL_NREGS): Always 0.
(MAX_REGS_PER_ADDRESS): Is 2.
(GO_IF_LEGITIMATE_INDEX): Split up into smaller macros.
(CASE_VECTOR_MODE, CASE_VECTOR_PC_RELATIVE): Jump tables are of
switchable size and always pc relative.
(RTX_COSTS): Use new andcosts, multcosts and shiftcosts functions.
(INSN_SETS_ARE_DELAYED, INSN_REFERENCES_ARE_DELAYED): New.
(ASM_OUTPUT_CASE_LABEL, ASM_OUTPUT_ADDR_DIF_ELT): Now switches are
pc relative.
* sh.md (define_attr length): Calculate lengths more accurately.
(define_attr "rte", "hit_stack"): New.
(cmp*): Allow all conditions by swapping args.
(addc, adddi3, and_ff, casesi, casesi_worker, peepholes): New.
(div*, mul*): Use library routines with special calling
conventions.
(shifts): Generate only legal shift insn sequences.
(extend*): Get clobbers right, extra constraints.
(mov*): Greatly simplified.
(b*): Use from_compare function.
(return, rte): Understand pragma interrupt.
(anddi3, iordi3, xordi3): Deleted.
(consttable_2,consttable_4, consttable_8, align_2, align_4,
consttable_end, movesi_k, movhi_k, movdi_k): Support for inline
literal tables.
(movstrsi, block_move_real, block_lump_real): Use new block move
routines.
* toplev.c (rest_of_compilation): Invoke MACHINE_DEPENDENT_REORG if
defined.
Sat Feb 5 08:05:58 1994 Richard Earnshaw ([email protected])
* cse.c (memory_extend_rtx): New variable.
(cse_main): Initialize it.
(cse_insn): See if we have already loaded a MEM in a wider mode.
Sat Feb 5 07:05:29 1994 Jason Merrill ([email protected])
* fixproto: Add lstat to required_list for sys/stat.h
Fri Feb 4 12:14:49 1994 Stan Cox ([email protected])
* m88k.h: (TARGET_SWITCHES) Assume -muse-div-instruction
-mno-check-zero-division for -m88110. (CONSTANT_ADDRESS_P) Fix a
-fpic reload bug. (DONT_REDUCE_ADDR) Don't strength reduce so
m88k scaled loads/stores will be used. (enum processor_type) Use
instead of attr_cpu, which is not always defined.
* m88k.md: (movdf) Split movdf so it can go into a branch delay slot
* m88k.c: (m88k_gp_threshold) Make -mshort-data- unsigned.
(block_move_*) Copy MEM_IN_STRUCT_P for block move cases.
* dgux.h: (TARGET_SVR4) Use -msvr4/-msvr3 instead of
-mversion-03.00 to choose assembler syntax.
Fri Feb 4 08:14:31 1994 Richard Kenner ([email protected])
* emit-rtl.c (gen_lowpart_common, gen_highpart): Test *_BIG_ENDIAN
with "if", not #if and fix one erroneous test.
Thu Feb 3 17:15:07 1994 Jim Wilson ([email protected])
* expmed.c (store_bit_field, insv case): Don't use PUT_MODE on
xop0 when it is a SUBREG, generate a new SUBREG.
Thu Feb 3 13:24:14 1994 Alex Zatsman ([email protected])
* hard-reg-set.h (GO_IF_HARD_REG_EQUAL): Fix typo.
Thu Feb 3 07:45:45 1994 Richard Kenner ([email protected])
* flow.c: Add prototypes for static functions.
(uses_reg_or_mem): New function.
(find_basic_block): Some cleanups; eliminate shadowed variables.
Look for REG_LABEL notes in all insns and allow for multiple such.
Don't delete labels in forced_labels.
Generalize test for computed jumps.
(find_auto_inc): OFFSET should be HOST_WIDE_INT.
(mark_used_regs): Put decls of parms in parm order.
(find_use_as_address): PLUSCONST should be HOST_WIDE_INT.
* reload1.c (eliminate_regs, case INSN_LIST): Properly remake
list when we change something further on.
Wed Feb 2 21:25:03 1994 Jim Wilson ([email protected])
* c-typeck.c (signed_or_unsigned_type): Check for any
INTEGRAL_TYPE_P not just INTEGER_TYPE.
* Makefile.in (enquire.o): Depend on stmp-int-hdrs.
* mips.h (CPP_SPEC): Define __PTRDIFF_TYPE__ not __PTRDIFF_TYPE.
* reorg.c (fill_simple_delay_slots): When fill epilogue delay
slot, set needed to end_of_function_needs instead of clearing it.
Wed Feb 2 15:20:38 1994 Philippe De Muyter ([email protected])
* tree.c (FILE_FUNCTION_FORMAT): Fix typo if neither dot nor dollar
in label.
Wed Feb 2 14:38:56 1994 Richard Kenner ([email protected])
* fold-const.c (const_binop, COMPLEX_TYPE, case RDIV_EXPR):
If complex integer, use TRUNC_DIV_EXPR for inner division.
* c-tree.h: Re-order declarations for functions in c-typeck.c to
agree with order there; add some missing declarations.
* c-typeck.c: Add prototypes for static functions; delete
forward declarations of non-static functions.
(initializer_constant_valid_p): Add missing parameter to
recursive call.
Wed Feb 2 14:22:05 1994 Kaveh R. Ghazi ([email protected])
* objc/Makefile (SUBDIR_INCLUDES): Add -I for include directory.
Wed Feb 2 13:24:23 1994 Chip Salzenberg ([email protected])
* expmed.c (synth_mult): Delay allocation of algorithm structures
until they are needed. Reorder early-exit tests to avoid comparing
value that is not yet set.
Tue Feb 1 18:56:19 1994 Chip Salzenberg ([email protected])
* c-common.c (decl_attributes): Allow format attributes
on old style (non-prototype) function declarations.
Tue Feb 1 11:25:40 1994 Stephen R. van den Berg ([email protected])
* tree.c (build_type_variant): Simplify by using build_type_copy.
* c-decl.c (grokdeclarator): `volatile' function warning
corrected to read `noreturn' function warning.
(finish_function): Likewise.
* cp-decl.c (finish_function): Likewise.
* c-typeck.c, cp-typeck.c (c_expand_return): Likewise.
* toplev.c (rest_of_compilation): Likewise.
Tue Feb 1 06:06:22 1994 Richard Kenner ([email protected])
* combine.c (make_extraction): Don't make an extraction that
has the potential of crossing a boundary.
* regclass.c: Add prototypes for static functions.
(auto_inc_dec_reg_p): New function.
(regclass): Call it to allow a register needing a secondary reload
to be used for inc/dec if it is already valid for it.
* gcc.c (default_compilers, @ada): Don't duplicate "-gnat" parameters;
pass -quiet unless -Q is specified.
* alpha.md (minsf3, maxdf3, mindf3): Properly insert constant of
zero into patterns.
Mon Jan 31 20:55:41 1994 Jim Wilson ([email protected])
* i960.c (i960_function_name_declare): Handle names that start
with '*'.
Mon Jan 31 19:13:59 1994 Chip Salzenberg ([email protected])
Unify error and message functions:
* toplev.c: Include "gvarargs.h".
(fatal_insn_not_found): Omit superfluous argument to error.
(vmessage, v_message_with_file_and_line): New functions.
(v_message_with_decl, file_and_line_for_asm): Likewise.
(v_error_with_file_and_line, v_error_with_decl): Likewise.
(v_error_for_asm, verror, vfatal): Likewise.
(v_warning_with_file_and_line, v_warning_with_decl): Likewise.
(v_warning_for_asm, vwarning): Likewise.
(error_with_file_and_line, error_with_decl, error, fatal): Now just
wrappers for above functions.
(error_for_asm, warning_with_file_and_line): Likewise.
(warning_with_decl, warning_for_asm, warning): Likewise.
Mon Jan 31 19:03:16 1994 Jim Wilson ([email protected])
* sched.c (sched_analyze_insn): Add use dependencies for registers
mentioned in REG_DEAD notes.
* configure (mips-tandem-sysv4*): Add.
* mips/svr4-t.h, mips/svr4-t-gdb.h: New files.
* sched.c (priority): Call insn_cost() for anti- and output-
dependencies as well as for true dependencies.
* cse.c (find_best_addr): Limit number of cse_gen_binary calls to
20 per iteration.
Mon Jan 31 18:08:27 1994 Richard Kenner ([email protected])
* real.c (emovo): Use separate variable for loop index.
* fold-const.c (operand_equal_for_comparison_p): Declare
correct_width as unsigned.
* configure (m68k-wrs-vxworks): Fix typo in name.
* Makefile.in (cross-test, enquire, protoize, unprotoize):
Specify program name in -o to force into build directory.
* i386/sol2.h (CPP_SPEC): Add -Dsun.
* alpha/gdb.h: Renamed from alpha-gdb.h.
* alpha/gdb-osf12.h: New file.
* configure (alpha): Reflect new name for files and support
gdb with OSF V1.2.
Mon Jan 31 15:18:40 1994 Jim Wilson ([email protected])
* bc-emit.c (class_narrowest_mode, byte_mode, word_mode): Add
extern to declaration.
* expr.c (local_vars_size): Likewise.
* genattrtab.c (expand_units): When calculate BLOCKAGE, reverse
terms to POS_MINUS_OP. Clarify comment before BLOCKAGE computation.
(write_complex_function): Use EXECUTING_INSN for first switch, and
CANDIDATE_INSN for second switch.