This patch enables Mem2Reg to handle loads/stores from/to bitcasted alloca
values as long as the loaded/stored value is bitcastable to the allocated
type (see example below). Such instruction sequences can be introduced by
the InstCombine pass as part of the load canonicalization.
%f = alloca float, align 4 ... %0 = getelementptr inbounds float, float* %A, i64 %idx %1 = bitcast float* %0 to i32* %2 = load i32, i32* %1, align 4 %3 = bitcast float* %f to i32* store i32 %2, i32* %3, align 4