mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-29 22:50:47 +00:00
890813243f
SelectionDAG::getConstant, in the same way as vector floating-point constants. This allows the legalize expansion code for @llvm.ctpop and friends to be usable with vector types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44954 91177308-0d34-0410-b5e6-96231b3b80d8
19 lines
525 B
LLVM
19 lines
525 B
LLVM
; RUN: llvm-as < %s | llc -march=x86-64
|
|
|
|
declare <2 x i64> @llvm.cttz.v2i64(<2 x i64>)
|
|
declare <2 x i64> @llvm.ctlz.v2i64(<2 x i64>)
|
|
declare <2 x i64> @llvm.ctpop.v2i64(<2 x i64>)
|
|
|
|
define <2 x i64> @footz(<2 x i64> %a) {
|
|
%c = call <2 x i64> @llvm.cttz.v2i64(<2 x i64> %a)
|
|
ret <2 x i64> %c
|
|
}
|
|
define <2 x i64> @foolz(<2 x i64> %a) {
|
|
%c = call <2 x i64> @llvm.ctlz.v2i64(<2 x i64> %a)
|
|
ret <2 x i64> %c
|
|
}
|
|
define <2 x i64> @foopop(<2 x i64> %a) {
|
|
%c = call <2 x i64> @llvm.ctpop.v2i64(<2 x i64> %a)
|
|
ret <2 x i64> %c
|
|
}
|