i386: store errno value before using __set_errno()
The __syscall_error() function stores the errno value in the edx register
before invoking the __set_errno() macro. When using the pthread library
this macro calls thread_self() to determine the errno location, which might
clobber the edx register. The errno value must be stored in a "real"
variable so the compiler can take care of saving/restoring it if necessary.
Signed-off-by: Ingo van Lil <inguin@gmx.de>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>