mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-24 08:24:33 +00:00
Opaque Pointer Types: GEP API migrations to specify the gep type explicitly
The changes to InstCombine do seem a bit silly - it doesn't make anything obviously better to have the caller access the pointers element type (the thing I'm trying to remove) than the GEP itself, but it's a helpful migration step. This will allow me to more obviously lock down GEP (& Load, etc) API usage, then fix all the code that accesses pointer element types except the places that need to be removed (most of the InstCombines) anyway - at which point I'll need to just remove all that code because it won't be meaningful anymore (there will be no pointer types, so no bitcasts to combine) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@233126 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -450,7 +450,7 @@ bool Scalarizer::visitGetElementPtrInst(GetElementPtrInst &GEPI) {
|
||||
Indices.resize(NumIndices);
|
||||
for (unsigned J = 0; J < NumIndices; ++J)
|
||||
Indices[J] = Ops[J][I];
|
||||
Res[I] = Builder.CreateGEP(Base[I], Indices,
|
||||
Res[I] = Builder.CreateGEP(GEPI.getSourceElementType(), Base[I], Indices,
|
||||
GEPI.getName() + ".i" + Twine(I));
|
||||
if (GEPI.isInBounds())
|
||||
if (GetElementPtrInst *NewGEPI = dyn_cast<GetElementPtrInst>(Res[I]))
|
||||
|
Reference in New Issue
Block a user