summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/powerpc/ppc-context-volatile-clobber.S
blob: 14a6047837aaf5a0865f74008b894865caf7e412 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/*
 * Copyright (c) 2013 embedded brains GmbH.  All rights reserved.
 *
 *  embedded brains GmbH
 *  Dornierstr. 4
 *  82178 Puchheim
 *  Germany
 *  <rtems@embedded-brains.de>
 *
 * The license and distribution terms for this file may be
 * found in the file LICENSE in this distribution or at
 * http://www.rtems.org/license/LICENSE.
 */

#ifdef HAVE_CONFIG_H
  #include "config.h"
#endif

#include <rtems/asm.h>

	.global _CPU_Context_volatile_clobber

_CPU_Context_volatile_clobber:

	addi	r4, r3, 10
	rlwinm	r4, r4, 0, 20, 7
	mfcr	r5
	rlwinm	r5, r5, 0, 8, 19
	or	r4, r4, r5
	mtcr	r4
	addi	r4, r3, 11
	mtctr	r4
	addi	r4, r3, 12
	mtxer	r4
	addi	r0, r3, 13
	addi	r4, r3, 1
	addi	r5, r3, 2
	addi	r6, r3, 3
	addi	r7, r3, 4
	addi	r8, r3, 5
	addi	r9, r3, 6
	addi	r10, r3, 7
	addi	r11, r3, 8
	addi	r12, r3, 9
	blr