umoddi3.c revision 2d1fdb26e458c4ddc04155c1d421bced3ba90cd0
18bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)/* ===-- umoddi3.c - Implement __umoddi3 -----------------------------------=== 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * The LLVM Compiler Infrastructure 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 58bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) * This file is dual licensed under the MIT and the University of Illinois Open 68bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) * Source Licenses. See LICENSE.TXT for details. 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ===----------------------------------------------------------------------=== 98bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) * 108bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) * This file implements __umoddi3 for the compiler_rt library. 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 12d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) * ===----------------------------------------------------------------------=== 13d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles) */ 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "int_lib.h" 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Returns: a % b */ 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 198bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)COMPILER_RT_ABI du_int 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)__umoddi3(du_int a, du_int b) 218bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles){ 228bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) du_int r; 238bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles) __udivmoddi4(a, b, &r); 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) return r; 258bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)} 268bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)