refactor getPtrUse to handle extra offsets and forced byte alignment