[PATCH] D30692: [ARM] Correct handling of LSL #0 in an IT block

Zachary Turner via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 7 13:25:46 PST 2017


This appears to be failing ON Windows.  Can you take a look?

******************** TEST 'LLVM :: MC/ARM/lsl-zero.s' FAILED
********************
Script:
--
not D:/src/llvmbuild/ninja-mono/./bin\llvm-mc.EXE -triple=thumbv7
-show-encoding < D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s 2>&1 |
D:/src/llvmbuild/ninja-mono/./bin\FileCheck.EXE --check-prefix=CHECK
--check-prefix=CHECK-NONARM --check-prefix=CHECK-THUMBV7
D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s
not D:/src/llvmbuild/ninja-mono/./bin\llvm-mc.EXE -triple=thumbv8
-show-encoding < D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s 2>&1 |
D:/src/llvmbuild/ninja-mono/./bin\FileCheck.EXE --check-prefix=CHECK
--check-prefix=CHECK-NONARM --check-prefix=CHECK-THUMBV8
D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s
D:/src/llvmbuild/ninja-mono/./bin\llvm-mc.EXE -triple=armv7 -show-encoding
< D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s 2>&1 |
D:/src/llvmbuild/ninja-mono/./bin\FileCheck.EXE --check-prefix=CHECK
--check-prefix=CHECK-ARM D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s
--
Exit Code: 1

Command Output (stdout):
--
$ "not" "D:/src/llvmbuild/ninja-mono/./bin\llvm-mc.EXE" "-triple=thumbv7"
"-show-encoding"
$ "D:/src/llvmbuild/ninja-mono/./bin\FileCheck.EXE" "--check-prefix=CHECK"
"--check-prefix=CHECK-NONARM" "--check-prefix=CHECK-THUMBV7"
"D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s"
$ "not" "D:/src/llvmbuild/ninja-mono/./bin\llvm-mc.EXE" "-triple=thumbv8"
"-show-encoding"
$ "D:/src/llvmbuild/ninja-mono/./bin\FileCheck.EXE" "--check-prefix=CHECK"
"--check-prefix=CHECK-NONARM" "--check-prefix=CHECK-THUMBV8"
"D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s"
# command stderr:
D:\src\llvm-mono\llvm\test\MC\ARM\lsl-zero.s:146:18: error: expected string
not found in input
// CHECK-NONARM: moveq.w r0, r1 @ encoding: [0x4f,0xea,0x01,0x00]
                 ^
<stdin>:119:1: note: scanning from here

On Tue, Mar 7, 2017 at 6:54 AM John Brawn via Phabricator via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> This revision was automatically updated to reflect the committed changes.
> Closed by commit rL297142: [ARM] Correct handling of LSL #0 in an IT block
> (authored by john.brawn).
>
> Changed prior to commit:
>   https://reviews.llvm.org/D30692?vs=90845&id=90847#toc
>
> Repository:
>   rL LLVM
>
> https://reviews.llvm.org/D30692
>
> Files:
>   llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
>   llvm/trunk/test/MC/ARM/lsl-zero.s
>
>
> Index: llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
> ===================================================================
> --- llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
> +++ llvm/trunk/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
> @@ -8940,7 +8940,7 @@
>          inITBlock())
>        return Match_RequiresNotITBlock;
>      // LSL with zero immediate is not allowed in an IT block
> -    if (Opc == ARM::tLSLri && Inst.getOperand(4).getImm() == 0 &&
> inITBlock())
> +    if (Opc == ARM::tLSLri && Inst.getOperand(3).getImm() == 0 &&
> inITBlock())
>        return Match_RequiresNotITBlock;
>    } else if (isThumbOne()) {
>      // Some high-register supporting Thumb1 encodings only allow both
> registers
> Index: llvm/trunk/test/MC/ARM/lsl-zero.s
> ===================================================================
> --- llvm/trunk/test/MC/ARM/lsl-zero.s
> +++ llvm/trunk/test/MC/ARM/lsl-zero.s
> @@ -122,19 +122,33 @@
>          itt eq
>          lsleq  r0, r1, #0
>          lslseq r0, r1, #0
> +        itt gt
> +        lslgt  r0, r1, #0
> +        lslsgt r0, r1, #0
>
>  // CHECK-NONARM: moveq.w r0, r1         @ encoding: [0x4f,0xea,0x01,0x00]
>  // CHECK-NONARM: movseq.w r0, r1        @ encoding: [0x5f,0xea,0x01,0x00]
> +// CHECK-NONARM: movgt.w r0, r1         @ encoding: [0x4f,0xea,0x01,0x00]
> +// CHECK-NONARM: movsgt.w r0, r1        @ encoding: [0x5f,0xea,0x01,0x00]
>
>  // CHECK-ARM: moveq r0, r1              @ encoding: [0x01,0x00,0xa0,0x01]
>  // CHECK-ARM: movseq r0, r1             @ encoding: [0x01,0x00,0xb0,0x01]
> +// CHECK-ARM: movgt r0, r1              @ encoding: [0x01,0x00,0xa0,0xc1]
> +// CHECK-ARM: movsgt r0, r1             @ encoding: [0x01,0x00,0xb0,0xc1]
>
>          itt eq
>          moveq  r0, r1, lsl #0
>          movseq r0, r1, lsl #0
> +        itt gt
> +        movgt  r0, r1, lsl #0
> +        movsgt r0, r1, lsl #0
>
>  // CHECK-NONARM: moveq.w r0, r1         @ encoding: [0x4f,0xea,0x01,0x00]
>  // CHECK-NONARM: movseq.w r0, r1        @ encoding: [0x5f,0xea,0x01,0x00]
> +// CHECK-NONARM: movgt.w r0, r1         @ encoding: [0x4f,0xea,0x01,0x00]
> +// CHECK-NONARM: movsgt.w r0, r1        @ encoding: [0x5f,0xea,0x01,0x00]
>
>  // CHECK-ARM: moveq r0, r1              @ encoding: [0x01,0x00,0xa0,0x01]
>  // CHECK-ARM: movseq r0, r1             @ encoding: [0x01,0x00,0xb0,0x01]
> +// CHECK-ARM: movgt r0, r1              @ encoding: [0x01,0x00,0xa0,0xc1]
> +// CHECK-ARM: movsgt r0, r1             @ encoding: [0x01,0x00,0xb0,0xc1]
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170307/261891b3/attachment.html>


More information about the llvm-commits mailing list