<div dir="ltr">Hello all,<div><br></div><div>I'm trying to find the pass that would convert from:</div><div><div><br></div><div><font face="monospace, monospace">define void @main(%struct* byval %ptr) {</font></div><div><font face="monospace, monospace">  %val = load %struct* %ptr</font></div><div><font face="monospace, monospace">  %val.ptr = alloca %struct</font></div><div><font face="monospace, monospace">  store %struct %val, %struct* %val.ptr</font></div><div><font face="monospace, monospace">  call void @extern_func(%struct* byval %val.ptr)</font></div><div><font face="monospace, monospace">  ret void</font></div><div><font face="monospace, monospace">}</font></div></div><div><br></div><div>to this:</div><div><div><font face="monospace, monospace">define void @main(%struct* byval %ptr) {</font></div><div><font face="monospace, monospace">  call void @extern_func(%struct* byval %ptr)</font></div><div><font face="monospace, monospace">  ret void</font></div><div><font face="monospace, monospace">}</font></div></div><div><br></div><div>First, am I missing something - would this be a correct optimization?</div><div><br></div><div>Thank you,</div><div>Mircea.</div></div>