source: rtems/cpukit/score/cpu/or1k/or1k-context-volatile-clobber.S @ 305357e

4.115
Last change on this file since 305357e was 305357e, checked in by Hesham ALMatary <heshamelmatary@…>, on Aug 31, 2014 at 11:29:41 PM

or1k: Implement context validate and context volatile clobber functions.

score/cpu/or1k: Add two new assembly functions: _CPU_Context_validate
and _CPU_Context_volatile_clobber; their implementation follows
corresponding ARM functions.

  • Property mode set to 100644
File size: 681 bytes
Line 
1/*
2 * COPYRIGHT (c) 2014 Hesham ALMatary <heshamelmatary@gmail.com>
3 *
4 * The license and distribution terms for this file may be
5 * found in the file LICENSE in this distribution or at
6 * http://www.rtems.org/license/LICENSE.
7 */
8
9#ifdef HAVE_CONFIG_H
10  #include "config.h"
11#endif
12
13#include <rtems/asm.h>
14
15.section .text
16
17PUBLIC(_CPU_Context_volatile_clobber)
18SYM(_CPU_Context_volatile_clobber):
19
20.macro clobber_register reg
21  l.addi r0, r0, -1
22  l.addi  \reg, r0, 0
23.endm
24
25  clobber_register  r3
26  clobber_register  r4
27  clobber_register  r5
28  clobber_register  r6
29  clobber_register  r7
30  clobber_register  r8
31  clobber_register  r13
32  clobber_register  r31
33
34  l.jr  r9
35  l.nop
Note: See TracBrowser for help on using the repository browser.