Don't know if it was mentioned, but the NS16032 (later renamed to NS32016) employed two stack pointers (SP0 and SP1), but the implmentation was one for user stack and the other for interrupts. Which only made sense--you don't want your privileged-mode ISRs corrupting the user stack or vice-versa.
--Chuck