I've been trying to get a passable parse for this too, Methinks is has been explained by the previous posters.
I thought:
I called him but he just walked "on"
I called him but he just walked "past"
on = past; butter = ram and Is prime = I (as already mentioned.
That leaves me with "put"
I think going had put on = past (passed)
Strange clue?