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 7 define void @load_zext(i32* nocapture %p){ 8 entry: 9 %0 = load i32, 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 16 declare void @use(i32) 17