2005-05-04 15:56:34 +00:00
|
|
|
; Make sure this testcase codegens to the ctpop instruction
|
2008-02-19 01:41:04 +00:00
|
|
|
; RUN: llvm-as < %s | llc -march=alpha -mcpu=ev67 | grep -i ctpop
|
|
|
|
; RUN: llvm-as < %s | llc -march=alpha -mattr=+CIX | \
|
2007-04-15 18:40:57 +00:00
|
|
|
; RUN: grep -i ctpop
|
2008-02-19 01:41:04 +00:00
|
|
|
; RUN: llvm-as < %s | llc -march=alpha -mcpu=ev6 | \
|
2007-04-15 18:40:57 +00:00
|
|
|
; RUN: not grep -i ctpop
|
2008-02-19 01:41:04 +00:00
|
|
|
; RUN: llvm-as < %s | llc -march=alpha -mcpu=ev56 | \
|
2007-04-15 18:40:57 +00:00
|
|
|
; RUN: not grep -i ctpop
|
2008-02-19 01:41:04 +00:00
|
|
|
; RUN: llvm-as < %s | llc -march=alpha -mattr=-CIX | \
|
2007-04-16 15:31:49 +00:00
|
|
|
; RUN: not grep -i ctpop
|
2005-05-04 15:20:16 +00:00
|
|
|
|
2008-02-19 01:41:04 +00:00
|
|
|
declare i64 @llvm.ctpop.i64(i64)
|
2005-05-04 15:20:16 +00:00
|
|
|
|
2008-02-19 01:41:04 +00:00
|
|
|
define i64 @bar(i64 %x) {
|
2005-05-04 15:20:16 +00:00
|
|
|
entry:
|
2008-02-19 01:41:04 +00:00
|
|
|
%tmp.1 = call i64 @llvm.ctpop.i64( i64 %x ) ; <i64> [#uses=1]
|
|
|
|
ret i64 %tmp.1
|
2005-05-04 15:20:16 +00:00
|
|
|
}
|
2008-02-19 01:41:04 +00:00
|
|
|
|