[PATCH] D30692: [ARM] Correct handling of LSL #0 in an IT block
John Brawn via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 8 05:04:15 PST 2017
This was caused by stdout and stderr being interleaved in a way that caused the test to fail.
I’ve committed https://reviews.llvm.org/rL297273 which splits up the test which should
fix this.
John
From: Zachary Turner [mailto:zturner at google.com]
Sent: 07 March 2017 21:26
To: reviews+D30692+public+d360c608692dd812 at reviews.llvm.org; John Brawn via Phabricator; John Brawn; renato.golin at linaro.org; James Molloy; Oliver Stannard
Cc: llvm-commits at lists.llvm.org
Subject: Re: [PATCH] D30692: [ARM] Correct handling of LSL #0 in an IT block
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<mailto: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<mailto: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/20170308/6047483e/attachment.html>
More information about the llvm-commits
mailing list