Commit | Line | Data |
---|---|---|
8df55cb8 CM |
1 | #objdump: -dr |
2 | #name: arithmetic | |
3 | .*: +file format .* | |
4 | ||
5 | ||
6 | Disassembly of section .text: | |
7 | ||
8 | 00000000 <abs>: | |
9 | 0: 10 c4 [0-3][[:xdigit:]] 00 A0= ABS A0; | |
10 | 4: 10 c4 [0-3][[:xdigit:]] 40 A0= ABS A1; | |
11 | 8: 30 c4 [0-3][[:xdigit:]] 00 A1= ABS A0; | |
12 | c: 30 c4 [0-3][[:xdigit:]] 40 A1= ABS A1; | |
13 | 10: 10 c4 [0-3][[:xdigit:]] c0 A1= ABS A0,A0= ABS A0; | |
14 | 14: 07 c4 10 80 R0= ABS R2; | |
15 | ||
16 | 00000018 <add>: | |
17 | 18: 86 5b SP=SP\+P0; | |
18 | 1a: 96 5b SP=SP\+P2; | |
19 | 1c: f9 5b FP=P1\+FP; | |
20 | 1e: 04 c4 3a 0e R7=R7\+R2 \(NS\); | |
21 | 22: 04 c4 30 2c R6=R6\+R0 \(S\); | |
22 | 26: 02 c4 10 a8 R4.L=R2.H\+R0.L \(S\); | |
23 | 2a: 22 c4 09 aa R5.H=R1.H\+R1.L \(S\); | |
24 | 2e: 02 c4 35 0c R6.L=R6.L\+R5.L \(NS\); | |
25 | ||
26 | 00000032 <add_sub_prescale_down>: | |
27 | 32: 05 c4 01 98 R4.L=R0\+R1\(RND20\); | |
28 | 36: 25 c4 28 96 R3.H=R5\+R0\(RND20\); | |
29 | 3a: 05 c4 3d d2 R1.L=R7-R5\(RND20\); | |
30 | ||
31 | 0000003e <add_sub_prescale_up>: | |
32 | 3e: 05 c4 01 04 R2.L=R0\+R1\(RND12\); | |
33 | 42: 25 c4 3e 0e R7.H=R7\+R6\(RND12\); | |
34 | 46: 05 c4 1a 4a R5.L=R3-R2\(RND12\); | |
35 | 4a: 25 c4 0a 44 R2.H=R1-R2\(RND12\); | |
36 | ||
37 | 0000004e <add_immediate>: | |
38 | 4e: 05 66 R5\+=-64; | |
39 | 50: fa 65 R2\+=0x3f; | |
40 | 52: 60 9f I0\+=2; | |
41 | 54: 63 9f I3\+=2; | |
42 | 56: 6a 9f I2\+=4; | |
43 | 58: 69 9f I1\+=4; | |
44 | 5a: 20 6c P0\+=0x4; | |
45 | 5c: 86 6c SP\+=0x10; | |
46 | 5e: 07 6f FP\+=-32; | |
47 | ||
48 | 00000060 <divide_primitive>: | |
49 | 60: 6b 42 DIVS\(R3,R5\); | |
50 | 62: 2b 42 DIVQ\(R3,R5\); | |
51 | ||
52 | 00000064 <expadj>: | |
53 | 64: 07 c6 25 0c R6.L=EXPADJ \(R5,R4.L\); | |
54 | 68: 07 c6 08 ca R5.L=EXPADJ \(R0.H,R1.L\); | |
55 | 6c: 07 c6 2b 48 R4.L=EXPADJ \(R3,R5.L\) \(V\); | |
56 | ||
57 | 00000070 <max>: | |
58 | 70: 07 c4 2a 0c R6=MAX\(R5,R2\); | |
59 | 74: 07 c4 0b 00 R0=MAX\(R1,R3\); | |
60 | ||
61 | 00000078 <min>: | |
62 | 78: 07 c4 13 4a R5=MIN\(R2,R3\); | |
63 | 7c: 07 c4 38 48 R4=MIN\(R7,R0\); | |
64 | ||
65 | 00000080 <modify_decrement>: | |
66 | 80: 0b c4 [0-3][[:xdigit:]] c0 A0-=A1; | |
67 | 84: 0b c4 [0-3][[:xdigit:]] e0 A0-=A1\(W32\); | |
68 | 88: 17 44 FP-=P2; | |
69 | 8a: 06 44 SP-=P0; | |
70 | 8c: 73 9e I3-=M0; | |
71 | 8e: 75 9e I1-=M1; | |
72 | ||
73 | 00000090 <modify_increment>: | |
74 | 90: 0b c4 [0-3][[:xdigit:]] 80 A0\+=A1; | |
75 | 94: 0b c4 [0-3][[:xdigit:]] a0 A0\+=A1\(W32\); | |
76 | 98: 4e 45 SP\+=P1\(BREV\); | |
77 | 9a: 7d 45 P5\+=FP\(BREV\); | |
78 | 9c: 6a 9e I2\+=M2; | |
79 | 9e: e0 9e I0\+=M0\(BREV\); | |
80 | a0: 0b c4 [0-3][[:xdigit:]] 0e R7=\(A0\+=A1\); | |
81 | a4: 0b c4 [0-3][[:xdigit:]] 4c R6.L=\(A0\+=A1\); | |
82 | a8: 2b c4 [0-3][[:xdigit:]] 40 R0.H=\(A0\+=A1\); | |
83 | ||
84 | 000000ac <multiply16>: | |
85 | ac: 00 c2 0a 24 R0 = R1.H \* R2.L; | |
86 | b0: 20 c2 68 26 R1 = R5.H \* R0.H \(S2RND\); | |
87 | b4: 80 c2 db 23 R7 = R3.L \* R3.H \(FU\); | |
88 | b8: 28 c3 15 27 R4 = R2.H \* R5.H \(ISS2\); | |
89 | bc: 08 c3 0b 20 R0 = R1.L \* R3.L \(IS\); | |
90 | c0: 08 c2 a8 25 R6 = R5.H \* R0.L; | |
91 | c4: 94 c3 be 40 R2.H = R7.L \* R6.H \(M, IU\); | |
92 | c8: 04 c2 e8 80 R3.H = R5.H \* R0.L; | |
93 | cc: 14 c2 09 40 R0.H = R1.L \* R1.H \(M\); | |
94 | d0: 1c c3 3e 80 R1 = R7.H \* R6.L \(M, IS\); | |
95 | d4: 0c c2 02 41 R5 = R0.L \* R2.H; | |
96 | d8: 1c c2 b0 c0 R3 = R6.H \* R0.H \(M\); | |
97 | ||
98 | 000000dc <multiply32>: | |
99 | dc: c4 40 R4\*=R0; | |
100 | de: d7 40 R7\*=R2; | |
101 | ||
102 | 000000e0 <multiply_accumulate>: | |
103 | e0: 63 c0 2f 02 a0 = R5.L \* R7.H \(W32\); | |
104 | e4: 03 c0 00 04 a0 = R0.H \* R0.L; | |
105 | e8: 83 c0 13 0a a0 \+= R2.L \* R3.H \(FU\); | |
106 | ec: 03 c0 21 0c a0 \+= R4.H \* R1.L; | |
107 | f0: 03 c1 3e 12 a0 -= R7.L \* R6.H \(IS\); | |
108 | f4: 03 c0 2a 16 a0 -= R5.H \* R2.H; | |
109 | f8: 10 c0 08 58 a1 = R1.L \* R0.H \(M\); | |
110 | fc: 00 c0 10 98 a1 = R2.H \* R0.L; | |
111 | 100: 70 c0 3e 98 a1 = R7.H \* R6.L \(M, W32\); | |
112 | 104: 81 c0 1a 18 a1 \+= R3.L \* R2.L \(FU\); | |
113 | 108: 01 c0 31 98 a1 \+= R6.H \* R1.L; | |
114 | 10c: 02 c1 03 58 a1 -= R0.L \* R3.H \(IS\); | |
115 | 110: 02 c0 17 58 a1 -= R2.L \* R7.H; | |
116 | ||
117 | 00000114 <multiply_accumulate_half>: | |
118 | 114: 03 c0 f5 25 R7.L = \(a0 = R6.H \* R5.L\); | |
119 | 118: c3 c0 0a 24 R0.L = \(a0 = R1.H \* R2.L\) \(TFU\); | |
120 | 11c: 03 c0 ac 28 R2.L = \(a0 \+= R5.L \* R4.L\); | |
121 | 120: 43 c0 fe 2e R3.L = \(a0 \+= R7.H \* R6.H\) \(T\); | |
122 | 124: 03 c0 1a 36 R0.L = \(a0 -= R3.H \* R2.H\); | |
123 | 128: 63 c1 6c 30 R1.L = \(a0 -= R5.L \* R4.L\) \(IH\); | |
124 | 12c: 04 c0 48 58 R1.H = \(a1 = R1.L \* R0.H\); | |
125 | 130: 34 c1 83 98 R2.H = \(a1 = R0.H \* R3.L\) \(M, ISS2\); | |
126 | 134: 05 c0 bf 59 R6.H = \(a1 \+= R7.L \* R7.H\); | |
127 | 138: 25 c0 d3 19 R7.H = \(a1 \+= R2.L \* R3.L\) \(S2RND\); | |
128 | 13c: 06 c0 a2 d9 R6.H = \(a1 -= R4.H \* R2.H\); | |
129 | 140: d6 c0 5f 99 R5.H = \(a1 -= R3.H \* R7.L\) \(M, TFU\); | |
130 | ||
131 | 00000144 <multiply_accumulate_data_reg>: | |
132 | 144: 0b c0 0a 20 R0 = \(a0 = R1.L \* R2.L\); | |
133 | 148: 0b c1 8a 20 R2 = \(a0 = R1.L \* R2.L\) \(IS\); | |
134 | 14c: 0b c0 3e 2d R4 = \(a0 \+= R7.H \* R6.L\); | |
135 | 150: 2b c0 ab 2b R6 = \(a0 \+= R5.L \* R3.H\) \(S2RND\); | |
136 | 154: 0b c0 97 35 R6 = \(a0 -= R2.H \* R7.L\); | |
137 | 158: 8b c0 06 33 R4 = \(a0 -= R0.L \* R6.H\) \(FU\); | |
138 | 15c: 0c c0 81 99 R7 = \(a1 = R0.H \* R1.L\); | |
139 | 160: 9c c0 13 d9 R5 = \(a1 = R2.H \* R3.H\) \(M, FU\); | |
140 | 164: 0d c0 bd 18 R3 = \(a1 \+= R7.L \* R5.L\); | |
141 | 168: 2d c1 17 d8 R1 = \(a1 \+= R2.H \* R7.H\) \(ISS2\); | |
142 | 16c: 0e c0 80 58 R3 = \(a1 -= R0.L \* R0.H\); | |
143 | 170: 1e c1 17 59 R5 = \(a1 -= R2.L \* R7.H\) \(M, IS\); | |
ee171c8f BS |
144 | 174: 8d c1 8b d9 R7 = \(a1 \+= R1.H \* R3.H\) \(IU\); |
145 | ||
146 | 00000178 <negate>: | |
147 | 178: 85 43 R5=-R0; | |
148 | 17a: 07 c4 10 ee R7=-R2\(S\); | |
149 | 17e: 07 c4 10 ce R7=-R2\(NS\); | |
150 | 182: 0e c4 [0-3][[:xdigit:]] 00 A0=-A0; | |
151 | 186: 0e c4 [0-3][[:xdigit:]] 40 A0=-A1; | |
152 | 18a: 2e c4 [0-3][[:xdigit:]] 00 A1=-A0; | |
153 | 18e: 2e c4 [0-3][[:xdigit:]] 40 A1=-A1; | |
154 | 192: 0e c4 [0-3][[:xdigit:]] c0 A1=-A1,A0=-A0; | |
155 | ||
156 | 00000196 <round_half>: | |
157 | 196: 0c c4 18 ca R5.L=R3\(RND\); | |
158 | 19a: 2c c4 00 cc R6.H=R0\(RND\); | |
159 | ||
160 | 0000019e <saturate>: | |
161 | 19e: 08 c4 [0-3][[:xdigit:]] 20 A0=A0\(S\); | |
162 | 1a2: 08 c4 [0-3][[:xdigit:]] 60 A1=A1\(S\); | |
163 | 1a6: 08 c4 [0-3][[:xdigit:]] a0 A1=A1\(S\),A0=A0\(S\); | |
164 | ||
165 | 000001aa <signbits>: | |
166 | 1aa: 05 c6 00 0a R5.L=SIGNBITS R0; | |
167 | 1ae: 05 c6 07 80 R0.L=SIGNBITS R7.H; | |
168 | 1b2: 06 c6 00 06 R3.L=SIGNBITS A0; | |
169 | 1b6: 06 c6 00 4e R7.L=SIGNBITS A1; | |
170 | ||
171 | 000001ba <subtract>: | |
172 | 1ba: 43 53 R5=R3-R0; | |
173 | 1bc: 04 c4 38 6e R7=R7-R0 \(S\); | |
174 | 1c0: 04 c4 11 46 R3=R2-R1 \(NS\); | |
175 | 1c4: 03 c4 37 ea R5.L=R6.H-R7.H \(S\); | |
176 | 1c8: 23 c4 1b 40 R0.H=R3.L-R3.H \(NS\); | |
177 | ||
178 | 000001cc <subtract_immediate>: | |
179 | 1cc: 66 9f I2-=2; | |
180 | 1ce: 6c 9f I0-=4; |