PSX Registers

Peach :

Yeah, s means saved, referring to their function in the ABI.
saved (or in more common naming, non-volatile) means that if a subroutine/function uses that register, it must restore it to its old value before exiting.

*This is not true depending on compiler optimizations

Then you've got :

x86_64 example

For example on x86-64, the stack pointer (rsp) is considered saved on every ABI.
Errr rsp is a bad example, let's use rbp instead...
If I want to do :

my_asm_func:
  add rbp, 69
  ret

I'll fuck up any HLL code that jumps to this function, because I'm corrupting a register that the ABI says is saved/non-volatile.
On the other hand:

push rbp ; save rbp in stack
<do things with rbp here>
pop rbp ; restore rbp
ret

is perfectly valid. I am corrupting a non-volatile register but restoring its value before returning

Source

https://discord.com/channels/642647820683444236/663664210525290507/862413015764041788