Thu Jun 8 15:28:27 2017 UTC ()
Fix PR port-vax/51761 as suggested by Paul Koning on port-vax list.
Installation (install.ram, -Os) on my VS4000 is possible without SCSI timeouts
again.
Other variable-length bit field instructions should be checked for correct
constraints, too!


(flxd)
diff -r1.5 -r1.6 src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md

cvs diff -r1.5 -r1.6 src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md (expand / switch to unified diff)

--- src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md 2016/01/24 09:43:34 1.5
+++ src/external/gpl3/gcc/dist/gcc/config/vax/builtins.md 2017/06/08 15:28:27 1.6
@@ -37,27 +37,27 @@ @@ -37,27 +37,27 @@
37 " 37 "
38{ 38{
39 rtx label = gen_label_rtx (); 39 rtx label = gen_label_rtx ();
40 emit_insn (gen_ctzsi2 (operands[0], operands[1])); 40 emit_insn (gen_ctzsi2 (operands[0], operands[1]));
41 emit_jump_insn (gen_condjump (gen_rtx_NE(VOIDmode, cc0_rtx, const0_rtx), label)); 41 emit_jump_insn (gen_condjump (gen_rtx_NE(VOIDmode, cc0_rtx, const0_rtx), label));
42 emit_move_insn (operands[0], constm1_rtx); 42 emit_move_insn (operands[0], constm1_rtx);
43 emit_label (label); 43 emit_label (label);
44 emit_insn (gen_addsi3 (operands[0], operands[0], const1_rtx)); 44 emit_insn (gen_addsi3 (operands[0], operands[0], const1_rtx));
45 DONE; 45 DONE;
46}") 46}")
47 47
48(define_insn "ctzsi2" 48(define_insn "ctzsi2"
49 [(set (match_operand:SI 0 "nonimmediate_operand" "=rQ") 49 [(set (match_operand:SI 0 "nonimmediate_operand" "=rQ")
50 (ctz:SI (match_operand:SI 1 "general_operand" "nrmT"))) 50 (ctz:SI (match_operand:SI 1 "general_operand" "nrQT")))
51 (set (cc0) (match_dup 0))] 51 (set (cc0) (match_dup 0))]
52 "" 52 ""
53 "ffs $0,$32,%1,%0") 53 "ffs $0,$32,%1,%0")
54 54
55(define_expand "sync_lock_test_and_set<mode>" 55(define_expand "sync_lock_test_and_set<mode>"
56 [(set (match_operand:VAXint 0 "nonimmediate_operand" "=&g") 56 [(set (match_operand:VAXint 0 "nonimmediate_operand" "=&g")
57 (unspec:VAXint [(match_operand:VAXint 1 "memory_operand" "+m") 57 (unspec:VAXint [(match_operand:VAXint 1 "memory_operand" "+m")
58 (match_operand:VAXint 2 "const_int_operand" "n") 58 (match_operand:VAXint 2 "const_int_operand" "n")
59 ] VUNSPEC_LOCK))] 59 ] VUNSPEC_LOCK))]
60 "" 60 ""
61 " 61 "
62{ 62{
63 rtx label; 63 rtx label;