/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. * SPDX-License-Identifier: GPL-2.0+ */ #include #include #ifdef __ARMEB__ #define al r1 #define ah r0 #else #define al r0 #define ah r1 #endif .pushsection .text.__ashldi3, "ax" ENTRY(__ashldi3) ENTRY(__aeabi_llsl) subs r3, r2, #32 rsb ip, r2, #32 movmi ah, ah, lsl r2 movpl ah, al, lsl r3 ARM( orrmi ah, ah, al, lsr ip ) THUMB( lsrmi r3, al, ip ) THUMB( orrmi ah, ah, r3 ) mov al, al, lsl r2 ret lr ENDPROC(__ashldi3) ENDPROC(__aeabi_llsl) .popsection