23 lines
500 B
LLVM
23 lines
500 B
LLVM
|
; RUN: llc -O0 -march=hexagon < %s | FileCheck %s
|
||
|
|
||
|
; CHECK-LABEL: sexti1
|
||
|
; CHECK: r[[REG:[0-9]+]] = mux(p{{[0-3]}},#-1,#0)
|
||
|
; CHECK: combine(r[[REG]],r[[REG]])
|
||
|
define i64 @sexti1(i64 %a0, i64 %a1) {
|
||
|
entry:
|
||
|
%t0 = icmp ult i64 %a0, %a1
|
||
|
%t1 = sext i1 %t0 to i64
|
||
|
ret i64 %t1
|
||
|
}
|
||
|
|
||
|
; CHECK-LABEL: zexti1
|
||
|
; CHECK: r[[REG:[0-9]+]] = mux(p{{[0-3]}},#1,#0)
|
||
|
; CHECK: combine(#0,r[[REG]])
|
||
|
define i64 @zexti1(i64 %a0, i64 %a1) {
|
||
|
entry:
|
||
|
%t0 = icmp ult i64 %a0, %a1
|
||
|
%t1 = zext i1 %t0 to i64
|
||
|
ret i64 %t1
|
||
|
}
|
||
|
|