Bob Wilson | a61a190 | 2014-11-17 08:00:45 +0000 | [diff] [blame^] | 1 | ; RUN: llc < %s -O2 -march=x86-64 | FileCheck %s |
2 | ; Checks that a zeroing mov is inserted for the trunc/zext pair even when | ||||
3 | ; the source of the zext is an AssertSext node | ||||
4 | ; PR20494 | ||||
5 | |||||
6 | define i64 @main(i64 %a) { | ||||
7 | ; CHECK-LABEL: main | ||||
8 | ; CHECK: movl %e{{..}}, %eax | ||||
9 | ; CHECK: ret | ||||
10 | %or = or i64 %a, -2 | ||||
11 | %trunc = trunc i64 %or to i32 | ||||
12 | br label %l | ||||
13 | l: | ||||
14 | %ext = zext i32 %trunc to i64 | ||||
15 | ret i64 %ext | ||||
16 | } |