/*
 * arch/i386/libgcc/__divdi3.c
 */

#include <stdint.h>
#include <stddef.h>

extern uint64_t __udivmoddi4(uint64_t num, uint64_t den, uint64_t * rem);

int64_t __divdi3(int64_t num, int64_t den)
{
    int minus = 0;
    int64_t v;

    if (num < 0) {
	num = -num;
	minus = 1;
    }
    if (den < 0) {
	den = -den;
	minus ^= 1;
    }

    v = __udivmoddi4(num, den, NULL);
    if (minus)
	v = -v;

    return v;
}
