summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/microblaze/microblaze-context-volatile-clobber.S
blob: fb49dc5e4006fd1730c8be3a48d10f4868d25de1 (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
#ifdef HAVE_CONFIG_H
  #include "config.h"
#endif

#include <rtems/asm.h>

.text
.align 4

PUBLIC(_CPU_Context_volatile_clobber)

SYM(_CPU_Context_volatile_clobber):

.macro clobber_register reg
	addi r5, r5, -1
	add \reg, r0, r5
.endm

	clobber_register r3
	clobber_register r4
	clobber_register r6
	clobber_register r7
	clobber_register r8
	clobber_register r9
	clobber_register r10

	rtsd	r15, 8
	nop