1; RUN: llc < %s -mtriple=x86_64-linux | FileCheck %s 2; RUN: llc < %s -mtriple=x86_64-win64 | FileCheck %s 3; rdar://7304838 4 5; CodeGenPrepare should move the zext into the block with the load 6; so that SelectionDAG can select it with the load. 7 8; CHECK: movzbl ({{%rdi|%rcx}}), %eax 9 10define void @foo(i8* %p, i32* %q) { 11entry: 12 %t = load i8* %p 13 %a = icmp slt i8 %t, 20 14 br i1 %a, label %true, label %false 15true: 16 %s = zext i8 %t to i32 17 store i32 %s, i32* %q 18 ret void 19false: 20 ret void 21} 22