Fix vbroadcast matching logic to early unmatch if the node doesn't have
[oota-llvm.git] / test / CodeGen / X86 / 20090313-signext.ll
1 ; RUN: llc < %s -march=x86-64 -relocation-model=pic > %t
2 ; RUN: grep {movswl     %ax, %edi} %t
3 ; RUN: grep {movw       (%rax), %ax} %t
4 ; XFAIL: *
5
6 @x = common global i16 0
7
8 define signext i16 @f() nounwind {
9 entry:
10         %0 = tail call signext i16 @h() nounwind
11         %1 = sext i16 %0 to i32
12         tail call void @g(i32 %1) nounwind
13         %2 = load i16* @x, align 2
14         ret i16 %2
15 }
16
17 declare signext i16 @h()
18
19 declare void @g(i32)