1 /*===-- divmoddi4.c - Implement __divmoddi4 --------------------------------===
   2  *
   3  *                    The LLVM Compiler Infrastructure
   4  *
   5  * This file is dual licensed under the MIT and the University of Illinois Open
   6  * Source Licenses. See LICENSE.TXT for details.
   7  *
   8  * ===----------------------------------------------------------------------===
   9  *
  10  * This file implements __divmoddi4 for the compiler_rt library.
  11  *
  12  * ===----------------------------------------------------------------------===
  13  */
  14 
  15 #include "int_lib.h"
  16 
  17 /* Returns: a / b, *rem = a % b  */
  18 
  19 COMPILER_RT_ABI di_int
  20 __divmoddi4(di_int a, di_int b, di_int* rem)
  21 {
  22   di_int d = __divdi3(a,b);
  23   *rem = a - (d*b);
  24   return d;
  25 }