Indices for GEPs that index into a struct type should always be
constants. This added more checks in collectConstantCandidates: which make
sure constants for GEP pointer type are not hoisted.
This fixed Bug https://bugs.llvm.org/show_bug.cgi?id=33538
Can you add a comment here clarifying that the first index into the pointer is hoisted, but the second index into the struct isn't?