Module Name: src Committed By: bouyer Date: Sat Apr 20 10:08:37 UTC 2013
Modified Files: src/external/gpl3/gcc/dist/gcc/config/vax [netbsd-6]: vax.c vax.md src/gnu/dist/gcc4/gcc/config/vax [netbsd-6]: vax.c vax.md Log Message: Pull up following revision(s) (requested by martin in ticket #870): gnu/dist/gcc4/gcc/config/vax/vax.md: revision 1.17 external/gpl3/gcc/dist/gcc/config/vax/vax.c: revision 1.3 gnu/dist/gcc4/gcc/config/vax/vax.c: revision 1.19 external/gpl3/gcc/dist/gcc/config/vax/vax.md: revision 1.4 Fix "ashq" second argument sign extension (the assembler does not treat -1 as a 64bit value). Upstream reported as http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56875 Problemm noted by Jonny Billquist (in lint), hint for solution from mouse. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.2.2.1 src/external/gpl3/gcc/dist/gcc/config/vax/vax.c cvs rdiff -u -r1.3 -r1.3.2.1 src/external/gpl3/gcc/dist/gcc/config/vax/vax.md cvs rdiff -u -r1.18 -r1.18.2.1 src/gnu/dist/gcc4/gcc/config/vax/vax.c cvs rdiff -u -r1.15.2.1 -r1.15.2.2 src/gnu/dist/gcc4/gcc/config/vax/vax.md Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/gpl3/gcc/dist/gcc/config/vax/vax.c diff -u src/external/gpl3/gcc/dist/gcc/config/vax/vax.c:1.2 src/external/gpl3/gcc/dist/gcc/config/vax/vax.c:1.2.2.1 --- src/external/gpl3/gcc/dist/gcc/config/vax/vax.c:1.2 Sun Feb 5 17:38:21 2012 +++ src/external/gpl3/gcc/dist/gcc/config/vax/vax.c Sat Apr 20 10:08:37 2013 @@ -1153,7 +1153,7 @@ vax_output_int_move (rtx insn ATTRIBUTE_ { 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 } @@ -1165,7 +1165,7 @@ vax_output_int_move (rtx insn ATTRIBUTE_ { operands[1] = GEN_INT (hval >> n); operands[2] = GEN_INT (n + 32); - return "ashq %2,%1,%0"; + return "ashq %2,%D1,%0"; #endif } } Index: src/external/gpl3/gcc/dist/gcc/config/vax/vax.md diff -u src/external/gpl3/gcc/dist/gcc/config/vax/vax.md:1.3 src/external/gpl3/gcc/dist/gcc/config/vax/vax.md:1.3.2.1 --- src/external/gpl3/gcc/dist/gcc/config/vax/vax.md:1.3 Sun Feb 5 17:38:21 2012 +++ src/external/gpl3/gcc/dist/gcc/config/vax/vax.md Sat Apr 20 10:08:37 2013 @@ -701,14 +701,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 Index: src/gnu/dist/gcc4/gcc/config/vax/vax.c diff -u src/gnu/dist/gcc4/gcc/config/vax/vax.c:1.18 src/gnu/dist/gcc4/gcc/config/vax/vax.c:1.18.2.1 --- src/gnu/dist/gcc4/gcc/config/vax/vax.c:1.18 Sun Feb 5 17:34:34 2012 +++ src/gnu/dist/gcc4/gcc/config/vax/vax.c Sat Apr 20 10:08:37 2013 @@ -1075,7 +1075,7 @@ vax_output_int_move (rtx insn ATTRIBUTE_ { 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 @@ vax_output_int_move (rtx insn ATTRIBUTE_ { operands[1] = GEN_INT (hval >> n); operands[2] = GEN_INT (n + 32); - return "ashq %2,%1,%0"; + return "ashq %2,%D1,%0"; #endif } } Index: src/gnu/dist/gcc4/gcc/config/vax/vax.md diff -u src/gnu/dist/gcc4/gcc/config/vax/vax.md:1.15.2.1 src/gnu/dist/gcc4/gcc/config/vax/vax.md:1.15.2.2 --- src/gnu/dist/gcc4/gcc/config/vax/vax.md:1.15.2.1 Wed Jul 25 15:09:33 2012 +++ src/gnu/dist/gcc4/gcc/config/vax/vax.md Sat Apr 20 10:08:36 2013 @@ -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