]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/RTOSDemo_bsp/ps7_cortexa9_0/libsrc/standalone_v4_1/src/profile/profile_mcount_ppc.S
Add back Zynq demo - this time using SDK V14.2.
[freertos] / FreeRTOS / Demo / CORTEX_A9_Zynq_ZC702 / RTOSDemo_bsp / ps7_cortexa9_0 / libsrc / standalone_v4_1 / src / profile / profile_mcount_ppc.S
1 //
2 // Copyright (c) 2002 Xilinx, Inc.  All rights reserved. 
3 // Xilinx, Inc. 
4 //
5 // XILINX IS PROVIDING THIS DESIGN, CODE, OR INFORMATION "AS IS" AS A 
6 // COURTESY TO YOU.  BY PROVIDING THIS DESIGN, CODE, OR INFORMATION AS 
7 // ONE POSSIBLE   IMPLEMENTATION OF THIS FEATURE, APPLICATION OR 
8 // STANDARD, XILINX IS MAKING NO REPRESENTATION THAT THIS IMPLEMENTATION 
9 // IS FREE FROM ANY CLAIMS OF INFRINGEMENT, AND YOU ARE RESPONSIBLE 
10 // FOR OBTAINING ANY RIGHTS YOU MAY REQUIRE FOR YOUR IMPLEMENTATION. 
11 // XILINX EXPRESSLY DISCLAIMS ANY WARRANTY WHATSOEVER WITH RESPECT TO 
12 // THE ADEQUACY OF THE IMPLEMENTATION, INCLUDING BUT NOT LIMITED TO 
13 // ANY WARRANTIES OR REPRESENTATIONS THAT THIS IMPLEMENTATION IS FREE 
14 // FROM CLAIMS OF INFRINGEMENT, IMPLIED WARRANTIES OF MERCHANTABILITY 
15 // AND FITNESS FOR A PARTICULAR PURPOSE. 
16 //
17 // $Id: profile_mcount_ppc.S,v 1.1.2.1 2011/05/17 04:37:58 sadanan Exp $
18 //
19         .globl _mcount
20         
21         #define _MCOUNT_STACK_FRAME 48                  
22         .section .text 
23         .align 2
24         .type _mcount@function
25
26
27 _mcount:
28         stwu 1, -_MCOUNT_STACK_FRAME(1)
29         stw 3, 8(1)
30         stw 4, 12(1)
31         stw 5, 16(1)
32         stw 6, 20(1)
33         stw 7, 24(1)
34         stw 8, 28(1)
35         stw 9, 32(1)
36         stw 10, 36(1)
37         stw 11, 40(1)
38         stw 12, 44(1)
39         mflr 4
40         stw 4, (_MCOUNT_STACK_FRAME+4)(1)
41         lwz 3, (_MCOUNT_STACK_FRAME)(1)
42         lwz 3, 4(3)     
43         bl mcount
44         lwz 4, (_MCOUNT_STACK_FRAME+4)(1)
45         mtlr 4
46         lwz 12, 44(1)
47         lwz 11, 40(1)
48         lwz 10, 36(1)
49         lwz 9, 32(1)
50         lwz 8, 28(1)
51         lwz 7, 24(1)
52         lwz 6, 20(1)
53         lwz 5, 16(1)
54         lwz 4, 12(1)
55         lwz 3, 8(1)     
56         addi 1,1, _MCOUNT_STACK_FRAME
57         blr
58