I think this is a missed optimization, but maybe I'm missing some significant
piece of knowledge(!) as to why this might not be optimizable Test
case...
int A; // some global
int B; // some global
void Test(int *Out)
{
*Out = A; // Can't this be optimized away?
*Out = B;
};
The LLVM backend (tested 3.1 and 3.0 online demo) doesn't optimize away the
first store, even with O3 level compiling in clang. Is there some valid
reason for this?
Any insight appreciated. Thanks.