1; RUN: llc -mtriple=x86_64-apple-darwin < %s| FileCheck %s
2
3; A bug in DAGCombiner prevented it forming a zextload in this simple case
4; because it counted both the chain user and the real user against the
5; profitability total.
6
7define void @load_zext(i32* nocapture %p){
8entry:
9  %0 = load i32* %p, align 4
10  %and = and i32 %0, 255
11  tail call void @use(i32 %and)
12  ret void
13; CHECK: movzbl ({{%r[a-z]+}}), {{%e[a-z]+}}
14}
15
16declare void @use(i32)
17