Skip to content

Commit 1a3da0b

Browse files
heiherSixWeining
authored andcommitted
[LoongArch] Add test case showing suboptimal codegen when zero extending
Add test case showing suboptimal codegen when zero extending. Signed-off-by: WANG Rui <[email protected]> Reviewed By: xen0n Differential Revision: https://reviews.llvm.org/D154918
1 parent ac6e551 commit 1a3da0b

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2+
; RUN: llc --mtriple=loongarch64 < %s | FileCheck %s
3+
4+
define signext i32 @sext_icmp(i32 signext %x, i32 signext %y) {
5+
; CHECK-LABEL: sext_icmp:
6+
; CHECK: # %bb.0:
7+
; CHECK-NEXT: bstrpick.d $a1, $a1, 31, 0
8+
; CHECK-NEXT: addi.d $a0, $a0, 1
9+
; CHECK-NEXT: bstrpick.d $a0, $a0, 31, 0
10+
; CHECK-NEXT: xor $a0, $a0, $a1
11+
; CHECK-NEXT: sltu $a0, $zero, $a0
12+
; CHECK-NEXT: ret
13+
%1 = add nsw i32 %x, 1
14+
%2 = icmp ne i32 %1, %y
15+
%3 = zext i1 %2 to i32
16+
ret i32 %3
17+
}

0 commit comments

Comments
 (0)