1 ! SPDX-License-Identifier: GPL-2.0
2 ! Copyright (C) 2012 by Imagination Technologies Ltd.
4 ! 64-bit arithmetic shift left routine.
9 .type ___ashldi3,function
14 CMP D1Ar3,#0 ! COUNT == 0
15 MOVEQ PC,D1RtP ! Yes, return
17 SUBS D0Ar4,D1Ar3,#32 ! N = COUNT - 32
21 NEG D0Ar4,D0Ar4 ! N = - N
22 LSL D1Re0,D1Re0,D1Ar3 ! HI = HI << COUNT
23 LSR D0Ar6,D0Re0,D0Ar4 ! TMP= LO >> -(COUNT - 32)
24 OR D1Re0,D1Re0,D0Ar6 ! HI = HI | TMP
26 LSL D0Re0,D0Re0,D0Ar4 ! LO = LO << COUNT
31 LSL D1Re0,D0Re0,D0Ar4 ! HI = LO << N
34 .size ___ashldi3,.-___ashldi3