#include "negated_errno.h"

static void
get_error(struct tcb *tcp, const bool check_errno)
{
	/*
	 * In X32, return value is 64-bit (llseek uses one).
	 * Using merely "long rax" would not work.
	 */
	long long rax;

	if (x86_io.iov_len == sizeof(i386_regs)) {
		/* Sign extend from 32 bits */
		rax = (int32_t) i386_regs.eax;
	} else {
		rax = x86_64_regs.rax;
	}

	if (check_errno && is_negated_errno(rax)) {
		tcp->u_rval = -1;
		tcp->u_error = -rax;
	} else {
		if (x86_io.iov_len == sizeof(i386_regs))
			tcp->u_rval = (uint32_t) rax;
		else
			tcp->u_rval = rax;
	}
}
