File: c_cactrl_iflush_pr_pp.s

package info (click to toggle)
gdb-doc 16.3-1
  • links: PTS, VCS
  • area: non-free
  • in suites: forky, sid, trixie
  • size: 244,264 kB
  • sloc: ansic: 2,134,731; asm: 375,582; exp: 206,875; cpp: 73,639; makefile: 70,232; sh: 26,038; python: 13,697; yacc: 11,341; ada: 7,358; xml: 6,098; perl: 5,077; pascal: 3,389; tcl: 2,986; f90: 2,764; lisp: 1,984; cs: 879; lex: 738; sed: 228; awk: 181; objc: 137; fortran: 57
file content (100 lines) | stat: -rw-r--r-- 1,885 bytes parent folder | download | duplicates (33)
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
//Original:/proj/frio/dv/testcases/core/c_cactrl_iflush_pr_pp/c_cactrl_iflush_pr_pp.dsp
// Spec Reference: c_cactrl iflush_pr [p++]
# mach: bfin

.include "testutils.inc"
	start

	loadsym p2, SUBR1;
// set all regs

	imm32 r0, 0x13545abd;
	imm32 r1, 0xadbcfec7;
	imm32 r2, 0xa1245679;
	imm32 r3, 0x00060007;
	imm32 r4, 0xefbc4569;
	imm32 r5, 0x1235000b;
	imm32 r6, 0x000c000d;
	imm32 r7, 0x678e000f;
// The result accumulated in A0 and A1, and stored to a reg half
	R2.H = ( A1 = R1.L * R0.H ), A0 = R1.H * R0.L;
	R3.H = A1 , A0 = R7.H * R6.L (T);
// begin of iflush
	IFLUSH [ P2 ++ ];	// p2 = 0x448
	R7 = 0;
	ASTAT = R7;
	IF !CC JUMP SUBR1;
JBACK:
	R6 = 0;

//r4  = (a1 = l*h) M,  a0  = h*l  (r3,r2);
//r5     a1 = l*h, =  (a0  = h*l) (r1,r0) IS;
	CHECKREG r2, 0xFFD15679;
	CHECKREG r3, 0xFFD00007;
	CHECKREG r4, 0x00074569;
	CHECKREG r5, 0x12358000;
//CHECKREG p2, 0x00000468;

	pass

//.code 0x448
//.code CODE_ADDR_1
SUBR1:
	R4.H = ( A1 = R3.L * R2.H ) (M), A0 = R3.H * R2.L;
	A1 = R1.L * R0.H, R5.L = ( A0 = R1.H * R0.L ) (ISS2);
	IF !CC JUMP JBACK;
	NOP;	NOP; NOP; NOP; NOP;

// Pre-load memory witb known data
// More data is defined than will actually be used

	.data
DATA_ADDR_1:
	.dd 0x00010203
	.dd 0x04050607
	.dd 0x08090A0B
	.dd 0x0C0D0E0F
	.dd 0x10111213
	.dd 0x14151617
	.dd 0x18191A1B
	.dd 0x1C1D1E1F

DATA_ADDR_2:
	.dd 0x20212223
	.dd 0x24252627
	.dd 0x28292A2B
	.dd 0x2C2D2E2F
	.dd 0x30313233
	.dd 0x34353637
	.dd 0x38393A3B
	.dd 0x3C3D3E3F

DATA_ADDR_3:
	.dd 0x40414243
	.dd 0x44454647
	.dd 0x48494A4B
	.dd 0x4C4D4E4F
	.dd 0x50515253
	.dd 0x54555657
	.dd 0x58595A5B
	.dd 0x5C5D5E5F

DATA_ADDR_4:
	.dd 0x60616263
	.dd 0x64656667
	.dd 0x68696A6B
	.dd 0x6C6D6E6F
	.dd 0x70717273
	.dd 0x74757677
	.dd 0x78797A7B
	.dd 0x7C7D7E7F

DATA_ADDR_5:
	.dd 0x80818283
	.dd 0x84858687
	.dd 0x88898A8B
	.dd 0x8C8D8E8F
	.dd 0x90919293
	.dd 0x94959697
	.dd 0x98999A9B
	.dd 0x9C9D9E9F