1 #------------------------------------------------------------------------------ 2 # 3 # Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR> 4 # 5 # This program and the accompanying materials 6 # are licensed and made available under the terms and conditions of the BSD License 7 # which accompanies this distribution. The full text of the license may be found at 8 # http://opensource.org/licenses/bsd-license.php 9 # 10 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 # 13 #------------------------------------------------------------------------------ 14 15 #include <AsmMacroIoLib.h> 16 17 ASM_FUNC(__ashrdi3) 18 cmp r2, #31 19 bls L2 20 cmp r2, #63 21 subls r2, r2, #32 22 mov ip, r1, asr #31 23 movls r2, r1, asr r2 24 movhi r2, ip 25 mov r0, r2 26 mov r1, ip 27 bx lr 28 L2: 29 cmp r2, #0 30 rsbne r3, r2, #32 31 movne r3, r1, asl r3 32 movne r1, r1, asr r2 33 orrne r0, r3, r0, lsr r2 34 bx lr 35