I wanted to avoid copying the load into a synthetic variable and then loading from it, since the generated IR before dce is getting increasingly bloated, which may make debugging difficult.
I'd rather have clear and consistent IR behaviour at the cost of conciseness. But I guess either way our hand is kind of forced by native behaviour...