I've added another test to the non-array-vtable file, I hope that's the correct place.
All this code could be factored out into a separate function.
I think you also want to check that SL->getElementOffset(Op) == GlobalSlotOffset.
Please add negative tests for that case and the out-of-bounds case you have above.
Please put your test in a separate file and rename this to something like non-aggregate-vtable.ll.
Could be simpler to return a const Constant * from this function.
These two could be folded into the only use (after applying my suggestion above).
struct-vtable.ll would be a better name for this test.