]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPkg/Library/CompilerIntrinsicsLib/Arm/switch.asm
7a52a039ffd5f5bfcb8201dfb20f8285ebcc0c8b
[mirror_edk2.git] / ArmPkg / Library / CompilerIntrinsicsLib / Arm / switch.asm
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
16
17 EXPORT\s\s__ARM_switch8
18
19 AREA\s\sArmSwitch, CODE, READONLY
20 \s\s
21 __ARM_switch8
22 \s\sLDRB\s\s r12,[lr,#-1]
23 \s\sCMP\s\s\s\s r3,r12
24 \s\sLDRBCC\s\sr3,[lr,r3]
25 \s\sLDRBCS\s\sr3,[lr,r12]
26 \s\sADD\s\s\s\s r12,lr,r3,LSL #1
27 \s\sBX\s\s\s\s r12
28
29 END