mirror of
				https://git.proxmox.com/git/mirror_edk2
				synced 2025-11-04 07:10:07 +00:00 
			
		
		
		
	git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10444 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			69 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/** @file
 | 
						|
  Compiler intrinsic for 32-bit unsigned mod, ported from LLVM code.
 | 
						|
 | 
						|
  Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
 | 
						|
  
 | 
						|
  This program and the accompanying materials
 | 
						|
  are licensed and made available under the terms and conditions of the BSD License
 | 
						|
  which accompanies this distribution.  The full text of the license may be found at
 | 
						|
  http://opensource.org/licenses/bsd-license.php
 | 
						|
 | 
						|
  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
 | 
						|
  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 | 
						|
 | 
						|
**/
 | 
						|
/**
 | 
						|
  University of Illinois/NCSA
 | 
						|
  Open Source License
 | 
						|
  
 | 
						|
  Copyright (c) 2003-2008 University of Illinois at Urbana-Champaign.
 | 
						|
  All rights reserved.
 | 
						|
  
 | 
						|
  Developed by:
 | 
						|
  
 | 
						|
      LLVM Team
 | 
						|
  
 | 
						|
      University of Illinois at Urbana-Champaign
 | 
						|
  
 | 
						|
      http://llvm.org
 | 
						|
  
 | 
						|
  Permission is hereby granted, free of charge, to any person obtaining a copy of
 | 
						|
  this software and associated documentation files (the "Software"), to deal with
 | 
						|
  the Software without restriction, including without limitation the rights to
 | 
						|
  use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
 | 
						|
  of the Software, and to permit persons to whom the Software is furnished to do
 | 
						|
  so, subject to the following conditions:
 | 
						|
  
 | 
						|
      * Redistributions of source code must retain the above copyright notice,
 | 
						|
        this list of conditions and the following disclaimers.
 | 
						|
  
 | 
						|
      * Redistributions in binary form must reproduce the above copyright notice,
 | 
						|
        this list of conditions and the following disclaimers in the
 | 
						|
        documentation and/or other materials provided with the distribution.
 | 
						|
  
 | 
						|
      * Neither the names of the LLVM Team, University of Illinois at
 | 
						|
        Urbana-Champaign, nor the names of its contributors may be used to
 | 
						|
        endorse or promote products derived from this Software without specific
 | 
						|
        prior written permission.
 | 
						|
  
 | 
						|
  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
						|
  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
 | 
						|
  FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
 | 
						|
  CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
						|
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
						|
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
 | 
						|
  SOFTWARE.
 | 
						|
**/
 | 
						|
 | 
						|
 | 
						|
#include "Llvm_int_lib.h"
 | 
						|
 | 
						|
 | 
						|
// Returns: a % b
 | 
						|
 | 
						|
UINT32
 | 
						|
__umodsi3(UINT32 a, UINT32 b)
 | 
						|
{
 | 
						|
    return a - (a / b) * b;
 | 
						|
}
 |