Inneffiecient code produced by reg2mem?

Is there a pass I can use after reg2mem to get rid of occurances like this?:

store i32 %cond, i32* %cond.reg2mem
%cond.reload = load i32* %cond.reg2mem
store i32 %cond.reload, i32* %cond4.reg2mem

Essentially, in this case, reg2mem creates an extra memory space to store and load a value from just here, and never uses the value again; since this isn’t efficient code, I’m wondering if there’s another pass I can use to fix the innefficient code reg2mem produces, or if my translator should do it’s own PHI elimination?

Why are you running reg2mem if you want efficient code?

--Owen