Port-vax archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Building current



On Sun, Apr 07, 2013 at 10:55:14PM -0400, Mouse wrote:
> I speculate that it could fix this to just s/%1/%D1/ here.  I'm going
> to start a test build in my simulator with this change, but it will
> take some three or four days to complete even if everything works fine,
> so if someone else can try this - or rather the analogous change to
> whichever version is in use - on something faster, that might be good.

I did the below patch (changing all occurances of ashq) and it seems to
work well, my test program from yesterday now disassembles as:

00010630 <main>:
   10630:       40 00           .word 0x0040 # Entry mask: < r6 >
   10632:       c2 04 5e        subl2 $0x4,sp
   10635:       d4 56           clrf r6
   10637:       79 56 8f ff     ashq r6,$0xffffffffffffffff,r2
   1063b:       ff ff ff ff 
   1063f:       ff ff ff 52 


Would you like to send the patch upstream or do you want me to handle that?


Thanks,

Martin
Index: vax.c
===================================================================
RCS file: /cvsroot/src/gnu/dist/gcc4/gcc/config/vax/vax.c,v
retrieving revision 1.18
diff -c -u -r1.18 vax.c
--- vax.c       5 Feb 2012 17:34:34 -0000       1.18
+++ vax.c       8 Apr 2013 08:14:13 -0000
@@ -1075,7 +1075,7 @@
                {
                  operands[1] = GEN_INT (lval);
                  operands[2] = GEN_INT (n);
-                 return "ashq %2,%1,%0";
+                 return "ashq %2,%D1,%0";
                }
 #if HOST_BITS_PER_WIDE_INT == 32
            }
@@ -1087,7 +1087,7 @@
            {
              operands[1] = GEN_INT (hval >> n);
              operands[2] = GEN_INT (n + 32);
-             return "ashq %2,%1,%0";
+             return "ashq %2,%D1,%0";
 #endif
            }
        }
Index: vax.md
===================================================================
RCS file: /cvsroot/src/gnu/dist/gcc4/gcc/config/vax/vax.md,v
retrieving revision 1.16
diff -c -u -r1.16 vax.md
--- vax.md      16 Jul 2012 17:39:29 -0000      1.16
+++ vax.md      8 Apr 2013 08:14:13 -0000
@@ -724,14 +724,14 @@
        (ashift:DI (match_operand:DI 1 "general_operand" "g")
                   (match_operand:QI 2 "general_operand" "g")))]
   ""
-  "ashq %2,%1,%0")
+  "ashq %2,%D1,%0")
 
 (define_insn ""
   [(set (match_operand:DI 0 "nonimmediate_operand" "=g")
        (ashiftrt:DI (match_operand:DI 1 "general_operand" "g")
                     (neg:QI (match_operand:QI 2 "general_operand" "g"))))]
   ""
-  "ashq %2,%1,%0")
+  "ashq %2,%D1,%0")
 
 ;; We used to have expand_shift handle logical right shifts by using extzv,
 ;; but this make it very difficult to do lshrdi3.  Since the VAX is the


Home | Main Index | Thread Index | Old Index