[FastIsel][X86] Fix invalid register replacement for bool args
[oota-llvm.git] / test / CodeGen / X86 / fast-isel-call-bool.ll
1 ; RUN: llc < %s -fast-isel -mcpu=core2 -O1 | FileCheck %s
2 ; See PR21557
3
4 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
5 target triple = "x86_64-apple-darwin14.0.0"
6
7 declare i64 @bar(i1)
8
9 define i64 @foo(i8* %arg) {
10 ; CHECK-LABEL: foo:
11 top:
12   %0 = load i8* %arg
13 ; CHECK: movb
14   %1 = trunc i8 %0 to i1
15 ; CHECK: andb $1,
16   %2 = call i64 @bar(i1 %1)
17 ; CHECK: callq
18   ret i64 %2
19 }