(while (something) (push obj lst -1))
(let tl (lastcdr lst) (while (something) (= (cdr tl) (cons obj nil)) (= tl (cdr tl))))