File: system.s

package info (click to toggle)
binutils-avr 2.26.20160125%2BAtmel3.6.2-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 365,552 kB
  • sloc: ansic: 2,480,046; asm: 892,807; exp: 188,218; cpp: 133,829; makefile: 63,886; sh: 32,212; yacc: 26,783; lisp: 16,709; xml: 7,490; perl: 6,449; python: 4,555; ada: 4,318; pascal: 3,174; lex: 2,250; cs: 879; sed: 334; f90: 298; awk: 168; objc: 134; java: 73; fortran: 43
file content (76 lines) | stat: -rw-r--r-- 1,233 bytes parent folder | download | duplicates (24)
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# System and privileged instructions
# ld.c, st.c, flush, lock, unlock, intovr, trap

	.text

	lock
	unlock
	intovr

	trap	%r0,%r0,%r0
	trap	%r31,%r31,%r31
	trap	%r1,%r5,%r18
	trap	%r31,%r20,%r6

	ld.c	%fir,%r1
	ld.c	%fir,%r31
	ld.c	%psr,%r5
	ld.c	%psr,%r30
	ld.c	%dirbase,%r10
	ld.c	%dirbase,%r2
	ld.c	%db,%r21
	ld.c	%db,%r0
	ld.c	%fsr,%r28
	ld.c	%fsr,%r12
	ld.c	%epsr,%r31
	ld.c	%epsr,%r6

	st.c	%r0,%fir
	st.c	%r30,%fir
	st.c	%r7,%psr
	st.c	%r31,%psr
	st.c	%r11,%dirbase
	st.c	%r3,%dirbase
	st.c	%r22,%db
	st.c	%r15,%db
	st.c	%r29,%fsr
	st.c	%r13,%fsr
	st.c	%r4,%epsr
	st.c	%r6,%epsr

	# Flush, no auto-increment.
	flush	0(%r0)
	flush	128(%r1)
	flush	256(%r2)
	flush	512(%r3)
	flush	1024(%r4)
	flush	4096(%r5)
	flush	8192(%r6)
	flush	16384(%r7)
	flush	-16384(%r8)
	flush	-8192(%r9)
	flush	-4096(%r10)
	flush	-1024(%r11)
	flush	-512(%r12)
	flush	-248(%r13)
	flush	-32(%r14)
	flush	-16(%r14)

	# Flush, auto-increment.	
	flush	0(%r0)++
	flush	128(%r1)++
	flush	256(%r2)++
	flush	512(%r3)++
	flush	1024(%r4)++
	flush	4096(%r22)++
	flush	8192(%r23)++
	flush	16384(%r24)++
	flush	-16384(%r25)++
	flush	-8192(%r26)++
	flush	-4096(%r27)++
	flush	-1024(%r28)++
	flush	-512(%r29)++
	flush	-248(%r30)++
	flush	32(%r31)++
	flush	16(%r31)++