https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81201
--- Comment #2 from arget at autistici dot org --- Well... this is embarrasing, ok... XD I though the problem was in the ebx, because returning from chacha(), ebx = 0... but now I looked carefully the chacha() asm code and there isn't any operation on ebx register, so I don't know why ebx was 0. Well, the code now runs on 32 bits and in raspbian. Sorry, and thanks a lot.