<div dir="ltr">In my language there are a lot of i16 definitions, but almost all of the time they are upgraded to i32 because my add operations only happen on i32.<div><br></div><div>So to be representative to my language definition, I have a lots of Sext/Zext and Truncs pretty much every time I add or subtract.</div><div><br></div><div>As soon as I pass through InstCombine things look much nicer, all the upcasts and downcasts go away, but my test cases are simple.</div><div><br></div><div>Is InstCombine pretty good about finding most/all such cases?</div></div>