From 99cc783f82c5f43b2b2d638d51b14437501605b8 Mon Sep 17 00:00:00 2001 From: Theodor Chikin Date: Wed, 13 Aug 2025 18:27:27 +0300 Subject: [PATCH] fixed transmitting to PC via HDMA. Clue: copy data to shadow array and check if it was sent via hdma_send_done() --- build/release/bin/l502-BFfirmware0.elf | Bin 82964 -> 85229 bytes build/release/bin/l502-BFfirmware0.ldr | Bin 31328 -> 32000 bytes build/release/lst/l502_cmd.lst | 264 +- build/release/lst/l502_stream.lst | 9764 ++++++++++++----------- build/release/lst/l502_user_process.lst | 9460 ++++++++++++---------- build/release/objs/l502_stream.o | Bin 12610196 -> 12686328 bytes build/release/objs/l502_user_process.o | Bin 12892 -> 16672 bytes src/l502_stream.c | 3 + src/l502_user_process.c | 247 +- src/l502_user_process.h | 30 +- 10 files changed, 10644 insertions(+), 9124 deletions(-) diff --git a/build/release/bin/l502-BFfirmware0.elf b/build/release/bin/l502-BFfirmware0.elf index 48937ff79817a64edc562844148c4f45a69a7059..7849c112e9e7758620b46e58916f017686860bfe 100755 GIT binary patch delta 17822 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 delta 15574 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, cmd->data[0]); 187:src/l502_cmd.c **** } 188:src/l502_cmd.c **** l502_cmd_done(err, NULL, 0); - BFIN GAS /tmp/ccX1sGjp.s page 6 + BFIN GAS /tmp/ccJMNzjk.s page 6 189:src/l502_cmd.c **** } @@ -358,7 +358,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 111 0086 10E60202 [P2+2056] = R0; 90:src/l502_cmd.c **** g_state.cmd.data_size = size; 112 .loc 1 90 0 - BFIN GAS /tmp/ccX1sGjp.s page 7 + BFIN GAS /tmp/ccJMNzjk.s page 7 113 008a 0060 R0 = 0 (X); @@ -418,7 +418,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 259:src/l502_cmd.c **** break; 260:src/l502_cmd.c **** case L502_BF_PARAM_IN_STEP_SIZE: 261:src/l502_cmd.c **** err = sport_in_set_step_size(cmd->data[0]); - BFIN GAS /tmp/ccX1sGjp.s page 8 + BFIN GAS /tmp/ccJMNzjk.s page 8 262:src/l502_cmd.c **** break; @@ -478,7 +478,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 287:src/l502_cmd.c **** g_module_info.dac_cbr[ch].offs = *po; 138 .loc 1 287 0 139 00a8 20E1FDFD R0 = -515 (X); - BFIN GAS /tmp/ccX1sGjp.s page 9 + BFIN GAS /tmp/ccJMNzjk.s page 9 140 .LVL11: @@ -538,7 +538,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 191 0044 B8000000 .dd .L11; 192 0048 B8000000 .dd .L11; 193 004c B8000000 .dd .L11; - BFIN GAS /tmp/ccX1sGjp.s page 10 + BFIN GAS /tmp/ccJMNzjk.s page 10 194 0050 B8000000 .dd .L11; @@ -598,7 +598,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 244 00ec 0000 nop; 245 .LBB14: 280:src/l502_cmd.c **** uint32_t ch = cmd->data[0]; - BFIN GAS /tmp/ccX1sGjp.s page 11 + BFIN GAS /tmp/ccJMNzjk.s page 11 246 .loc 1 280 0 @@ -658,7 +658,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 291 .loc 1 271 0 292 012a 82CE108E R7 = R0 << 2 || 292 69A10000 - BFIN GAS /tmp/ccX1sGjp.s page 12 + BFIN GAS /tmp/ccJMNzjk.s page 12 293 R1 = [P5+20] || @@ -718,7 +718,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 340 0186 7C2F jump.s .L9; 341 .L14: 231:src/l502_cmd.c **** if (cmd->data_size < 5) { - BFIN GAS /tmp/ccX1sGjp.s page 13 + BFIN GAS /tmp/ccJMNzjk.s page 13 342 .loc 1 231 0 @@ -778,7 +778,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 390 .LVL23: 391 01de 502F jump.s .L9; 392 .LVL24: - BFIN GAS /tmp/ccX1sGjp.s page 14 + BFIN GAS /tmp/ccJMNzjk.s page 14 393 .L34: @@ -838,7 +838,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 437 .LBB21: 438 .LBB20: 94:src/l502_cmd.c **** g_state.cmd.status = L502_BF_CMD_STATUS_DONE; - BFIN GAS /tmp/ccX1sGjp.s page 15 + BFIN GAS /tmp/ccJMNzjk.s page 15 439 .loc 1 94 0 @@ -898,7 +898,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 485 0254 08E60302 [P1+2060] = R0; 91:src/l502_cmd.c **** if (size && (data!=g_state.cmd.data)) 486 .loc 1 91 0 - BFIN GAS /tmp/ccX1sGjp.s page 16 + BFIN GAS /tmp/ccJMNzjk.s page 16 487 0258 4208 cc =P2==P0; @@ -958,7 +958,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 534 0294 804F R0 <<= 16; 535 0296 000C cc =R0==0; 536 0298 1618 if cc jump .L46; - BFIN GAS /tmp/ccX1sGjp.s page 17 + BFIN GAS /tmp/ccJMNzjk.s page 17 537 029a 20E1FEFD R0 = -514 (X); @@ -1018,7 +1018,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 584 02d2 00E80300 LINK 12; 585 .LCFI10: 158:src/l502_cmd.c **** if (cmd->data_size < 1) { - BFIN GAS /tmp/ccX1sGjp.s page 18 + BFIN GAS /tmp/ccJMNzjk.s page 18 586 .loc 1 158 0 @@ -1078,7 +1078,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 634 .LBE33: 635 .LBE32: 177:src/l502_cmd.c **** } - BFIN GAS /tmp/ccX1sGjp.s page 19 + BFIN GAS /tmp/ccJMNzjk.s page 19 636 .loc 1 177 0 @@ -1138,7 +1138,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 153:src/l502_cmd.c **** l502_cmd_done(stream_disable(cmd->param), NULL, 0); 684 .loc 1 153 0 685 0356 50A0 R0 = [P2+4]; - BFIN GAS /tmp/ccX1sGjp.s page 20 + BFIN GAS /tmp/ccJMNzjk.s page 20 686 .LVL65: @@ -1198,7 +1198,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 731 .loc 1 94 0 732 039a 20E1035A R0 = 23043 (X); 733 039e 50E60104 W [P2+2050] = R0; - BFIN GAS /tmp/ccX1sGjp.s page 21 + BFIN GAS /tmp/ccJMNzjk.s page 21 734 .LBE41: @@ -1258,7 +1258,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 779 .loc 1 137 0 780 03d4 FFE316FE call _streams_stop; 781 .LVL73: - BFIN GAS /tmp/ccX1sGjp.s page 22 + BFIN GAS /tmp/ccJMNzjk.s page 22 782 .LBB48: @@ -1318,7 +1318,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 826 .loc 1 134 0 827 041a 01E80000 UNLINK; 828 041e 1000 rts; - BFIN GAS /tmp/ccX1sGjp.s page 23 + BFIN GAS /tmp/ccJMNzjk.s page 23 829 .LFE20: @@ -1378,7 +1378,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 302:src/l502_cmd.c **** uint32_t ret_size = 0; 303:src/l502_cmd.c **** 304:src/l502_cmd.c **** - BFIN GAS /tmp/ccX1sGjp.s page 24 + BFIN GAS /tmp/ccJMNzjk.s page 24 305:src/l502_cmd.c **** switch (cmd->param) { @@ -1438,7 +1438,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 350:src/l502_cmd.c **** ret_size = 1; 351:src/l502_cmd.c **** break; 352:src/l502_cmd.c **** case L502_BF_PARAM_ADC_FRAME_DELAY: - BFIN GAS /tmp/ccX1sGjp.s page 25 + BFIN GAS /tmp/ccJMNzjk.s page 25 353:src/l502_cmd.c **** cmd->data[0] = g_set.adc_frame_delay; @@ -1498,7 +1498,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 902 .loc 1 383 0 903 0478 01E80000 UNLINK; 904 047c 8504 ( p5:5 ) = [sp++]; - BFIN GAS /tmp/ccX1sGjp.s page 26 + BFIN GAS /tmp/ccJMNzjk.s page 26 905 @@ -1558,7 +1558,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 958 0158 AA050000 .dd .L86; 959 015c 5A040000 .dd .L75; 960 0160 5A040000 .dd .L75; - BFIN GAS /tmp/ccX1sGjp.s page 27 + BFIN GAS /tmp/ccJMNzjk.s page 27 961 0164 5A040000 .dd .L75; @@ -1618,7 +1618,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1013 .loc 1 308 0 1014 0492 1860 R0 = 3 (X); 1015 0494 68B1 [P5+20] = R0; - BFIN GAS /tmp/ccX1sGjp.s page 28 + BFIN GAS /tmp/ccJMNzjk.s page 28 1016 0496 1360 R3 = 2 (X); @@ -1678,7 +1678,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1061 .LVL90: 1062 .L77: 312:src/l502_cmd.c **** cmd->data[0] = g_mode; - BFIN GAS /tmp/ccX1sGjp.s page 29 + BFIN GAS /tmp/ccJMNzjk.s page 29 1063 .loc 1 312 0 @@ -1738,7 +1738,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1112 .loc 1 332 0 1113 051e 20E1FF00 R0 = 255 (X); 331:src/l502_cmd.c **** uint32_t index = cmd->data[0]; - BFIN GAS /tmp/ccX1sGjp.s page 30 + BFIN GAS /tmp/ccJMNzjk.s page 30 1114 .loc 1 331 0 @@ -1798,7 +1798,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1159 .LVL103: 1160 .L83: 349:src/l502_cmd.c **** cmd->data[0] = g_set.ref_freq; - BFIN GAS /tmp/ccX1sGjp.s page 31 + BFIN GAS /tmp/ccJMNzjk.s page 31 1161 .loc 1 349 0 @@ -1858,7 +1858,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1211 .LVL112: 1212 05ce 2260 R2 = 4 (X); 1213 05d0 652F jump.s .L91; - BFIN GAS /tmp/ccX1sGjp.s page 32 + BFIN GAS /tmp/ccJMNzjk.s page 32 1214 .LVL113: @@ -1918,7 +1918,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1263 0606 49E10000 P1.H = _f_cmd_tbl; 1264 060a 09E12002 P1.L = _f_cmd_tbl; 103:src/l502_cmd.c **** usr_cmd_process(cmd); - BFIN GAS /tmp/ccX1sGjp.s page 33 + BFIN GAS /tmp/ccJMNzjk.s page 33 1265 .loc 1 103 0 @@ -1978,7 +1978,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1318 0676 5B18 if cc jump .L123; 1319 0678 0000 nop; 1320 067a 4AE10000 P2.H = _f_cmd_tbl; - BFIN GAS /tmp/ccX1sGjp.s page 34 + BFIN GAS /tmp/ccJMNzjk.s page 34 1321 067e 0AE12002 P2.L = _f_cmd_tbl; @@ -2038,7 +2038,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1369 06dc 1032 P2 = R0; 1370 06de 4030 R0 = P0; 115:src/l502_cmd.c **** } - BFIN GAS /tmp/ccX1sGjp.s page 35 + BFIN GAS /tmp/ccJMNzjk.s page 35 1371 .loc 1 115 0 @@ -2098,7 +2098,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1413 .loc 1 108 0 1414 0712 915A P2 = P1 + P2; 1415 0714 52AC P2 = [P2+4]; - BFIN GAS /tmp/ccX1sGjp.s page 36 + BFIN GAS /tmp/ccJMNzjk.s page 36 1416 0716 5200 jump (P2); @@ -2158,7 +2158,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1469 .size _l502_cmd_start, .-_l502_cmd_start 1470 .align 4 1471 .global _l502_cmd_check_req; - BFIN GAS /tmp/ccX1sGjp.s page 37 + BFIN GAS /tmp/ccJMNzjk.s page 37 1472 .type _l502_cmd_check_req, STT_FUNC; @@ -2218,7 +2218,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1518 0792 0000 nop; 1519 0794 50E50004 R0 = W [P2+2048] (X); 1520 0798 C042 R0 = R0.L (Z); - BFIN GAS /tmp/ccX1sGjp.s page 38 + BFIN GAS /tmp/ccJMNzjk.s page 38 1521 079a 09A1 R1 = [P1+16]; @@ -2278,7 +2278,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1575 0824 0000 nop; 1576 0826 40E50004 R0 = W [P0+2048] (X); 1577 082a C042 R0 = R0.L (Z); - BFIN GAS /tmp/ccX1sGjp.s page 39 + BFIN GAS /tmp/ccJMNzjk.s page 39 1578 082c 11E41600 R1 = [P2+88]; @@ -2338,7 +2338,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1624 0874 0060 R0 = 0 (X); 1625 .LVL152: 1626 0876 F42F jump.s .L132; - BFIN GAS /tmp/ccX1sGjp.s page 40 + BFIN GAS /tmp/ccJMNzjk.s page 40 1627 .LVL153: @@ -2398,7 +2398,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1677 08a4 4860 R0 = 9 (X); 1678 .LVL168: 1679 08a6 DC2F jump.s .L132; - BFIN GAS /tmp/ccX1sGjp.s page 41 + BFIN GAS /tmp/ccJMNzjk.s page 41 1680 .LVL169: @@ -2458,7 +2458,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1734 .size _f_regaddr_k, 24 1735 _f_regaddr_k: 1736 0288 08040000 .long 1032 - BFIN GAS /tmp/ccX1sGjp.s page 42 + BFIN GAS /tmp/ccJMNzjk.s page 42 1737 028c 09040000 .long 1033 @@ -2518,7 +2518,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1791 .4byte .LCFI1-.LFB16 1792 0039 0E .byte 0xe 1793 003a 04 .uleb128 0x4 - BFIN GAS /tmp/ccX1sGjp.s page 43 + BFIN GAS /tmp/ccJMNzjk.s page 43 1794 003b 8D .byte 0x8d @@ -2578,7 +2578,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1848 .LEFDE6: 1849 .LSFDE8: 1850 0080 14000000 .4byte .LEFDE8-.LASFDE8 - BFIN GAS /tmp/ccX1sGjp.s page 44 + BFIN GAS /tmp/ccJMNzjk.s page 44 1851 .LASFDE8: @@ -2638,7 +2638,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1905 00d4 2C000000 .4byte .LFE25-.LFB25 1906 00d8 46 .byte 0x4 1907 .4byte .LCFI11-.LFB25 - BFIN GAS /tmp/ccX1sGjp.s page 45 + BFIN GAS /tmp/ccJMNzjk.s page 45 1908 00d9 0C .byte 0xc @@ -2698,7 +2698,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 1962 0124 8F .byte 0x8f 1963 0125 02 .uleb128 0x2 1964 0126 A3 .byte 0xa3 - BFIN GAS /tmp/ccX1sGjp.s page 46 + BFIN GAS /tmp/ccJMNzjk.s page 46 1965 0127 01 .uleb128 0x1 @@ -2758,7 +2758,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2019 0171 8F .byte 0x8f 2020 0172 03 .uleb128 0x3 2021 0173 A3 .byte 0xa3 - BFIN GAS /tmp/ccX1sGjp.s page 47 + BFIN GAS /tmp/ccJMNzjk.s page 47 2022 0174 02 .uleb128 0x2 @@ -2818,7 +2818,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2076 001f 28000000 .4byte .LFB16-.Ltext0 2077 0023 2A000000 .4byte .LCFI1-.Ltext0 2078 0027 0100 .2byte 0x1 - BFIN GAS /tmp/ccX1sGjp.s page 48 + BFIN GAS /tmp/ccJMNzjk.s page 48 2079 0029 5E .byte 0x5e @@ -2878,7 +2878,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2133 00b9 7E .byte 0x7e 2134 00ba 08 .sleb128 8 2135 00bb 6E000000 .4byte .LCFI5-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 49 + BFIN GAS /tmp/ccJMNzjk.s page 49 2136 00bf E4010000 .4byte .LFE30-.Ltext0 @@ -2938,7 +2938,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2190 0151 BE000000 .4byte .LVL15-.Ltext0 2191 0155 0100 .2byte 0x1 2192 0157 51 .byte 0x51 - BFIN GAS /tmp/ccX1sGjp.s page 50 + BFIN GAS /tmp/ccJMNzjk.s page 50 2193 0158 F0000000 .4byte .LVL16-.Ltext0 @@ -2998,7 +2998,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2247 01e9 4C020000 .4byte .LVL31-.Ltext0 2248 01ed 0100 .2byte 0x1 2249 01ef 5A .byte 0x5a - BFIN GAS /tmp/ccX1sGjp.s page 51 + BFIN GAS /tmp/ccJMNzjk.s page 51 2250 01f0 6E020000 .4byte .LVL33-.Ltext0 @@ -3058,7 +3058,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2304 0280 5A .byte 0x5a 2305 0281 BE020000 .4byte .LVL42-.Ltext0 2306 0285 CC020000 .4byte .LVL45-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 52 + BFIN GAS /tmp/ccJMNzjk.s page 52 2307 0289 0100 .2byte 0x1 @@ -3118,7 +3118,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2361 031b 0100 .2byte 0x1 2362 031d 5A .byte 0x5a 2363 031e 00000000 .4byte 0x0 - BFIN GAS /tmp/ccX1sGjp.s page 53 + BFIN GAS /tmp/ccJMNzjk.s page 53 2364 0322 00000000 .4byte 0x0 @@ -3178,7 +3178,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2418 03b5 0200 .2byte 0x2 2419 03b7 7F .byte 0x7f 2420 03b8 08 .sleb128 8 - BFIN GAS /tmp/ccX1sGjp.s page 54 + BFIN GAS /tmp/ccJMNzjk.s page 54 2421 03b9 00000000 .4byte 0x0 @@ -3238,7 +3238,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2475 044b 0100 .2byte 0x1 2476 044d 5E .byte 0x5e 2477 044e FC030000 .4byte .LCFI15-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 55 + BFIN GAS /tmp/ccJMNzjk.s page 55 2478 0452 20040000 .4byte .LFE20-.Ltext0 @@ -3298,7 +3298,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2532 04dd 5A040000 .4byte .LVL79-.Ltext0 2533 04e1 62040000 .4byte .LVL81-.Ltext0 2534 04e5 0100 .2byte 0x1 - BFIN GAS /tmp/ccX1sGjp.s page 56 + BFIN GAS /tmp/ccJMNzjk.s page 56 2535 04e7 5D .byte 0x5d @@ -3358,7 +3358,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2589 057b 53 .byte 0x53 2590 057c 7E050000 .4byte .LVL104-.Ltext0 2591 0580 82050000 .4byte .LVL105-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 57 + BFIN GAS /tmp/ccJMNzjk.s page 57 2592 0584 0100 .2byte 0x1 @@ -3418,7 +3418,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2646 0615 00000000 .4byte 0x0 2647 .LLST40: 2648 0619 F8050000 .4byte .LVL119-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 58 + BFIN GAS /tmp/ccJMNzjk.s page 58 2649 061d 02060000 .4byte .LVL120-.Ltext0 @@ -3478,7 +3478,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2703 06b0 2A070000 .4byte .LVL139-.Ltext0 2704 06b4 2C070000 .4byte .LVL140-.Ltext0 2705 06b8 0100 .2byte 0x1 - BFIN GAS /tmp/ccX1sGjp.s page 59 + BFIN GAS /tmp/ccJMNzjk.s page 59 2706 06ba 50 .byte 0x50 @@ -3538,7 +3538,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2760 074d 0100 .2byte 0x1 2761 074f 50 .byte 0x50 2762 0750 96080000 .4byte .LVL160-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 60 + BFIN GAS /tmp/ccJMNzjk.s page 60 2763 0754 98080000 .4byte .LVL161-.Ltext0 @@ -3598,7 +3598,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2817 0027 06 .byte 0x6 2818 0028 3A080000 .4byte .LASF0 2819 002c 03 .uleb128 0x3 - BFIN GAS /tmp/ccX1sGjp.s page 61 + BFIN GAS /tmp/ccJMNzjk.s page 61 2820 002d CB030000 .4byte .LASF3 @@ -3658,7 +3658,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2874 0093 C6000000 .4byte .LASF12 2875 0097 05 .uleb128 0x5 2876 0098 04 .byte 0x4 - BFIN GAS /tmp/ccX1sGjp.s page 62 + BFIN GAS /tmp/ccJMNzjk.s page 62 2877 0099 03 .byte 0x3 @@ -3718,7 +3718,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2931 0108 06 .uleb128 0x6 2932 0109 97080000 .4byte .LASF28 2933 010d 25 .sleb128 37 - BFIN GAS /tmp/ccX1sGjp.s page 63 + BFIN GAS /tmp/ccJMNzjk.s page 63 2934 010e 06 .uleb128 0x6 @@ -3778,7 +3778,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 2988 0178 06 .uleb128 0x6 2989 0179 8F010000 .4byte .LASF43 2990 017d FE7B .sleb128 -514 - BFIN GAS /tmp/ccX1sGjp.s page 64 + BFIN GAS /tmp/ccJMNzjk.s page 64 2991 017f 06 .uleb128 0x6 @@ -3838,7 +3838,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3045 01e8 23 .byte 0x23 3046 01e9 00 .uleb128 0x0 3047 01ea 08 .uleb128 0x8 - BFIN GAS /tmp/ccX1sGjp.s page 65 + BFIN GAS /tmp/ccJMNzjk.s page 65 3048 01eb D3030000 .4byte .LASF55 @@ -3898,7 +3898,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3102 024c D3010000 .4byte 0x1d3 3103 0250 0C .uleb128 0xc 3104 0251 20 .byte 0x20 - BFIN GAS /tmp/ccX1sGjp.s page 66 + BFIN GAS /tmp/ccJMNzjk.s page 66 3105 0252 04 .byte 0x4 @@ -3958,7 +3958,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3159 02b2 23 .byte 0x23 3160 02b3 45000000 .4byte 0x45 3161 02b7 02 .byte 0x2 - BFIN GAS /tmp/ccX1sGjp.s page 67 + BFIN GAS /tmp/ccJMNzjk.s page 67 3162 02b8 23 .byte 0x23 @@ -4018,7 +4018,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3216 0315 00 .uleb128 0x0 3217 0316 0D .uleb128 0xd 3218 0317 696E00 .string "in" - BFIN GAS /tmp/ccX1sGjp.s page 68 + BFIN GAS /tmp/ccJMNzjk.s page 68 3219 031a 04 .byte 0x4 @@ -4078,7 +4078,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3273 0380 23 .byte 0x23 3274 0381 8010 .uleb128 0x800 3275 0383 00 .byte 0x0 - BFIN GAS /tmp/ccX1sGjp.s page 69 + BFIN GAS /tmp/ccJMNzjk.s page 69 3276 0384 03 .uleb128 0x3 @@ -4138,7 +4138,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3330 03ea 01 .sleb128 1 3331 03eb 06 .uleb128 0x6 3332 03ec CA080000 .4byte .LASF88 - BFIN GAS /tmp/ccX1sGjp.s page 70 + BFIN GAS /tmp/ccJMNzjk.s page 70 3333 03f0 02 .sleb128 2 @@ -4198,7 +4198,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3387 044e 00 .uleb128 0x0 3388 044f 08 .uleb128 0x8 3389 0450 40070000 .4byte .LASF96 - BFIN GAS /tmp/ccX1sGjp.s page 71 + BFIN GAS /tmp/ccJMNzjk.s page 71 3390 0454 06 .byte 0x6 @@ -4258,7 +4258,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3444 04b7 23 .byte 0x23 3445 04b8 01 .uleb128 0x1 3446 04b9 08 .uleb128 0x8 - BFIN GAS /tmp/ccX1sGjp.s page 72 + BFIN GAS /tmp/ccJMNzjk.s page 72 3447 04ba 4A050000 .4byte .LASF102 @@ -4318,7 +4318,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3501 051c 69000000 .4byte 0x69 3502 0520 03 .byte 0x3 3503 0521 23 .byte 0x23 - BFIN GAS /tmp/ccX1sGjp.s page 73 + BFIN GAS /tmp/ccJMNzjk.s page 73 3504 0522 8410 .uleb128 0x804 @@ -4378,7 +4378,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3558 0589 42020000 .4byte 0x242 3559 058d FF .byte 0xff 3560 058e 00 .byte 0x0 - BFIN GAS /tmp/ccX1sGjp.s page 74 + BFIN GAS /tmp/ccJMNzjk.s page 74 3561 058f 03 .uleb128 0x3 @@ -4438,7 +4438,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3615 05f2 00000000 .4byte .LFB19 3616 05f6 26000000 .4byte .LFE19 3617 05fa 00000000 .4byte .LLST0 - BFIN GAS /tmp/ccX1sGjp.s page 75 + BFIN GAS /tmp/ccJMNzjk.s page 75 3618 05fe 14 .uleb128 0x14 @@ -4498,7 +4498,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3672 0682 01 .byte 0x1 3673 0683 D3 .byte 0xd3 3674 0684 BE050000 .4byte 0x5be - BFIN GAS /tmp/ccX1sGjp.s page 76 + BFIN GAS /tmp/ccJMNzjk.s page 76 3675 0688 CF000000 .4byte .LLST6 @@ -4558,7 +4558,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3729 070e 00 .byte 0x0 3730 070f 10 .uleb128 0x10 3731 0710 04 .byte 0x4 - BFIN GAS /tmp/ccX1sGjp.s page 77 + BFIN GAS /tmp/ccJMNzjk.s page 77 3732 0711 27040000 .4byte 0x427 @@ -4618,7 +4618,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3786 0792 C0 .byte 0xc0 3787 0793 57000000 .4byte 0x57 3788 0797 03020000 .4byte .LLST14 - BFIN GAS /tmp/ccX1sGjp.s page 78 + BFIN GAS /tmp/ccJMNzjk.s page 78 3789 079b 1A .uleb128 0x1a @@ -4678,7 +4678,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3843 081f 00 .byte 0x0 3844 0820 18 .uleb128 0x18 3845 0821 25030000 .4byte .LASF122 - BFIN GAS /tmp/ccX1sGjp.s page 79 + BFIN GAS /tmp/ccJMNzjk.s page 79 3846 0825 01 .byte 0x1 @@ -4738,7 +4738,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3900 08ac 1C .uleb128 0x1c 3901 08ad 5B060000 .4byte 0x65b 3902 08b1 1C .uleb128 0x1c - BFIN GAS /tmp/ccX1sGjp.s page 80 + BFIN GAS /tmp/ccJMNzjk.s page 80 3903 08b2 52060000 .4byte 0x652 @@ -4798,7 +4798,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 3957 0939 91 .byte 0x91 3958 093a 1C .uleb128 0x1c 3959 093b 5B060000 .4byte 0x65b - BFIN GAS /tmp/ccX1sGjp.s page 81 + BFIN GAS /tmp/ccJMNzjk.s page 81 3960 093f 1C .uleb128 0x1c @@ -4858,7 +4858,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4014 09c6 01 .byte 0x1 4015 09c7 85 .byte 0x85 4016 09c8 1C .uleb128 0x1c - BFIN GAS /tmp/ccX1sGjp.s page 82 + BFIN GAS /tmp/ccJMNzjk.s page 82 4017 09c9 5B060000 .4byte 0x65b @@ -4918,7 +4918,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4071 0a4f 2D01 .2byte 0x12d 4072 0a51 57000000 .4byte 0x57 4073 0a55 06050000 .4byte .LLST36 - BFIN GAS /tmp/ccX1sGjp.s page 83 + BFIN GAS /tmp/ccJMNzjk.s page 83 4074 0a59 22 .uleb128 0x22 @@ -4978,7 +4978,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4128 0ad2 1C .uleb128 0x1c 4129 0ad3 5B060000 .4byte 0x65b 4130 0ad7 1C .uleb128 0x1c - BFIN GAS /tmp/ccX1sGjp.s page 84 + BFIN GAS /tmp/ccJMNzjk.s page 84 4131 0ad8 52060000 .4byte 0x652 @@ -5038,7 +5038,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4185 0b62 19070000 .4byte .LLST43 4186 0b66 2D .uleb128 0x2d 4187 0b67 C60A0000 .4byte 0xac6 - BFIN GAS /tmp/ccX1sGjp.s page 85 + BFIN GAS /tmp/ccJMNzjk.s page 85 4188 0b6b 25 .uleb128 0x25 @@ -5098,7 +5098,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4242 0be0 C4050000 .4byte 0x5c4 4243 0be4 EF0B0000 .4byte 0xbef 4244 0be8 0F .uleb128 0xf - BFIN GAS /tmp/ccX1sGjp.s page 86 + BFIN GAS /tmp/ccJMNzjk.s page 86 4245 0be9 42020000 .4byte 0x242 @@ -5158,7 +5158,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4299 0000 01 .uleb128 0x1 4300 0001 11 .uleb128 0x11 4301 0002 01 .byte 0x1 - BFIN GAS /tmp/ccX1sGjp.s page 87 + BFIN GAS /tmp/ccJMNzjk.s page 87 4302 0003 25 .uleb128 0x25 @@ -5218,7 +5218,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4356 0039 0B .uleb128 0xb 4357 003a 0B .uleb128 0xb 4358 003b 3A .uleb128 0x3a - BFIN GAS /tmp/ccX1sGjp.s page 88 + BFIN GAS /tmp/ccJMNzjk.s page 88 4359 003c 0B .uleb128 0xb @@ -5278,7 +5278,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4413 0072 21 .uleb128 0x21 4414 0073 00 .byte 0x0 4415 0074 49 .uleb128 0x49 - BFIN GAS /tmp/ccX1sGjp.s page 89 + BFIN GAS /tmp/ccJMNzjk.s page 89 4416 0075 13 .uleb128 0x13 @@ -5338,7 +5338,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4470 00ab 2F .uleb128 0x2f 4471 00ac 0B .uleb128 0xb 4472 00ad 00 .byte 0x0 - BFIN GAS /tmp/ccX1sGjp.s page 90 + BFIN GAS /tmp/ccJMNzjk.s page 90 4473 00ae 00 .byte 0x0 @@ -5398,7 +5398,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4527 00e4 3A .uleb128 0x3a 4528 00e5 0B .uleb128 0xb 4529 00e6 3B .uleb128 0x3b - BFIN GAS /tmp/ccX1sGjp.s page 91 + BFIN GAS /tmp/ccJMNzjk.s page 91 4530 00e7 0B .uleb128 0xb @@ -5458,7 +5458,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4584 011d 0B .uleb128 0xb 4585 011e 27 .uleb128 0x27 4586 011f 0C .uleb128 0xc - BFIN GAS /tmp/ccX1sGjp.s page 92 + BFIN GAS /tmp/ccJMNzjk.s page 92 4587 0120 11 .uleb128 0x11 @@ -5518,7 +5518,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4641 0156 13 .uleb128 0x13 4642 0157 00 .byte 0x0 4643 0158 00 .byte 0x0 - BFIN GAS /tmp/ccX1sGjp.s page 93 + BFIN GAS /tmp/ccJMNzjk.s page 93 4644 0159 1C .uleb128 0x1c @@ -5578,7 +5578,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4698 018f 11 .uleb128 0x11 4699 0190 01 .uleb128 0x1 4700 0191 12 .uleb128 0x12 - BFIN GAS /tmp/ccX1sGjp.s page 94 + BFIN GAS /tmp/ccJMNzjk.s page 94 4701 0192 01 .uleb128 0x1 @@ -5638,7 +5638,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4755 01c8 01 .uleb128 0x1 4756 01c9 58 .uleb128 0x58 4757 01ca 0B .uleb128 0xb - BFIN GAS /tmp/ccX1sGjp.s page 95 + BFIN GAS /tmp/ccJMNzjk.s page 95 4758 01cb 59 .uleb128 0x59 @@ -5698,7 +5698,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4812 0201 00 .byte 0x0 4813 0202 29 .uleb128 0x29 4814 0203 05 .uleb128 0x5 - BFIN GAS /tmp/ccX1sGjp.s page 96 + BFIN GAS /tmp/ccJMNzjk.s page 96 4815 0204 00 .byte 0x0 @@ -5758,7 +5758,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4869 023a 3B .uleb128 0x3b 4870 023b 0B .uleb128 0xb 4871 023c 27 .uleb128 0x27 - BFIN GAS /tmp/ccX1sGjp.s page 97 + BFIN GAS /tmp/ccJMNzjk.s page 97 4872 023d 0C .uleb128 0xc @@ -5818,7 +5818,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4926 0273 0C .uleb128 0xc 4927 0274 00 .byte 0x0 4928 0275 00 .byte 0x0 - BFIN GAS /tmp/ccX1sGjp.s page 98 + BFIN GAS /tmp/ccJMNzjk.s page 98 4929 0276 00 .byte 0x0 @@ -5878,7 +5878,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 4969 002c 1A010000 .4byte .LBE12-.Ltext0 4970 0030 B8000000 .4byte .LBB10-.Ltext0 4971 0034 BE000000 .4byte .LBE10-.Ltext0 - BFIN GAS /tmp/ccX1sGjp.s page 99 + BFIN GAS /tmp/ccJMNzjk.s page 99 4972 0038 00000000 .4byte 0x0 @@ -5938,7 +5938,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5014 0044 4C353032 .string "L502_SYNC_INTERNAL" 5014 5F53594E 5014 435F494E - BFIN GAS /tmp/ccX1sGjp.s page 100 + BFIN GAS /tmp/ccJMNzjk.s page 100 5014 5445524E @@ -5998,7 +5998,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5034 00 5035 .LASF79: 5036 0101 4C353032 .string "L502_ADC_RANGE_2" - BFIN GAS /tmp/ccX1sGjp.s page 101 + BFIN GAS /tmp/ccJMNzjk.s page 101 5036 5F414443 @@ -6058,7 +6058,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5058 5F42465F 5058 4552525F 5058 46495253 - BFIN GAS /tmp/ccX1sGjp.s page 102 + BFIN GAS /tmp/ccJMNzjk.s page 102 5058 545F434F @@ -6118,7 +6118,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5082 5F73697A 5082 6500 5083 .LASF34: - BFIN GAS /tmp/ccX1sGjp.s page 103 + BFIN GAS /tmp/ccJMNzjk.s page 103 5084 026f 4C353032 .string "L502_BF_PARAM_IN_STEP_SIZE" @@ -6178,7 +6178,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5105 .LASF90: 5106 0335 4C353032 .string "L502_SYNC_DI_SYN1_FALL" 5106 5F53594E - BFIN GAS /tmp/ccX1sGjp.s page 104 + BFIN GAS /tmp/ccJMNzjk.s page 104 5106 435F4449 @@ -6238,7 +6238,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5130 5F42465F 5130 434D445F 5130 4153594E - BFIN GAS /tmp/ccX1sGjp.s page 105 + BFIN GAS /tmp/ccJMNzjk.s page 105 5130 435F5459 @@ -6298,7 +6298,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5153 .LASF69: 5154 04d8 76616C69 .string "valid" 5154 6400 - BFIN GAS /tmp/ccX1sGjp.s page 106 + BFIN GAS /tmp/ccJMNzjk.s page 106 5155 .LASF16: @@ -6358,7 +6358,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5177 .LASF89: 5178 0587 4C353032 .string "L502_SYNC_DI_SYN2_RISE" 5178 5F53594E - BFIN GAS /tmp/ccX1sGjp.s page 107 + BFIN GAS /tmp/ccJMNzjk.s page 107 5178 435F4449 @@ -6418,7 +6418,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5202 0627 665F636D .string "f_cmd_streams_start" 5202 645F7374 5202 7265616D - BFIN GAS /tmp/ccX1sGjp.s page 108 + BFIN GAS /tmp/ccJMNzjk.s page 108 5202 735F7374 @@ -6478,7 +6478,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5226 72745F6D 5226 6F646500 5227 .LASF104: - BFIN GAS /tmp/ccX1sGjp.s page 109 + BFIN GAS /tmp/ccJMNzjk.s page 109 5228 06ef 6C63685F .string "lch_cnt" @@ -6538,7 +6538,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5252 50415241 5252 4D5F454E 5252 41424C45 - BFIN GAS /tmp/ccX1sGjp.s page 110 + BFIN GAS /tmp/ccJMNzjk.s page 110 5253 .LASF67: @@ -6598,7 +6598,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5274 7420756E 5274 7369676E 5274 65642069 - BFIN GAS /tmp/ccX1sGjp.s page 111 + BFIN GAS /tmp/ccJMNzjk.s page 111 5274 6E7400 @@ -6658,7 +6658,7 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5296 0938 745F6C35 .string "t_l502_bf_cmd" 5296 30325F62 5296 665F636D - BFIN GAS /tmp/ccX1sGjp.s page 112 + BFIN GAS /tmp/ccJMNzjk.s page 112 5296 6400 @@ -6680,31 +6680,31 @@ BFIN GAS /tmp/ccX1sGjp.s page 1 5302 4D5F494E 5302 5F425546 5303 .ident "GCC: (ADI-2014R1-RC2) 4.3.5" - BFIN GAS /tmp/ccX1sGjp.s page 113 + BFIN GAS /tmp/ccJMNzjk.s page 113 DEFINED SYMBOLS *ABS*:0000000000000000 src/l502_cmd.c - /tmp/ccX1sGjp.s:13 .text:0000000000000000 _l502_cmd_set_req + /tmp/ccJMNzjk.s:13 .text:0000000000000000 _l502_cmd_set_req .bss:0000000000000000 _f_cmd_req - /tmp/ccX1sGjp.s:39 .text:0000000000000028 _l502_cmd_done - /tmp/ccX1sGjp.s:83 .text:0000000000000064 _f_cmd_set_param - /tmp/ccX1sGjp.s:1735 .rodata:0000000000000288 _f_regaddr_k - /tmp/ccX1sGjp.s:1745 .rodata:00000000000002a0 _f_regaddr_offs - /tmp/ccX1sGjp.s:401 .text:00000000000001e4 _f_cmd_get_out_status - /tmp/ccX1sGjp.s:451 .text:0000000000000224 _f_cmd_fpga_reg_rd - /tmp/ccX1sGjp.s:516 .text:000000000000027c _f_cmd_fpga_reg_wr - /tmp/ccX1sGjp.s:579 .text:00000000000002d0 _f_cmd_async_out - /tmp/ccX1sGjp.s:677 .text:0000000000000350 _f_cmd_stream_disable - /tmp/ccX1sGjp.s:710 .text:000000000000037c _f_cmd_stream_enable - /tmp/ccX1sGjp.s:743 .text:00000000000003a8 _f_cmd_preload - /tmp/ccX1sGjp.s:773 .text:00000000000003d0 _f_cmd_stream_stop - /tmp/ccX1sGjp.s:803 .text:00000000000003f8 _f_cmd_streams_start - /tmp/ccX1sGjp.s:833 .text:0000000000000420 _f_cmd_config - /tmp/ccX1sGjp.s:863 .text:0000000000000448 _f_cmd_get_param - /tmp/ccX1sGjp.s:1249 .text:00000000000005f8 _l502_cmd_start - /tmp/ccX1sGjp.s:1705 .rodata:0000000000000220 _f_cmd_tbl - /tmp/ccX1sGjp.s:1473 .text:0000000000000740 _l502_cmd_check_req + /tmp/ccJMNzjk.s:39 .text:0000000000000028 _l502_cmd_done + /tmp/ccJMNzjk.s:83 .text:0000000000000064 _f_cmd_set_param + /tmp/ccJMNzjk.s:1735 .rodata:0000000000000288 _f_regaddr_k + /tmp/ccJMNzjk.s:1745 .rodata:00000000000002a0 _f_regaddr_offs + /tmp/ccJMNzjk.s:401 .text:00000000000001e4 _f_cmd_get_out_status + /tmp/ccJMNzjk.s:451 .text:0000000000000224 _f_cmd_fpga_reg_rd + /tmp/ccJMNzjk.s:516 .text:000000000000027c _f_cmd_fpga_reg_wr + /tmp/ccJMNzjk.s:579 .text:00000000000002d0 _f_cmd_async_out + /tmp/ccJMNzjk.s:677 .text:0000000000000350 _f_cmd_stream_disable + /tmp/ccJMNzjk.s:710 .text:000000000000037c _f_cmd_stream_enable + /tmp/ccJMNzjk.s:743 .text:00000000000003a8 _f_cmd_preload + /tmp/ccJMNzjk.s:773 .text:00000000000003d0 _f_cmd_stream_stop + /tmp/ccJMNzjk.s:803 .text:00000000000003f8 _f_cmd_streams_start + /tmp/ccJMNzjk.s:833 .text:0000000000000420 _f_cmd_config + /tmp/ccJMNzjk.s:863 .text:0000000000000448 _f_cmd_get_param + /tmp/ccJMNzjk.s:1249 .text:00000000000005f8 _l502_cmd_start + /tmp/ccJMNzjk.s:1705 .rodata:0000000000000220 _f_cmd_tbl + /tmp/ccJMNzjk.s:1473 .text:0000000000000740 _l502_cmd_check_req UNDEFINED SYMBOLS _g_state diff --git a/build/release/lst/l502_stream.lst b/build/release/lst/l502_stream.lst index 94bd0b2..7fb2835 100644 --- a/build/release/lst/l502_stream.lst +++ b/build/release/lst/l502_stream.lst @@ -1,4 +1,4 @@ -BFIN GAS /tmp/ccdxqFXK.s page 1 +BFIN GAS /tmp/ccEcEoYb.s page 1 1 .file "src/l502_stream.c"; @@ -51,414 +51,417 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 29:src/l502_stream.c **** #include "l502_user_process.h" 30:src/l502_stream.c **** 31:src/l502_stream.c **** volatile uint32_t TX_buff[TX_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); - 32:src/l502_stream.c **** //volatile uint32_t RAW_data_buff[RAW_DATA_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); - 33:src/l502_stream.c **** volatile uint32_t AVG_buff[AVG_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); - 34:src/l502_stream.c **** //volatile uint32_t FFT_buff[FFT_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); - 35:src/l502_stream.c **** - 36:src/l502_stream.c **** - 37:src/l502_stream.c **** /** Размер буфера на прием данных по SPORT0 в 32-битных слов - 38:src/l502_stream.c **** #define L502_SPORT_IN_BUF_SIZE (2048*1024) - BFIN GAS /tmp/ccdxqFXK.s page 2 + 32:src/l502_stream.c **** volatile uint32_t TX_buff_shadow[TX_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); + 33:src/l502_stream.c **** + 34:src/l502_stream.c **** //volatile uint32_t RAW_data_buff[RAW_DATA_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); + 35:src/l502_stream.c **** volatile uint32_t AVG_buff[AVG_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); + 36:src/l502_stream.c **** //volatile uint32_t AVG_buff_B[AVG_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); + 37:src/l502_stream.c **** //volatile uint32_t FFT_buff[FFT_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); + 38:src/l502_stream.c **** + BFIN GAS /tmp/ccEcEoYb.s page 2 - 39:src/l502_stream.c **** /** Размер буфера для приема данных по HostDMA на вывод в 32- - 40:src/l502_stream.c **** #define L502_HDMA_OUT_BUF_SIZE (1024*1024) - 41:src/l502_stream.c **** - 42:src/l502_stream.c **** /** Шаг прерываний для приема данных по SPORT0 по-умолчани - 43:src/l502_stream.c **** #define L502_DEFAULT_SPORT_RX_BLOCK_SIZE (32*1024) + 39:src/l502_stream.c **** + 40:src/l502_stream.c **** /** Размер буфера на прием данных по SPORT0 в 32-битных слов + 41:src/l502_stream.c **** #define L502_SPORT_IN_BUF_SIZE (2048*1024) + 42:src/l502_stream.c **** /** Размер буфера для приема данных по HostDMA на вывод в 32- + 43:src/l502_stream.c **** #define L502_HDMA_OUT_BUF_SIZE (1024*1024) 44:src/l502_stream.c **** - 45:src/l502_stream.c **** - 46:src/l502_stream.c **** + 45:src/l502_stream.c **** /** Шаг прерываний для приема данных по SPORT0 по-умолчани + 46:src/l502_stream.c **** #define L502_DEFAULT_SPORT_RX_BLOCK_SIZE (32*1024) 47:src/l502_stream.c **** - 48:src/l502_stream.c **** t_in_stream_state g_stream_in_state = IN_STREAM_STOP; - 49:src/l502_stream.c **** t_out_stream_state g_stream_out_state = OUT_STREAM_STOP; - 50:src/l502_stream.c **** /** Режим работы - определяет, запущен ли синхронный сбо - 51:src/l502_stream.c **** volatile int g_mode = L502_BF_MODE_IDLE; - 52:src/l502_stream.c **** - 53:src/l502_stream.c **** int g_streams = L502_STREAM_ADC; - 54:src/l502_stream.c **** static int f_bf_reg = 0; + 48:src/l502_stream.c **** + 49:src/l502_stream.c **** + 50:src/l502_stream.c **** + 51:src/l502_stream.c **** t_in_stream_state g_stream_in_state = IN_STREAM_STOP; + 52:src/l502_stream.c **** t_out_stream_state g_stream_out_state = OUT_STREAM_STOP; + 53:src/l502_stream.c **** /** Режим работы - определяет, запущен ли синхронный сбо + 54:src/l502_stream.c **** volatile int g_mode = L502_BF_MODE_IDLE; 55:src/l502_stream.c **** - 56:src/l502_stream.c **** /* слово, обозначающее, что произошло переполнение */ - 57:src/l502_stream.c **** static const uint32_t f_overflow_wrd = L502_STREAM_IN_MSG_OVERFLOW; + 56:src/l502_stream.c **** int g_streams = L502_STREAM_ADC; + 57:src/l502_stream.c **** static int f_bf_reg = 0; 58:src/l502_stream.c **** - 59:src/l502_stream.c **** - 60:src/l502_stream.c **** - 61:src/l502_stream.c **** /* буфер для приема digin и данных АЦП от SPORT (в неинициали - 62:src/l502_stream.c **** #include "l502_sdram_noinit.h" - 63:src/l502_stream.c **** static volatile uint32_t f_sport_in_buf[L502_SPORT_IN_BUF_SIZE]; - 64:src/l502_stream.c **** /* позиция в буфере в которую будет записан следующий п - 65:src/l502_stream.c **** static volatile uint32_t f_sport_in_put_pos = 0; - 66:src/l502_stream.c **** /* позиция в буфере за последним обработанным отсчетом - 67:src/l502_stream.c **** static uint32_t f_sport_in_proc_pos = 0; - 68:src/l502_stream.c **** /* позиция в буфере за последним изятым из буфера отсче - 69:src/l502_stream.c **** static volatile uint32_t f_sport_in_get_pos = 0; - 70:src/l502_stream.c **** /* шаг прерываний на прием по SPORT0 */ - 71:src/l502_stream.c **** static uint32_t f_sport_in_block_size = L502_DEFAULT_SPORT_RX_BLOCK_SIZE; - 72:src/l502_stream.c **** /* реально используемый размер входного буфера на прие - 73:src/l502_stream.c **** static uint32_t f_sport_in_buf_size = L502_SPORT_IN_BUF_SIZE; - 74:src/l502_stream.c **** - 75:src/l502_stream.c **** - 76:src/l502_stream.c **** /* буфер для прв кинятых данных по HDMA для вывода на ЦАП - 77:src/l502_stream.c **** #include "l502_sdram_noinit.h" - 78:src/l502_stream.c **** static volatile uint32_t f_hdma_out_buf[L502_HDMA_OUT_BUF_SIZE]; - 79:src/l502_stream.c **** static volatile uint32_t f_hdma_out_put_pos = 0; /* указатель на позицию за п - 80:src/l502_stream.c **** static uint32_t f_hdma_out_start_pos; /* указатель на позицию за последн - 81:src/l502_stream.c **** (с нее будет стартовать следующий - 82:src/l502_stream.c **** static volatile uint32_t f_hdma_out_get_pos = 0; /* указатель на позицию за п - 83:src/l502_stream.c **** (с нее будет взято следующее слово - 84:src/l502_stream.c **** static int f_hdma_out_block_size = 0x8000; - 85:src/l502_stream.c **** static int f_hdma_out_proc_pos; - 86:src/l502_stream.c **** - 87:src/l502_stream.c **** static uint32_t f_recv_size = 0; - 88:src/l502_stream.c **** + 59:src/l502_stream.c **** /* слово, обозначающее, что произошло переполнение */ + 60:src/l502_stream.c **** static const uint32_t f_overflow_wrd = L502_STREAM_IN_MSG_OVERFLOW; + 61:src/l502_stream.c **** + 62:src/l502_stream.c **** + 63:src/l502_stream.c **** + 64:src/l502_stream.c **** /* буфер для приема digin и данных АЦП от SPORT (в неинициали + 65:src/l502_stream.c **** #include "l502_sdram_noinit.h" + 66:src/l502_stream.c **** static volatile uint32_t f_sport_in_buf[L502_SPORT_IN_BUF_SIZE]; + 67:src/l502_stream.c **** /* позиция в буфере в которую будет записан следующий п + 68:src/l502_stream.c **** static volatile uint32_t f_sport_in_put_pos = 0; + 69:src/l502_stream.c **** /* позиция в буфере за последним обработанным отсчетом + 70:src/l502_stream.c **** static uint32_t f_sport_in_proc_pos = 0; + 71:src/l502_stream.c **** /* позиция в буфере за последним изятым из буфера отсче + 72:src/l502_stream.c **** static volatile uint32_t f_sport_in_get_pos = 0; + 73:src/l502_stream.c **** /* шаг прерываний на прием по SPORT0 */ + 74:src/l502_stream.c **** static uint32_t f_sport_in_block_size = L502_DEFAULT_SPORT_RX_BLOCK_SIZE; + 75:src/l502_stream.c **** /* реально используемый размер входного буфера на прие + 76:src/l502_stream.c **** static uint32_t f_sport_in_buf_size = L502_SPORT_IN_BUF_SIZE; + 77:src/l502_stream.c **** + 78:src/l502_stream.c **** + 79:src/l502_stream.c **** /* буфер для прв кинятых данных по HDMA для вывода на ЦАП + 80:src/l502_stream.c **** #include "l502_sdram_noinit.h" + 81:src/l502_stream.c **** static volatile uint32_t f_hdma_out_buf[L502_HDMA_OUT_BUF_SIZE]; + 82:src/l502_stream.c **** static volatile uint32_t f_hdma_out_put_pos = 0; /* указатель на позицию за п + 83:src/l502_stream.c **** static uint32_t f_hdma_out_start_pos; /* указатель на позицию за последн + 84:src/l502_stream.c **** (с нее будет стартовать следующий + 85:src/l502_stream.c **** static volatile uint32_t f_hdma_out_get_pos = 0; /* указатель на позицию за п + 86:src/l502_stream.c **** (с нее будет взято следующее слово + 87:src/l502_stream.c **** static int f_hdma_out_block_size = 0x8000; + 88:src/l502_stream.c **** static int f_hdma_out_proc_pos; 89:src/l502_stream.c **** - 90:src/l502_stream.c **** + 90:src/l502_stream.c **** static uint32_t f_recv_size = 0; 91:src/l502_stream.c **** 92:src/l502_stream.c **** 93:src/l502_stream.c **** 94:src/l502_stream.c **** - 95:src/l502_stream.c **** /* функция вызывается при возникновении переполнения - BFIN GAS /tmp/ccdxqFXK.s page 3 + 95:src/l502_stream.c **** + BFIN GAS /tmp/ccEcEoYb.s page 3 - 96:src/l502_stream.c **** по SPORT'у данных АЦП/DIGIN */ - 97:src/l502_stream.c **** static void f_stream_in_set_overflow(void) { - 98:src/l502_stream.c **** /* останавливаем прием данных от АЦП */ - 99:src/l502_stream.c **** sport_rx_stop(); - 100:src/l502_stream.c **** /* устанавливаем флаг, что нужно передать сообщение - 101:src/l502_stream.c **** переполнении */ - 102:src/l502_stream.c **** g_stream_in_state = IN_STREAM_OV_ALERT; - 103:src/l502_stream.c **** } - 104:src/l502_stream.c **** - 105:src/l502_stream.c **** - 106:src/l502_stream.c **** - 107:src/l502_stream.c **** /** @brief Начальная инициализация параметров для синхрон - 108:src/l502_stream.c **** void l502_stream_init(void) { - 109:src/l502_stream.c **** /* останавливаем сбор данных, если он был запущен */ - 110:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); - 111:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, 0); - 112:src/l502_stream.c **** /* настройка DMA на передачу по SPORT */ - 113:src/l502_stream.c **** sport_tx_init(); - 114:src/l502_stream.c **** } - 115:src/l502_stream.c **** - 116:src/l502_stream.c **** - 117:src/l502_stream.c **** /** @brief Запуск предзагрузки данных на вывода + 96:src/l502_stream.c **** + 97:src/l502_stream.c **** + 98:src/l502_stream.c **** /* функция вызывается при возникновении переполнения + 99:src/l502_stream.c **** по SPORT'у данных АЦП/DIGIN */ + 100:src/l502_stream.c **** static void f_stream_in_set_overflow(void) { + 101:src/l502_stream.c **** /* останавливаем прием данных от АЦП */ + 102:src/l502_stream.c **** sport_rx_stop(); + 103:src/l502_stream.c **** /* устанавливаем флаг, что нужно передать сообщение + 104:src/l502_stream.c **** переполнении */ + 105:src/l502_stream.c **** g_stream_in_state = IN_STREAM_OV_ALERT; + 106:src/l502_stream.c **** } + 107:src/l502_stream.c **** + 108:src/l502_stream.c **** + 109:src/l502_stream.c **** + 110:src/l502_stream.c **** /** @brief Начальная инициализация параметров для синхрон + 111:src/l502_stream.c **** void l502_stream_init(void) { + 112:src/l502_stream.c **** /* останавливаем сбор данных, если он был запущен */ + 113:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); + 114:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, 0); + 115:src/l502_stream.c **** /* настройка DMA на передачу по SPORT */ + 116:src/l502_stream.c **** sport_tx_init(); + 117:src/l502_stream.c **** } 118:src/l502_stream.c **** - 119:src/l502_stream.c **** Данная функция запускает предзагрузку данных поток - 120:src/l502_stream.c **** Используется, чтобы загрузить данные в буфер BlackFin до - 121:src/l502_stream.c **** ввода-вывода. - 122:src/l502_stream.c **** @return Код ошибки */ - 123:src/l502_stream.c **** int32_t stream_out_preload(void) { - 124:src/l502_stream.c **** int32_t err = g_stream_out_state==OUT_STREAM_RUN ? L502_BF_ERR_STREAM_RUNNING : - 125:src/l502_stream.c **** 0; - 126:src/l502_stream.c **** if (!err) { - 127:src/l502_stream.c **** f_hdma_out_get_pos = f_hdma_out_start_pos = - 128:src/l502_stream.c **** f_hdma_out_put_pos = f_hdma_out_proc_pos = 0; - 129:src/l502_stream.c **** - 130:src/l502_stream.c **** /* разрешаем прием по HDMA */ - 131:src/l502_stream.c **** hdma_recv_start(); - 132:src/l502_stream.c **** /* запускаем первый блок на прием (остальные будут - 133:src/l502_stream.c **** добавлены из stream_proc() */ - 134:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; - 135:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)f_hdma_out_buf, f_hdma_out_block_size); - 136:src/l502_stream.c **** - 137:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_PRELOAD; - 138:src/l502_stream.c **** } - 139:src/l502_stream.c **** return err; - 140:src/l502_stream.c **** } - 141:src/l502_stream.c **** - 142:src/l502_stream.c **** - 143:src/l502_stream.c **** static void f_set_streams(uint32_t streams) { - 144:src/l502_stream.c **** uint32_t wrd_en = 0; + 119:src/l502_stream.c **** + 120:src/l502_stream.c **** /** @brief Запуск предзагрузки данных на вывода + 121:src/l502_stream.c **** + 122:src/l502_stream.c **** Данная функция запускает предзагрузку данных поток + 123:src/l502_stream.c **** Используется, чтобы загрузить данные в буфер BlackFin до + 124:src/l502_stream.c **** ввода-вывода. + 125:src/l502_stream.c **** @return Код ошибки */ + 126:src/l502_stream.c **** int32_t stream_out_preload(void) { + 127:src/l502_stream.c **** int32_t err = g_stream_out_state==OUT_STREAM_RUN ? L502_BF_ERR_STREAM_RUNNING : + 128:src/l502_stream.c **** 0; + 129:src/l502_stream.c **** if (!err) { + 130:src/l502_stream.c **** f_hdma_out_get_pos = f_hdma_out_start_pos = + 131:src/l502_stream.c **** f_hdma_out_put_pos = f_hdma_out_proc_pos = 0; + 132:src/l502_stream.c **** + 133:src/l502_stream.c **** /* разрешаем прием по HDMA */ + 134:src/l502_stream.c **** hdma_recv_start(); + 135:src/l502_stream.c **** /* запускаем первый блок на прием (остальные будут + 136:src/l502_stream.c **** добавлены из stream_proc() */ + 137:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; + 138:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)f_hdma_out_buf, f_hdma_out_block_size); + 139:src/l502_stream.c **** + 140:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_PRELOAD; + 141:src/l502_stream.c **** } + 142:src/l502_stream.c **** return err; + 143:src/l502_stream.c **** } + 144:src/l502_stream.c **** 145:src/l502_stream.c **** - 146:src/l502_stream.c **** /* если уже запущен потоковый режим и разрешается од - 147:src/l502_stream.c **** потоков на ввод, то инициализируем прием по SPORT и п - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 149:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { - 150:src/l502_stream.c **** sport_rx_start(); - 151:src/l502_stream.c **** } - 152:src/l502_stream.c **** - BFIN GAS /tmp/ccdxqFXK.s page 4 + 146:src/l502_stream.c **** static void f_set_streams(uint32_t streams) { + 147:src/l502_stream.c **** uint32_t wrd_en = 0; + 148:src/l502_stream.c **** + 149:src/l502_stream.c **** /* если уже запущен потоковый режим и разрешается од + 150:src/l502_stream.c **** потоков на ввод, то инициализируем прием по SPORT и п + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 152:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { + BFIN GAS /tmp/ccEcEoYb.s page 4 - 153:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { - 154:src/l502_stream.c **** sport_rx_stop(); - 155:src/l502_stream.c **** } - 156:src/l502_stream.c **** } - 157:src/l502_stream.c **** - 158:src/l502_stream.c **** /* изменяем разрешенные потоки в регистре FPGA */ - 159:src/l502_stream.c **** if (streams & L502_STREAM_ADC) - 160:src/l502_stream.c **** wrd_en |= 0x1; - 161:src/l502_stream.c **** if (streams & L502_STREAM_DIN) - 162:src/l502_stream.c **** wrd_en |= 0x2; - 163:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); - 164:src/l502_stream.c **** - 165:src/l502_stream.c **** - 166:src/l502_stream.c **** /** @todo: разрешение на лету выходных потоков */ + 153:src/l502_stream.c **** sport_rx_start(); + 154:src/l502_stream.c **** } + 155:src/l502_stream.c **** + 156:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { + 157:src/l502_stream.c **** sport_rx_stop(); + 158:src/l502_stream.c **** } + 159:src/l502_stream.c **** } + 160:src/l502_stream.c **** + 161:src/l502_stream.c **** /* изменяем разрешенные потоки в регистре FPGA */ + 162:src/l502_stream.c **** if (streams & L502_STREAM_ADC) + 163:src/l502_stream.c **** wrd_en |= 0x1; + 164:src/l502_stream.c **** if (streams & L502_STREAM_DIN) + 165:src/l502_stream.c **** wrd_en |= 0x2; + 166:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); 167:src/l502_stream.c **** - 168:src/l502_stream.c **** g_streams = streams; - 169:src/l502_stream.c **** } + 168:src/l502_stream.c **** + 169:src/l502_stream.c **** /** @todo: разрешение на лету выходных потоков */ 170:src/l502_stream.c **** - 171:src/l502_stream.c **** /** @brief Разрешение указанных синхронных потоков - 172:src/l502_stream.c **** @param[in] streams Битовая маска из #t_l502_streams, указывающая к - 173:src/l502_stream.c **** должны быть разрешены (в дополнения к уж - 174:src/l502_stream.c **** @return Код ошибки */ - 175:src/l502_stream.c **** int32_t stream_enable(uint32_t streams) { - 176:src/l502_stream.c **** f_set_streams(g_streams | streams); - 177:src/l502_stream.c **** return 0; - 178:src/l502_stream.c **** } - 179:src/l502_stream.c **** - 180:src/l502_stream.c **** - 181:src/l502_stream.c **** /** @brief Запрещение указанных синхронных потоков - 182:src/l502_stream.c **** @param[in] streams Битовая маска из #t_l502_streams, указывающая к - 183:src/l502_stream.c **** должны быть запрещены - 184:src/l502_stream.c **** @return Код ошибки */ - 185:src/l502_stream.c **** int32_t stream_disable(uint32_t streams) { - 186:src/l502_stream.c **** f_set_streams(g_streams & ~streams); - 187:src/l502_stream.c **** return 0; - 188:src/l502_stream.c **** } - 189:src/l502_stream.c **** - 190:src/l502_stream.c **** /***************************************************************************//** - 191:src/l502_stream.c **** @brief Запуск синхронного ввода-вывода + 171:src/l502_stream.c **** g_streams = streams; + 172:src/l502_stream.c **** } + 173:src/l502_stream.c **** + 174:src/l502_stream.c **** /** @brief Разрешение указанных синхронных потоков + 175:src/l502_stream.c **** @param[in] streams Битовая маска из #t_l502_streams, указывающая к + 176:src/l502_stream.c **** должны быть разрешены (в дополнения к уж + 177:src/l502_stream.c **** @return Код ошибки */ + 178:src/l502_stream.c **** int32_t stream_enable(uint32_t streams) { + 179:src/l502_stream.c **** f_set_streams(g_streams | streams); + 180:src/l502_stream.c **** return 0; + 181:src/l502_stream.c **** } + 182:src/l502_stream.c **** + 183:src/l502_stream.c **** + 184:src/l502_stream.c **** /** @brief Запрещение указанных синхронных потоков + 185:src/l502_stream.c **** @param[in] streams Битовая маска из #t_l502_streams, указывающая к + 186:src/l502_stream.c **** должны быть запрещены + 187:src/l502_stream.c **** @return Код ошибки */ + 188:src/l502_stream.c **** int32_t stream_disable(uint32_t streams) { + 189:src/l502_stream.c **** f_set_streams(g_streams & ~streams); + 190:src/l502_stream.c **** return 0; + 191:src/l502_stream.c **** } 192:src/l502_stream.c **** - 193:src/l502_stream.c **** Функция запускает синхронный ввод-вывод платы. - 194:src/l502_stream.c **** При этом начинается передача по всем ранее разрешен - 195:src/l502_stream.c **** stream_enable(). - 196:src/l502_stream.c **** После вызова этой функции изменять настройки модул - 197:src/l502_stream.c **** можно дополнительно разрешать или запрещать потоки - 198:src/l502_stream.c **** или stream_disable(). - 199:src/l502_stream.c **** - 200:src/l502_stream.c **** @return Код ошибки. - 201:src/l502_stream.c **** ***************************************************************************/ - 202:src/l502_stream.c **** int32_t streams_start(void) { - 203:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; - 204:src/l502_stream.c **** if (!err) { - 205:src/l502_stream.c **** /* прием по SPORT инициализируется всесте с началом з - 206:src/l502_stream.c **** синхронного сбора */ - 207:src/l502_stream.c **** f_sport_in_put_pos = f_sport_in_get_pos = f_sport_in_proc_pos = 0; - 208:src/l502_stream.c **** - 209:src/l502_stream.c **** - BFIN GAS /tmp/ccdxqFXK.s page 5 + 193:src/l502_stream.c **** /***************************************************************************//** + 194:src/l502_stream.c **** @brief Запуск синхронного ввода-вывода + 195:src/l502_stream.c **** + 196:src/l502_stream.c **** Функция запускает синхронный ввод-вывод платы. + 197:src/l502_stream.c **** При этом начинается передача по всем ранее разрешен + 198:src/l502_stream.c **** stream_enable(). + 199:src/l502_stream.c **** После вызова этой функции изменять настройки модул + 200:src/l502_stream.c **** можно дополнительно разрешать или запрещать потоки + 201:src/l502_stream.c **** или stream_disable(). + 202:src/l502_stream.c **** + 203:src/l502_stream.c **** @return Код ошибки. + 204:src/l502_stream.c **** ***************************************************************************/ + 205:src/l502_stream.c **** int32_t streams_start(void) { + 206:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; + 207:src/l502_stream.c **** if (!err) { + 208:src/l502_stream.c **** /* прием по SPORT инициализируется всесте с началом з + 209:src/l502_stream.c **** синхронного сбора */ + BFIN GAS /tmp/ccEcEoYb.s page 5 - 210:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_IN) { - 211:src/l502_stream.c **** sport_rx_start(); - 212:src/l502_stream.c **** g_stream_in_state = IN_STREAM_RUN; - 213:src/l502_stream.c **** } - 214:src/l502_stream.c **** - 215:src/l502_stream.c **** hdma_send_start(); - 216:src/l502_stream.c **** - 217:src/l502_stream.c **** f_set_streams(g_streams); - 218:src/l502_stream.c **** - 219:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_OUT) { - 220:src/l502_stream.c **** /* разрешаем ПЛИС генерацию TFS по SPORT */ - 221:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_TFS_EN_Msk; - 222:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 223:src/l502_stream.c **** - 224:src/l502_stream.c **** - 225:src/l502_stream.c **** /* если не было предзагрузки до запуска, - 226:src/l502_stream.c **** то запускаем прием сейчас */ - 227:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_STOP) || - 228:src/l502_stream.c **** (g_stream_out_state == OUT_STREAM_ERR)) { - 229:src/l502_stream.c **** stream_out_preload(); - 230:src/l502_stream.c **** } - 231:src/l502_stream.c **** - 232:src/l502_stream.c **** if (g_stream_out_state == OUT_STREAM_PRELOAD) { - 233:src/l502_stream.c **** /* выполняем предзагрузку данных */ - 234:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg | 1); - 235:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_RUN; - 236:src/l502_stream.c **** } - 237:src/l502_stream.c **** } - 238:src/l502_stream.c **** - 239:src/l502_stream.c **** - 240:src/l502_stream.c **** - 241:src/l502_stream.c **** /* Так как конвейер автомата управления входной ко - 242:src/l502_stream.c **** из 2-х стадий, для корректного синхронного старт - 243:src/l502_stream.c **** ыполнить два раза предзагрузку. В противном слу - 244:src/l502_stream.c **** время момента первого отсчета может не совпада - 245:src/l502_stream.c **** запуска синхронизации - 246:src/l502_stream.c **** */ - 247:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); - 248:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); - 249:src/l502_stream.c **** - 250:src/l502_stream.c **** - 251:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 1); + 210:src/l502_stream.c **** f_sport_in_put_pos = f_sport_in_get_pos = f_sport_in_proc_pos = 0; + 211:src/l502_stream.c **** + 212:src/l502_stream.c **** + 213:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_IN) { + 214:src/l502_stream.c **** sport_rx_start(); + 215:src/l502_stream.c **** g_stream_in_state = IN_STREAM_RUN; + 216:src/l502_stream.c **** } + 217:src/l502_stream.c **** + 218:src/l502_stream.c **** hdma_send_start(); + 219:src/l502_stream.c **** + 220:src/l502_stream.c **** f_set_streams(g_streams); + 221:src/l502_stream.c **** + 222:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_OUT) { + 223:src/l502_stream.c **** /* разрешаем ПЛИС генерацию TFS по SPORT */ + 224:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_TFS_EN_Msk; + 225:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 226:src/l502_stream.c **** + 227:src/l502_stream.c **** + 228:src/l502_stream.c **** /* если не было предзагрузки до запуска, + 229:src/l502_stream.c **** то запускаем прием сейчас */ + 230:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_STOP) || + 231:src/l502_stream.c **** (g_stream_out_state == OUT_STREAM_ERR)) { + 232:src/l502_stream.c **** stream_out_preload(); + 233:src/l502_stream.c **** } + 234:src/l502_stream.c **** + 235:src/l502_stream.c **** if (g_stream_out_state == OUT_STREAM_PRELOAD) { + 236:src/l502_stream.c **** /* выполняем предзагрузку данных */ + 237:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg | 1); + 238:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_RUN; + 239:src/l502_stream.c **** } + 240:src/l502_stream.c **** } + 241:src/l502_stream.c **** + 242:src/l502_stream.c **** + 243:src/l502_stream.c **** + 244:src/l502_stream.c **** /* Так как конвейер автомата управления входной ко + 245:src/l502_stream.c **** из 2-х стадий, для корректного синхронного старт + 246:src/l502_stream.c **** ыполнить два раза предзагрузку. В противном слу + 247:src/l502_stream.c **** время момента первого отсчета может не совпада + 248:src/l502_stream.c **** запуска синхронизации + 249:src/l502_stream.c **** */ + 250:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); + 251:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); 252:src/l502_stream.c **** - 253:src/l502_stream.c **** g_mode = L502_BF_MODE_STREAM; - 254:src/l502_stream.c **** } - 255:src/l502_stream.c **** return err; - 256:src/l502_stream.c **** } - 257:src/l502_stream.c **** - 258:src/l502_stream.c **** - 259:src/l502_stream.c **** + 253:src/l502_stream.c **** + 254:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 1); + 255:src/l502_stream.c **** + 256:src/l502_stream.c **** g_mode = L502_BF_MODE_STREAM; + 257:src/l502_stream.c **** } + 258:src/l502_stream.c **** return err; + 259:src/l502_stream.c **** } 260:src/l502_stream.c **** - 261:src/l502_stream.c **** /** @brief Останов синхронных потоков ввода-вывода. + 261:src/l502_stream.c **** 262:src/l502_stream.c **** - 263:src/l502_stream.c **** По этой функции останавливаются все синхронные пот - 264:src/l502_stream.c **** Запрещается передача потоков по SPORT и по HostDMA + 263:src/l502_stream.c **** + 264:src/l502_stream.c **** /** @brief Останов синхронных потоков ввода-вывода. 265:src/l502_stream.c **** - 266:src/l502_stream.c **** @return Код ошибки */ - BFIN GAS /tmp/ccdxqFXK.s page 6 + 266:src/l502_stream.c **** По этой функции останавливаются все синхронные пот + BFIN GAS /tmp/ccEcEoYb.s page 6 - 267:src/l502_stream.c **** int32_t streams_stop(void) { - 268:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; - 269:src/l502_stream.c **** if (!err) { - 270:src/l502_stream.c **** hdma_send_stop(); - 271:src/l502_stream.c **** hdma_recv_stop(); - 272:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); - 273:src/l502_stream.c **** - 274:src/l502_stream.c **** /* запрещаем прием и передачу по SPORT'у */ - 275:src/l502_stream.c **** sport_rx_stop(); - 276:src/l502_stream.c **** sport_tx_stop(); - 277:src/l502_stream.c **** - 278:src/l502_stream.c **** /* запрещаем генерацию TFS и RFS */ - 279:src/l502_stream.c **** f_bf_reg = 0; - 280:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 281:src/l502_stream.c **** - 282:src/l502_stream.c **** - 283:src/l502_stream.c **** g_mode = L502_BF_MODE_IDLE; - 284:src/l502_stream.c **** g_stream_in_state = IN_STREAM_STOP; - 285:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; - 286:src/l502_stream.c **** } - 287:src/l502_stream.c **** return err; - 288:src/l502_stream.c **** } - 289:src/l502_stream.c **** - 290:src/l502_stream.c **** - 291:src/l502_stream.c **** - 292:src/l502_stream.c **** /** @brief Фоновая обработка потокой ввода-вывода + 267:src/l502_stream.c **** Запрещается передача потоков по SPORT и по HostDMA + 268:src/l502_stream.c **** + 269:src/l502_stream.c **** @return Код ошибки */ + 270:src/l502_stream.c **** int32_t streams_stop(void) { + 271:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; + 272:src/l502_stream.c **** if (!err) { + 273:src/l502_stream.c **** hdma_send_stop(); + 274:src/l502_stream.c **** hdma_recv_stop(); + 275:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); + 276:src/l502_stream.c **** + 277:src/l502_stream.c **** /* запрещаем прием и передачу по SPORT'у */ + 278:src/l502_stream.c **** sport_rx_stop(); + 279:src/l502_stream.c **** sport_tx_stop(); + 280:src/l502_stream.c **** + 281:src/l502_stream.c **** /* запрещаем генерацию TFS и RFS */ + 282:src/l502_stream.c **** f_bf_reg = 0; + 283:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 284:src/l502_stream.c **** + 285:src/l502_stream.c **** + 286:src/l502_stream.c **** g_mode = L502_BF_MODE_IDLE; + 287:src/l502_stream.c **** g_stream_in_state = IN_STREAM_STOP; + 288:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; + 289:src/l502_stream.c **** } + 290:src/l502_stream.c **** return err; + 291:src/l502_stream.c **** } + 292:src/l502_stream.c **** 293:src/l502_stream.c **** - 294:src/l502_stream.c **** Функция переодически вызывается из основного цикла - 295:src/l502_stream.c **** При рабочем режиме, проверяются, есть - 296:src/l502_stream.c **** ли необработанные данные пришедшие от АЦП/DIGIN и/или п - 297:src/l502_stream.c **** на ЦАП или DOUT. При их наличии вызывается соответству - 298:src/l502_stream.c **** обработки данных. - 299:src/l502_stream.c **** Также, если было переполнение и все данные до перепо - 300:src/l502_stream.c **** то в ПК посылается слово о том, что в этом месте произ - 301:src/l502_stream.c **** void stream_proc(void) { - 302:src/l502_stream.c **** /* если запущен поток ввода */ - 303:src/l502_stream.c **** if ((g_stream_in_state != IN_STREAM_STOP) && (g_stream_in_state != IN_STREAM_ERR)) { - 304:src/l502_stream.c **** uint32_t sport_rdy_size; - 305:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; - 306:src/l502_stream.c **** - 307:src/l502_stream.c **** /* смотрим, сколько принято необработанных данных - 308:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? - 309:src/l502_stream.c **** put_pos - f_sport_in_proc_pos : f_sport_in_buf_size - f_sport_in_proc_pos; - 310:src/l502_stream.c **** /* если есть необработанные данные - вызываем функ - 311:src/l502_stream.c **** if (sport_rdy_size) { - 312:src/l502_stream.c **** uint32_t processed = usr_in_proc_data( - 313:src/l502_stream.c **** (uint32_t*)&f_sport_in_buf[f_sport_in_proc_pos], - 314:src/l502_stream.c **** sport_rdy_size); - 315:src/l502_stream.c **** /* обновляем счетчик обработканных данных */ - 316:src/l502_stream.c **** f_sport_in_proc_pos += processed; - 317:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) - 318:src/l502_stream.c **** f_sport_in_proc_pos = 0; - 319:src/l502_stream.c **** } - 320:src/l502_stream.c **** - 321:src/l502_stream.c **** /* если было переполнение - нужно передать слово о - 322:src/l502_stream.c **** передаем его после того, как передадим все слов - 323:src/l502_stream.c **** if ((g_stream_in_state == IN_STREAM_OV_ALERT) && !sport_rdy_size && hdma_send_req_rdy()) { - BFIN GAS /tmp/ccdxqFXK.s page 7 + 294:src/l502_stream.c **** + 295:src/l502_stream.c **** /** @brief Фоновая обработка потокой ввода-вывода + 296:src/l502_stream.c **** + 297:src/l502_stream.c **** Функция переодически вызывается из основного цикла + 298:src/l502_stream.c **** При рабочем режиме, проверяются, есть + 299:src/l502_stream.c **** ли необработанные данные пришедшие от АЦП/DIGIN и/или п + 300:src/l502_stream.c **** на ЦАП или DOUT. При их наличии вызывается соответству + 301:src/l502_stream.c **** обработки данных. + 302:src/l502_stream.c **** Также, если было переполнение и все данные до перепо + 303:src/l502_stream.c **** то в ПК посылается слово о том, что в этом месте произ + 304:src/l502_stream.c **** void stream_proc(void) { + 305:src/l502_stream.c **** /* если запущен поток ввода */ + 306:src/l502_stream.c **** if ((g_stream_in_state != IN_STREAM_STOP) && (g_stream_in_state != IN_STREAM_ERR)) { + 307:src/l502_stream.c **** uint32_t sport_rdy_size; + 308:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; + 309:src/l502_stream.c **** + 310:src/l502_stream.c **** /* смотрим, сколько принято необработанных данных + 311:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? + 312:src/l502_stream.c **** put_pos - f_sport_in_proc_pos : f_sport_in_buf_size - f_sport_in_proc_pos; + 313:src/l502_stream.c **** /* если есть необработанные данные - вызываем функ + 314:src/l502_stream.c **** if (sport_rdy_size) { + 315:src/l502_stream.c **** uint32_t processed = usr_in_proc_data( + 316:src/l502_stream.c **** (uint32_t*)&f_sport_in_buf[f_sport_in_proc_pos], + 317:src/l502_stream.c **** sport_rdy_size); + 318:src/l502_stream.c **** /* обновляем счетчик обработканных данных */ + 319:src/l502_stream.c **** f_sport_in_proc_pos += processed; + 320:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) + 321:src/l502_stream.c **** f_sport_in_proc_pos = 0; + 322:src/l502_stream.c **** } + 323:src/l502_stream.c **** + BFIN GAS /tmp/ccEcEoYb.s page 7 - 324:src/l502_stream.c **** hdma_send_req_start(&f_overflow_wrd, 1, 1); - 325:src/l502_stream.c **** g_stream_in_state = IN_STREAM_ERR; - 326:src/l502_stream.c **** } - 327:src/l502_stream.c **** } - 328:src/l502_stream.c **** - 329:src/l502_stream.c **** /* если есть поток на вывод */ - 330:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_PRELOAD) || - 331:src/l502_stream.c **** (g_stream_out_state == OUT_STREAM_RUN)) { - 332:src/l502_stream.c **** - 333:src/l502_stream.c **** uint32_t hdma_rdy_size; - 334:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; + 324:src/l502_stream.c **** /* если было переполнение - нужно передать слово о + 325:src/l502_stream.c **** передаем его после того, как передадим все слов + 326:src/l502_stream.c **** if ((g_stream_in_state == IN_STREAM_OV_ALERT) && !sport_rdy_size && hdma_send_req_rdy()) { + 327:src/l502_stream.c **** hdma_send_req_start(&f_overflow_wrd, 1, 1); + 328:src/l502_stream.c **** g_stream_in_state = IN_STREAM_ERR; + 329:src/l502_stream.c **** } + 330:src/l502_stream.c **** } + 331:src/l502_stream.c **** + 332:src/l502_stream.c **** /* если есть поток на вывод */ + 333:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_PRELOAD) || + 334:src/l502_stream.c **** (g_stream_out_state == OUT_STREAM_RUN)) { 335:src/l502_stream.c **** - 336:src/l502_stream.c **** /* проверяем, сколько есть необработанных данных, - 337:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? - 338:src/l502_stream.c **** put_pos - f_hdma_out_proc_pos : L502_HDMA_OUT_BUF_SIZE - f_hdma_out_proc_pos; - 339:src/l502_stream.c **** - 340:src/l502_stream.c **** - 341:src/l502_stream.c **** /* если такие есть -> пробуем обработать */ - 342:src/l502_stream.c **** if (hdma_rdy_size != 0) { - 343:src/l502_stream.c **** uint32_t processed = usr_out_proc_data( - 344:src/l502_stream.c **** (uint32_t*)&f_hdma_out_buf[f_hdma_out_proc_pos], - 345:src/l502_stream.c **** hdma_rdy_size); - 346:src/l502_stream.c **** - 347:src/l502_stream.c **** /* обновляем счетчик обработанных данных */ - 348:src/l502_stream.c **** f_hdma_out_proc_pos += processed; - 349:src/l502_stream.c **** if (f_hdma_out_proc_pos==L502_HDMA_OUT_BUF_SIZE) - 350:src/l502_stream.c **** f_hdma_out_proc_pos = 0; - 351:src/l502_stream.c **** } - 352:src/l502_stream.c **** - 353:src/l502_stream.c **** - 354:src/l502_stream.c **** /* если есть свободное место в буфере на прием и ес - 355:src/l502_stream.c **** дескрипторы => ставим новый запрос на прием данн - 356:src/l502_stream.c **** if (hdma_recv_req_rdy()) { - 357:src/l502_stream.c **** uint32_t get_pos = f_hdma_out_get_pos; - 358:src/l502_stream.c **** - 359:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? - 360:src/l502_stream.c **** L502_HDMA_OUT_BUF_SIZE - f_hdma_out_start_pos + get_pos : - 361:src/l502_stream.c **** get_pos - f_hdma_out_start_pos; - 362:src/l502_stream.c **** if (hdma_rdy_size > f_hdma_out_block_size) { - 363:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)&f_hdma_out_buf[f_hdma_out_start_pos], - 364:src/l502_stream.c **** f_hdma_out_block_size); - 365:src/l502_stream.c **** - 366:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; - 367:src/l502_stream.c **** if (f_hdma_out_start_pos==L502_HDMA_OUT_BUF_SIZE) - 368:src/l502_stream.c **** f_hdma_out_start_pos = 0; - 369:src/l502_stream.c **** } - 370:src/l502_stream.c **** } - 371:src/l502_stream.c **** } - 372:src/l502_stream.c **** } - 373:src/l502_stream.c **** - 374:src/l502_stream.c **** /** @brief Освобождение size слов из буфера приема по SPORT0 - 375:src/l502_stream.c **** - 376:src/l502_stream.c **** Функция помечает, что size слов из начала той части буф - 377:src/l502_stream.c **** были приняты данные, но не освобождены, как освобожд - 378:src/l502_stream.c **** снова можно будет принимать данные со SPORT0. - 379:src/l502_stream.c **** При этом надо всегда следить, чтобы количество освоб - 380:src/l502_stream.c **** привышало количество обработанных! - BFIN GAS /tmp/ccdxqFXK.s page 8 + 336:src/l502_stream.c **** uint32_t hdma_rdy_size; + 337:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; + 338:src/l502_stream.c **** + 339:src/l502_stream.c **** /* проверяем, сколько есть необработанных данных, + 340:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? + 341:src/l502_stream.c **** put_pos - f_hdma_out_proc_pos : L502_HDMA_OUT_BUF_SIZE - f_hdma_out_proc_pos; + 342:src/l502_stream.c **** + 343:src/l502_stream.c **** + 344:src/l502_stream.c **** /* если такие есть -> пробуем обработать */ + 345:src/l502_stream.c **** if (hdma_rdy_size != 0) { + 346:src/l502_stream.c **** uint32_t processed = usr_out_proc_data( + 347:src/l502_stream.c **** (uint32_t*)&f_hdma_out_buf[f_hdma_out_proc_pos], + 348:src/l502_stream.c **** hdma_rdy_size); + 349:src/l502_stream.c **** + 350:src/l502_stream.c **** /* обновляем счетчик обработанных данных */ + 351:src/l502_stream.c **** f_hdma_out_proc_pos += processed; + 352:src/l502_stream.c **** if (f_hdma_out_proc_pos==L502_HDMA_OUT_BUF_SIZE) + 353:src/l502_stream.c **** f_hdma_out_proc_pos = 0; + 354:src/l502_stream.c **** } + 355:src/l502_stream.c **** + 356:src/l502_stream.c **** + 357:src/l502_stream.c **** /* если есть свободное место в буфере на прием и ес + 358:src/l502_stream.c **** дескрипторы => ставим новый запрос на прием данн + 359:src/l502_stream.c **** if (hdma_recv_req_rdy()) { + 360:src/l502_stream.c **** uint32_t get_pos = f_hdma_out_get_pos; + 361:src/l502_stream.c **** + 362:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? + 363:src/l502_stream.c **** L502_HDMA_OUT_BUF_SIZE - f_hdma_out_start_pos + get_pos : + 364:src/l502_stream.c **** get_pos - f_hdma_out_start_pos; + 365:src/l502_stream.c **** if (hdma_rdy_size > f_hdma_out_block_size) { + 366:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)&f_hdma_out_buf[f_hdma_out_start_pos], + 367:src/l502_stream.c **** f_hdma_out_block_size); + 368:src/l502_stream.c **** + 369:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; + 370:src/l502_stream.c **** if (f_hdma_out_start_pos==L502_HDMA_OUT_BUF_SIZE) + 371:src/l502_stream.c **** f_hdma_out_start_pos = 0; + 372:src/l502_stream.c **** } + 373:src/l502_stream.c **** } + 374:src/l502_stream.c **** } + 375:src/l502_stream.c **** } + 376:src/l502_stream.c **** + 377:src/l502_stream.c **** /** @brief Освобождение size слов из буфера приема по SPORT0 + 378:src/l502_stream.c **** + 379:src/l502_stream.c **** Функция помечает, что size слов из начала той части буф + 380:src/l502_stream.c **** были приняты данные, но не освобождены, как освобожд + BFIN GAS /tmp/ccEcEoYb.s page 8 - 381:src/l502_stream.c **** - 382:src/l502_stream.c **** @param[in] size Размер освобожденных данных в 32-битных слов - 383:src/l502_stream.c **** void stream_in_buf_free(uint32_t size) { - 16 .loc 1 383 0 + 381:src/l502_stream.c **** снова можно будет принимать данные со SPORT0. + 382:src/l502_stream.c **** При этом надо всегда следить, чтобы количество освоб + 383:src/l502_stream.c **** привышало количество обработанных! + 384:src/l502_stream.c **** + 385:src/l502_stream.c **** @param[in] size Размер освобожденных данных в 32-битных слов + 386:src/l502_stream.c **** void stream_in_buf_free(uint32_t size) { + 16 .loc 1 386 0 17 .LVL0: - 384:src/l502_stream.c **** /* обновляем позицию переданного слова */ - 385:src/l502_stream.c **** uint32_t get_pos = f_sport_in_get_pos; - 18 .loc 1 385 0 + 387:src/l502_stream.c **** /* обновляем позицию переданного слова */ + 388:src/l502_stream.c **** uint32_t get_pos = f_sport_in_get_pos; + 18 .loc 1 388 0 19 0000 49E10000 P1.H = _f_sport_in_get_pos; 20 0004 09E11000 P1.L = _f_sport_in_get_pos; 21 0008 0991 R1 = [P1]; 22 .LVL1: - 386:src/l502_stream.c **** get_pos += size; - 387:src/l502_stream.c **** if (get_pos >= f_sport_in_buf_size) - 23 .loc 1 387 0 + 389:src/l502_stream.c **** get_pos += size; + 390:src/l502_stream.c **** if (get_pos >= f_sport_in_buf_size) + 23 .loc 1 390 0 24 000a 4AE10000 P2.H = _f_sport_in_buf_size; - 386:src/l502_stream.c **** get_pos += size; - 25 .loc 1 386 0 + 389:src/l502_stream.c **** get_pos += size; + 25 .loc 1 389 0 26 000e 0850 R0 = R0 + R1; 27 .LVL2: - 28 .loc 1 387 0 + 28 .loc 1 390 0 29 0010 0AE10800 P2.L = _f_sport_in_buf_size; 30 0014 1191 R1 = [P2]; 31 0016 8809 cc =R0= L502_HDMA_OUT_BUF_SIZE) - 61 .loc 1 404 0 + 407:src/l502_stream.c **** if (get_pos >= L502_HDMA_OUT_BUF_SIZE) + 61 .loc 1 407 0 62 0034 F863 R0 = -1 (X); 63 .LVL6: 64 0036 40E10F00 R0.H = 15; - 401:src/l502_stream.c **** void stream_out_buf_free(uint32_t size) { - 65 .loc 1 401 0 + 404:src/l502_stream.c **** void stream_out_buf_free(uint32_t size) { + 65 .loc 1 404 0 66 003a 00E80000 LINK 0; 67 .LCFI1: - 68 .loc 1 404 0 + 68 .loc 1 407 0 69 003e 010A cc =R1<=R0 (iu); 70 0040 0418 if cc jump .L5; - 405:src/l502_stream.c **** get_pos -= L502_HDMA_OUT_BUF_SIZE; - 71 .loc 1 405 0 + 408:src/l502_stream.c **** get_pos -= L502_HDMA_OUT_BUF_SIZE; + 71 .loc 1 408 0 72 0042 F863 R0 = -1 (X); 73 0044 A04F R0 <<= 20; 74 0046 4150 R1 = R1 + R0; 75 .L5: - 406:src/l502_stream.c **** f_hdma_out_get_pos = get_pos; - 76 .loc 1 406 0 + 409:src/l502_stream.c **** f_hdma_out_get_pos = get_pos; + 76 .loc 1 409 0 77 0048 1193 [P2] = R1; - 407:src/l502_stream.c **** } - 78 .loc 1 407 0 + 410:src/l502_stream.c **** } + 78 .loc 1 410 0 79 004a 01E80000 UNLINK; 80 004e 1000 rts; 81 .LFE26: @@ -526,52 +529,52 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 85 .type _hdma_recv_done, STT_FUNC; 86 _hdma_recv_done: 87 .LFB27: - 408:src/l502_stream.c **** - 409:src/l502_stream.c **** /** @brief Обработка завершения приема по HostDMA - 410:src/l502_stream.c **** - 411:src/l502_stream.c **** Функция вызывается из обработчика прерывания, когд - 412:src/l502_stream.c **** блока данных по HDMA в ПК, поставленного до этого на пе - 413:src/l502_stream.c **** помощью hdma_recv_req_start(). - 414:src/l502_stream.c **** Функция просто обновляет счетчик принятых данных (а - 415:src/l502_stream.c **** из фоновой функции stream_proc(). - 416:src/l502_stream.c **** - 417:src/l502_stream.c **** @param[in] addr Адрес слова, сразу за последним принятым - 418:src/l502_stream.c **** @param[in] size Количество принятых 32-битных слов */ - 419:src/l502_stream.c **** void hdma_recv_done(uint32_t* addr, uint32_t size) { - BFIN GAS /tmp/ccdxqFXK.s page 10 + 411:src/l502_stream.c **** + 412:src/l502_stream.c **** /** @brief Обработка завершения приема по HostDMA + 413:src/l502_stream.c **** + 414:src/l502_stream.c **** Функция вызывается из обработчика прерывания, когд + 415:src/l502_stream.c **** блока данных по HDMA в ПК, поставленного до этого на пе + 416:src/l502_stream.c **** помощью hdma_recv_req_start(). + 417:src/l502_stream.c **** Функция просто обновляет счетчик принятых данных (а + 418:src/l502_stream.c **** из фоновой функции stream_proc(). + 419:src/l502_stream.c **** + BFIN GAS /tmp/ccEcEoYb.s page 10 - 88 .loc 1 419 0 + 420:src/l502_stream.c **** @param[in] addr Адрес слова, сразу за последним принятым + 421:src/l502_stream.c **** @param[in] size Количество принятых 32-битных слов */ + 422:src/l502_stream.c **** void hdma_recv_done(uint32_t* addr, uint32_t size) { + 88 .loc 1 422 0 89 .LVL7: - 420:src/l502_stream.c **** /* обновляем позицию принятого слова */ - 421:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; - 90 .loc 1 421 0 + 423:src/l502_stream.c **** /* обновляем позицию принятого слова */ + 424:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; + 90 .loc 1 424 0 91 0050 4AE10000 P2.H = _f_hdma_out_put_pos; 92 0054 0AE12000 P2.L = _f_hdma_out_put_pos; 93 0058 1091 R0 = [P2]; 94 .LVL8: - 422:src/l502_stream.c **** put_pos += size; - 95 .loc 1 422 0 + 425:src/l502_stream.c **** put_pos += size; + 95 .loc 1 425 0 96 005a 4150 R1 = R1 + R0; 97 .LVL9: - 423:src/l502_stream.c **** if (put_pos == L502_HDMA_OUT_BUF_SIZE) - 98 .loc 1 423 0 + 426:src/l502_stream.c **** if (put_pos == L502_HDMA_OUT_BUF_SIZE) + 98 .loc 1 426 0 99 005c 0860 R0 = 1 (X); 100 005e A04F R0 <<= 20; 101 0060 0108 cc =R1==R0; 102 0062 0060 R0 = 0 (X); - 419:src/l502_stream.c **** void hdma_recv_done(uint32_t* addr, uint32_t size) { - 103 .loc 1 419 0 + 422:src/l502_stream.c **** void hdma_recv_done(uint32_t* addr, uint32_t size) { + 103 .loc 1 422 0 104 0064 00E80000 LINK 0; 105 .LCFI2: - 106 .loc 1 423 0 + 106 .loc 1 426 0 107 0068 0807 if cc R1 = R0; - 424:src/l502_stream.c **** put_pos = 0; - 425:src/l502_stream.c **** f_hdma_out_put_pos = put_pos; - 108 .loc 1 425 0 + 427:src/l502_stream.c **** put_pos = 0; + 428:src/l502_stream.c **** f_hdma_out_put_pos = put_pos; + 108 .loc 1 428 0 109 006a 1193 [P2] = R1; - 426:src/l502_stream.c **** } - 110 .loc 1 426 0 + 429:src/l502_stream.c **** } + 110 .loc 1 429 0 111 006c 01E80000 UNLINK; 112 0070 1000 rts; 113 .LFE27: @@ -581,26 +584,26 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 117 .type _sport_in_buffer_size, STT_FUNC; 118 _sport_in_buffer_size: 119 .LFB28: - 427:src/l502_stream.c **** - 428:src/l502_stream.c **** - 429:src/l502_stream.c **** 430:src/l502_stream.c **** 431:src/l502_stream.c **** - 432:src/l502_stream.c **** /** @brief Размер буфера на прием. + 432:src/l502_stream.c **** 433:src/l502_stream.c **** - 434:src/l502_stream.c **** Функция возвращает размер буфера на прием по SPORT0 - 435:src/l502_stream.c **** @return размер буфера на прием в 32-битных словах */ - 436:src/l502_stream.c **** extern uint32_t sport_in_buffer_size(void) { - 120 .loc 1 436 0 + 434:src/l502_stream.c **** + 435:src/l502_stream.c **** /** @brief Размер буфера на прием. + 436:src/l502_stream.c **** + 437:src/l502_stream.c **** Функция возвращает размер буфера на прием по SPORT0 + 438:src/l502_stream.c **** @return размер буфера на прием в 32-битных словах */ + 439:src/l502_stream.c **** extern uint32_t sport_in_buffer_size(void) { + 120 .loc 1 439 0 121 0074 00E80000 LINK 0; 122 .LCFI3: - 437:src/l502_stream.c **** return L502_SPORT_IN_BUF_SIZE; - 438:src/l502_stream.c **** } - 123 .loc 1 438 0 + 440:src/l502_stream.c **** return L502_SPORT_IN_BUF_SIZE; + BFIN GAS /tmp/ccEcEoYb.s page 11 + + + 441:src/l502_stream.c **** } + 123 .loc 1 441 0 124 0078 0860 R0 = 1 (X); - BFIN GAS /tmp/ccdxqFXK.s page 11 - - 125 007a A84F R0 <<= 21; 126 007c 01E80000 UNLINK; 127 0080 1000 rts; @@ -612,78 +615,78 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 133 .type _sport_in_set_step_size, STT_FUNC; 134 _sport_in_set_step_size: 135 .LFB29: - 439:src/l502_stream.c **** - 440:src/l502_stream.c **** /** @} */ - 441:src/l502_stream.c **** 442:src/l502_stream.c **** - 443:src/l502_stream.c **** /** @addtogroup sport_rx - 444:src/l502_stream.c **** @{ */ + 443:src/l502_stream.c **** /** @} */ + 444:src/l502_stream.c **** 445:src/l502_stream.c **** - 446:src/l502_stream.c **** /** @brief Установка шага прерывания для према по SPORT0 - 447:src/l502_stream.c **** - 448:src/l502_stream.c **** Функция устанавливает шаг прерываний для DMA, исполь - 449:src/l502_stream.c **** приема данных синхронного ввода. - 450:src/l502_stream.c **** При этом размер шага должен быть как имнимум в 4 раза - 451:src/l502_stream.c **** буфера #L502_SPORT_IN_BUF_SIZE. - 452:src/l502_stream.c **** После установки шага определяется реально использу - 453:src/l502_stream.c **** как наибольшее число кратное шагу и не превышающее - 454:src/l502_stream.c **** - 455:src/l502_stream.c **** @param[in] size Размер шага прерывания в 32-битных словах - 456:src/l502_stream.c **** @return Код ошибки */ - 457:src/l502_stream.c **** int32_t sport_in_set_step_size(uint32_t size) { - 136 .loc 1 457 0 + 446:src/l502_stream.c **** /** @addtogroup sport_rx + 447:src/l502_stream.c **** @{ */ + 448:src/l502_stream.c **** + 449:src/l502_stream.c **** /** @brief Установка шага прерывания для према по SPORT0 + 450:src/l502_stream.c **** + 451:src/l502_stream.c **** Функция устанавливает шаг прерываний для DMA, исполь + 452:src/l502_stream.c **** приема данных синхронного ввода. + 453:src/l502_stream.c **** При этом размер шага должен быть как имнимум в 4 раза + 454:src/l502_stream.c **** буфера #L502_SPORT_IN_BUF_SIZE. + 455:src/l502_stream.c **** После установки шага определяется реально использу + 456:src/l502_stream.c **** как наибольшее число кратное шагу и не превышающее + 457:src/l502_stream.c **** + 458:src/l502_stream.c **** @param[in] size Размер шага прерывания в 32-битных словах + 459:src/l502_stream.c **** @return Код ошибки */ + 460:src/l502_stream.c **** int32_t sport_in_set_step_size(uint32_t size) { + 136 .loc 1 460 0 137 .LVL10: 138 0084 7805 [--sp] = ( r7:7 ); 139 140 .LCFI4: 141 0086 3830 R7 = R0; - 458:src/l502_stream.c **** int mul; - 459:src/l502_stream.c **** if ((size >= L502_SPORT_IN_BUF_SIZE/4) || (size > 0x8000)) - 142 .loc 1 459 0 + 461:src/l502_stream.c **** int mul; + 462:src/l502_stream.c **** if ((size >= L502_SPORT_IN_BUF_SIZE/4) || (size > 0x8000)) + 142 .loc 1 462 0 143 0088 80E10080 R0 = 32768 (Z); 144 .LVL11: - 457:src/l502_stream.c **** int32_t sport_in_set_step_size(uint32_t size) { - 145 .loc 1 457 0 + 460:src/l502_stream.c **** int32_t sport_in_set_step_size(uint32_t size) { + 145 .loc 1 460 0 146 008c 00E80300 LINK 12; 147 .LCFI5: - 148 .loc 1 459 0 + 148 .loc 1 462 0 149 0090 070A cc =R7<=R0 (iu); 150 0092 1A10 if !cc jump .L17; - 460:src/l502_stream.c **** return L502_BF_ERR_INVALID_CMD_PARAMS; - 461:src/l502_stream.c **** mul = L502_SPORT_IN_BUF_SIZE/size; - 151 .loc 1 461 0 + 463:src/l502_stream.c **** return L502_BF_ERR_INVALID_CMD_PARAMS; + 464:src/l502_stream.c **** mul = L502_SPORT_IN_BUF_SIZE/size; + 151 .loc 1 464 0 152 0094 0860 R0 = 1 (X); 153 0096 0F30 R1 = R7; 154 0098 A84F R0 <<= 21; + BFIN GAS /tmp/ccEcEoYb.s page 12 + + 155 009a FFE3B3FF call ___udivsi3; - 462:src/l502_stream.c **** /* не может быть боьше 0x8000 шагов, так как регистр - 463:src/l502_stream.c **** YCNT 16-разрядный (+ еще умножаем на 2) */ - BFIN GAS /tmp/ccdxqFXK.s page 12 - - - 464:src/l502_stream.c **** if (mul > 0x8000) - 465:src/l502_stream.c **** mul = 0x8000; - 466:src/l502_stream.c **** f_sport_in_buf_size = size*mul; - 156 .loc 1 466 0 + 465:src/l502_stream.c **** /* не может быть боьше 0x8000 шагов, так как регистр + 466:src/l502_stream.c **** YCNT 16-разрядный (+ еще умножаем на 2) */ + 467:src/l502_stream.c **** if (mul > 0x8000) + 468:src/l502_stream.c **** mul = 0x8000; + 469:src/l502_stream.c **** f_sport_in_buf_size = size*mul; + 156 .loc 1 469 0 157 009e 81E10080 R1 = 32768 (Z); 158 00a2 07C40140 R0 = min(R0,R1); 159 00a6 F840 R0 *= R7; 160 00a8 4AE10000 P2.H = _f_sport_in_buf_size; 161 00ac 0AE10800 P2.L = _f_sport_in_buf_size; 162 00b0 1093 [P2] = R0; - 467:src/l502_stream.c **** f_sport_in_block_size = size; - 163 .loc 1 467 0 + 470:src/l502_stream.c **** f_sport_in_block_size = size; + 163 .loc 1 470 0 164 00b2 4AE10000 P2.H = _f_sport_in_block_size; 165 00b6 0AE10400 P2.L = _f_sport_in_block_size; 166 00ba 1793 [P2] = R7; - 468:src/l502_stream.c **** return 0; - 469:src/l502_stream.c **** } - 167 .loc 1 469 0 + 471:src/l502_stream.c **** return 0; + 472:src/l502_stream.c **** } + 167 .loc 1 472 0 168 00bc 01E80000 UNLINK; - 467:src/l502_stream.c **** f_sport_in_block_size = size; - 169 .loc 1 467 0 + 470:src/l502_stream.c **** f_sport_in_block_size = size; + 169 .loc 1 470 0 170 00c0 0060 R0 = 0 (X); - 171 .loc 1 469 0 + 171 .loc 1 472 0 172 00c2 3805 ( r7:7 ) = [sp++]; 173 174 .LCFI6: @@ -692,10 +695,10 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 177 .LVL13: 178 .L17: 179 00c6 01E80000 UNLINK; - 459:src/l502_stream.c **** if ((size >= L502_SPORT_IN_BUF_SIZE/4) || (size > 0x8000)) - 180 .loc 1 459 0 + 462:src/l502_stream.c **** if ((size >= L502_SPORT_IN_BUF_SIZE/4) || (size > 0x8000)) + 180 .loc 1 462 0 181 00ca 20E1FEFD R0 = -514 (X); - 182 .loc 1 469 0 + 182 .loc 1 472 0 183 00ce 3805 ( r7:7 ) = [sp++]; 184 185 .LCFI7: @@ -708,79 +711,79 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 192 .type _sport_rx_stop, STT_FUNC; 193 _sport_rx_stop: 194 .LFB31: - 470:src/l502_stream.c **** - 471:src/l502_stream.c **** - 472:src/l502_stream.c **** /** @brief Запуск сбора данных по SPORT0 473:src/l502_stream.c **** - 474:src/l502_stream.c **** Функция настраивает DMA3 на режим автобуфера с 2D, разм - 475:src/l502_stream.c **** равным f_sport_in_block_size. После чего разрешается канал DMA - 476:src/l502_stream.c **** прием по SPORT0 */ - 477:src/l502_stream.c **** void sport_rx_start(void) { - 478:src/l502_stream.c **** static volatile int dummy; - 479:src/l502_stream.c **** /* запрещаем DMA */ - BFIN GAS /tmp/ccdxqFXK.s page 13 + 474:src/l502_stream.c **** + 475:src/l502_stream.c **** /** @brief Запуск сбора данных по SPORT0 + 476:src/l502_stream.c **** + 477:src/l502_stream.c **** Функция настраивает DMA3 на режим автобуфера с 2D, разм + 478:src/l502_stream.c **** равным f_sport_in_block_size. После чего разрешается канал DMA + 479:src/l502_stream.c **** прием по SPORT0 */ + BFIN GAS /tmp/ccEcEoYb.s page 13 - 480:src/l502_stream.c **** *pDMA3_CONFIG = 0; - 481:src/l502_stream.c **** ssync(); - 482:src/l502_stream.c **** /* вычитываем все данные из буфера, если они были */ - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 484:src/l502_stream.c **** dummy = *pSPORT0_RX16; - 485:src/l502_stream.c **** ssync(); - 486:src/l502_stream.c **** } - 487:src/l502_stream.c **** - 488:src/l502_stream.c **** /* настраиваем DMA */ - 489:src/l502_stream.c **** *pDMA3_START_ADDR = (void*)f_sport_in_buf; - 490:src/l502_stream.c **** *pDMA3_X_COUNT = 2*f_sport_in_block_size; /* так как SPORT настроен на 16 би - 491:src/l502_stream.c **** а размер в 32 битных словах = - 492:src/l502_stream.c **** *pDMA3_X_MODIFY = 2; - 493:src/l502_stream.c **** *pDMA3_Y_COUNT = f_sport_in_buf_size/f_sport_in_block_size;; - 494:src/l502_stream.c **** *pDMA3_Y_MODIFY = 2; - 495:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; - 496:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; - 497:src/l502_stream.c **** - 498:src/l502_stream.c **** - 499:src/l502_stream.c **** ssync(); - 500:src/l502_stream.c **** /* разрешаем DMA */ - 501:src/l502_stream.c **** *pSIC_IMASK0 |= IRQ_DMA3; - 502:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; - 503:src/l502_stream.c **** /* разрешаем прием по SPORT'у */ - 504:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; - 505:src/l502_stream.c **** - 506:src/l502_stream.c **** /* разрешаем генерацию RFS на SPORT0 */ - 507:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 508:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 509:src/l502_stream.c **** } - 510:src/l502_stream.c **** - 511:src/l502_stream.c **** - 512:src/l502_stream.c **** - 513:src/l502_stream.c **** /** @brief Останов сбора данных по SPORT0 - 514:src/l502_stream.c **** - 515:src/l502_stream.c **** Функция запрещает прием по SPORT0 и останавливает DMA */ - 516:src/l502_stream.c **** void sport_rx_stop(void) { - 195 .loc 1 516 0 - 517:src/l502_stream.c **** /* останавливаем генерацию RFS */ - 518:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 196 .loc 1 518 0 + 480:src/l502_stream.c **** void sport_rx_start(void) { + 481:src/l502_stream.c **** static volatile int dummy; + 482:src/l502_stream.c **** /* запрещаем DMA */ + 483:src/l502_stream.c **** *pDMA3_CONFIG = 0; + 484:src/l502_stream.c **** ssync(); + 485:src/l502_stream.c **** /* вычитываем все данные из буфера, если они были */ + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 487:src/l502_stream.c **** dummy = *pSPORT0_RX16; + 488:src/l502_stream.c **** ssync(); + 489:src/l502_stream.c **** } + 490:src/l502_stream.c **** + 491:src/l502_stream.c **** /* настраиваем DMA */ + 492:src/l502_stream.c **** *pDMA3_START_ADDR = (void*)f_sport_in_buf; + 493:src/l502_stream.c **** *pDMA3_X_COUNT = 2*f_sport_in_block_size; /* так как SPORT настроен на 16 би + 494:src/l502_stream.c **** а размер в 32 битных словах = + 495:src/l502_stream.c **** *pDMA3_X_MODIFY = 2; + 496:src/l502_stream.c **** *pDMA3_Y_COUNT = f_sport_in_buf_size/f_sport_in_block_size;; + 497:src/l502_stream.c **** *pDMA3_Y_MODIFY = 2; + 498:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; + 499:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; + 500:src/l502_stream.c **** + 501:src/l502_stream.c **** + 502:src/l502_stream.c **** ssync(); + 503:src/l502_stream.c **** /* разрешаем DMA */ + 504:src/l502_stream.c **** *pSIC_IMASK0 |= IRQ_DMA3; + 505:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; + 506:src/l502_stream.c **** /* разрешаем прием по SPORT'у */ + 507:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; + 508:src/l502_stream.c **** + 509:src/l502_stream.c **** /* разрешаем генерацию RFS на SPORT0 */ + 510:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 511:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 512:src/l502_stream.c **** } + 513:src/l502_stream.c **** + 514:src/l502_stream.c **** + 515:src/l502_stream.c **** + 516:src/l502_stream.c **** /** @brief Останов сбора данных по SPORT0 + 517:src/l502_stream.c **** + 518:src/l502_stream.c **** Функция запрещает прием по SPORT0 и останавливает DMA */ + 519:src/l502_stream.c **** void sport_rx_stop(void) { + 195 .loc 1 519 0 + 520:src/l502_stream.c **** /* останавливаем генерацию RFS */ + 521:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 196 .loc 1 521 0 197 00d4 4AE10000 P2.H = _f_bf_reg; - 516:src/l502_stream.c **** void sport_rx_stop(void) { - 198 .loc 1 516 0 + 519:src/l502_stream.c **** void sport_rx_stop(void) { + 198 .loc 1 519 0 199 00d8 00E80300 LINK 12; 200 .LCFI8: - 201 .loc 1 518 0 + 201 .loc 1 521 0 202 00dc 0AE11800 P2.L = _f_bf_reg; 203 00e0 1191 R1 = [P2]; 204 00e2 194C BITCLR (R1,3); 205 00e4 1193 [P2] = R1; - 519:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 206 .loc 1 519 0 + 522:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 206 .loc 1 522 0 207 00e6 20E11803 R0 = 792 (X); + BFIN GAS /tmp/ccEcEoYb.s page 14 + + 208 00ea FFE38BFF call _fpga_reg_write; 209 .LBB23: 210 .LBB24: - BFIN GAS /tmp/ccdxqFXK.s page 14 - - 211 .file 2 "/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib 1:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** /* 2:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** * Copyright (C) 2012 Analog Devices Inc. All rights reserved. @@ -835,12 +838,12 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 51:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** ((defined(__SPECIFIC_NAMES) && defined(__ENABLE_NOP)) || \ 52:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** (!defined(__SPECIFIC_NAMES) && !defined(__DISABLE_NOP)))) 53:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** + BFIN GAS /tmp/ccEcEoYb.s page 15 + + 54:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #define __DEFINED_NOP 55:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 56:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** /* Insert a normal 16 bit NOP, which is treated as volatile. - BFIN GAS /tmp/ccdxqFXK.s page 15 - - 57:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** */ 58:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 59:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #pragma inline @@ -895,12 +898,12 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 108:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #endif /* __DEFINED_IDLE */ 109:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 110:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #if (!defined(__DEFINED_RAISE_INTR) && \ + BFIN GAS /tmp/ccEcEoYb.s page 16 + + 111:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** ((defined(__SPECIFIC_NAMES) && defined(__ENABLE_RAISE_INTR)) || \ 112:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** (!defined(__SPECIFIC_NAMES) && !defined(__DISABLE_RAISE_INTR)))) 113:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** - BFIN GAS /tmp/ccdxqFXK.s page 16 - - 114:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #define __DEFINED_RAISE_INTR 115:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 116:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #define raise_intr(A) (__builtin_raise((A))) @@ -955,12 +958,12 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 165:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #pragma inline 166:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #pragma always_inline 167:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** static void flushinv(void * __a) { + BFIN GAS /tmp/ccEcEoYb.s page 17 + + 168:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** __builtin_flushinv(__a); 169:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** } 170:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** - BFIN GAS /tmp/ccdxqFXK.s page 17 - - 171:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #endif /* __DEFINED_FLUSHINV */ 172:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 173:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #if (!defined(__DEFINED_FLUSHINVMODUP) && \ @@ -1015,12 +1018,12 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 222:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 223:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #pragma inline 224:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #pragma always_inline + BFIN GAS /tmp/ccEcEoYb.s page 18 + + 225:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** static void iflush(void * __a) { 226:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** __builtin_iflush(__a); 227:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** } - BFIN GAS /tmp/ccdxqFXK.s page 18 - - 228:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** 229:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** #endif /* __DEFINED_IFLUSH */ 230:/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib/gcc/bfin-elf/4.3.5/../../../../bfin-elf/include/builtins.h **** @@ -1075,43 +1078,43 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 213 00ee 2400 ssync; 214 .LBE24: 215 .LBE23: + BFIN GAS /tmp/ccEcEoYb.s page 19 + + 216 .LBB25: 217 .LBB26: 218 00f0 2400 ssync; - BFIN GAS /tmp/ccdxqFXK.s page 19 - - 219 .LBE26: 220 .LBE25: - 520:src/l502_stream.c **** - 521:src/l502_stream.c **** ssync(); - 522:src/l502_stream.c **** ssync(); 523:src/l502_stream.c **** - 524:src/l502_stream.c **** /* запрещаем прием по SPORT */ - 525:src/l502_stream.c **** *pSPORT0_RCR1 &= ~RSPEN; - 221 .loc 1 525 0 + 524:src/l502_stream.c **** ssync(); + 525:src/l502_stream.c **** ssync(); + 526:src/l502_stream.c **** + 527:src/l502_stream.c **** /* запрещаем прием по SPORT */ + 528:src/l502_stream.c **** *pSPORT0_RCR1 &= ~RSPEN; + 221 .loc 1 528 0 222 00f2 4AE1C0FF P2.H = 65472; 223 00f6 0AE12008 P2.L = 2080; 224 00fa 1095 R0 = W [P2] (Z); 225 00fc 004C BITCLR (R0,0); 226 00fe 1097 W [P2] = R0; - 526:src/l502_stream.c **** /* запрещаем DMA */ - 527:src/l502_stream.c **** *pDMA3_CONFIG =0; //&= ~DMAEN; - 227 .loc 1 527 0 + 529:src/l502_stream.c **** /* запрещаем DMA */ + 530:src/l502_stream.c **** *pDMA3_CONFIG =0; //&= ~DMAEN; + 227 .loc 1 530 0 228 0100 4AE1C0FF P2.H = 65472; 229 0104 0060 R0 = 0 (X); 230 0106 0AE1C80C P2.L = 3272; 231 010a 1097 W [P2] = R0; - 528:src/l502_stream.c **** *pSIC_IMASK0 &= ~IRQ_DMA3; - 232 .loc 1 528 0 + 531:src/l502_stream.c **** *pSIC_IMASK0 &= ~IRQ_DMA3; + 232 .loc 1 531 0 233 010c 4AE1C0FF P2.H = 65472; 234 0110 0AE10C01 P2.L = 268; 235 0114 1091 R0 = [P2]; 236 0116 804C BITCLR (R0,16); 237 0118 1093 [P2] = R0; - 529:src/l502_stream.c **** //ssync(); - 530:src/l502_stream.c **** } - 238 .loc 1 530 0 + 532:src/l502_stream.c **** //ssync(); + 533:src/l502_stream.c **** } + 238 .loc 1 533 0 239 011a 01E80000 UNLINK; 240 011e 1000 rts; 241 .LFE31: @@ -1121,54 +1124,54 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 245 .type _sport_rx_start, STT_FUNC; 246 _sport_rx_start: 247 .LFB30: - 477:src/l502_stream.c **** void sport_rx_start(void) { - 248 .loc 1 477 0 + 480:src/l502_stream.c **** void sport_rx_start(void) { + 248 .loc 1 480 0 249 0120 7005 [--sp] = ( r7:6 ); 250 251 .LCFI9: - 480:src/l502_stream.c **** *pDMA3_CONFIG = 0; - 252 .loc 1 480 0 + 483:src/l502_stream.c **** *pDMA3_CONFIG = 0; + 252 .loc 1 483 0 253 0122 4AE1C0FF P2.H = 65472; - 477:src/l502_stream.c **** void sport_rx_start(void) { - 254 .loc 1 477 0 + 480:src/l502_stream.c **** void sport_rx_start(void) { + 254 .loc 1 480 0 255 0126 00E80300 LINK 12; 256 .LCFI10: - 480:src/l502_stream.c **** *pDMA3_CONFIG = 0; - 257 .loc 1 480 0 + 483:src/l502_stream.c **** *pDMA3_CONFIG = 0; + 257 .loc 1 483 0 + BFIN GAS /tmp/ccEcEoYb.s page 20 + + 258 012a 0060 R0 = 0 (X); 259 012c 0AE1C80C P2.L = 3272; 260 0130 1097 W [P2] = R0; - BFIN GAS /tmp/ccdxqFXK.s page 20 - - 261 .LBB39: 262 .LBB40: 263 .loc 2 277 0 264 0132 2400 ssync; 265 .LBE40: 266 .LBE39: - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 267 .loc 1 483 0 + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 267 .loc 1 486 0 268 0134 4AE1C0FF P2.H = 65472; 269 0138 0AE13008 P2.L = 2096; 270 013c 1095 R0 = W [P2] (Z); 271 013e 0048 cc = !BITTST (R0,0); 272 0140 1518 if cc jump .L21; - 484:src/l502_stream.c **** dummy = *pSPORT0_RX16; - 273 .loc 1 484 0 + 487:src/l502_stream.c **** dummy = *pSPORT0_RX16; + 273 .loc 1 487 0 274 0142 49E1C0FF P1.H = 65472; - 275 0146 48E10000 P0.H = _dummy.2418; + 275 0146 48E10000 P0.H = _dummy.2439; 276 014a 09E11808 P1.L = 2072; - 277 014e 08E11C00 P0.L = _dummy.2418; - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 278 .loc 1 483 0 + 277 014e 08E11C00 P0.L = _dummy.2439; + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 278 .loc 1 486 0 279 0152 0960 R1 = 1 (X); 280 0154 4134 I0 = P1; 281 0156 4A34 I1 = P2; 282 .L22: 283 0158 0000 nop; - 484:src/l502_stream.c **** dummy = *pSPORT0_RX16; - 284 .loc 1 484 0 + 487:src/l502_stream.c **** dummy = *pSPORT0_RX16; + 284 .loc 1 487 0 285 015a 209D R0.L = W [I0]; 286 015c C042 R0 = R0.L (Z); 287 015e 0093 [P0] = R0; @@ -1178,39 +1181,39 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 291 0160 2400 ssync; 292 .LBE42: 293 .LBE41: - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 294 .loc 1 483 0 + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 294 .loc 1 486 0 295 0162 289D R0.L = W [I1]; 296 0164 0154 R0 = R1 & R0; 297 0166 000C cc =R0==0; 298 0168 F817 if !cc jump .L22 (bp); 299 .L21: - 489:src/l502_stream.c **** *pDMA3_START_ADDR = (void*)f_sport_in_buf; - 300 .loc 1 489 0 + 492:src/l502_stream.c **** *pDMA3_START_ADDR = (void*)f_sport_in_buf; + 300 .loc 1 492 0 301 016a 46E10000 R6.H = _f_sport_in_buf; 302 016e 4AE1C0FF P2.H = 65472; 303 0172 06E10000 R6.L = _f_sport_in_buf; 304 0176 0AE1C40C P2.L = 3268; 305 017a 1693 [P2] = R6; - 490:src/l502_stream.c **** *pDMA3_X_COUNT = 2*f_sport_in_block_size; /* так как SPORT настроен на 16 би - 306 .loc 1 490 0 + 493:src/l502_stream.c **** *pDMA3_X_COUNT = 2*f_sport_in_block_size; /* так как SPORT настроен на 16 би + 306 .loc 1 493 0 307 017c 4AE10000 P2.H = _f_sport_in_block_size; + BFIN GAS /tmp/ccEcEoYb.s page 21 + + 308 0180 0AE10400 P2.L = _f_sport_in_block_size; 309 0184 1191 R1 = [P2]; 310 0186 4AE1C0FF P2.H = 65472; - BFIN GAS /tmp/ccdxqFXK.s page 21 - - 311 018a 82C60980 R0 = R1 << 1; 312 018e 0AE1D00C P2.L = 3280; 313 0192 1097 W [P2] = R0; - 492:src/l502_stream.c **** *pDMA3_X_MODIFY = 2; - 314 .loc 1 492 0 + 495:src/l502_stream.c **** *pDMA3_X_MODIFY = 2; + 314 .loc 1 495 0 315 0194 1760 R7 = 2 (X); 316 0196 226C P2 += 4; 317 0198 1797 W [P2] = R7; - 493:src/l502_stream.c **** *pDMA3_Y_COUNT = f_sport_in_buf_size/f_sport_in_block_size;; - 318 .loc 1 493 0 + 496:src/l502_stream.c **** *pDMA3_Y_COUNT = f_sport_in_buf_size/f_sport_in_block_size;; + 318 .loc 1 496 0 319 019a 4AE10000 P2.H = _f_sport_in_buf_size; 320 019e 0AE10800 P2.L = _f_sport_in_buf_size; 321 01a2 1091 R0 = [P2]; @@ -1218,21 +1221,21 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 323 01a8 4AE1C0FF P2.H = 65472; 324 01ac 0AE1D80C P2.L = 3288; 325 01b0 1097 W [P2] = R0; - 494:src/l502_stream.c **** *pDMA3_Y_MODIFY = 2; - 326 .loc 1 494 0 + 497:src/l502_stream.c **** *pDMA3_Y_MODIFY = 2; + 326 .loc 1 497 0 327 01b2 226C P2 += 4; 328 01b4 1797 W [P2] = R7; - 495:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; - 329 .loc 1 495 0 + 498:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; + 329 .loc 1 498 0 330 01b6 426C P2 += 8; - 496:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; - 331 .loc 1 496 0 + 499:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; + 331 .loc 1 499 0 332 01b8 49E1C0FF P1.H = 65472; - 495:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; - 333 .loc 1 495 0 + 498:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; + 333 .loc 1 498 0 334 01bc 1693 [P2] = R6; - 496:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; - 335 .loc 1 496 0 + 499:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; + 335 .loc 1 499 0 336 01be 09E1C80C P1.L = 3272; 337 01c2 20E1F610 R0 = 4342 (X); 338 01c6 0897 W [P1] = R0; @@ -1242,52 +1245,52 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 342 01c8 2400 ssync; 343 .LBE44: 344 .LBE43: - 501:src/l502_stream.c **** *pSIC_IMASK0 |= IRQ_DMA3; - 345 .loc 1 501 0 + 504:src/l502_stream.c **** *pSIC_IMASK0 |= IRQ_DMA3; + 345 .loc 1 504 0 346 01ca 4AE1C0FF P2.H = 65472; 347 01ce 0AE10C01 P2.L = 268; 348 01d2 1091 R0 = [P2]; 349 01d4 804A BITSET (R0, 16); 350 01d6 1093 [P2] = R0; - 502:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; - 351 .loc 1 502 0 + 505:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; + 351 .loc 1 505 0 352 01d8 0895 R0 = W [P1] (Z); 353 01da 004A BITSET (R0, 0); - 504:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; - 354 .loc 1 504 0 + 507:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; + 354 .loc 1 507 0 + BFIN GAS /tmp/ccEcEoYb.s page 22 + + 355 01dc 4AE1C0FF P2.H = 65472; - 502:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; - 356 .loc 1 502 0 - BFIN GAS /tmp/ccdxqFXK.s page 22 - - + 505:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; + 356 .loc 1 505 0 357 01e0 0897 W [P1] = R0; - 504:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; - 358 .loc 1 504 0 + 507:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; + 358 .loc 1 507 0 359 01e2 0AE12008 P2.L = 2080; 360 01e6 1095 R0 = W [P2] (Z); 361 01e8 004A BITSET (R0, 0); 362 01ea 1097 W [P2] = R0; - 507:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 363 .loc 1 507 0 + 510:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 363 .loc 1 510 0 364 01ec 4AE10000 P2.H = _f_bf_reg; 365 01f0 0AE11800 P2.L = _f_bf_reg; 366 01f4 1191 R1 = [P2]; 367 01f6 194A BITSET (R1, 3); 368 01f8 1193 [P2] = R1; - 509:src/l502_stream.c **** } - 369 .loc 1 509 0 + 512:src/l502_stream.c **** } + 369 .loc 1 512 0 370 01fa 01E80000 UNLINK; - 508:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 371 .loc 1 508 0 + 511:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 371 .loc 1 511 0 372 01fe 20E11803 R0 = 792 (X); - 509:src/l502_stream.c **** } - 373 .loc 1 509 0 + 512:src/l502_stream.c **** } + 373 .loc 1 512 0 374 0202 3005 ( r7:6 ) = [sp++]; 375 376 .LCFI11: - 508:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 377 .loc 1 508 0 + 511:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 377 .loc 1 511 0 378 0204 FFE2FEFE jump.l _fpga_reg_write; 379 .LFE30: 380 .size _sport_rx_start, .-_sport_rx_start @@ -1296,69 +1299,69 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 383 .type _stream_proc, STT_FUNC; 384 _stream_proc: 385 .LFB24: - 301:src/l502_stream.c **** void stream_proc(void) { - 386 .loc 1 301 0 + 304:src/l502_stream.c **** void stream_proc(void) { + 386 .loc 1 304 0 387 0208 C304 [--sp] = ( p5:3 ); 388 389 .LCFI12: - 303:src/l502_stream.c **** if ((g_stream_in_state != IN_STREAM_STOP) && (g_stream_in_state != IN_STREAM_ERR)) { - 390 .loc 1 303 0 + 306:src/l502_stream.c **** if ((g_stream_in_state != IN_STREAM_STOP) && (g_stream_in_state != IN_STREAM_ERR)) { + 390 .loc 1 306 0 391 020a 4BE10000 P3.H = _g_stream_in_state; 392 020e 0BE10000 P3.L = _g_stream_in_state; 393 0212 1891 R0 = [P3]; - 301:src/l502_stream.c **** void stream_proc(void) { - 394 .loc 1 301 0 + 304:src/l502_stream.c **** void stream_proc(void) { + 394 .loc 1 304 0 395 0214 00E80300 LINK 12; 396 .LCFI13: - 303:src/l502_stream.c **** if ((g_stream_in_state != IN_STREAM_STOP) && (g_stream_in_state != IN_STREAM_ERR)) { - 397 .loc 1 303 0 + 306:src/l502_stream.c **** if ((g_stream_in_state != IN_STREAM_STOP) && (g_stream_in_state != IN_STREAM_ERR)) { + 397 .loc 1 306 0 398 0218 000C cc =R0==0; 399 021a 171C if cc jump .L26 (bp); 400 021c 180C cc =R0==3; + BFIN GAS /tmp/ccEcEoYb.s page 23 + + 401 021e 1518 if cc jump .L26; 402 .LBB45: - 305:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; - BFIN GAS /tmp/ccdxqFXK.s page 23 - - - 403 .loc 1 305 0 + 308:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; + 403 .loc 1 308 0 404 0220 4AE10000 P2.H = _f_sport_in_put_pos; - 308:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? - 405 .loc 1 308 0 + 311:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? + 405 .loc 1 311 0 406 0224 4CE10000 P4.H = _f_sport_in_proc_pos; - 305:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; - 407 .loc 1 305 0 + 308:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; + 407 .loc 1 308 0 408 0228 0AE10C00 P2.L = _f_sport_in_put_pos; - 308:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? - 409 .loc 1 308 0 + 311:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? + 409 .loc 1 311 0 410 022c 0CE12800 P4.L = _f_sport_in_proc_pos; - 305:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; - 411 .loc 1 305 0 + 308:src/l502_stream.c **** uint32_t put_pos = f_sport_in_put_pos; + 411 .loc 1 308 0 412 0230 5291 P2 = [P2]; 413 .LVL15: - 308:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? - 414 .loc 1 308 0 + 311:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? + 414 .loc 1 311 0 415 0232 6191 P1 = [P4]; 416 0234 CA09 cc =P2= f_hdma_out_proc_pos ? - 453 .loc 1 337 0 + 340:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? + 453 .loc 1 340 0 454 0264 4DE10000 P5.H = _f_hdma_out_proc_pos; 455 .LVL20: - 334:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; - 456 .loc 1 334 0 + 337:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; + 456 .loc 1 337 0 457 0268 0AE12000 P2.L = _f_hdma_out_put_pos; - 337:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? - 458 .loc 1 337 0 + 340:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? + 458 .loc 1 340 0 459 026c 0DE13000 P5.L = _f_hdma_out_proc_pos; - 334:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; - 460 .loc 1 334 0 + 337:src/l502_stream.c **** uint32_t put_pos = f_hdma_out_put_pos; + 460 .loc 1 337 0 461 0270 5291 P2 = [P2]; 462 .LVL21: - 337:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? - 463 .loc 1 337 0 + 340:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? + 463 .loc 1 340 0 464 0272 6991 P1 = [P5]; 465 0274 CA09 cc =P2= get_pos ? - 484 .loc 1 359 0 + 362:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? + 484 .loc 1 362 0 485 0290 4DE10000 P5.H = _f_hdma_out_start_pos; - 357:src/l502_stream.c **** uint32_t get_pos = f_hdma_out_get_pos; - 486 .loc 1 357 0 + 360:src/l502_stream.c **** uint32_t get_pos = f_hdma_out_get_pos; + 486 .loc 1 360 0 487 0294 0AE12400 P2.L = _f_hdma_out_get_pos; - 359:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? - 488 .loc 1 359 0 + 362:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? + 488 .loc 1 362 0 489 0298 0DE12C00 P5.L = _f_hdma_out_start_pos; - 357:src/l502_stream.c **** uint32_t get_pos = f_hdma_out_get_pos; - 490 .loc 1 357 0 + 360:src/l502_stream.c **** uint32_t get_pos = f_hdma_out_get_pos; + 490 .loc 1 360 0 491 029c 5191 P1 = [P2]; + BFIN GAS /tmp/ccEcEoYb.s page 25 + + 492 .LVL24: - 359:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? - 493 .loc 1 359 0 - BFIN GAS /tmp/ccdxqFXK.s page 25 - - + 362:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? + 493 .loc 1 362 0 494 029e 6891 P0 = [P5]; 495 02a0 410A cc =P1<=P0 (iu); 496 02a2 7814 if !cc jump .L34 (bp); @@ -1450,15 +1453,15 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 500 02ae 0244 P2 -= P0; 501 .LVL25: 502 .L35: - 362:src/l502_stream.c **** if (hdma_rdy_size > f_hdma_out_block_size) { - 503 .loc 1 362 0 + 365:src/l502_stream.c **** if (hdma_rdy_size > f_hdma_out_block_size) { + 503 .loc 1 365 0 504 02b0 49E10000 P1.H = 0; 505 .LVL26: 506 02b4 09E10080 P1.L = 32768; 507 02b8 4A0A cc =P2<=P1 (iu); 508 02ba CF1F if cc jump .L36 (bp); - 363:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)&f_hdma_out_buf[f_hdma_out_start_pos], - 509 .loc 1 363 0 + 366:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)&f_hdma_out_buf[f_hdma_out_start_pos], + 509 .loc 1 366 0 510 02bc 4AE18000 P2.H = _f_hdma_out_buf; 511 .LVL27: 512 02c0 0AE10000 P2.L = _f_hdma_out_buf; @@ -1466,24 +1469,24 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 514 02c6 4930 R1 = P1; 515 02c8 4230 R0 = P2; 516 02ca FFE39BFE call _hdma_recv_req_start; - 366:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; - 517 .loc 1 366 0 + 369:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; + 517 .loc 1 369 0 518 02ce 2891 R0 = [P5]; 519 02d0 81E10080 R1 = 32768 (Z); 520 02d4 0850 R0 = R0 + R1; - 367:src/l502_stream.c **** if (f_hdma_out_start_pos==L502_HDMA_OUT_BUF_SIZE) - 521 .loc 1 367 0 + 370:src/l502_stream.c **** if (f_hdma_out_start_pos==L502_HDMA_OUT_BUF_SIZE) + 521 .loc 1 370 0 522 02d6 0960 R1 = 1 (X); 523 02d8 A14F R1 <<= 20; - 366:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; - 524 .loc 1 366 0 + 369:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; + 524 .loc 1 369 0 525 02da 2893 [P5] = R0; - 367:src/l502_stream.c **** if (f_hdma_out_start_pos==L502_HDMA_OUT_BUF_SIZE) - 526 .loc 1 367 0 + 370:src/l502_stream.c **** if (f_hdma_out_start_pos==L502_HDMA_OUT_BUF_SIZE) + 526 .loc 1 370 0 527 02dc 0808 cc =R0==R1; 528 02de BD17 if !cc jump .L36 (bp); - 368:src/l502_stream.c **** f_hdma_out_start_pos = 0; - 529 .loc 1 368 0 + 371:src/l502_stream.c **** f_hdma_out_start_pos = 0; + 529 .loc 1 371 0 530 02e0 4AE10000 P2.H = _f_hdma_out_start_pos; 531 02e4 0060 R0 = 0 (X); 532 02e6 0AE12C00 P2.L = _f_hdma_out_start_pos; @@ -1494,55 +1497,55 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 537 .LBE49: 538 .LBE47: 539 .LBB51: - 308:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? - 540 .loc 1 308 0 + 311:src/l502_stream.c **** sport_rdy_size = put_pos >= f_sport_in_proc_pos ? + BFIN GAS /tmp/ccEcEoYb.s page 26 + + + 540 .loc 1 311 0 541 02ee 4AE10000 P2.H = _f_sport_in_buf_size; 542 .LVL29: - BFIN GAS /tmp/ccdxqFXK.s page 26 - - 543 02f2 0AE10800 P2.L = _f_sport_in_buf_size; 544 02f6 5291 P2 = [P2]; 545 02f8 6A32 P5 = P2; 546 .LVL30: 547 02fa 0D44 P5 -= P1; - 311:src/l502_stream.c **** if (sport_rdy_size) { - 548 .loc 1 311 0 + 314:src/l502_stream.c **** if (sport_rdy_size) { + 548 .loc 1 314 0 549 02fc 450C cc =P5==0; 550 02fe A11F if cc jump .L29 (bp); 551 .L38: 552 .LBB46: - 314:src/l502_stream.c **** sport_rdy_size); - 553 .loc 1 314 0 + 317:src/l502_stream.c **** sport_rdy_size); + 553 .loc 1 317 0 554 0300 4AE10000 P2.H = _f_sport_in_buf; 555 0304 0AE10000 P2.L = _f_sport_in_buf; 556 0308 8A5E P2 = P2 + (P1 << 2); 557 030a 4230 R0 = P2; 558 030c 4D30 R1 = P5; 559 030e FFE379FE call _usr_in_proc_data; - 316:src/l502_stream.c **** f_sport_in_proc_pos += processed; - 560 .loc 1 316 0 + 319:src/l502_stream.c **** f_sport_in_proc_pos += processed; + 560 .loc 1 319 0 561 0312 2191 R1 = [P4]; - 317:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) - 562 .loc 1 317 0 + 320:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) + 562 .loc 1 320 0 563 0314 4AE10000 P2.H = _f_sport_in_buf_size; - 316:src/l502_stream.c **** f_sport_in_proc_pos += processed; - 564 .loc 1 316 0 + 319:src/l502_stream.c **** f_sport_in_proc_pos += processed; + 564 .loc 1 319 0 565 0318 0850 R0 = R0 + R1; 566 .LVL31: - 317:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) - 567 .loc 1 317 0 + 320:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) + 567 .loc 1 320 0 568 031a 0AE10800 P2.L = _f_sport_in_buf_size; 569 031e 1191 R1 = [P2]; - 316:src/l502_stream.c **** f_sport_in_proc_pos += processed; - 570 .loc 1 316 0 + 319:src/l502_stream.c **** f_sport_in_proc_pos += processed; + 570 .loc 1 319 0 571 0320 2093 [P4] = R0; - 317:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) - 572 .loc 1 317 0 + 320:src/l502_stream.c **** if (f_sport_in_proc_pos==f_sport_in_buf_size) + 572 .loc 1 320 0 573 0322 0808 cc =R0==R1; 574 0324 8E17 if !cc jump .L29 (bp); - 318:src/l502_stream.c **** f_sport_in_proc_pos = 0; - 575 .loc 1 318 0 + 321:src/l502_stream.c **** f_sport_in_proc_pos = 0; + 575 .loc 1 321 0 576 0326 4AE10000 P2.H = _f_sport_in_proc_pos; 577 032a 0060 R0 = 0 (X); 578 032c 0AE12800 P2.L = _f_sport_in_proc_pos; @@ -1553,22 +1556,22 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 583 .LBE46: 584 .LBE51: 585 .LBB52: - 337:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? - 586 .loc 1 337 0 + 340:src/l502_stream.c **** hdma_rdy_size = put_pos >= f_hdma_out_proc_pos ? + 586 .loc 1 340 0 + BFIN GAS /tmp/ccEcEoYb.s page 27 + + 587 0334 0A44 P2 -= P1; 588 0336 4A30 R1 = P2; 589 .LVL33: - BFIN GAS /tmp/ccdxqFXK.s page 27 - - - 342:src/l502_stream.c **** if (hdma_rdy_size != 0) { - 590 .loc 1 342 0 + 345:src/l502_stream.c **** if (hdma_rdy_size != 0) { + 590 .loc 1 345 0 591 0338 010C cc =R1==0; 592 033a A51F if cc jump .L33 (bp); 593 .L42: 594 .LBB48: - 345:src/l502_stream.c **** hdma_rdy_size); - 595 .loc 1 345 0 + 348:src/l502_stream.c **** hdma_rdy_size); + 595 .loc 1 348 0 596 033c 4AE18000 P2.H = _f_hdma_out_buf; 597 .LVL34: 598 0340 0AE10000 P2.L = _f_hdma_out_buf; @@ -1576,24 +1579,24 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 600 0346 4230 R0 = P2; 601 0348 FFE35CFE call _usr_out_proc_data; 602 .LVL35: - 348:src/l502_stream.c **** f_hdma_out_proc_pos += processed; - 603 .loc 1 348 0 + 351:src/l502_stream.c **** f_hdma_out_proc_pos += processed; + 603 .loc 1 351 0 604 034c 2991 R1 = [P5]; 605 034e 0850 R0 = R0 + R1; 606 .LVL36: - 349:src/l502_stream.c **** if (f_hdma_out_proc_pos==L502_HDMA_OUT_BUF_SIZE) - 607 .loc 1 349 0 + 352:src/l502_stream.c **** if (f_hdma_out_proc_pos==L502_HDMA_OUT_BUF_SIZE) + 607 .loc 1 352 0 608 0350 0960 R1 = 1 (X); 609 0352 A14F R1 <<= 20; - 348:src/l502_stream.c **** f_hdma_out_proc_pos += processed; - 610 .loc 1 348 0 + 351:src/l502_stream.c **** f_hdma_out_proc_pos += processed; + 610 .loc 1 351 0 611 0354 2893 [P5] = R0; - 349:src/l502_stream.c **** if (f_hdma_out_proc_pos==L502_HDMA_OUT_BUF_SIZE) - 612 .loc 1 349 0 + 352:src/l502_stream.c **** if (f_hdma_out_proc_pos==L502_HDMA_OUT_BUF_SIZE) + 612 .loc 1 352 0 613 0356 0808 cc =R0==R1; 614 0358 9617 if !cc jump .L33 (bp); - 350:src/l502_stream.c **** f_hdma_out_proc_pos = 0; - 615 .loc 1 350 0 + 353:src/l502_stream.c **** f_hdma_out_proc_pos = 0; + 615 .loc 1 353 0 616 035a 4AE10000 P2.H = _f_hdma_out_proc_pos; 617 035e 0060 R0 = 0 (X); 618 0360 0AE13000 P2.L = _f_hdma_out_proc_pos; @@ -1604,25 +1607,25 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 623 .LBE48: 624 .LBE52: 625 .LBB53: - 323:src/l502_stream.c **** if ((g_stream_in_state == IN_STREAM_OV_ALERT) && !sport_rdy_size && hdma_send_req_rdy()) { - 626 .loc 1 323 0 + 326:src/l502_stream.c **** if ((g_stream_in_state == IN_STREAM_OV_ALERT) && !sport_rdy_size && hdma_send_req_rdy()) { + 626 .loc 1 326 0 627 0368 450C cc =P5==0; 628 036a 6F17 if !cc jump .L26 (bp); 629 036c FFE34AFE call _hdma_send_req_rdy; 630 0370 000C cc =R0==0; 631 0372 6B1F if cc jump .L26 (bp); - 324:src/l502_stream.c **** hdma_send_req_start(&f_overflow_wrd, 1, 1); - 632 .loc 1 324 0 + 327:src/l502_stream.c **** hdma_send_req_start(&f_overflow_wrd, 1, 1); + 632 .loc 1 327 0 633 0374 40E10000 R0.H = _f_overflow_wrd; 634 0378 00E10000 R0.L = _f_overflow_wrd; + BFIN GAS /tmp/ccEcEoYb.s page 28 + + 635 037c 0960 R1 = 1 (X); 636 037e 0A60 R2 = 1 (X); 637 0380 FFE340FE call _hdma_send_req_start; - BFIN GAS /tmp/ccdxqFXK.s page 28 - - - 325:src/l502_stream.c **** g_stream_in_state = IN_STREAM_ERR; - 638 .loc 1 325 0 + 328:src/l502_stream.c **** g_stream_in_state = IN_STREAM_ERR; + 638 .loc 1 328 0 639 0384 4AE10000 P2.H = _g_stream_in_state; 640 0388 1860 R0 = 3 (X); 641 038a 0AE10000 P2.L = _g_stream_in_state; @@ -1633,8 +1636,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 646 .LBE53: 647 .LBB54: 648 .LBB50: - 359:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? - 649 .loc 1 359 0 + 362:src/l502_stream.c **** hdma_rdy_size = f_hdma_out_start_pos >= get_pos ? + 649 .loc 1 362 0 650 0392 5132 P2 = P1; 651 .LVL39: 652 0394 0244 P2 -= P0; @@ -1648,26 +1651,26 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 660 .type _stream_out_preload, STT_FUNC; 661 _stream_out_preload: 662 .LFB18: - 123:src/l502_stream.c **** int32_t stream_out_preload(void) { - 663 .loc 1 123 0 + 126:src/l502_stream.c **** int32_t stream_out_preload(void) { + 663 .loc 1 126 0 664 0398 C404 [--sp] = ( p5:4 ); 665 666 .LCFI15: - 125:src/l502_stream.c **** 0; - 667 .loc 1 125 0 + 128:src/l502_stream.c **** 0; + 667 .loc 1 128 0 668 039a 4CE10000 P4.H = _g_stream_out_state; - 123:src/l502_stream.c **** int32_t stream_out_preload(void) { - 669 .loc 1 123 0 + 126:src/l502_stream.c **** int32_t stream_out_preload(void) { + 669 .loc 1 126 0 670 039e 00E80300 LINK 12; 671 .LCFI16: - 125:src/l502_stream.c **** 0; - 672 .loc 1 125 0 + 128:src/l502_stream.c **** 0; + 672 .loc 1 128 0 673 03a2 0CE10400 P4.L = _g_stream_out_state; 674 03a6 2091 R0 = [P4]; 675 03a8 100C cc =R0==2; 676 03aa 2B18 if cc jump .L47; - 127:src/l502_stream.c **** f_hdma_out_get_pos = f_hdma_out_start_pos = - 677 .loc 1 127 0 + 130:src/l502_stream.c **** f_hdma_out_get_pos = f_hdma_out_start_pos = + 677 .loc 1 130 0 678 03ac 4AE10000 P2.H = _f_hdma_out_proc_pos; 679 03b0 0060 R0 = 0 (X); 680 03b2 0AE13000 P2.L = _f_hdma_out_proc_pos; @@ -1675,56 +1678,56 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 682 03b8 4AE10000 P2.H = _f_hdma_out_put_pos; 683 03bc 0AE12000 P2.L = _f_hdma_out_put_pos; 684 03c0 1093 [P2] = R0; + BFIN GAS /tmp/ccEcEoYb.s page 29 + + 685 03c2 1091 R0 = [P2]; 686 03c4 4DE10000 P5.H = _f_hdma_out_start_pos; 687 03c8 4AE10000 P2.H = _f_hdma_out_get_pos; - BFIN GAS /tmp/ccdxqFXK.s page 29 - - 688 03cc 0DE12C00 P5.L = _f_hdma_out_start_pos; 689 03d0 0AE12400 P2.L = _f_hdma_out_get_pos; 690 03d4 2893 [P5] = R0; 691 03d6 1093 [P2] = R0; - 131:src/l502_stream.c **** hdma_recv_start(); - 692 .loc 1 131 0 + 134:src/l502_stream.c **** hdma_recv_start(); + 692 .loc 1 134 0 693 03d8 FFE314FE call _hdma_recv_start; - 134:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; - 694 .loc 1 134 0 + 137:src/l502_stream.c **** f_hdma_out_start_pos+=f_hdma_out_block_size; + 694 .loc 1 137 0 695 03dc 2891 R0 = [P5]; 696 03de 81E10080 R1 = 32768 (Z); 697 03e2 0850 R0 = R0 + R1; 698 03e4 2893 [P5] = R0; - 135:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)f_hdma_out_buf, f_hdma_out_block_size); - 699 .loc 1 135 0 + 138:src/l502_stream.c **** hdma_recv_req_start((uint32_t*)f_hdma_out_buf, f_hdma_out_block_size); + 699 .loc 1 138 0 700 03e6 40E18000 R0.H = _f_hdma_out_buf; 701 03ea 00E10000 R0.L = _f_hdma_out_buf; 702 03ee FFE309FE call _hdma_recv_req_start; - 137:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_PRELOAD; - 703 .loc 1 137 0 + 140:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_PRELOAD; + 703 .loc 1 140 0 704 03f2 0860 R0 = 1 (X); 705 03f4 2093 [P4] = R0; - 140:src/l502_stream.c **** } - 706 .loc 1 140 0 + 143:src/l502_stream.c **** } + 706 .loc 1 143 0 707 03f6 01E80000 UNLINK; - 137:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_PRELOAD; - 708 .loc 1 137 0 + 140:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_PRELOAD; + 708 .loc 1 140 0 709 03fa 0060 R0 = 0 (X); 710 .LVL40: 711 .LVL41: - 140:src/l502_stream.c **** } - 712 .loc 1 140 0 + 143:src/l502_stream.c **** } + 712 .loc 1 143 0 713 03fc 8404 ( p5:4 ) = [sp++]; 714 715 .LCFI17: 716 03fe 1000 rts; 717 .L47: 718 0400 01E80000 UNLINK; - 125:src/l502_stream.c **** 0; - 719 .loc 1 125 0 + 128:src/l502_stream.c **** 0; + 719 .loc 1 128 0 720 0404 20E1FCFD R0 = -516 (X); 721 .LVL42: - 140:src/l502_stream.c **** } - 722 .loc 1 140 0 + 143:src/l502_stream.c **** } + 722 .loc 1 143 0 723 0408 8404 ( p5:4 ) = [sp++]; 724 725 .LCFI18: @@ -1735,30 +1738,30 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 730 .align 4 731 .global _l502_stream_init; 732 .type _l502_stream_init, STT_FUNC; + BFIN GAS /tmp/ccEcEoYb.s page 30 + + 733 _l502_stream_init: 734 .LFB17: - 108:src/l502_stream.c **** void l502_stream_init(void) { - BFIN GAS /tmp/ccdxqFXK.s page 30 - - - 735 .loc 1 108 0 + 111:src/l502_stream.c **** void l502_stream_init(void) { + 735 .loc 1 111 0 736 040c 00E80300 LINK 12; 737 .LCFI19: - 110:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); - 738 .loc 1 110 0 + 113:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); + 738 .loc 1 113 0 739 0410 20E10A03 R0 = 778 (X); 740 0414 0160 R1 = 0 (X); 741 0416 FFE3F5FD call _fpga_reg_write; - 111:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, 0); - 742 .loc 1 111 0 + 114:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, 0); + 742 .loc 1 114 0 743 041a 20E11803 R0 = 792 (X); 744 041e 0160 R1 = 0 (X); 745 0420 FFE3F0FD call _fpga_reg_write; - 114:src/l502_stream.c **** } - 746 .loc 1 114 0 + 117:src/l502_stream.c **** } + 746 .loc 1 117 0 747 0424 01E80000 UNLINK; - 113:src/l502_stream.c **** sport_tx_init(); - 748 .loc 1 113 0 + 116:src/l502_stream.c **** sport_tx_init(); + 748 .loc 1 116 0 749 0428 FFE2ECFD jump.l _sport_tx_init; 750 .LFE17: 751 .size _l502_stream_init, .-_l502_stream_init @@ -1767,72 +1770,72 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 754 .type _streams_stop, STT_FUNC; 755 _streams_stop: 756 .LFB23: - 267:src/l502_stream.c **** int32_t streams_stop(void) { - 757 .loc 1 267 0 + 270:src/l502_stream.c **** int32_t streams_stop(void) { + 757 .loc 1 270 0 758 042c FC05 [--sp] = ( r7:7, p5:4 ); 759 760 .LCFI20: - 268:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; - 761 .loc 1 268 0 + 271:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; + 761 .loc 1 271 0 762 042e 4CE10000 P4.H = _g_mode; - 267:src/l502_stream.c **** int32_t streams_stop(void) { - 763 .loc 1 267 0 + 270:src/l502_stream.c **** int32_t streams_stop(void) { + 763 .loc 1 270 0 764 0432 00E80300 LINK 12; 765 .LCFI21: - 268:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; - 766 .loc 1 268 0 + 271:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; + 766 .loc 1 271 0 767 0436 0CE10800 P4.L = _g_mode; 768 043a 2091 R0 = [P4]; 769 043c 080C cc =R0==1; 770 043e 0718 if cc jump .L51; - 288:src/l502_stream.c **** } - 771 .loc 1 288 0 + 291:src/l502_stream.c **** } + 771 .loc 1 291 0 772 0440 01E80000 UNLINK; - 268:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; - 773 .loc 1 268 0 + 271:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_STREAM ? L502_BF_ERR_STREAM_STOPPED : 0; + 773 .loc 1 271 0 774 0444 20E1FBFD R0 = -517 (X); 775 .LVL44: - 288:src/l502_stream.c **** } - 776 .loc 1 288 0 + 291:src/l502_stream.c **** } + 776 .loc 1 291 0 777 0448 BC05 ( r7:7, p5:4 ) = [sp++]; + BFIN GAS /tmp/ccEcEoYb.s page 31 + + 778 779 .LCFI22: 780 .LVL45: - BFIN GAS /tmp/ccdxqFXK.s page 31 - - 781 044a 1000 rts; 782 .L51: - 270:src/l502_stream.c **** hdma_send_stop(); - 783 .loc 1 270 0 + 273:src/l502_stream.c **** hdma_send_stop(); + 783 .loc 1 273 0 784 044c FFE3DAFD call _hdma_send_stop; - 271:src/l502_stream.c **** hdma_recv_stop(); - 785 .loc 1 271 0 + 274:src/l502_stream.c **** hdma_recv_stop(); + 785 .loc 1 274 0 786 0450 FFE3D8FD call _hdma_recv_stop; - 272:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); - 787 .loc 1 272 0 + 275:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); + 787 .loc 1 275 0 788 0454 20E10A03 R0 = 778 (X); 789 0458 0160 R1 = 0 (X); 790 .LBB61: 791 .LBB62: - 518:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 792 .loc 1 518 0 + 521:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 792 .loc 1 521 0 793 045a 4DE10000 P5.H = _f_bf_reg; 794 .LBE62: 795 .LBE61: - 272:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); - 796 .loc 1 272 0 + 275:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 0); + 796 .loc 1 275 0 797 045e FFE3D1FD call _fpga_reg_write; 798 .LBB68: 799 .LBB67: - 518:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 800 .loc 1 518 0 + 521:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 800 .loc 1 521 0 801 0462 0DE11800 P5.L = _f_bf_reg; 802 0466 2991 R1 = [P5]; 803 0468 194C BITCLR (R1,3); 804 046a 2993 [P5] = R1; - 519:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 805 .loc 1 519 0 + 522:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 805 .loc 1 522 0 806 046c 20E11803 R0 = 792 (X); 807 0470 FFE3C8FD call _fpga_reg_write; 808 .LBB63: @@ -1846,24 +1849,24 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 816 0476 2400 ssync; 817 .LBE66: 818 .LBE65: - 525:src/l502_stream.c **** *pSPORT0_RCR1 &= ~RSPEN; - 819 .loc 1 525 0 + 528:src/l502_stream.c **** *pSPORT0_RCR1 &= ~RSPEN; + 819 .loc 1 528 0 820 0478 4AE1C0FF P2.H = 65472; 821 047c 0AE12008 P2.L = 2080; 822 0480 1095 R0 = W [P2] (Z); 823 0482 004C BITCLR (R0,0); 824 0484 1097 W [P2] = R0; - 527:src/l502_stream.c **** *pDMA3_CONFIG =0; //&= ~DMAEN; - 825 .loc 1 527 0 + 530:src/l502_stream.c **** *pDMA3_CONFIG =0; //&= ~DMAEN; + 825 .loc 1 530 0 + BFIN GAS /tmp/ccEcEoYb.s page 32 + + 826 0486 4AE1C0FF P2.H = 65472; 827 048a 0060 R0 = 0 (X); 828 048c 0AE1C80C P2.L = 3272; - BFIN GAS /tmp/ccdxqFXK.s page 32 - - 829 0490 1097 W [P2] = R0; - 528:src/l502_stream.c **** *pSIC_IMASK0 &= ~IRQ_DMA3; - 830 .loc 1 528 0 + 531:src/l502_stream.c **** *pSIC_IMASK0 &= ~IRQ_DMA3; + 830 .loc 1 531 0 831 0492 4AE1C0FF P2.H = 65472; 832 0496 0AE10C01 P2.L = 268; 833 049a 1091 R0 = [P2]; @@ -1871,43 +1874,43 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 835 049e 1093 [P2] = R0; 836 .LBE67: 837 .LBE68: - 276:src/l502_stream.c **** sport_tx_stop(); - 838 .loc 1 276 0 + 279:src/l502_stream.c **** sport_tx_stop(); + 838 .loc 1 279 0 839 04a0 FFE3B0FD call _sport_tx_stop; - 279:src/l502_stream.c **** f_bf_reg = 0; - 840 .loc 1 279 0 + 282:src/l502_stream.c **** f_bf_reg = 0; + 840 .loc 1 282 0 841 04a4 0760 R7 = 0 (X); 842 04a6 2F93 [P5] = R7; - 280:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 843 .loc 1 280 0 + 283:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 843 .loc 1 283 0 844 04a8 20E11803 R0 = 792 (X); 845 04ac 0160 R1 = 0 (X); 846 04ae FFE3A9FD call _fpga_reg_write; - 284:src/l502_stream.c **** g_stream_in_state = IN_STREAM_STOP; - 847 .loc 1 284 0 + 287:src/l502_stream.c **** g_stream_in_state = IN_STREAM_STOP; + 847 .loc 1 287 0 848 04b2 4AE10000 P2.H = _g_stream_in_state; 849 04b6 0AE10000 P2.L = _g_stream_in_state; 850 04ba 1793 [P2] = R7; - 285:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; - 851 .loc 1 285 0 + 288:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; + 851 .loc 1 288 0 852 04bc 4AE10000 P2.H = _g_stream_out_state; 853 04c0 0AE10400 P2.L = _g_stream_out_state; - 283:src/l502_stream.c **** g_mode = L502_BF_MODE_IDLE; - 854 .loc 1 283 0 + 286:src/l502_stream.c **** g_mode = L502_BF_MODE_IDLE; + 854 .loc 1 286 0 855 04c4 2793 [P4] = R7; - 285:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; - 856 .loc 1 285 0 + 288:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; + 856 .loc 1 288 0 857 04c6 1793 [P2] = R7; - 288:src/l502_stream.c **** } - 858 .loc 1 288 0 + 291:src/l502_stream.c **** } + 858 .loc 1 291 0 859 04c8 01E80000 UNLINK; - 285:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; - 860 .loc 1 285 0 + 288:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_STOP; + 860 .loc 1 288 0 861 04cc 0060 R0 = 0 (X); 862 .LVL46: 863 .LVL47: - 288:src/l502_stream.c **** } - 864 .loc 1 288 0 + 291:src/l502_stream.c **** } + 864 .loc 1 291 0 865 04ce BC05 ( r7:7, p5:4 ) = [sp++]; 866 867 .LCFI23: @@ -1915,20 +1918,20 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 869 .LFE23: 870 .size _streams_stop, .-_streams_stop 871 04d2 0000 .align 4 + BFIN GAS /tmp/ccEcEoYb.s page 33 + + 872 .global _isr_sport_dma_rx; 873 .type _isr_sport_dma_rx, STT_FUNC; 874 _isr_sport_dma_rx: - BFIN GAS /tmp/ccdxqFXK.s page 33 - - 875 .LFB32: - 531:src/l502_stream.c **** - 532:src/l502_stream.c **** /** @brief Обработчик прерывания по SPORT0 на прием. - 533:src/l502_stream.c **** - 534:src/l502_stream.c **** Прерывание возникает, когда был принят блок данных - 535:src/l502_stream.c **** Обновляем указатель принятых данных и проверяем пе - 536:src/l502_stream.c **** ISR(isr_sport_dma_rx) { - 876 .loc 1 536 0 + 534:src/l502_stream.c **** + 535:src/l502_stream.c **** /** @brief Обработчик прерывания по SPORT0 на прием. + 536:src/l502_stream.c **** + 537:src/l502_stream.c **** Прерывание возникает, когда был принят блок данных + 538:src/l502_stream.c **** Обновляем указатель принятых данных и проверяем пе + 539:src/l502_stream.c **** ISR(isr_sport_dma_rx) { + 876 .loc 1 539 0 877 04d4 6601 [--SP] = ASTAT; 878 .LCFI24: 879 04d6 7101 [--SP] = LT0; @@ -1975,85 +1978,85 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 920 04fe 5501 [--SP] = M1; 921 .LCFI45: 922 0500 5601 [--SP] = M2; + BFIN GAS /tmp/ccEcEoYb.s page 34 + + 923 .LCFI46: 924 0502 5701 [--SP] = M3; 925 .LCFI47: - BFIN GAS /tmp/ccdxqFXK.s page 34 - - 926 0504 60016101 [--SP] = A0.x; [--SP] = A0.w; 927 .LCFI48: - 537:src/l502_stream.c **** if (*pDMA3_IRQ_STATUS & DMA_DONE) { - 928 .loc 1 537 0 + 540:src/l502_stream.c **** if (*pDMA3_IRQ_STATUS & DMA_DONE) { + 928 .loc 1 540 0 929 0508 4AE1C0FF P2.H = 65472; - 536:src/l502_stream.c **** ISR(isr_sport_dma_rx) { - 930 .loc 1 536 0 + 539:src/l502_stream.c **** ISR(isr_sport_dma_rx) { + 930 .loc 1 539 0 931 050c 62016301 [--SP] = A1.x; [--SP] = A1.w; 932 .LCFI49: - 933 .loc 1 537 0 + 933 .loc 1 540 0 934 0510 0AE1E80C P2.L = 3304; - 536:src/l502_stream.c **** ISR(isr_sport_dma_rx) { - 935 .loc 1 536 0 + 539:src/l502_stream.c **** ISR(isr_sport_dma_rx) { + 935 .loc 1 539 0 936 0514 7B01 [--SP] = RETI; 937 .LCFI50: 938 0516 00E80300 LINK 12; 939 .LCFI51: - 940 .loc 1 537 0 + 940 .loc 1 540 0 941 051a 1095 R0 = W [P2] (Z); 942 051c 0048 cc = !BITTST (R0,0); 943 051e 3118 if cc jump .L59; 944 .LBB78: - 538:src/l502_stream.c **** uint32_t rdy_put_pos; - 539:src/l502_stream.c **** /* сбрасываем прерывание от DMA */ - 540:src/l502_stream.c **** *pDMA3_IRQ_STATUS = DMA_DONE; - 945 .loc 1 540 0 + 541:src/l502_stream.c **** uint32_t rdy_put_pos; + 542:src/l502_stream.c **** /* сбрасываем прерывание от DMA */ + 543:src/l502_stream.c **** *pDMA3_IRQ_STATUS = DMA_DONE; + 945 .loc 1 543 0 946 0520 0860 R0 = 1 (X); 947 0522 1097 W [P2] = R0; - 541:src/l502_stream.c **** - 542:src/l502_stream.c **** /* обновляем количество принятых данных на размер - 543:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; - 948 .loc 1 543 0 + 544:src/l502_stream.c **** + 545:src/l502_stream.c **** /* обновляем количество принятых данных на размер + 546:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; + 948 .loc 1 546 0 949 0524 4AE10000 P2.H = _f_sport_in_block_size; 950 0528 0AE10400 P2.L = _f_sport_in_block_size; 951 052c 1391 R3 = [P2]; - 544:src/l502_stream.c **** if (f_sport_in_put_pos == f_sport_in_buf_size) - 952 .loc 1 544 0 + 547:src/l502_stream.c **** if (f_sport_in_put_pos == f_sport_in_buf_size) + 952 .loc 1 547 0 953 052e 4AE10000 P2.H = _f_sport_in_buf_size; - 543:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; - 954 .loc 1 543 0 + 546:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; + 954 .loc 1 546 0 955 0532 49E10000 P1.H = _f_sport_in_put_pos; - 956 .loc 1 544 0 + 956 .loc 1 547 0 957 0536 0AE10800 P2.L = _f_sport_in_buf_size; - 543:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; - 958 .loc 1 543 0 + 546:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; + 958 .loc 1 546 0 959 053a 09E10C00 P1.L = _f_sport_in_put_pos; - 960 .loc 1 544 0 + 960 .loc 1 547 0 961 053e 5091 P0 = [P2]; - 543:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; - 962 .loc 1 543 0 + 546:src/l502_stream.c **** f_sport_in_put_pos += f_sport_in_block_size; + 962 .loc 1 546 0 963 0540 0891 R0 = [P1]; 964 0542 0350 R0 = R3 + R0; 965 0544 0893 [P1] = R0; - 966 .loc 1 544 0 + 966 .loc 1 547 0 + BFIN GAS /tmp/ccEcEoYb.s page 35 + + 967 0546 0891 R0 = [P1]; 968 0548 4830 R1 = P0; 969 054a 0808 cc =R0==R1; - BFIN GAS /tmp/ccdxqFXK.s page 35 - - 970 054c 6718 if cc jump .L60; 971 .L56: - 545:src/l502_stream.c **** f_sport_in_put_pos = 0; - 546:src/l502_stream.c **** - 547:src/l502_stream.c **** /* смотрим, сколько свободно места в буфере на прие - 548:src/l502_stream.c **** uint32_t get_pos = f_sport_in_get_pos; - 972 .loc 1 548 0 + 548:src/l502_stream.c **** f_sport_in_put_pos = 0; + 549:src/l502_stream.c **** + 550:src/l502_stream.c **** /* смотрим, сколько свободно места в буфере на прие + 551:src/l502_stream.c **** uint32_t get_pos = f_sport_in_get_pos; + 972 .loc 1 551 0 973 054e 4AE10000 P2.H = _f_sport_in_get_pos; 974 0552 0AE11000 P2.L = _f_sport_in_get_pos; 975 0556 1291 R2 = [P2]; 976 .LVL48: - 549:src/l502_stream.c **** rdy_put_pos = f_sport_in_put_pos > get_pos ? - 977 .loc 1 549 0 + 552:src/l502_stream.c **** rdy_put_pos = f_sport_in_put_pos > get_pos ? + 977 .loc 1 552 0 978 0558 4AE10000 P2.H = _f_sport_in_put_pos; 979 055c 0891 R0 = [P1]; 980 055e 0AE10C00 P2.L = _f_sport_in_put_pos; @@ -2063,44 +2066,44 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 984 0568 4252 R1 = R2 - R0; 985 .LVL49: 986 .L58: - 550:src/l502_stream.c **** f_sport_in_buf_size -f_sport_in_put_pos + get_pos : - 551:src/l502_stream.c **** get_pos - f_sport_in_put_pos; - 552:src/l502_stream.c **** - 553:src/l502_stream.c **** - 554:src/l502_stream.c **** f_recv_size += f_sport_in_block_size; - 987 .loc 1 554 0 + 553:src/l502_stream.c **** f_sport_in_buf_size -f_sport_in_put_pos + get_pos : + 554:src/l502_stream.c **** get_pos - f_sport_in_put_pos; + 555:src/l502_stream.c **** + 556:src/l502_stream.c **** + 557:src/l502_stream.c **** f_recv_size += f_sport_in_block_size; + 987 .loc 1 557 0 988 056a 4AE10000 P2.H = _f_recv_size; 989 056e 0AE11400 P2.L = _f_recv_size; 990 0572 1091 R0 = [P2]; 991 0574 1850 R0 = R0 + R3; 992 0576 1093 [P2] = R0; - 555:src/l502_stream.c **** - 556:src/l502_stream.c **** /* если осталось не больше блока - то считаем за пер - 557:src/l502_stream.c **** т.к. тогда при следующем прерывании уже могут бы - 558:src/l502_stream.c **** принятые ранее данные */ - 559:src/l502_stream.c **** if (rdy_put_pos < 2*f_sport_in_block_size) { - 993 .loc 1 559 0 + 558:src/l502_stream.c **** + 559:src/l502_stream.c **** /* если осталось не больше блока - то считаем за пер + 560:src/l502_stream.c **** т.к. тогда при следующем прерывании уже могут бы + 561:src/l502_stream.c **** принятые ранее данные */ + 562:src/l502_stream.c **** if (rdy_put_pos < 2*f_sport_in_block_size) { + 993 .loc 1 562 0 994 0578 82C60B80 R0 = R3 << 1; 995 057c 8109 cc =R1 get_pos ? - 1035 .loc 1 549 0 + 552:src/l502_stream.c **** rdy_put_pos = f_sport_in_put_pos > get_pos ? + 1035 .loc 1 552 0 1036 05c0 7830 R7 = P0; 1037 05c2 1191 R1 = [P2]; 1038 05c4 3A50 R0 = R2 + R7; @@ -2141,26 +2144,26 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1044 .LBB80: 1045 .LBB81: 1046 .LBB82: - 518:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 1047 .loc 1 518 0 + 521:src/l502_stream.c **** f_bf_reg &= ~L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 1047 .loc 1 521 0 1048 05ca 4AE10000 P2.H = _f_bf_reg; 1049 05ce 0AE11800 P2.L = _f_bf_reg; 1050 05d2 1191 R1 = [P2]; 1051 .LVL53: 1052 05d4 194C BITCLR (R1,3); 1053 05d6 1193 [P2] = R1; - 519:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 1054 .loc 1 519 0 + 522:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 1054 .loc 1 522 0 1055 05d8 20E11803 R0 = 792 (X); 1056 05dc FFE312FD call _fpga_reg_write; 1057 .LVL54: 1058 .LBB83: + BFIN GAS /tmp/ccEcEoYb.s page 37 + + 1059 .LBB84: 1060 .loc 2 277 0 1061 05e0 2400 ssync; - BFIN GAS /tmp/ccdxqFXK.s page 37 - - 1062 .LBE84: 1063 .LBE83: 1064 .LBB85: @@ -2168,21 +2171,21 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1066 05e2 2400 ssync; 1067 .LBE86: 1068 .LBE85: - 525:src/l502_stream.c **** *pSPORT0_RCR1 &= ~RSPEN; - 1069 .loc 1 525 0 + 528:src/l502_stream.c **** *pSPORT0_RCR1 &= ~RSPEN; + 1069 .loc 1 528 0 1070 05e4 4AE1C0FF P2.H = 65472; 1071 05e8 0AE12008 P2.L = 2080; 1072 05ec 1095 R0 = W [P2] (Z); 1073 05ee 004C BITCLR (R0,0); 1074 05f0 1097 W [P2] = R0; - 527:src/l502_stream.c **** *pDMA3_CONFIG =0; //&= ~DMAEN; - 1075 .loc 1 527 0 + 530:src/l502_stream.c **** *pDMA3_CONFIG =0; //&= ~DMAEN; + 1075 .loc 1 530 0 1076 05f2 4AE1C0FF P2.H = 65472; 1077 05f6 0060 R0 = 0 (X); 1078 05f8 0AE1C80C P2.L = 3272; 1079 05fc 1097 W [P2] = R0; - 528:src/l502_stream.c **** *pSIC_IMASK0 &= ~IRQ_DMA3; - 1080 .loc 1 528 0 + 531:src/l502_stream.c **** *pSIC_IMASK0 &= ~IRQ_DMA3; + 1080 .loc 1 531 0 1081 05fe 4AE1C0FF P2.H = 65472; 1082 0602 0AE10C01 P2.L = 268; 1083 0606 1091 R0 = [P2]; @@ -2190,8 +2193,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1085 060a 1093 [P2] = R0; 1086 .LBE82: 1087 .LBE81: - 102:src/l502_stream.c **** g_stream_in_state = IN_STREAM_OV_ALERT; - 1088 .loc 1 102 0 + 105:src/l502_stream.c **** g_stream_in_state = IN_STREAM_OV_ALERT; + 1088 .loc 1 105 0 1089 060c 4AE10000 P2.H = _g_stream_in_state; 1090 0610 2060 R0 = 4 (X); 1091 0612 0AE10000 P2.L = _g_stream_in_state; @@ -2200,8 +2203,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1094 .L60: 1095 .LBE80: 1096 .LBE79: - 545:src/l502_stream.c **** f_sport_in_put_pos = 0; - 1097 .loc 1 545 0 + 548:src/l502_stream.c **** f_sport_in_put_pos = 0; + 1097 .loc 1 548 0 1098 061a 0060 R0 = 0 (X); 1099 061c 0893 [P1] = R0; 1100 061e 982F jump.s .L56; @@ -2213,17 +2216,17 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1106 .type _stream_disable, STT_FUNC; 1107 _stream_disable: 1108 .LFB21: - 185:src/l502_stream.c **** int32_t stream_disable(uint32_t streams) { - 1109 .loc 1 185 0 + 188:src/l502_stream.c **** int32_t stream_disable(uint32_t streams) { + 1109 .loc 1 188 0 + BFIN GAS /tmp/ccEcEoYb.s page 38 + + 1110 .LVL55: 1111 0620 FD05 [--sp] = ( r7:7, p5:5 ); 1112 - BFIN GAS /tmp/ccdxqFXK.s page 38 - - 1113 .LCFI53: - 186:src/l502_stream.c **** f_set_streams(g_streams & ~streams); - 1114 .loc 1 186 0 + 189:src/l502_stream.c **** f_set_streams(g_streams & ~streams); + 1114 .loc 1 189 0 1115 0622 4DE10000 P5.H = _g_streams; 1116 0626 0DE10000 P5.L = _g_streams; 1117 062a C043 R0 = ~R0; @@ -2231,63 +2234,63 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1119 062c 2991 R1 = [P5]; 1120 .LBB90: 1121 .LBB92: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1122 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1122 .loc 1 151 0 1123 062e 4AE10000 P2.H = _g_mode; 1124 .LBE92: 1125 .LBE90: - 186:src/l502_stream.c **** f_set_streams(g_streams & ~streams); - 1126 .loc 1 186 0 + 189:src/l502_stream.c **** f_set_streams(g_streams & ~streams); + 1126 .loc 1 189 0 1127 0632 C855 R7 = R0 & R1; 1128 .LBB95: 1129 .LBB93: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1130 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1130 .loc 1 151 0 1131 0634 0AE10800 P2.L = _g_mode; 1132 0638 1091 R0 = [P2]; 1133 .LBE93: 1134 .LBE95: - 185:src/l502_stream.c **** int32_t stream_disable(uint32_t streams) { - 1135 .loc 1 185 0 + 188:src/l502_stream.c **** int32_t stream_disable(uint32_t streams) { + 1135 .loc 1 188 0 1136 063a 00E80300 LINK 12; 1137 .LCFI54: 1138 .LBB96: 1139 .LBB91: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1140 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1140 .loc 1 151 0 1141 063e 080C cc =R0==1; 1142 0640 1118 if cc jump .L68; 1143 .L64: - 159:src/l502_stream.c **** if (streams & L502_STREAM_ADC) - 1144 .loc 1 159 0 + 162:src/l502_stream.c **** if (streams & L502_STREAM_ADC) + 1144 .loc 1 162 0 1145 0642 0960 R1 = 1 (X); 1146 0644 4F54 R1 = R7 & R1; 1147 .LVL57: - 162:src/l502_stream.c **** wrd_en |= 0x2; - 1148 .loc 1 162 0 + 165:src/l502_stream.c **** wrd_en |= 0x2; + 1148 .loc 1 165 0 1149 0646 0130 R0 = R1; - 161:src/l502_stream.c **** if (streams & L502_STREAM_DIN) - 1150 .loc 1 161 0 + 164:src/l502_stream.c **** if (streams & L502_STREAM_DIN) + 1150 .loc 1 164 0 1151 0648 0F48 cc = !BITTST (R7,1); - 162:src/l502_stream.c **** wrd_en |= 0x2; - 1152 .loc 1 162 0 + 165:src/l502_stream.c **** wrd_en |= 0x2; + 1152 .loc 1 165 0 1153 064a 084A BITSET (R0, 1); 1154 064c 0806 if !cc R1 = R0; - 163:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); - 1155 .loc 1 163 0 + 166:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); + 1155 .loc 1 166 0 + BFIN GAS /tmp/ccEcEoYb.s page 39 + + 1156 064e 20E11904 R0 = 1049 (X); 1157 0652 FFE3D7FC call _fpga_reg_write; 1158 .LVL58: - BFIN GAS /tmp/ccdxqFXK.s page 39 - - - 168:src/l502_stream.c **** g_streams = streams; - 1159 .loc 1 168 0 + 171:src/l502_stream.c **** g_streams = streams; + 1159 .loc 1 171 0 1160 0656 2F93 [P5] = R7; 1161 .LBE91: 1162 .LBE96: - 188:src/l502_stream.c **** } - 1163 .loc 1 188 0 + 191:src/l502_stream.c **** } + 1163 .loc 1 191 0 1164 0658 01E80000 UNLINK; 1165 065c 0060 R0 = 0 (X); 1166 065e BD05 ( r7:7, p5:5 ) = [sp++]; @@ -2297,8 +2300,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1170 .L68: 1171 .LBB97: 1172 .LBB94: - 149:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { - 1173 .loc 1 149 0 + 152:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { + 1173 .loc 1 152 0 1174 0662 1A60 R2 = 3 (X); 1175 0664 1754 R0 = R7 & R2; 1176 0666 000C cc =R0==0; @@ -2306,18 +2309,18 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1178 066a 1154 R0 = R1 & R2; 1179 066c 000C cc =R0==0; 1180 066e EA17 if !cc jump .L64 (bp); - 150:src/l502_stream.c **** sport_rx_start(); - 1181 .loc 1 150 0 + 153:src/l502_stream.c **** sport_rx_start(); + 1181 .loc 1 153 0 1182 0670 FFE358FD call _sport_rx_start; 1183 0674 E72F jump.s .L64; 1184 .L65: - 153:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { - 1185 .loc 1 153 0 + 156:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { + 1185 .loc 1 156 0 1186 0676 1154 R0 = R1 & R2; 1187 0678 000C cc =R0==0; 1188 067a E41F if cc jump .L64 (bp); - 154:src/l502_stream.c **** sport_rx_stop(); - 1189 .loc 1 154 0 + 157:src/l502_stream.c **** sport_rx_stop(); + 1189 .loc 1 157 0 1190 067c FFE32CFD call _sport_rx_stop; 1191 0680 E12F jump.s .L64; 1192 .LBE94: @@ -2329,80 +2332,80 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1198 .type _stream_enable, STT_FUNC; 1199 _stream_enable: 1200 .LFB20: - 175:src/l502_stream.c **** int32_t stream_enable(uint32_t streams) { - 1201 .loc 1 175 0 + 178:src/l502_stream.c **** int32_t stream_enable(uint32_t streams) { + 1201 .loc 1 178 0 1202 .LVL59: 1203 0684 FD05 [--sp] = ( r7:7, p5:5 ); 1204 1205 .LCFI56: - 176:src/l502_stream.c **** f_set_streams(g_streams | streams); - 1206 .loc 1 176 0 + BFIN GAS /tmp/ccEcEoYb.s page 40 + + + 179:src/l502_stream.c **** f_set_streams(g_streams | streams); + 1206 .loc 1 179 0 1207 0686 4DE10000 P5.H = _g_streams; - BFIN GAS /tmp/ccdxqFXK.s page 40 - - 1208 068a 0DE10000 P5.L = _g_streams; 1209 068e 2991 R1 = [P5]; 1210 .LBB100: 1211 .LBB102: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1212 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1212 .loc 1 151 0 1213 0690 4AE10000 P2.H = _g_mode; 1214 .LBE102: 1215 .LBE100: - 176:src/l502_stream.c **** f_set_streams(g_streams | streams); - 1216 .loc 1 176 0 + 179:src/l502_stream.c **** f_set_streams(g_streams | streams); + 1216 .loc 1 179 0 1217 0694 C857 R7 = R0 | R1; 1218 .LBB105: 1219 .LBB103: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1220 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1220 .loc 1 151 0 1221 0696 0AE10800 P2.L = _g_mode; 1222 069a 1091 R0 = [P2]; 1223 .LVL60: 1224 .LBE103: 1225 .LBE105: - 175:src/l502_stream.c **** int32_t stream_enable(uint32_t streams) { - 1226 .loc 1 175 0 + 178:src/l502_stream.c **** int32_t stream_enable(uint32_t streams) { + 1226 .loc 1 178 0 1227 069c 00E80300 LINK 12; 1228 .LCFI57: 1229 .LBB106: 1230 .LBB101: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1231 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1231 .loc 1 151 0 1232 06a0 080C cc =R0==1; 1233 06a2 1118 if cc jump .L74; 1234 .L70: - 159:src/l502_stream.c **** if (streams & L502_STREAM_ADC) - 1235 .loc 1 159 0 + 162:src/l502_stream.c **** if (streams & L502_STREAM_ADC) + 1235 .loc 1 162 0 1236 06a4 0960 R1 = 1 (X); 1237 06a6 4F54 R1 = R7 & R1; 1238 .LVL61: - 162:src/l502_stream.c **** wrd_en |= 0x2; - 1239 .loc 1 162 0 + 165:src/l502_stream.c **** wrd_en |= 0x2; + 1239 .loc 1 165 0 1240 06a8 0130 R0 = R1; - 161:src/l502_stream.c **** if (streams & L502_STREAM_DIN) - 1241 .loc 1 161 0 + 164:src/l502_stream.c **** if (streams & L502_STREAM_DIN) + 1241 .loc 1 164 0 1242 06aa 0F48 cc = !BITTST (R7,1); - 162:src/l502_stream.c **** wrd_en |= 0x2; - 1243 .loc 1 162 0 + 165:src/l502_stream.c **** wrd_en |= 0x2; + 1243 .loc 1 165 0 1244 06ac 084A BITSET (R0, 1); 1245 06ae 0806 if !cc R1 = R0; - 163:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); - 1246 .loc 1 163 0 + 166:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); + 1246 .loc 1 166 0 1247 06b0 20E11904 R0 = 1049 (X); 1248 06b4 FFE3A6FC call _fpga_reg_write; 1249 .LVL62: - 168:src/l502_stream.c **** g_streams = streams; - 1250 .loc 1 168 0 + 171:src/l502_stream.c **** g_streams = streams; + 1250 .loc 1 171 0 + BFIN GAS /tmp/ccEcEoYb.s page 41 + + 1251 06b8 2F93 [P5] = R7; 1252 .LBE101: 1253 .LBE106: - BFIN GAS /tmp/ccdxqFXK.s page 41 - - - 178:src/l502_stream.c **** } - 1254 .loc 1 178 0 + 181:src/l502_stream.c **** } + 1254 .loc 1 181 0 1255 06ba 01E80000 UNLINK; 1256 06be 0060 R0 = 0 (X); 1257 06c0 BD05 ( r7:7, p5:5 ) = [sp++]; @@ -2412,8 +2415,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1261 .L74: 1262 .LBB107: 1263 .LBB104: - 149:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { - 1264 .loc 1 149 0 + 152:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { + 1264 .loc 1 152 0 1265 06c4 1A60 R2 = 3 (X); 1266 06c6 1754 R0 = R7 & R2; 1267 06c8 000C cc =R0==0; @@ -2421,18 +2424,18 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1269 06cc 1154 R0 = R1 & R2; 1270 06ce 000C cc =R0==0; 1271 06d0 EA17 if !cc jump .L70 (bp); - 150:src/l502_stream.c **** sport_rx_start(); - 1272 .loc 1 150 0 + 153:src/l502_stream.c **** sport_rx_start(); + 1272 .loc 1 153 0 1273 06d2 FFE327FD call _sport_rx_start; 1274 06d6 E72F jump.s .L70; 1275 .L71: - 153:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { - 1276 .loc 1 153 0 + 156:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { + 1276 .loc 1 156 0 1277 06d8 1154 R0 = R1 & R2; 1278 06da 000C cc =R0==0; 1279 06dc E41F if cc jump .L70 (bp); - 154:src/l502_stream.c **** sport_rx_stop(); - 1280 .loc 1 154 0 + 157:src/l502_stream.c **** sport_rx_stop(); + 1280 .loc 1 157 0 1281 06de FFE3FBFC call _sport_rx_stop; 1282 06e2 E12F jump.s .L70; 1283 .LBE104: @@ -2444,44 +2447,44 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1289 .type _streams_start, STT_FUNC; 1290 _streams_start: 1291 .LFB22: - 202:src/l502_stream.c **** int32_t streams_start(void) { - 1292 .loc 1 202 0 + 205:src/l502_stream.c **** int32_t streams_start(void) { + 1292 .loc 1 205 0 1293 06e4 F305 [--sp] = ( r7:6, p5:3 ); 1294 1295 .LCFI59: - 203:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; - 1296 .loc 1 203 0 + 206:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; + 1296 .loc 1 206 0 1297 06e6 4BE10000 P3.H = _g_mode; - 202:src/l502_stream.c **** int32_t streams_start(void) { - 1298 .loc 1 202 0 + 205:src/l502_stream.c **** int32_t streams_start(void) { + 1298 .loc 1 205 0 1299 06ea 00E80300 LINK 12; + BFIN GAS /tmp/ccEcEoYb.s page 42 + + 1300 .LCFI60: - 203:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; - 1301 .loc 1 203 0 - BFIN GAS /tmp/ccdxqFXK.s page 42 - - + 206:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; + 1301 .loc 1 206 0 1302 06ee 0BE10800 P3.L = _g_mode; 1303 06f2 1891 R0 = [P3]; 1304 06f4 000C cc =R0==0; 1305 06f6 071C if cc jump .L76 (bp); - 256:src/l502_stream.c **** } - 1306 .loc 1 256 0 + 259:src/l502_stream.c **** } + 1306 .loc 1 259 0 1307 06f8 01E80000 UNLINK; - 203:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; - 1308 .loc 1 203 0 + 206:src/l502_stream.c **** int32_t err = g_mode != L502_BF_MODE_IDLE ? L502_BF_ERR_STREAM_RUNNING : 0; + 1308 .loc 1 206 0 1309 06fc 20E1FCFD R0 = -516 (X); 1310 .LVL63: - 256:src/l502_stream.c **** } - 1311 .loc 1 256 0 + 259:src/l502_stream.c **** } + 1311 .loc 1 259 0 1312 0700 B305 ( r7:6, p5:3 ) = [sp++]; 1313 1314 .LCFI61: 1315 .LVL64: 1316 0702 1000 rts; 1317 .L76: - 207:src/l502_stream.c **** f_sport_in_put_pos = f_sport_in_get_pos = f_sport_in_proc_pos = 0; - 1318 .loc 1 207 0 + 210:src/l502_stream.c **** f_sport_in_put_pos = f_sport_in_get_pos = f_sport_in_proc_pos = 0; + 1318 .loc 1 210 0 1319 0704 4AE10000 P2.H = _f_sport_in_proc_pos; 1320 0708 0060 R0 = 0 (X); 1321 070a 0AE12800 P2.L = _f_sport_in_proc_pos; @@ -2492,138 +2495,138 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1326 071a 1091 R0 = [P2]; 1327 071c 4AE10000 P2.H = _f_sport_in_put_pos; 1328 0720 0AE10C00 P2.L = _f_sport_in_put_pos; - 210:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_IN) { - 1329 .loc 1 210 0 + 213:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_IN) { + 1329 .loc 1 213 0 1330 0724 4DE10000 P5.H = _g_streams; - 207:src/l502_stream.c **** f_sport_in_put_pos = f_sport_in_get_pos = f_sport_in_proc_pos = 0; - 1331 .loc 1 207 0 + 210:src/l502_stream.c **** f_sport_in_put_pos = f_sport_in_get_pos = f_sport_in_proc_pos = 0; + 1331 .loc 1 210 0 1332 0728 1093 [P2] = R0; - 210:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_IN) { - 1333 .loc 1 210 0 + 213:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_IN) { + 1333 .loc 1 213 0 1334 072a 0DE10000 P5.L = _g_streams; 1335 072e 2891 R0 = [P5]; 1336 0730 1960 R1 = 3 (X); 1337 0732 0854 R0 = R0 & R1; 1338 0734 000C cc =R0==0; 1339 0736 5A10 if !cc jump .L90; - 215:src/l502_stream.c **** hdma_send_start(); - 1340 .loc 1 215 0 + 218:src/l502_stream.c **** hdma_send_start(); + 1340 .loc 1 218 0 1341 0738 FFE364FC call _hdma_send_start; 1342 .LBB118: 1343 .LBB122: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1344 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1344 .loc 1 151 0 1345 073c 1891 R0 = [P3]; 1346 .LBE122: + BFIN GAS /tmp/ccEcEoYb.s page 43 + + 1347 .LBE118: - 217:src/l502_stream.c **** f_set_streams(g_streams); - 1348 .loc 1 217 0 - BFIN GAS /tmp/ccdxqFXK.s page 43 - - + 220:src/l502_stream.c **** f_set_streams(g_streams); + 1348 .loc 1 220 0 1349 073e 2F91 R7 = [P5]; 1350 .LBB126: 1351 .LBB121: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1352 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1352 .loc 1 151 0 1353 0740 080C cc =R0==1; 1354 0742 4B18 if cc jump .L91; 1355 .L80: - 154:src/l502_stream.c **** sport_rx_stop(); - 1356 .loc 1 154 0 + 157:src/l502_stream.c **** sport_rx_stop(); + 1356 .loc 1 157 0 1357 0744 0960 R1 = 1 (X); 1358 0746 4F54 R1 = R7 & R1; 1359 .LVL65: - 162:src/l502_stream.c **** wrd_en |= 0x2; - 1360 .loc 1 162 0 + 165:src/l502_stream.c **** wrd_en |= 0x2; + 1360 .loc 1 165 0 1361 0748 0130 R0 = R1; - 161:src/l502_stream.c **** if (streams & L502_STREAM_DIN) - 1362 .loc 1 161 0 + 164:src/l502_stream.c **** if (streams & L502_STREAM_DIN) + 1362 .loc 1 164 0 1363 074a 0F48 cc = !BITTST (R7,1); - 162:src/l502_stream.c **** wrd_en |= 0x2; - 1364 .loc 1 162 0 + 165:src/l502_stream.c **** wrd_en |= 0x2; + 1364 .loc 1 165 0 1365 074c 084A BITSET (R0, 1); 1366 074e 0806 if !cc R1 = R0; - 163:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); - 1367 .loc 1 163 0 + 166:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOARITH_IN_STREAM_ENABLE, wrd_en); + 1367 .loc 1 166 0 1368 0750 20E11904 R0 = 1049 (X); 1369 0754 FFE356FC call _fpga_reg_write; 1370 .LVL66: 1371 .LBE121: 1372 .LBE126: - 219:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_OUT) { - 1373 .loc 1 219 0 + 222:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_OUT) { + 1373 .loc 1 222 0 1374 0758 20E17000 R0 = 112 (X); 1375 075c 0754 R0 = R7 & R0; 1376 .LBB127: 1377 .LBB123: - 168:src/l502_stream.c **** g_streams = streams; - 1378 .loc 1 168 0 + 171:src/l502_stream.c **** g_streams = streams; + 1378 .loc 1 171 0 1379 075e 2F93 [P5] = R7; 1380 .LBE123: 1381 .LBE127: - 219:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_OUT) { - 1382 .loc 1 219 0 + 222:src/l502_stream.c **** if (g_streams & L502_STREAM_ALL_OUT) { + 1382 .loc 1 222 0 1383 0760 000C cc =R0==0; 1384 0762 1710 if !cc jump .L92; 1385 .L83: - 247:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); - 1386 .loc 1 247 0 + 250:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); + 1386 .loc 1 250 0 1387 0764 20E10C03 R0 = 780 (X); 1388 0768 0960 R1 = 1 (X); 1389 076a FFE34BFC call _fpga_reg_write; - 248:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); - 1390 .loc 1 248 0 + 251:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_PRELOAD_ADC, 1); + 1390 .loc 1 251 0 1391 076e 20E10C03 R0 = 780 (X); + BFIN GAS /tmp/ccEcEoYb.s page 44 + + 1392 0772 0960 R1 = 1 (X); 1393 0774 FFE346FC call _fpga_reg_write; - 251:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 1); - BFIN GAS /tmp/ccdxqFXK.s page 44 - - - 1394 .loc 1 251 0 + 254:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_GO_SYNC_IO, 1); + 1394 .loc 1 254 0 1395 0778 20E10A03 R0 = 778 (X); 1396 077c 0960 R1 = 1 (X); 1397 077e FFE341FC call _fpga_reg_write; - 253:src/l502_stream.c **** g_mode = L502_BF_MODE_STREAM; - 1398 .loc 1 253 0 + 256:src/l502_stream.c **** g_mode = L502_BF_MODE_STREAM; + 1398 .loc 1 256 0 1399 0782 0860 R0 = 1 (X); 1400 0784 1893 [P3] = R0; - 256:src/l502_stream.c **** } - 1401 .loc 1 256 0 + 259:src/l502_stream.c **** } + 1401 .loc 1 259 0 1402 0786 01E80000 UNLINK; - 253:src/l502_stream.c **** g_mode = L502_BF_MODE_STREAM; - 1403 .loc 1 253 0 + 256:src/l502_stream.c **** g_mode = L502_BF_MODE_STREAM; + 1403 .loc 1 256 0 1404 078a 0060 R0 = 0 (X); 1405 .LVL67: 1406 .LVL68: - 256:src/l502_stream.c **** } - 1407 .loc 1 256 0 + 259:src/l502_stream.c **** } + 1407 .loc 1 259 0 1408 078c B305 ( r7:6, p5:3 ) = [sp++]; 1409 1410 .LCFI62: 1411 078e 1000 rts; 1412 .L92: - 221:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_TFS_EN_Msk; - 1413 .loc 1 221 0 + 224:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_TFS_EN_Msk; + 1413 .loc 1 224 0 1414 0790 4DE10000 P5.H = _f_bf_reg; 1415 0794 0DE11800 P5.L = _f_bf_reg; 1416 0798 2991 R1 = [P5]; 1417 079a 094A BITSET (R1, 1); - 222:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 1418 .loc 1 222 0 + 225:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 1418 .loc 1 225 0 1419 079c 20E11803 R0 = 792 (X); - 221:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_TFS_EN_Msk; - 1420 .loc 1 221 0 + 224:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_TFS_EN_Msk; + 1420 .loc 1 224 0 1421 07a0 2993 [P5] = R1; - 227:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_STOP) || - 1422 .loc 1 227 0 + 230:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_STOP) || + 1422 .loc 1 230 0 1423 07a2 4CE10000 P4.H = _g_stream_out_state; - 222:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 1424 .loc 1 222 0 + 225:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 1424 .loc 1 225 0 1425 07a6 FFE32DFC call _fpga_reg_write; - 227:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_STOP) || - 1426 .loc 1 227 0 + 230:src/l502_stream.c **** if ((g_stream_out_state == OUT_STREAM_STOP) || + 1426 .loc 1 230 0 1427 07aa 0CE10400 P4.L = _g_stream_out_state; 1428 07ae 2091 R0 = [P4]; 1429 07b0 000C cc =R0==0; @@ -2631,22 +2634,22 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1431 07b4 180C cc =R0==3; 1432 07b6 9518 if cc jump .L84; 1433 .L85: - 232:src/l502_stream.c **** if (g_stream_out_state == OUT_STREAM_PRELOAD) { - 1434 .loc 1 232 0 + 235:src/l502_stream.c **** if (g_stream_out_state == OUT_STREAM_PRELOAD) { + 1434 .loc 1 235 0 1435 07b8 2091 R0 = [P4]; 1436 07ba 080C cc =R0==1; + BFIN GAS /tmp/ccEcEoYb.s page 45 + + 1437 07bc D417 if !cc jump .L83 (bp); - 234:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg | 1); - 1438 .loc 1 234 0 - BFIN GAS /tmp/ccdxqFXK.s page 45 - - + 237:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg | 1); + 1438 .loc 1 237 0 1439 07be 2991 R1 = [P5]; 1440 07c0 20E11803 R0 = 792 (X); 1441 07c4 014A BITSET (R1, 0); 1442 07c6 FFE31DFC call _fpga_reg_write; - 235:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_RUN; - 1443 .loc 1 235 0 + 238:src/l502_stream.c **** g_stream_out_state = OUT_STREAM_RUN; + 1443 .loc 1 238 0 1444 07ca 4AE10000 P2.H = _g_stream_out_state; 1445 07ce 1060 R0 = 2 (X); 1446 07d0 0AE10400 P2.L = _g_stream_out_state; @@ -2655,16 +2658,16 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1449 .L91: 1450 .LBB128: 1451 .LBB120: - 149:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { - 1452 .loc 1 149 0 + 152:src/l502_stream.c **** if ((streams & L502_STREAM_ALL_IN) && !(g_streams & L502_STREAM_ALL_IN)) { + 1452 .loc 1 152 0 1453 07d8 1860 R0 = 3 (X); 1454 07da 0754 R0 = R7 & R0; 1455 07dc 000C cc =R0==0; 1456 07de 841C if cc jump .L81 (bp); 1457 07e0 000C cc =R0==0; 1458 07e2 B117 if !cc jump .L80 (bp); - 150:src/l502_stream.c **** sport_rx_start(); - 1459 .loc 1 150 0 + 153:src/l502_stream.c **** sport_rx_start(); + 1459 .loc 1 153 0 1460 07e4 FFE39EFC call _sport_rx_start; 1461 07e8 AE2F jump.s .L80; 1462 .L90: @@ -2672,8 +2675,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1464 .LBE128: 1465 .LBB129: 1466 .LBB130: - 480:src/l502_stream.c **** *pDMA3_CONFIG = 0; - 1467 .loc 1 480 0 + 483:src/l502_stream.c **** *pDMA3_CONFIG = 0; + 1467 .loc 1 483 0 1468 07ea 4AE1C0FF P2.H = 65472; 1469 07ee 0060 R0 = 0 (X); 1470 07f0 0AE1C80C P2.L = 3272; @@ -2684,8 +2687,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1475 07f6 2400 ssync; 1476 .LBE134: 1477 .LBE133: - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 1478 .loc 1 483 0 + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 1478 .loc 1 486 0 1479 07f8 4AE1C0FF P2.H = 65472; 1480 07fc 0AE13008 P2.L = 2096; 1481 0800 1095 R0 = W [P2] (Z); @@ -2693,26 +2696,26 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1483 0802 0048 cc = !BITTST (R0,0); 1484 0804 1518 if cc jump .L78; 1485 .LBB137: - 484:src/l502_stream.c **** dummy = *pSPORT0_RX16; - 1486 .loc 1 484 0 + 487:src/l502_stream.c **** dummy = *pSPORT0_RX16; + 1486 .loc 1 487 0 + BFIN GAS /tmp/ccEcEoYb.s page 46 + + 1487 0806 49E1C0FF P1.H = 65472; - 1488 080a 48E10000 P0.H = _dummy.2418; + 1488 080a 48E10000 P0.H = _dummy.2439; 1489 080e 09E11808 P1.L = 2072; - BFIN GAS /tmp/ccdxqFXK.s page 46 - - - 1490 0812 08E11C00 P0.L = _dummy.2418; + 1490 0812 08E11C00 P0.L = _dummy.2439; 1491 .LBE137: - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 1492 .loc 1 483 0 + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 1492 .loc 1 486 0 1493 0816 0960 R1 = 1 (X); 1494 0818 4134 I0 = P1; 1495 081a 4A34 I1 = P2; 1496 .L79: 1497 081c 0000 nop; 1498 .LBB138: - 484:src/l502_stream.c **** dummy = *pSPORT0_RX16; - 1499 .loc 1 484 0 + 487:src/l502_stream.c **** dummy = *pSPORT0_RX16; + 1499 .loc 1 487 0 1500 081e 209D R0.L = W [I0]; 1501 0820 C042 R0 = R0.L (Z); 1502 0822 0093 [P0] = R0; @@ -2722,8 +2725,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1506 0824 2400 ssync; 1507 .LBE132: 1508 .LBE131: - 483:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { - 1509 .loc 1 483 0 + 486:src/l502_stream.c **** while (*pSPORT0_STAT & RXNE) { + 1509 .loc 1 486 0 1510 0826 289D R0.L = W [I1]; 1511 .LBE138: 1512 0828 0154 R0 = R1 & R0; @@ -2731,15 +2734,15 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1514 082c F817 if !cc jump .L79 (bp); 1515 .L78: 1516 .LBB139: - 489:src/l502_stream.c **** *pDMA3_START_ADDR = (void*)f_sport_in_buf; - 1517 .loc 1 489 0 + 492:src/l502_stream.c **** *pDMA3_START_ADDR = (void*)f_sport_in_buf; + 1517 .loc 1 492 0 1518 082e 46E10000 R6.H = _f_sport_in_buf; 1519 0832 4AE1C0FF P2.H = 65472; 1520 0836 06E10000 R6.L = _f_sport_in_buf; 1521 083a 0AE1C40C P2.L = 3268; 1522 083e 1693 [P2] = R6; - 490:src/l502_stream.c **** *pDMA3_X_COUNT = 2*f_sport_in_block_size; /* так как SPORT настроен на 16 би - 1523 .loc 1 490 0 + 493:src/l502_stream.c **** *pDMA3_X_COUNT = 2*f_sport_in_block_size; /* так как SPORT настроен на 16 би + 1523 .loc 1 493 0 1524 0840 4AE10000 P2.H = _f_sport_in_block_size; 1525 0844 0AE10400 P2.L = _f_sport_in_block_size; 1526 0848 1191 R1 = [P2]; @@ -2747,38 +2750,38 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1528 084e 82C60980 R0 = R1 << 1; 1529 0852 0AE1D00C P2.L = 3280; 1530 0856 1097 W [P2] = R0; - 492:src/l502_stream.c **** *pDMA3_X_MODIFY = 2; - 1531 .loc 1 492 0 + 495:src/l502_stream.c **** *pDMA3_X_MODIFY = 2; + 1531 .loc 1 495 0 1532 0858 1760 R7 = 2 (X); 1533 085a 226C P2 += 4; 1534 085c 1797 W [P2] = R7; - 493:src/l502_stream.c **** *pDMA3_Y_COUNT = f_sport_in_buf_size/f_sport_in_block_size;; - 1535 .loc 1 493 0 + 496:src/l502_stream.c **** *pDMA3_Y_COUNT = f_sport_in_buf_size/f_sport_in_block_size;; + 1535 .loc 1 496 0 1536 085e 4AE10000 P2.H = _f_sport_in_buf_size; + BFIN GAS /tmp/ccEcEoYb.s page 47 + + 1537 0862 0AE10800 P2.L = _f_sport_in_buf_size; 1538 0866 1091 R0 = [P2]; 1539 0868 FFE3CCFB call ___udivsi3; - BFIN GAS /tmp/ccdxqFXK.s page 47 - - 1540 086c 4AE1C0FF P2.H = 65472; 1541 0870 0AE1D80C P2.L = 3288; 1542 0874 1097 W [P2] = R0; - 494:src/l502_stream.c **** *pDMA3_Y_MODIFY = 2; - 1543 .loc 1 494 0 + 497:src/l502_stream.c **** *pDMA3_Y_MODIFY = 2; + 1543 .loc 1 497 0 1544 0876 226C P2 += 4; 1545 0878 1797 W [P2] = R7; - 495:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; - 1546 .loc 1 495 0 + 498:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; + 1546 .loc 1 498 0 1547 087a 426C P2 += 8; - 496:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; - 1548 .loc 1 496 0 + 499:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; + 1548 .loc 1 499 0 1549 087c 49E1C0FF P1.H = 65472; - 495:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; - 1550 .loc 1 495 0 + 498:src/l502_stream.c **** *pDMA3_CURR_ADDR = (void*)f_sport_in_buf; + 1550 .loc 1 498 0 1551 0880 1693 [P2] = R6; - 496:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; - 1552 .loc 1 496 0 + 499:src/l502_stream.c **** *pDMA3_CONFIG = FLOW_AUTO | DI_EN | DI_SEL | SYNC | DMA2D | WNR | WDSIZE_16; + 1552 .loc 1 499 0 1553 0882 09E1C80C P1.L = 3272; 1554 0886 20E1F610 R0 = 4342 (X); 1555 088a 0897 W [P1] = R0; @@ -2788,99 +2791,99 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1559 088c 2400 ssync; 1560 .LBE136: 1561 .LBE135: - 501:src/l502_stream.c **** *pSIC_IMASK0 |= IRQ_DMA3; - 1562 .loc 1 501 0 + 504:src/l502_stream.c **** *pSIC_IMASK0 |= IRQ_DMA3; + 1562 .loc 1 504 0 1563 088e 4AE1C0FF P2.H = 65472; 1564 0892 0AE10C01 P2.L = 268; 1565 0896 1091 R0 = [P2]; 1566 0898 804A BITSET (R0, 16); 1567 089a 1093 [P2] = R0; - 502:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; - 1568 .loc 1 502 0 + 505:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; + 1568 .loc 1 505 0 1569 089c 0895 R0 = W [P1] (Z); 1570 089e 004A BITSET (R0, 0); - 504:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; - 1571 .loc 1 504 0 + 507:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; + 1571 .loc 1 507 0 1572 08a0 4AE1C0FF P2.H = 65472; - 502:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; - 1573 .loc 1 502 0 + 505:src/l502_stream.c **** *pDMA3_CONFIG |= DMAEN; + 1573 .loc 1 505 0 1574 08a4 0897 W [P1] = R0; - 504:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; - 1575 .loc 1 504 0 + 507:src/l502_stream.c **** *pSPORT0_RCR1 |= RSPEN; + 1575 .loc 1 507 0 1576 08a6 0AE12008 P2.L = 2080; 1577 08aa 1095 R0 = W [P2] (Z); 1578 08ac 004A BITSET (R0, 0); 1579 08ae 1097 W [P2] = R0; - 507:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; - 1580 .loc 1 507 0 + 510:src/l502_stream.c **** f_bf_reg |= L502_REGBIT_IOHARD_OUT_RFS_EN_Msk; + 1580 .loc 1 510 0 1581 08b0 4AE10000 P2.H = _f_bf_reg; 1582 08b4 0AE11800 P2.L = _f_bf_reg; + BFIN GAS /tmp/ccEcEoYb.s page 48 + + 1583 08b8 1191 R1 = [P2]; 1584 08ba 194A BITSET (R1, 3); 1585 08bc 1193 [P2] = R1; - BFIN GAS /tmp/ccdxqFXK.s page 48 - - - 508:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); - 1586 .loc 1 508 0 + 511:src/l502_stream.c **** fpga_reg_write(L502_REGS_IOHARD_OUTSWAP_BFCTL, f_bf_reg); + 1586 .loc 1 511 0 1587 08be 20E11803 R0 = 792 (X); 1588 08c2 FFE39FFB call _fpga_reg_write; 1589 .LBE139: 1590 .LBE129: - 212:src/l502_stream.c **** g_stream_in_state = IN_STREAM_RUN; - 1591 .loc 1 212 0 + 215:src/l502_stream.c **** g_stream_in_state = IN_STREAM_RUN; + 1591 .loc 1 215 0 1592 08c6 4AE10000 P2.H = _g_stream_in_state; 1593 08ca 1060 R0 = 2 (X); 1594 08cc 0AE10000 P2.L = _g_stream_in_state; 1595 08d0 1093 [P2] = R0; - 215:src/l502_stream.c **** hdma_send_start(); - 1596 .loc 1 215 0 + 218:src/l502_stream.c **** hdma_send_start(); + 1596 .loc 1 218 0 1597 08d2 FFE397FB call _hdma_send_start; 1598 .LBB140: 1599 .LBB124: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1600 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1600 .loc 1 151 0 1601 08d6 1891 R0 = [P3]; 1602 .LBE124: 1603 .LBE140: - 217:src/l502_stream.c **** f_set_streams(g_streams); - 1604 .loc 1 217 0 + 220:src/l502_stream.c **** f_set_streams(g_streams); + 1604 .loc 1 220 0 1605 08d8 2F91 R7 = [P5]; 1606 .LBB141: 1607 .LBB119: - 148:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { - 1608 .loc 1 148 0 + 151:src/l502_stream.c **** if (g_mode == L502_BF_MODE_STREAM) { + 1608 .loc 1 151 0 1609 08da 080C cc =R0==1; 1610 08dc 3417 if !cc jump .L80 (bp); 1611 08de 7D2F jump.s .L91; 1612 .L84: 1613 .LBE119: 1614 .LBE141: - 229:src/l502_stream.c **** stream_out_preload(); - 1615 .loc 1 229 0 + 232:src/l502_stream.c **** stream_out_preload(); + 1615 .loc 1 232 0 1616 08e0 FFE35CFD call _stream_out_preload; 1617 08e4 6A2F jump.s .L85; 1618 .L81: 1619 .LBB142: 1620 .LBB125: - 153:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { - 1621 .loc 1 153 0 + 156:src/l502_stream.c **** if (!(streams & L502_STREAM_ALL_IN) && (g_streams & L502_STREAM_ALL_IN)) { + 1621 .loc 1 156 0 1622 08e6 000C cc =R0==0; 1623 08e8 2E1F if cc jump .L80 (bp); - 154:src/l502_stream.c **** sport_rx_stop(); - 1624 .loc 1 154 0 + 157:src/l502_stream.c **** sport_rx_stop(); + 1624 .loc 1 157 0 1625 08ea FFE3F5FB call _sport_rx_stop; 1626 08ee 2B2F jump.s .L80; 1627 .LBE125: 1628 .LBE142: 1629 .LFE22: 1630 .size _streams_start, .-_streams_start + BFIN GAS /tmp/ccEcEoYb.s page 49 + + 1631 .global _g_stream_in_state; 1632 .section .bss,"aw",@nobits 1633 .align 4 - BFIN GAS /tmp/ccdxqFXK.s page 49 - - 1634 .type _g_stream_in_state, @object 1635 .size _g_stream_in_state, 4 1636 _g_stream_in_state: @@ -2922,8 +2925,8 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1672 .comm _f_recv_size,4,4 1673 .local _f_bf_reg 1674 .comm _f_bf_reg,4,4 - 1675 .local _dummy.2418 - 1676 .comm _dummy.2418,4,4 + 1675 .local _dummy.2439 + 1676 .comm _dummy.2439,4,4 1677 .local _f_hdma_out_put_pos 1678 .comm _f_hdma_out_put_pos,4,4 1679 .local _f_hdma_out_get_pos @@ -2935,12 +2938,12 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1685 .type _f_overflow_wrd, @object 1686 .size _f_overflow_wrd, 4 1687 _f_overflow_wrd: + BFIN GAS /tmp/ccEcEoYb.s page 50 + + 1688 0000 00000101 .long 16842752 1689 .section .sdram_noinit,"aw",@progbits 1690 .align 4 - BFIN GAS /tmp/ccdxqFXK.s page 50 - - 1691 .type _f_sport_in_buf, @object 1692 .size _f_sport_in_buf, 8388608 1693 _f_sport_in_buf: @@ -2965,3690 +2968,3729 @@ BFIN GAS /tmp/ccdxqFXK.s page 1 1704 .global _TX_buff; 1705 .align 4 1706 .type _TX_buff, @object - 1707 .size _TX_buff, 4000 + 1707 .size _TX_buff, 40000 1708 _TX_buff: - 1709 c00000 00000000 .zero 4000 + 1709 c00000 00000000 .zero 40000 1709 00000000 1709 00000000 1709 00000000 1709 00000000 - 1710 .global _AVG_buff; + 1710 .global _TX_buff_shadow; 1711 .align 4 - 1712 .type _AVG_buff, @object - 1713 .size _AVG_buff, 4000 - 1714 _AVG_buff: - 1715 c00fa0 00000000 .zero 4000 + 1712 .type _TX_buff_shadow, @object + 1713 .size _TX_buff_shadow, 40000 + 1714 _TX_buff_shadow: + 1715 c09c40 00000000 .zero 40000 1715 00000000 1715 00000000 1715 00000000 1715 00000000 - 1716 .section .debug_frame,"",@progbits - 1717 .Lframe0: - 1718 0000 0C000000 .4byte .LECIE0-.LSCIE0 - 1719 .LSCIE0: - 1720 0004 FFFFFFFF .4byte 0xffffffff - 1721 0008 01 .byte 0x1 - 1722 0009 00 .string "" - 1723 000a 01 .uleb128 0x1 - 1724 000b 7C .sleb128 -4 - 1725 000c 23 .byte 0x23 - 1726 000d 0C .byte 0xc - 1727 000e 0E .uleb128 0xe - 1728 000f 00 .uleb128 0x0 - 1729 .align 4 - 1730 .LECIE0: - 1731 .LSFDE0: - BFIN GAS /tmp/ccdxqFXK.s page 51 - - - 1732 0010 14000000 .4byte .LEFDE0-.LASFDE0 - 1733 .LASFDE0: - 1734 0014 00000000 .4byte .Lframe0 - 1735 0018 00000000 .4byte .LFB25 - 1736 001c 28000000 .4byte .LFE25-.LFB25 - 1737 0020 5E .byte 0x4 - 1738 .4byte .LCFI0-.LFB25 - 1739 0021 0C .byte 0xc - 1740 0022 0F .uleb128 0xf - 1741 0023 08 .uleb128 0x8 - 1742 0024 8F .byte 0x8f - 1743 0025 02 .uleb128 0x2 - 1744 0026 A3 .byte 0xa3 - 1745 0027 01 .uleb128 0x1 - 1746 .align 4 - 1747 .LEFDE0: - 1748 .LSFDE2: - 1749 0028 14000000 .4byte .LEFDE2-.LASFDE2 - 1750 .LASFDE2: - 1751 002c 00000000 .4byte .Lframe0 - 1752 0030 28000000 .4byte .LFB26 - 1753 0034 28000000 .4byte .LFE26-.LFB26 - 1754 0038 56 .byte 0x4 - 1755 .4byte .LCFI1-.LFB26 - 1756 0039 0C .byte 0xc - 1757 003a 0F .uleb128 0xf - 1758 003b 08 .uleb128 0x8 - 1759 003c 8F .byte 0x8f - 1760 003d 02 .uleb128 0x2 - 1761 003e A3 .byte 0xa3 - 1762 003f 01 .uleb128 0x1 - 1763 .align 4 - 1764 .LEFDE2: - 1765 .LSFDE4: - 1766 0040 14000000 .4byte .LEFDE4-.LASFDE4 - 1767 .LASFDE4: - 1768 0044 00000000 .4byte .Lframe0 - 1769 0048 50000000 .4byte .LFB27 - 1770 004c 22000000 .4byte .LFE27-.LFB27 - 1771 0050 58 .byte 0x4 - 1772 .4byte .LCFI2-.LFB27 - 1773 0051 0C .byte 0xc - 1774 0052 0F .uleb128 0xf - 1775 0053 08 .uleb128 0x8 - 1776 0054 8F .byte 0x8f - 1777 0055 02 .uleb128 0x2 - 1778 0056 A3 .byte 0xa3 - 1779 0057 01 .uleb128 0x1 - 1780 .align 4 - 1781 .LEFDE4: - 1782 .LSFDE6: - 1783 0058 14000000 .4byte .LEFDE6-.LASFDE6 - 1784 .LASFDE6: - 1785 005c 00000000 .4byte .Lframe0 - 1786 0060 74000000 .4byte .LFB28 - 1787 0064 0E000000 .4byte .LFE28-.LFB28 - 1788 0068 44 .byte 0x4 - BFIN GAS /tmp/ccdxqFXK.s page 52 - - - 1789 .4byte .LCFI3-.LFB28 - 1790 0069 0C .byte 0xc - 1791 006a 0F .uleb128 0xf - 1792 006b 08 .uleb128 0x8 - 1793 006c 8F .byte 0x8f - 1794 006d 02 .uleb128 0x2 - 1795 006e A3 .byte 0xa3 - 1796 006f 01 .uleb128 0x1 - 1797 .align 4 - 1798 .LEFDE6: - 1799 .LSFDE8: - 1800 0070 1C000000 .4byte .LEFDE8-.LASFDE8 - 1801 .LASFDE8: - 1802 0074 00000000 .4byte .Lframe0 - 1803 0078 84000000 .4byte .LFB29 - 1804 007c 4E000000 .4byte .LFE29-.LFB29 - 1805 0080 42 .byte 0x4 - 1806 .4byte .LCFI4-.LFB29 - 1807 0081 0E .byte 0xe - 1808 0082 04 .uleb128 0x4 - 1809 0083 87 .byte 0x87 - 1810 0084 01 .uleb128 0x1 - 1811 0085 4A .byte 0x4 - 1812 .4byte .LCFI5-.LCFI4 - 1813 0086 0C .byte 0xc - 1814 0087 0F .uleb128 0xf - 1815 0088 0C .uleb128 0xc - 1816 0089 8F .byte 0x8f - 1817 008a 03 .uleb128 0x3 - 1818 008b A3 .byte 0xa3 - 1819 008c 02 .uleb128 0x2 - 1820 008d 000000 .align 4 - 1821 .LEFDE8: - 1822 .LSFDE10: - 1823 0090 14000000 .4byte .LEFDE10-.LASFDE10 - 1824 .LASFDE10: - 1825 0094 00000000 .4byte .Lframe0 - 1826 0098 D4000000 .4byte .LFB31 - 1827 009c 4C000000 .4byte .LFE31-.LFB31 - 1828 00a0 48 .byte 0x4 - 1829 .4byte .LCFI8-.LFB31 - 1830 00a1 0C .byte 0xc - 1831 00a2 0F .uleb128 0xf - 1832 00a3 08 .uleb128 0x8 - 1833 00a4 8F .byte 0x8f - 1834 00a5 02 .uleb128 0x2 - 1835 00a6 A3 .byte 0xa3 - 1836 00a7 01 .uleb128 0x1 - 1837 .align 4 - 1838 .LEFDE10: - 1839 .LSFDE12: - 1840 00a8 1C000000 .4byte .LEFDE12-.LASFDE12 - 1841 .LASFDE12: - 1842 00ac 00000000 .4byte .Lframe0 - 1843 00b0 20010000 .4byte .LFB30 - 1844 00b4 E8000000 .4byte .LFE30-.LFB30 - 1845 00b8 42 .byte 0x4 - BFIN GAS /tmp/ccdxqFXK.s page 53 - - - 1846 .4byte .LCFI9-.LFB30 - 1847 00b9 0E .byte 0xe - 1848 00ba 08 .uleb128 0x8 - 1849 00bb 48 .byte 0x4 - 1850 .4byte .LCFI10-.LCFI9 - 1851 00bc 0C .byte 0xc - 1852 00bd 0F .uleb128 0xf - 1853 00be 10 .uleb128 0x10 - 1854 00bf 8F .byte 0x8f - 1855 00c0 04 .uleb128 0x4 - 1856 00c1 A3 .byte 0xa3 - 1857 00c2 03 .uleb128 0x3 - 1858 00c3 87 .byte 0x87 - 1859 00c4 02 .uleb128 0x2 - 1860 00c5 86 .byte 0x86 - 1861 00c6 01 .uleb128 0x1 - 1862 00c7 00 .align 4 - 1863 .LEFDE12: - 1864 .LSFDE14: - 1865 00c8 20000000 .4byte .LEFDE14-.LASFDE14 - 1866 .LASFDE14: - 1867 00cc 00000000 .4byte .Lframe0 - 1868 00d0 08020000 .4byte .LFB24 - 1869 00d4 90010000 .4byte .LFE24-.LFB24 - 1870 00d8 42 .byte 0x4 - 1871 .4byte .LCFI12-.LFB24 - 1872 00d9 0E .byte 0xe - 1873 00da 0C .uleb128 0xc - 1874 00db 8D .byte 0x8d - 1875 00dc 03 .uleb128 0x3 - 1876 00dd 8C .byte 0x8c - 1877 00de 02 .uleb128 0x2 - 1878 00df 8B .byte 0x8b - 1879 00e0 01 .uleb128 0x1 - 1880 00e1 4E .byte 0x4 - 1881 .4byte .LCFI13-.LCFI12 - 1882 00e2 0C .byte 0xc - 1883 00e3 0F .uleb128 0xf - 1884 00e4 14 .uleb128 0x14 - 1885 00e5 8F .byte 0x8f - 1886 00e6 05 .uleb128 0x5 - 1887 00e7 A3 .byte 0xa3 - 1888 00e8 04 .uleb128 0x4 - 1889 00e9 000000 .align 4 - 1890 .LEFDE14: - 1891 .LSFDE16: - 1892 00ec 1C000000 .4byte .LEFDE16-.LASFDE16 - 1893 .LASFDE16: - 1894 00f0 00000000 .4byte .Lframe0 - 1895 00f4 98030000 .4byte .LFB18 - 1896 00f8 74000000 .4byte .LFE18-.LFB18 - 1897 00fc 42 .byte 0x4 - 1898 .4byte .LCFI15-.LFB18 - 1899 00fd 0E .byte 0xe - 1900 00fe 08 .uleb128 0x8 - 1901 00ff 8D .byte 0x8d - 1902 0100 02 .uleb128 0x2 - BFIN GAS /tmp/ccdxqFXK.s page 54 - - - 1903 0101 8C .byte 0x8c - 1904 0102 01 .uleb128 0x1 - 1905 0103 48 .byte 0x4 - 1906 .4byte .LCFI16-.LCFI15 - 1907 0104 0C .byte 0xc - 1908 0105 0F .uleb128 0xf - 1909 0106 10 .uleb128 0x10 - 1910 0107 8F .byte 0x8f - 1911 0108 04 .uleb128 0x4 - 1912 0109 A3 .byte 0xa3 - 1913 010a 03 .uleb128 0x3 - 1914 010b 00 .align 4 - 1915 .LEFDE16: - 1916 .LSFDE18: - 1917 010c 14000000 .4byte .LEFDE18-.LASFDE18 - 1918 .LASFDE18: - 1919 0110 00000000 .4byte .Lframe0 - 1920 0114 0C040000 .4byte .LFB17 - 1921 0118 20000000 .4byte .LFE17-.LFB17 - 1922 011c 44 .byte 0x4 - 1923 .4byte .LCFI19-.LFB17 - 1924 011d 0C .byte 0xc - 1925 011e 0F .uleb128 0xf - 1926 011f 08 .uleb128 0x8 - 1927 0120 8F .byte 0x8f - 1928 0121 02 .uleb128 0x2 - 1929 0122 A3 .byte 0xa3 - 1930 0123 01 .uleb128 0x1 - 1931 .align 4 - 1932 .LEFDE18: - 1933 .LSFDE20: - 1934 0124 20000000 .4byte .LEFDE20-.LASFDE20 - 1935 .LASFDE20: - 1936 0128 00000000 .4byte .Lframe0 - 1937 012c 2C040000 .4byte .LFB23 - 1938 0130 A6000000 .4byte .LFE23-.LFB23 - 1939 0134 42 .byte 0x4 - 1940 .4byte .LCFI20-.LFB23 - 1941 0135 0E .byte 0xe - 1942 0136 0C .uleb128 0xc - 1943 0137 8D .byte 0x8d - 1944 0138 03 .uleb128 0x3 - 1945 0139 8C .byte 0x8c - 1946 013a 02 .uleb128 0x2 - 1947 013b 87 .byte 0x87 - 1948 013c 01 .uleb128 0x1 - 1949 013d 48 .byte 0x4 - 1950 .4byte .LCFI21-.LCFI20 - 1951 013e 0C .byte 0xc - 1952 013f 0F .uleb128 0xf - 1953 0140 14 .uleb128 0x14 - 1954 0141 8F .byte 0x8f - 1955 0142 05 .uleb128 0x5 - 1956 0143 A3 .byte 0xa3 - 1957 0144 04 .uleb128 0x4 - 1958 0145 000000 .align 4 - 1959 .LEFDE20: - BFIN GAS /tmp/ccdxqFXK.s page 55 - - - 1960 .LSFDE22: - 1961 0148 C0000000 .4byte .LEFDE22-.LASFDE22 - 1962 .LASFDE22: - 1963 014c 00000000 .4byte .Lframe0 - 1964 0150 D4040000 .4byte .LFB32 - 1965 0154 4C010000 .4byte .LFE32-.LFB32 - 1966 0158 42 .byte 0x4 - 1967 .4byte .LCFI24-.LFB32 - 1968 0159 0E .byte 0xe - 1969 015a 04 .uleb128 0x4 - 1970 015b 42 .byte 0x4 - 1971 .4byte .LCFI25-.LCFI24 - 1972 015c 0E .byte 0xe - 1973 015d 08 .uleb128 0x8 - 1974 015e 42 .byte 0x4 - 1975 .4byte .LCFI26-.LCFI25 - 1976 015f 0E .byte 0xe - 1977 0160 0C .uleb128 0xc - 1978 0161 42 .byte 0x4 - 1979 .4byte .LCFI27-.LCFI26 - 1980 0162 0E .byte 0xe - 1981 0163 10 .uleb128 0x10 - 1982 0164 42 .byte 0x4 - 1983 .4byte .LCFI28-.LCFI27 - 1984 0165 0E .byte 0xe - 1985 0166 14 .uleb128 0x14 - 1986 0167 42 .byte 0x4 - 1987 .4byte .LCFI29-.LCFI28 - 1988 0168 0E .byte 0xe - 1989 0169 18 .uleb128 0x18 - 1990 016a 42 .byte 0x4 - 1991 .4byte .LCFI30-.LCFI29 - 1992 016b 0E .byte 0xe - 1993 016c 1C .uleb128 0x1c - 1994 016d 42 .byte 0x4 - 1995 .4byte .LCFI31-.LCFI30 - 1996 016e 0E .byte 0xe - 1997 016f 54 .uleb128 0x54 - 1998 0170 42 .byte 0x4 - 1999 .4byte .LCFI32-.LCFI31 - 2000 0171 0E .byte 0xe - 2001 0172 58 .uleb128 0x58 - 2002 0173 42 .byte 0x4 - 2003 .4byte .LCFI33-.LCFI32 - 2004 0174 0E .byte 0xe - 2005 0175 5C .uleb128 0x5c - 2006 0176 42 .byte 0x4 - 2007 .4byte .LCFI34-.LCFI33 - 2008 0177 0E .byte 0xe - 2009 0178 60 .uleb128 0x60 - 2010 0179 42 .byte 0x4 - 2011 .4byte .LCFI35-.LCFI34 - 2012 017a 0E .byte 0xe - 2013 017b 64 .uleb128 0x64 - 2014 017c 42 .byte 0x4 - 2015 .4byte .LCFI36-.LCFI35 - 2016 017d 0E .byte 0xe - BFIN GAS /tmp/ccdxqFXK.s page 56 - - - 2017 017e 68 .uleb128 0x68 - 2018 017f 42 .byte 0x4 - 2019 .4byte .LCFI37-.LCFI36 - 2020 0180 0E .byte 0xe - 2021 0181 6C .uleb128 0x6c - 2022 0182 42 .byte 0x4 - 2023 .4byte .LCFI38-.LCFI37 - 2024 0183 0E .byte 0xe - 2025 0184 70 .uleb128 0x70 - 2026 0185 42 .byte 0x4 - 2027 .4byte .LCFI39-.LCFI38 - 2028 0186 0E .byte 0xe - 2029 0187 74 .uleb128 0x74 - 2030 0188 42 .byte 0x4 - 2031 .4byte .LCFI40-.LCFI39 - 2032 0189 0E .byte 0xe - 2033 018a 78 .uleb128 0x78 - 2034 018b 42 .byte 0x4 - 2035 .4byte .LCFI41-.LCFI40 - 2036 018c 0E .byte 0xe - 2037 018d 7C .uleb128 0x7c - 2038 018e 42 .byte 0x4 - 2039 .4byte .LCFI42-.LCFI41 - 2040 018f 0E .byte 0xe - 2041 0190 8001 .uleb128 0x80 - 2042 0192 42 .byte 0x4 - 2043 .4byte .LCFI43-.LCFI42 - 2044 0193 0E .byte 0xe - 2045 0194 8401 .uleb128 0x84 - 2046 0196 42 .byte 0x4 - 2047 .4byte .LCFI44-.LCFI43 - 2048 0197 0E .byte 0xe - 2049 0198 8801 .uleb128 0x88 - 2050 019a 42 .byte 0x4 - 2051 .4byte .LCFI45-.LCFI44 - 2052 019b 0E .byte 0xe - 2053 019c 8C01 .uleb128 0x8c - 2054 019e 42 .byte 0x4 - 2055 .4byte .LCFI46-.LCFI45 - 2056 019f 0E .byte 0xe - 2057 01a0 9001 .uleb128 0x90 - 2058 01a2 42 .byte 0x4 - 2059 .4byte .LCFI47-.LCFI46 - 2060 01a3 0E .byte 0xe - 2061 01a4 9401 .uleb128 0x94 - 2062 01a6 44 .byte 0x4 - 2063 .4byte .LCFI48-.LCFI47 - 2064 01a7 0E .byte 0xe - 2065 01a8 9C01 .uleb128 0x9c - 2066 01aa A0 .byte 0xa0 - 2067 01ab 27 .uleb128 0x27 - 2068 01ac 9F .byte 0x9f - 2069 01ad 25 .uleb128 0x25 - 2070 01ae 9E .byte 0x9e - 2071 01af 24 .uleb128 0x24 - 2072 01b0 9D .byte 0x9d - 2073 01b1 23 .uleb128 0x23 - BFIN GAS /tmp/ccdxqFXK.s page 57 - - - 2074 01b2 9C .byte 0x9c - 2075 01b3 22 .uleb128 0x22 - 2076 01b4 9B .byte 0x9b - 2077 01b5 21 .uleb128 0x21 - 2078 01b6 9A .byte 0x9a - 2079 01b7 20 .uleb128 0x20 - 2080 01b8 99 .byte 0x99 - 2081 01b9 1F .uleb128 0x1f - 2082 01ba 98 .byte 0x98 - 2083 01bb 1E .uleb128 0x1e - 2084 01bc 97 .byte 0x97 - 2085 01bd 1D .uleb128 0x1d - 2086 01be 96 .byte 0x96 - 2087 01bf 1C .uleb128 0x1c - 2088 01c0 95 .byte 0x95 - 2089 01c1 1B .uleb128 0x1b - 2090 01c2 94 .byte 0x94 - 2091 01c3 1A .uleb128 0x1a - 2092 01c4 93 .byte 0x93 - 2093 01c5 19 .uleb128 0x19 - 2094 01c6 92 .byte 0x92 - 2095 01c7 18 .uleb128 0x18 - 2096 01c8 91 .byte 0x91 - 2097 01c9 17 .uleb128 0x17 - 2098 01ca 90 .byte 0x90 - 2099 01cb 16 .uleb128 0x16 - 2100 01cc 8D .byte 0x8d - 2101 01cd 15 .uleb128 0x15 - 2102 01ce 8C .byte 0x8c - 2103 01cf 14 .uleb128 0x14 - 2104 01d0 8B .byte 0x8b - 2105 01d1 13 .uleb128 0x13 - 2106 01d2 8A .byte 0x8a - 2107 01d3 12 .uleb128 0x12 - 2108 01d4 89 .byte 0x89 - 2109 01d5 11 .uleb128 0x11 - 2110 01d6 88 .byte 0x88 - 2111 01d7 10 .uleb128 0x10 - 2112 01d8 87 .byte 0x87 - 2113 01d9 0F .uleb128 0xf - 2114 01da 86 .byte 0x86 - 2115 01db 0E .uleb128 0xe - 2116 01dc 85 .byte 0x85 - 2117 01dd 0D .uleb128 0xd - 2118 01de 84 .byte 0x84 - 2119 01df 0C .uleb128 0xc - 2120 01e0 83 .byte 0x83 - 2121 01e1 0B .uleb128 0xb - 2122 01e2 82 .byte 0x82 - 2123 01e3 0A .uleb128 0xa - 2124 01e4 81 .byte 0x81 - 2125 01e5 09 .uleb128 0x9 - 2126 01e6 80 .byte 0x80 - 2127 01e7 08 .uleb128 0x8 - 2128 01e8 B1 .byte 0xb1 - 2129 01e9 07 .uleb128 0x7 - 2130 01ea B0 .byte 0xb0 - BFIN GAS /tmp/ccdxqFXK.s page 58 - - - 2131 01eb 06 .uleb128 0x6 - 2132 01ec AF .byte 0xaf - 2133 01ed 05 .uleb128 0x5 - 2134 01ee AE .byte 0xae - 2135 01ef 04 .uleb128 0x4 - 2136 01f0 AD .byte 0xad - 2137 01f1 03 .uleb128 0x3 - 2138 01f2 AC .byte 0xac - 2139 01f3 02 .uleb128 0x2 - 2140 01f4 A8 .byte 0xa8 - 2141 01f5 01 .uleb128 0x1 - 2142 01f6 48 .byte 0x4 - 2143 .4byte .LCFI49-.LCFI48 - 2144 01f7 0E .byte 0xe - 2145 01f8 A401 .uleb128 0xa4 - 2146 01fa 46 .byte 0x4 - 2147 .4byte .LCFI50-.LCFI49 - 2148 01fb 0E .byte 0xe - 2149 01fc A801 .uleb128 0xa8 - 2150 01fe 44 .byte 0x4 - 2151 .4byte .LCFI51-.LCFI50 - 2152 01ff 0C .byte 0xc - 2153 0200 0F .uleb128 0xf - 2154 0201 B001 .uleb128 0xb0 - 2155 0203 8F .byte 0x8f - 2156 0204 2C .uleb128 0x2c - 2157 0205 A3 .byte 0xa3 - 2158 0206 2B .uleb128 0x2b - 2159 0207 A4 .byte 0xa4 - 2160 0208 2A .uleb128 0x2a - 2161 0209 A1 .byte 0xa1 - 2162 020a 29 .uleb128 0x29 - 2163 020b 00 .align 4 - 2164 .LEFDE22: - 2165 .LSFDE24: - 2166 020c 1C000000 .4byte .LEFDE24-.LASFDE24 - 2167 .LASFDE24: - 2168 0210 00000000 .4byte .Lframe0 - 2169 0214 20060000 .4byte .LFB21 - 2170 0218 62000000 .4byte .LFE21-.LFB21 - 2171 021c 42 .byte 0x4 - 2172 .4byte .LCFI53-.LFB21 - 2173 021d 0E .byte 0xe - 2174 021e 08 .uleb128 0x8 - 2175 021f 8D .byte 0x8d - 2176 0220 02 .uleb128 0x2 - 2177 0221 87 .byte 0x87 - 2178 0222 01 .uleb128 0x1 - 2179 0223 5C .byte 0x4 - 2180 .4byte .LCFI54-.LCFI53 - 2181 0224 0C .byte 0xc - 2182 0225 0F .uleb128 0xf - 2183 0226 10 .uleb128 0x10 - 2184 0227 8F .byte 0x8f - 2185 0228 04 .uleb128 0x4 - 2186 0229 A3 .byte 0xa3 - 2187 022a 03 .uleb128 0x3 - BFIN GAS /tmp/ccdxqFXK.s page 59 - - - 2188 022b 00 .align 4 - 2189 .LEFDE24: - 2190 .LSFDE26: - 2191 022c 1C000000 .4byte .LEFDE26-.LASFDE26 - 2192 .LASFDE26: - 2193 0230 00000000 .4byte .Lframe0 - 2194 0234 84060000 .4byte .LFB20 - 2195 0238 60000000 .4byte .LFE20-.LFB20 - 2196 023c 42 .byte 0x4 - 2197 .4byte .LCFI56-.LFB20 - 2198 023d 0E .byte 0xe - 2199 023e 08 .uleb128 0x8 - 2200 023f 8D .byte 0x8d - 2201 0240 02 .uleb128 0x2 - 2202 0241 87 .byte 0x87 - 2203 0242 01 .uleb128 0x1 - 2204 0243 5A .byte 0x4 - 2205 .4byte .LCFI57-.LCFI56 - 2206 0244 0C .byte 0xc - 2207 0245 0F .uleb128 0xf - 2208 0246 10 .uleb128 0x10 - 2209 0247 8F .byte 0x8f - 2210 0248 04 .uleb128 0x4 - 2211 0249 A3 .byte 0xa3 - 2212 024a 03 .uleb128 0x3 - 2213 024b 00 .align 4 - 2214 .LEFDE26: - 2215 .LSFDE28: - 2216 024c 24000000 .4byte .LEFDE28-.LASFDE28 - 2217 .LASFDE28: - 2218 0250 00000000 .4byte .Lframe0 - 2219 0254 E4060000 .4byte .LFB22 - 2220 0258 0C020000 .4byte .LFE22-.LFB22 - 2221 025c 42 .byte 0x4 - 2222 .4byte .LCFI59-.LFB22 - 2223 025d 0E .byte 0xe - 2224 025e 14 .uleb128 0x14 - 2225 025f 8D .byte 0x8d - 2226 0260 05 .uleb128 0x5 - 2227 0261 8C .byte 0x8c - 2228 0262 04 .uleb128 0x4 - 2229 0263 8B .byte 0x8b - 2230 0264 03 .uleb128 0x3 - 2231 0265 87 .byte 0x87 - 2232 0266 02 .uleb128 0x2 - 2233 0267 86 .byte 0x86 - 2234 0268 01 .uleb128 0x1 - 2235 0269 48 .byte 0x4 - 2236 .4byte .LCFI60-.LCFI59 - 2237 026a 0C .byte 0xc - 2238 026b 0F .uleb128 0xf - 2239 026c 1C .uleb128 0x1c - 2240 026d 8F .byte 0x8f - 2241 026e 07 .uleb128 0x7 - 2242 026f A3 .byte 0xa3 - 2243 0270 06 .uleb128 0x6 - 2244 0271 000000 .align 4 - BFIN GAS /tmp/ccdxqFXK.s page 60 - - - 2245 .LEFDE28: - 2246 .text; - 2247 .Letext0: - 2248 .section .debug_loc,"",@progbits - 2249 .Ldebug_loc0: - 2250 .LLST0: - 2251 0000 00000000 .4byte .LFB25-.Ltext0 - 2252 0004 1E000000 .4byte .LCFI0-.Ltext0 - 2253 0008 0100 .2byte 0x1 - 2254 000a 5E .byte 0x5e - 2255 000b 1E000000 .4byte .LCFI0-.Ltext0 - 2256 000f 28000000 .4byte .LFE25-.Ltext0 - 2257 0013 0200 .2byte 0x2 - 2258 0015 7F .byte 0x7f - 2259 0016 08 .sleb128 8 - 2260 0017 00000000 .4byte 0x0 - 2261 001b 00000000 .4byte 0x0 - 2262 .LLST1: - 2263 001f 00000000 .4byte .LVL0-.Ltext0 - 2264 0023 10000000 .4byte .LVL2-.Ltext0 - 2265 0027 0100 .2byte 0x1 - 2266 0029 50 .byte 0x50 - 2267 002a 00000000 .4byte 0x0 - 2268 002e 00000000 .4byte 0x0 - 2269 .LLST2: - 2270 0032 0A000000 .4byte .LVL1-.Ltext0 - 2271 0036 10000000 .4byte .LVL2-.Ltext0 - 2272 003a 0100 .2byte 0x1 - 2273 003c 51 .byte 0x51 - 2274 003d 10000000 .4byte .LVL2-.Ltext0 - 2275 0041 28000000 .4byte .LFE25-.Ltext0 - 2276 0045 0100 .2byte 0x1 - 2277 0047 50 .byte 0x50 - 2278 0048 00000000 .4byte 0x0 - 2279 004c 00000000 .4byte 0x0 - 2280 .LLST3: - 2281 0050 28000000 .4byte .LFB26-.Ltext0 - 2282 0054 3E000000 .4byte .LCFI1-.Ltext0 - 2283 0058 0100 .2byte 0x1 - 2284 005a 5E .byte 0x5e - 2285 005b 3E000000 .4byte .LCFI1-.Ltext0 - 2286 005f 50000000 .4byte .LFE26-.Ltext0 - 2287 0063 0200 .2byte 0x2 - 2288 0065 7F .byte 0x7f - 2289 0066 08 .sleb128 8 - 2290 0067 00000000 .4byte 0x0 - 2291 006b 00000000 .4byte 0x0 - 2292 .LLST4: - 2293 006f 28000000 .4byte .LVL3-.Ltext0 - 2294 0073 36000000 .4byte .LVL6-.Ltext0 - 2295 0077 0100 .2byte 0x1 - 2296 0079 50 .byte 0x50 - 2297 007a 00000000 .4byte 0x0 - 2298 007e 00000000 .4byte 0x0 - 2299 .LLST5: - 2300 0082 50000000 .4byte .LFB27-.Ltext0 - 2301 0086 68000000 .4byte .LCFI2-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 61 - - - 2302 008a 0100 .2byte 0x1 - 2303 008c 5E .byte 0x5e - 2304 008d 68000000 .4byte .LCFI2-.Ltext0 - 2305 0091 72000000 .4byte .LFE27-.Ltext0 - 2306 0095 0200 .2byte 0x2 - 2307 0097 7F .byte 0x7f - 2308 0098 08 .sleb128 8 - 2309 0099 00000000 .4byte 0x0 - 2310 009d 00000000 .4byte 0x0 - 2311 .LLST6: - 2312 00a1 50000000 .4byte .LVL7-.Ltext0 - 2313 00a5 5A000000 .4byte .LVL8-.Ltext0 - 2314 00a9 0100 .2byte 0x1 - 2315 00ab 50 .byte 0x50 - 2316 00ac 00000000 .4byte 0x0 - 2317 00b0 00000000 .4byte 0x0 - 2318 .LLST7: - 2319 00b4 50000000 .4byte .LVL7-.Ltext0 - 2320 00b8 5C000000 .4byte .LVL9-.Ltext0 - 2321 00bc 0100 .2byte 0x1 - 2322 00be 51 .byte 0x51 - 2323 00bf 00000000 .4byte 0x0 - 2324 00c3 00000000 .4byte 0x0 - 2325 .LLST8: - 2326 00c7 5A000000 .4byte .LVL8-.Ltext0 - 2327 00cb 5C000000 .4byte .LVL9-.Ltext0 - 2328 00cf 0100 .2byte 0x1 - 2329 00d1 50 .byte 0x50 - 2330 00d2 5C000000 .4byte .LVL9-.Ltext0 - 2331 00d6 72000000 .4byte .LFE27-.Ltext0 - 2332 00da 0100 .2byte 0x1 - 2333 00dc 51 .byte 0x51 - 2334 00dd 00000000 .4byte 0x0 - 2335 00e1 00000000 .4byte 0x0 - 2336 .LLST9: - 2337 00e5 74000000 .4byte .LFB28-.Ltext0 - 2338 00e9 78000000 .4byte .LCFI3-.Ltext0 - 2339 00ed 0100 .2byte 0x1 - 2340 00ef 5E .byte 0x5e - 2341 00f0 78000000 .4byte .LCFI3-.Ltext0 - 2342 00f4 82000000 .4byte .LFE28-.Ltext0 - 2343 00f8 0200 .2byte 0x2 - 2344 00fa 7F .byte 0x7f - 2345 00fb 08 .sleb128 8 - 2346 00fc 00000000 .4byte 0x0 - 2347 0100 00000000 .4byte 0x0 - 2348 .LLST10: - 2349 0104 84000000 .4byte .LFB29-.Ltext0 - 2350 0108 86000000 .4byte .LCFI4-.Ltext0 - 2351 010c 0100 .2byte 0x1 - 2352 010e 5E .byte 0x5e - 2353 010f 86000000 .4byte .LCFI4-.Ltext0 - 2354 0113 90000000 .4byte .LCFI5-.Ltext0 - 2355 0117 0200 .2byte 0x2 - 2356 0119 7E .byte 0x7e - 2357 011a 04 .sleb128 4 - 2358 011b 90000000 .4byte .LCFI5-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 62 - - - 2359 011f D2000000 .4byte .LFE29-.Ltext0 - 2360 0123 0200 .2byte 0x2 - 2361 0125 7F .byte 0x7f - 2362 0126 0C .sleb128 12 - 2363 0127 00000000 .4byte 0x0 - 2364 012b 00000000 .4byte 0x0 - 2365 .LLST11: - 2366 012f 84000000 .4byte .LVL10-.Ltext0 - 2367 0133 8C000000 .4byte .LVL11-.Ltext0 - 2368 0137 0100 .2byte 0x1 - 2369 0139 50 .byte 0x50 - 2370 013a 8C000000 .4byte .LVL11-.Ltext0 - 2371 013e C4000000 .4byte .LVL12-.Ltext0 - 2372 0142 0100 .2byte 0x1 - 2373 0144 57 .byte 0x57 - 2374 0145 C6000000 .4byte .LVL13-.Ltext0 - 2375 0149 D0000000 .4byte .LVL14-.Ltext0 - 2376 014d 0100 .2byte 0x1 - 2377 014f 57 .byte 0x57 - 2378 0150 00000000 .4byte 0x0 - 2379 0154 00000000 .4byte 0x0 - 2380 .LLST12: - 2381 0158 D4000000 .4byte .LFB31-.Ltext0 - 2382 015c DC000000 .4byte .LCFI8-.Ltext0 - 2383 0160 0100 .2byte 0x1 - 2384 0162 5E .byte 0x5e - 2385 0163 DC000000 .4byte .LCFI8-.Ltext0 - 2386 0167 20010000 .4byte .LFE31-.Ltext0 - 2387 016b 0200 .2byte 0x2 - 2388 016d 7F .byte 0x7f - 2389 016e 08 .sleb128 8 - 2390 016f 00000000 .4byte 0x0 - 2391 0173 00000000 .4byte 0x0 - 2392 .LLST13: - 2393 0177 20010000 .4byte .LFB30-.Ltext0 - 2394 017b 22010000 .4byte .LCFI9-.Ltext0 - 2395 017f 0100 .2byte 0x1 - 2396 0181 5E .byte 0x5e - 2397 0182 22010000 .4byte .LCFI9-.Ltext0 - 2398 0186 2A010000 .4byte .LCFI10-.Ltext0 - 2399 018a 0200 .2byte 0x2 - 2400 018c 7E .byte 0x7e - 2401 018d 08 .sleb128 8 - 2402 018e 2A010000 .4byte .LCFI10-.Ltext0 - 2403 0192 08020000 .4byte .LFE30-.Ltext0 - 2404 0196 0200 .2byte 0x2 - 2405 0198 7F .byte 0x7f - 2406 0199 10 .sleb128 16 - 2407 019a 00000000 .4byte 0x0 - 2408 019e 00000000 .4byte 0x0 - 2409 .LLST14: - 2410 01a2 08020000 .4byte .LFB24-.Ltext0 - 2411 01a6 0A020000 .4byte .LCFI12-.Ltext0 - 2412 01aa 0100 .2byte 0x1 - 2413 01ac 5E .byte 0x5e - 2414 01ad 0A020000 .4byte .LCFI12-.Ltext0 - 2415 01b1 18020000 .4byte .LCFI13-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 63 - - - 2416 01b5 0200 .2byte 0x2 - 2417 01b7 7E .byte 0x7e - 2418 01b8 0C .sleb128 12 - 2419 01b9 18020000 .4byte .LCFI13-.Ltext0 - 2420 01bd 98030000 .4byte .LFE24-.Ltext0 - 2421 01c1 0200 .2byte 0x2 - 2422 01c3 7F .byte 0x7f - 2423 01c4 14 .sleb128 20 - 2424 01c5 00000000 .4byte 0x0 - 2425 01c9 00000000 .4byte 0x0 - 2426 .LLST15: - 2427 01cd 3A020000 .4byte .LVL16-.Ltext0 - 2428 01d1 5E020000 .4byte .LVL18-.Ltext0 - 2429 01d5 0100 .2byte 0x1 - 2430 01d7 5D .byte 0x5d - 2431 01d8 60020000 .4byte .LVL19-.Ltext0 - 2432 01dc 68020000 .4byte .LVL20-.Ltext0 - 2433 01e0 0100 .2byte 0x1 - 2434 01e2 5D .byte 0x5d - 2435 01e3 FA020000 .4byte .LVL30-.Ltext0 - 2436 01e7 34030000 .4byte .LVL32-.Ltext0 - 2437 01eb 0100 .2byte 0x1 - 2438 01ed 5D .byte 0x5d - 2439 01ee 68030000 .4byte .LVL37-.Ltext0 - 2440 01f2 92030000 .4byte .LVL38-.Ltext0 - 2441 01f6 0100 .2byte 0x1 - 2442 01f8 5D .byte 0x5d - 2443 01f9 00000000 .4byte 0x0 - 2444 01fd 00000000 .4byte 0x0 - 2445 .LLST16: - 2446 0201 32020000 .4byte .LVL15-.Ltext0 - 2447 0205 3A020000 .4byte .LVL16-.Ltext0 - 2448 0209 0100 .2byte 0x1 - 2449 020b 5A .byte 0x5a - 2450 020c EE020000 .4byte .LVL28-.Ltext0 - 2451 0210 F2020000 .4byte .LVL29-.Ltext0 - 2452 0214 0100 .2byte 0x1 - 2453 0216 5A .byte 0x5a - 2454 0217 00000000 .4byte 0x0 - 2455 021b 00000000 .4byte 0x0 - 2456 .LLST17: - 2457 021f 58020000 .4byte .LVL17-.Ltext0 - 2458 0223 60020000 .4byte .LVL19-.Ltext0 - 2459 0227 0100 .2byte 0x1 - 2460 0229 5A .byte 0x5a - 2461 022a 80020000 .4byte .LVL22-.Ltext0 - 2462 022e 88020000 .4byte .LVL23-.Ltext0 - 2463 0232 0100 .2byte 0x1 - 2464 0234 51 .byte 0x51 - 2465 0235 B0020000 .4byte .LVL25-.Ltext0 - 2466 0239 C0020000 .4byte .LVL27-.Ltext0 - 2467 023d 0100 .2byte 0x1 - 2468 023f 5A .byte 0x5a - 2469 0240 38030000 .4byte .LVL33-.Ltext0 - 2470 0244 4C030000 .4byte .LVL35-.Ltext0 - 2471 0248 0100 .2byte 0x1 - 2472 024a 51 .byte 0x51 - BFIN GAS /tmp/ccdxqFXK.s page 64 - - - 2473 024b 94030000 .4byte .LVL39-.Ltext0 - 2474 024f 98030000 .4byte .LFE24-.Ltext0 - 2475 0253 0100 .2byte 0x1 - 2476 0255 5A .byte 0x5a - 2477 0256 00000000 .4byte 0x0 - 2478 025a 00000000 .4byte 0x0 - 2479 .LLST18: - 2480 025e 72020000 .4byte .LVL21-.Ltext0 - 2481 0262 88020000 .4byte .LVL23-.Ltext0 - 2482 0266 0100 .2byte 0x1 - 2483 0268 5A .byte 0x5a - 2484 0269 34030000 .4byte .LVL32-.Ltext0 - 2485 026d 40030000 .4byte .LVL34-.Ltext0 - 2486 0271 0100 .2byte 0x1 - 2487 0273 5A .byte 0x5a - 2488 0274 00000000 .4byte 0x0 - 2489 0278 00000000 .4byte 0x0 - 2490 .LLST19: - 2491 027c 9E020000 .4byte .LVL24-.Ltext0 - 2492 0280 B4020000 .4byte .LVL26-.Ltext0 - 2493 0284 0100 .2byte 0x1 - 2494 0286 59 .byte 0x59 - 2495 0287 92030000 .4byte .LVL38-.Ltext0 - 2496 028b 98030000 .4byte .LFE24-.Ltext0 - 2497 028f 0100 .2byte 0x1 - 2498 0291 59 .byte 0x59 - 2499 0292 00000000 .4byte 0x0 - 2500 0296 00000000 .4byte 0x0 - 2501 .LLST20: - 2502 029a 98030000 .4byte .LFB18-.Ltext0 - 2503 029e 9A030000 .4byte .LCFI15-.Ltext0 - 2504 02a2 0100 .2byte 0x1 - 2505 02a4 5E .byte 0x5e - 2506 02a5 9A030000 .4byte .LCFI15-.Ltext0 - 2507 02a9 A2030000 .4byte .LCFI16-.Ltext0 - 2508 02ad 0200 .2byte 0x2 - 2509 02af 7E .byte 0x7e - 2510 02b0 08 .sleb128 8 - 2511 02b1 A2030000 .4byte .LCFI16-.Ltext0 - 2512 02b5 0C040000 .4byte .LFE18-.Ltext0 - 2513 02b9 0200 .2byte 0x2 - 2514 02bb 7F .byte 0x7f - 2515 02bc 10 .sleb128 16 - 2516 02bd 00000000 .4byte 0x0 - 2517 02c1 00000000 .4byte 0x0 - 2518 .LLST21: - 2519 02c5 FC030000 .4byte .LVL40-.Ltext0 - 2520 02c9 FC030000 .4byte .LVL41-.Ltext0 - 2521 02cd 0100 .2byte 0x1 - 2522 02cf 50 .byte 0x50 - 2523 02d0 08040000 .4byte .LVL42-.Ltext0 - 2524 02d4 0A040000 .4byte .LVL43-.Ltext0 - 2525 02d8 0100 .2byte 0x1 - 2526 02da 50 .byte 0x50 - 2527 02db 00000000 .4byte 0x0 - 2528 02df 00000000 .4byte 0x0 - 2529 .LLST22: - BFIN GAS /tmp/ccdxqFXK.s page 65 - - - 2530 02e3 0C040000 .4byte .LFB17-.Ltext0 - 2531 02e7 10040000 .4byte .LCFI19-.Ltext0 - 2532 02eb 0100 .2byte 0x1 - 2533 02ed 5E .byte 0x5e - 2534 02ee 10040000 .4byte .LCFI19-.Ltext0 - 2535 02f2 2C040000 .4byte .LFE17-.Ltext0 - 2536 02f6 0200 .2byte 0x2 - 2537 02f8 7F .byte 0x7f - 2538 02f9 08 .sleb128 8 - 2539 02fa 00000000 .4byte 0x0 - 2540 02fe 00000000 .4byte 0x0 - 2541 .LLST23: - 2542 0302 2C040000 .4byte .LFB23-.Ltext0 - 2543 0306 2E040000 .4byte .LCFI20-.Ltext0 - 2544 030a 0100 .2byte 0x1 - 2545 030c 5E .byte 0x5e - 2546 030d 2E040000 .4byte .LCFI20-.Ltext0 - 2547 0311 36040000 .4byte .LCFI21-.Ltext0 - 2548 0315 0200 .2byte 0x2 - 2549 0317 7E .byte 0x7e - 2550 0318 0C .sleb128 12 - 2551 0319 36040000 .4byte .LCFI21-.Ltext0 - 2552 031d D2040000 .4byte .LFE23-.Ltext0 - 2553 0321 0200 .2byte 0x2 - 2554 0323 7F .byte 0x7f - 2555 0324 14 .sleb128 20 - 2556 0325 00000000 .4byte 0x0 - 2557 0329 00000000 .4byte 0x0 - 2558 .LLST24: - 2559 032d 48040000 .4byte .LVL44-.Ltext0 - 2560 0331 4A040000 .4byte .LVL45-.Ltext0 - 2561 0335 0100 .2byte 0x1 - 2562 0337 50 .byte 0x50 - 2563 0338 CE040000 .4byte .LVL46-.Ltext0 - 2564 033c CE040000 .4byte .LVL47-.Ltext0 - 2565 0340 0100 .2byte 0x1 - 2566 0342 50 .byte 0x50 - 2567 0343 00000000 .4byte 0x0 - 2568 0347 00000000 .4byte 0x0 - 2569 .LLST25: - 2570 034b D4040000 .4byte .LFB32-.Ltext0 - 2571 034f D6040000 .4byte .LCFI24-.Ltext0 - 2572 0353 0100 .2byte 0x1 - 2573 0355 5E .byte 0x5e - 2574 0356 D6040000 .4byte .LCFI24-.Ltext0 - 2575 035a D8040000 .4byte .LCFI25-.Ltext0 - 2576 035e 0200 .2byte 0x2 - 2577 0360 7E .byte 0x7e - 2578 0361 04 .sleb128 4 - 2579 0362 D8040000 .4byte .LCFI25-.Ltext0 - 2580 0366 DA040000 .4byte .LCFI26-.Ltext0 - 2581 036a 0200 .2byte 0x2 - 2582 036c 7E .byte 0x7e - 2583 036d 08 .sleb128 8 - 2584 036e DA040000 .4byte .LCFI26-.Ltext0 - 2585 0372 DC040000 .4byte .LCFI27-.Ltext0 - 2586 0376 0200 .2byte 0x2 - BFIN GAS /tmp/ccdxqFXK.s page 66 - - - 2587 0378 7E .byte 0x7e - 2588 0379 0C .sleb128 12 - 2589 037a DC040000 .4byte .LCFI27-.Ltext0 - 2590 037e DE040000 .4byte .LCFI28-.Ltext0 - 2591 0382 0200 .2byte 0x2 - 2592 0384 7E .byte 0x7e - 2593 0385 10 .sleb128 16 - 2594 0386 DE040000 .4byte .LCFI28-.Ltext0 - 2595 038a E0040000 .4byte .LCFI29-.Ltext0 - 2596 038e 0200 .2byte 0x2 - 2597 0390 7E .byte 0x7e - 2598 0391 14 .sleb128 20 - 2599 0392 E0040000 .4byte .LCFI29-.Ltext0 - 2600 0396 E2040000 .4byte .LCFI30-.Ltext0 - 2601 039a 0200 .2byte 0x2 - 2602 039c 7E .byte 0x7e - 2603 039d 18 .sleb128 24 - 2604 039e E2040000 .4byte .LCFI30-.Ltext0 - 2605 03a2 E4040000 .4byte .LCFI31-.Ltext0 - 2606 03a6 0200 .2byte 0x2 - 2607 03a8 7E .byte 0x7e - 2608 03a9 1C .sleb128 28 - 2609 03aa E4040000 .4byte .LCFI31-.Ltext0 - 2610 03ae E6040000 .4byte .LCFI32-.Ltext0 - 2611 03b2 0300 .2byte 0x3 - 2612 03b4 7E .byte 0x7e - 2613 03b5 D400 .sleb128 84 - 2614 03b7 E6040000 .4byte .LCFI32-.Ltext0 - 2615 03bb E8040000 .4byte .LCFI33-.Ltext0 - 2616 03bf 0300 .2byte 0x3 - 2617 03c1 7E .byte 0x7e - 2618 03c2 D800 .sleb128 88 - 2619 03c4 E8040000 .4byte .LCFI33-.Ltext0 - 2620 03c8 EA040000 .4byte .LCFI34-.Ltext0 - 2621 03cc 0300 .2byte 0x3 - 2622 03ce 7E .byte 0x7e - 2623 03cf DC00 .sleb128 92 - 2624 03d1 EA040000 .4byte .LCFI34-.Ltext0 - 2625 03d5 EC040000 .4byte .LCFI35-.Ltext0 - 2626 03d9 0300 .2byte 0x3 - 2627 03db 7E .byte 0x7e - 2628 03dc E000 .sleb128 96 - 2629 03de EC040000 .4byte .LCFI35-.Ltext0 - 2630 03e2 EE040000 .4byte .LCFI36-.Ltext0 - 2631 03e6 0300 .2byte 0x3 - 2632 03e8 7E .byte 0x7e - 2633 03e9 E400 .sleb128 100 - 2634 03eb EE040000 .4byte .LCFI36-.Ltext0 - 2635 03ef F0040000 .4byte .LCFI37-.Ltext0 - 2636 03f3 0300 .2byte 0x3 - 2637 03f5 7E .byte 0x7e - 2638 03f6 E800 .sleb128 104 - 2639 03f8 F0040000 .4byte .LCFI37-.Ltext0 - 2640 03fc F2040000 .4byte .LCFI38-.Ltext0 - 2641 0400 0300 .2byte 0x3 - 2642 0402 7E .byte 0x7e - 2643 0403 EC00 .sleb128 108 - BFIN GAS /tmp/ccdxqFXK.s page 67 - - - 2644 0405 F2040000 .4byte .LCFI38-.Ltext0 - 2645 0409 F4040000 .4byte .LCFI39-.Ltext0 - 2646 040d 0300 .2byte 0x3 - 2647 040f 7E .byte 0x7e - 2648 0410 F000 .sleb128 112 - 2649 0412 F4040000 .4byte .LCFI39-.Ltext0 - 2650 0416 F6040000 .4byte .LCFI40-.Ltext0 - 2651 041a 0300 .2byte 0x3 - 2652 041c 7E .byte 0x7e - 2653 041d F400 .sleb128 116 - 2654 041f F6040000 .4byte .LCFI40-.Ltext0 - 2655 0423 F8040000 .4byte .LCFI41-.Ltext0 - 2656 0427 0300 .2byte 0x3 - 2657 0429 7E .byte 0x7e - 2658 042a F800 .sleb128 120 - 2659 042c F8040000 .4byte .LCFI41-.Ltext0 - 2660 0430 FA040000 .4byte .LCFI42-.Ltext0 - 2661 0434 0300 .2byte 0x3 - 2662 0436 7E .byte 0x7e - 2663 0437 FC00 .sleb128 124 - 2664 0439 FA040000 .4byte .LCFI42-.Ltext0 - 2665 043d FC040000 .4byte .LCFI43-.Ltext0 - 2666 0441 0300 .2byte 0x3 - 2667 0443 7E .byte 0x7e - 2668 0444 8001 .sleb128 128 - 2669 0446 FC040000 .4byte .LCFI43-.Ltext0 - 2670 044a FE040000 .4byte .LCFI44-.Ltext0 - 2671 044e 0300 .2byte 0x3 - 2672 0450 7E .byte 0x7e - 2673 0451 8401 .sleb128 132 - 2674 0453 FE040000 .4byte .LCFI44-.Ltext0 - 2675 0457 00050000 .4byte .LCFI45-.Ltext0 - 2676 045b 0300 .2byte 0x3 - 2677 045d 7E .byte 0x7e - 2678 045e 8801 .sleb128 136 - 2679 0460 00050000 .4byte .LCFI45-.Ltext0 - 2680 0464 02050000 .4byte .LCFI46-.Ltext0 - 2681 0468 0300 .2byte 0x3 - 2682 046a 7E .byte 0x7e - 2683 046b 8C01 .sleb128 140 - 2684 046d 02050000 .4byte .LCFI46-.Ltext0 - 2685 0471 04050000 .4byte .LCFI47-.Ltext0 - 2686 0475 0300 .2byte 0x3 - 2687 0477 7E .byte 0x7e - 2688 0478 9001 .sleb128 144 - 2689 047a 04050000 .4byte .LCFI47-.Ltext0 - 2690 047e 08050000 .4byte .LCFI48-.Ltext0 - 2691 0482 0300 .2byte 0x3 - 2692 0484 7E .byte 0x7e - 2693 0485 9401 .sleb128 148 - 2694 0487 08050000 .4byte .LCFI48-.Ltext0 - 2695 048b 10050000 .4byte .LCFI49-.Ltext0 - 2696 048f 0300 .2byte 0x3 - 2697 0491 7E .byte 0x7e - 2698 0492 9C01 .sleb128 156 - 2699 0494 10050000 .4byte .LCFI49-.Ltext0 - 2700 0498 16050000 .4byte .LCFI50-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 68 - - - 2701 049c 0300 .2byte 0x3 - 2702 049e 7E .byte 0x7e - 2703 049f A401 .sleb128 164 - 2704 04a1 16050000 .4byte .LCFI50-.Ltext0 - 2705 04a5 1A050000 .4byte .LCFI51-.Ltext0 - 2706 04a9 0300 .2byte 0x3 - 2707 04ab 7E .byte 0x7e - 2708 04ac A801 .sleb128 168 - 2709 04ae 1A050000 .4byte .LCFI51-.Ltext0 - 2710 04b2 20060000 .4byte .LFE32-.Ltext0 - 2711 04b6 0300 .2byte 0x3 - 2712 04b8 7F .byte 0x7f - 2713 04b9 B001 .sleb128 176 - 2714 04bb 00000000 .4byte 0x0 - 2715 04bf 00000000 .4byte 0x0 - 2716 .LLST26: - 2717 04c3 6A050000 .4byte .LVL49-.Ltext0 - 2718 04c7 B0050000 .4byte .LVL50-.Ltext0 - 2719 04cb 0100 .2byte 0x1 - 2720 04cd 51 .byte 0x51 - 2721 04ce C8050000 .4byte .LVL52-.Ltext0 - 2722 04d2 D4050000 .4byte .LVL53-.Ltext0 - 2723 04d6 0100 .2byte 0x1 - 2724 04d8 51 .byte 0x51 - 2725 04d9 00000000 .4byte 0x0 - 2726 04dd 00000000 .4byte 0x0 - 2727 .LLST27: - 2728 04e1 58050000 .4byte .LVL48-.Ltext0 - 2729 04e5 B0050000 .4byte .LVL50-.Ltext0 - 2730 04e9 0100 .2byte 0x1 - 2731 04eb 52 .byte 0x52 - 2732 04ec C0050000 .4byte .LVL51-.Ltext0 - 2733 04f0 E0050000 .4byte .LVL54-.Ltext0 - 2734 04f4 0100 .2byte 0x1 - 2735 04f6 52 .byte 0x52 - 2736 04f7 00000000 .4byte 0x0 - 2737 04fb 00000000 .4byte 0x0 - 2738 .LLST28: - 2739 04ff 20060000 .4byte .LFB21-.Ltext0 - 2740 0503 22060000 .4byte .LCFI53-.Ltext0 - 2741 0507 0100 .2byte 0x1 - 2742 0509 5E .byte 0x5e - 2743 050a 22060000 .4byte .LCFI53-.Ltext0 - 2744 050e 3E060000 .4byte .LCFI54-.Ltext0 - 2745 0512 0200 .2byte 0x2 - 2746 0514 7E .byte 0x7e - 2747 0515 08 .sleb128 8 - 2748 0516 3E060000 .4byte .LCFI54-.Ltext0 - 2749 051a 82060000 .4byte .LFE21-.Ltext0 - 2750 051e 0200 .2byte 0x2 - 2751 0520 7F .byte 0x7f - 2752 0521 10 .sleb128 16 - 2753 0522 00000000 .4byte 0x0 - 2754 0526 00000000 .4byte 0x0 - 2755 .LLST29: - 2756 052a 20060000 .4byte .LVL55-.Ltext0 - 2757 052e 2C060000 .4byte .LVL56-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 69 - - - 2758 0532 0100 .2byte 0x1 - 2759 0534 50 .byte 0x50 - 2760 0535 00000000 .4byte 0x0 - 2761 0539 00000000 .4byte 0x0 - 2762 .LLST30: - 2763 053d 46060000 .4byte .LVL57-.Ltext0 - 2764 0541 56060000 .4byte .LVL58-.Ltext0 - 2765 0545 0100 .2byte 0x1 - 2766 0547 51 .byte 0x51 - 2767 0548 00000000 .4byte 0x0 - 2768 054c 00000000 .4byte 0x0 - 2769 .LLST31: - 2770 0550 84060000 .4byte .LFB20-.Ltext0 - 2771 0554 86060000 .4byte .LCFI56-.Ltext0 - 2772 0558 0100 .2byte 0x1 - 2773 055a 5E .byte 0x5e - 2774 055b 86060000 .4byte .LCFI56-.Ltext0 - 2775 055f A0060000 .4byte .LCFI57-.Ltext0 - 2776 0563 0200 .2byte 0x2 - 2777 0565 7E .byte 0x7e - 2778 0566 08 .sleb128 8 - 2779 0567 A0060000 .4byte .LCFI57-.Ltext0 - 2780 056b E4060000 .4byte .LFE20-.Ltext0 - 2781 056f 0200 .2byte 0x2 - 2782 0571 7F .byte 0x7f - 2783 0572 10 .sleb128 16 - 2784 0573 00000000 .4byte 0x0 - 2785 0577 00000000 .4byte 0x0 - 2786 .LLST32: - 2787 057b 84060000 .4byte .LVL59-.Ltext0 - 2788 057f 9C060000 .4byte .LVL60-.Ltext0 - 2789 0583 0100 .2byte 0x1 - 2790 0585 50 .byte 0x50 - 2791 0586 00000000 .4byte 0x0 - 2792 058a 00000000 .4byte 0x0 - 2793 .LLST33: - 2794 058e A8060000 .4byte .LVL61-.Ltext0 - 2795 0592 B8060000 .4byte .LVL62-.Ltext0 - 2796 0596 0100 .2byte 0x1 - 2797 0598 51 .byte 0x51 - 2798 0599 00000000 .4byte 0x0 - 2799 059d 00000000 .4byte 0x0 - 2800 .LLST34: - 2801 05a1 E4060000 .4byte .LFB22-.Ltext0 - 2802 05a5 E6060000 .4byte .LCFI59-.Ltext0 - 2803 05a9 0100 .2byte 0x1 - 2804 05ab 5E .byte 0x5e - 2805 05ac E6060000 .4byte .LCFI59-.Ltext0 - 2806 05b0 EE060000 .4byte .LCFI60-.Ltext0 - 2807 05b4 0200 .2byte 0x2 - 2808 05b6 7E .byte 0x7e - 2809 05b7 14 .sleb128 20 - 2810 05b8 EE060000 .4byte .LCFI60-.Ltext0 - 2811 05bc F0080000 .4byte .LFE22-.Ltext0 - 2812 05c0 0200 .2byte 0x2 - 2813 05c2 7F .byte 0x7f - 2814 05c3 1C .sleb128 28 - BFIN GAS /tmp/ccdxqFXK.s page 70 - - - 2815 05c4 00000000 .4byte 0x0 - 2816 05c8 00000000 .4byte 0x0 - 2817 .LLST35: - 2818 05cc 00070000 .4byte .LVL63-.Ltext0 - 2819 05d0 02070000 .4byte .LVL64-.Ltext0 - 2820 05d4 0100 .2byte 0x1 - 2821 05d6 50 .byte 0x50 - 2822 05d7 8C070000 .4byte .LVL67-.Ltext0 - 2823 05db 8C070000 .4byte .LVL68-.Ltext0 - 2824 05df 0100 .2byte 0x1 - 2825 05e1 50 .byte 0x50 - 2826 05e2 00000000 .4byte 0x0 - 2827 05e6 00000000 .4byte 0x0 - 2828 .LLST36: - 2829 05ea 48070000 .4byte .LVL65-.Ltext0 - 2830 05ee 58070000 .4byte .LVL66-.Ltext0 - 2831 05f2 0100 .2byte 0x1 - 2832 05f4 51 .byte 0x51 - 2833 05f5 00000000 .4byte 0x0 - 2834 05f9 00000000 .4byte 0x0 - 2835 .file 3 "/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib - 2836 .file 4 "src/l502_bf_cmd_defs.h" - 2837 .file 5 "src/l502_defs.h" - 2838 .file 6 "src/l502_stream.h" - 2839 .section .debug_info - 2840 0000 4B080000 .4byte 0x84b - 2841 0004 0200 .2byte 0x2 - 2842 0006 00000000 .4byte .Ldebug_abbrev0 - 2843 000a 04 .byte 0x4 - 2844 000b 01 .uleb128 0x1 - 2845 000c 5D000000 .4byte .LASF89 - 2846 0010 01 .byte 0x1 - 2847 0011 B3000000 .4byte .LASF90 - 2848 0015 D0040000 .4byte .LASF91 - 2849 0019 00000000 .4byte .Ltext0 - 2850 001d F0080000 .4byte .Letext0 - 2851 0021 00000000 .4byte .Ldebug_line0 - 2852 0025 02 .uleb128 0x2 - 2853 0026 01 .byte 0x1 - 2854 0027 06 .byte 0x6 - 2855 0028 83030000 .4byte .LASF0 - 2856 002c 02 .uleb128 0x2 - 2857 002d 01 .byte 0x1 - 2858 002e 08 .byte 0x8 - 2859 002f 12030000 .4byte .LASF1 - 2860 0033 02 .uleb128 0x2 - 2861 0034 02 .byte 0x2 - 2862 0035 05 .byte 0x5 - 2863 0036 3D010000 .4byte .LASF2 - 2864 003a 02 .uleb128 0x2 - 2865 003b 02 .byte 0x2 - 2866 003c 07 .byte 0x7 - 2867 003d FD030000 .4byte .LASF3 - 2868 0041 03 .uleb128 0x3 - 2869 0042 46040000 .4byte .LASF5 - 2870 0046 03 .byte 0x3 - 2871 0047 4F .byte 0x4f - BFIN GAS /tmp/ccdxqFXK.s page 71 - - - 2872 0048 4C000000 .4byte 0x4c - 2873 004c 02 .uleb128 0x2 - 2874 004d 04 .byte 0x4 - 2875 004e 05 .byte 0x5 - 2876 004f 57020000 .4byte .LASF4 - 2877 0053 03 .uleb128 0x3 - 2878 0054 A6030000 .4byte .LASF6 - 2879 0058 03 .byte 0x3 - 2880 0059 50 .byte 0x50 - 2881 005a 5E000000 .4byte 0x5e - 2882 005e 02 .uleb128 0x2 - 2883 005f 04 .byte 0x4 - 2884 0060 07 .byte 0x7 - 2885 0061 1A050000 .4byte .LASF7 - 2886 0065 02 .uleb128 0x2 - 2887 0066 08 .byte 0x8 - 2888 0067 05 .byte 0x5 - 2889 0068 13020000 .4byte .LASF8 - 2890 006c 02 .uleb128 0x2 - 2891 006d 08 .byte 0x8 - 2892 006e 07 .byte 0x7 - 2893 006f 8F030000 .4byte .LASF9 - 2894 0073 04 .uleb128 0x4 - 2895 0074 04 .byte 0x4 - 2896 0075 05 .byte 0x5 - 2897 0076 696E7400 .string "int" - 2898 007a 02 .uleb128 0x2 - 2899 007b 04 .byte 0x4 - 2900 007c 07 .byte 0x7 - 2901 007d AF030000 .4byte .LASF10 - 2902 0081 05 .uleb128 0x5 - 2903 0082 04 .byte 0x4 - 2904 0083 07 .byte 0x7 - 2905 0084 02 .uleb128 0x2 - 2906 0085 01 .byte 0x1 - 2907 0086 06 .byte 0x6 - 2908 0087 41040000 .4byte .LASF11 - 2909 008b 06 .uleb128 0x6 - 2910 008c 04 .byte 0x4 - 2911 008d 04 .byte 0x4 - 2912 008e 69 .byte 0x69 - 2913 008f D9000000 .4byte 0xd9 - 2914 0093 07 .uleb128 0x7 - 2915 0094 7D050000 .4byte .LASF12 - 2916 0098 00 .sleb128 0 - 2917 0099 07 .uleb128 0x7 - 2918 009a 52050000 .4byte .LASF13 - 2919 009e 807C .sleb128 -512 - 2920 00a0 07 .uleb128 0x7 - 2921 00a1 60020000 .4byte .LASF14 - 2922 00a5 807C .sleb128 -512 - 2923 00a7 07 .uleb128 0x7 - 2924 00a8 CF020000 .4byte .LASF15 - 2925 00ac FF7B .sleb128 -513 - 2926 00ae 07 .uleb128 0x7 - 2927 00af 10040000 .4byte .LASF16 - 2928 00b3 FE7B .sleb128 -514 - BFIN GAS /tmp/ccdxqFXK.s page 72 - - - 2929 00b5 07 .uleb128 0x7 - 2930 00b6 4E040000 .4byte .LASF17 - 2931 00ba FD7B .sleb128 -515 - 2932 00bc 07 .uleb128 0x7 - 2933 00bd 2C000000 .4byte .LASF18 - 2934 00c1 FC7B .sleb128 -516 - 2935 00c3 07 .uleb128 0x7 - 2936 00c4 47010000 .4byte .LASF19 - 2937 00c8 FB7B .sleb128 -517 - 2938 00ca 07 .uleb128 0x7 - 2939 00cb 78000000 .4byte .LASF20 - 2940 00cf FA7B .sleb128 -518 - 2941 00d1 07 .uleb128 0x7 - 2942 00d2 40020000 .4byte .LASF21 - 2943 00d6 F97B .sleb128 -519 - 2944 00d8 00 .byte 0x0 - 2945 00d9 06 .uleb128 0x6 - 2946 00da 04 .byte 0x4 - 2947 00db 04 .byte 0x4 - 2948 00dc 7A .byte 0x7a - 2949 00dd F4000000 .4byte 0xf4 - 2950 00e1 07 .uleb128 0x7 - 2951 00e2 EE050000 .4byte .LASF22 - 2952 00e6 00 .sleb128 0 - 2953 00e7 07 .uleb128 0x7 - 2954 00e8 98020000 .4byte .LASF23 - 2955 00ec 01 .sleb128 1 - 2956 00ed 07 .uleb128 0x7 - 2957 00ee 2F040000 .4byte .LASF24 - 2958 00f2 02 .sleb128 2 - 2959 00f3 00 .byte 0x0 - 2960 00f4 06 .uleb128 0x6 - 2961 00f5 04 .byte 0x4 - 2962 00f6 05 .byte 0x5 - 2963 00f7 74 .byte 0x74 - 2964 00f8 29010000 .4byte 0x129 - 2965 00fc 07 .uleb128 0x7 - 2966 00fd 4C030000 .4byte .LASF25 - 2967 0101 01 .sleb128 1 - 2968 0102 07 .uleb128 0x7 - 2969 0103 88020000 .4byte .LASF26 - 2970 0107 02 .sleb128 2 - 2971 0108 07 .uleb128 0x7 - 2972 0109 FC000000 .4byte .LASF27 - 2973 010d 10 .sleb128 16 - 2974 010e 07 .uleb128 0x7 - 2975 010f 0D010000 .4byte .LASF28 - 2976 0113 20 .sleb128 32 - 2977 0114 07 .uleb128 0x7 - 2978 0115 5C030000 .4byte .LASF29 - 2979 0119 C000 .sleb128 64 - 2980 011b 07 .uleb128 0x7 - 2981 011c B9050000 .4byte .LASF30 - 2982 0120 03 .sleb128 3 - 2983 0121 07 .uleb128 0x7 - 2984 0122 DF010000 .4byte .LASF31 - 2985 0126 F000 .sleb128 112 - BFIN GAS /tmp/ccdxqFXK.s page 73 - - - 2986 0128 00 .byte 0x0 - 2987 0129 06 .uleb128 0x6 - 2988 012a 04 .byte 0x4 - 2989 012b 06 .byte 0x6 - 2990 012c 11 .byte 0x11 - 2991 012d 4A010000 .4byte 0x14a - 2992 0131 07 .uleb128 0x7 - 2993 0132 CF000000 .4byte .LASF32 - 2994 0136 00 .sleb128 0 - 2995 0137 07 .uleb128 0x7 - 2996 0138 77040000 .4byte .LASF33 - 2997 013c 02 .sleb128 2 - 2998 013d 07 .uleb128 0x7 - 2999 013e B9010000 .4byte .LASF34 - 3000 0142 04 .sleb128 4 - 3001 0143 07 .uleb128 0x7 - 3002 0144 0F000000 .4byte .LASF35 - 3003 0148 03 .sleb128 3 - 3004 0149 00 .byte 0x0 - 3005 014a 03 .uleb128 0x3 - 3006 014b 31050000 .4byte .LASF36 - 3007 014f 06 .byte 0x6 - 3008 0150 16 .byte 0x16 - 3009 0151 29010000 .4byte 0x129 - 3010 0155 06 .uleb128 0x6 - 3011 0156 04 .byte 0x4 - 3012 0157 06 .byte 0x6 - 3013 0158 19 .byte 0x19 - 3014 0159 7C010000 .4byte 0x17c - 3015 015d 07 .uleb128 0x7 - 3016 015e 21020000 .4byte .LASF37 - 3017 0162 00 .sleb128 0 - 3018 0163 07 .uleb128 0x7 - 3019 0164 DE030000 .4byte .LASF38 - 3020 0168 01 .sleb128 1 - 3021 0169 07 .uleb128 0x7 - 3022 016a 1D000000 .4byte .LASF39 - 3023 016e 02 .sleb128 2 - 3024 016f 07 .uleb128 0x7 - 3025 0170 31020000 .4byte .LASF40 - 3026 0174 03 .sleb128 3 - 3027 0175 07 .uleb128 0x7 - 3028 0176 13060000 .4byte .LASF41 - 3029 017a 04 .sleb128 4 - 3030 017b 00 .byte 0x0 - 3031 017c 03 .uleb128 0x3 - 3032 017d CC050000 .4byte .LASF42 - 3033 0181 06 .byte 0x6 - 3034 0182 20 .byte 0x20 - 3035 0183 55010000 .4byte 0x155 - 3036 0187 08 .uleb128 0x8 - 3037 0188 F8020000 .4byte .LASF43 - 3038 018c 02 .byte 0x2 - 3039 018d 1401 .2byte 0x114 - 3040 018f 01 .byte 0x1 - 3041 0190 01 .byte 0x1 - 3042 0191 09 .uleb128 0x9 - BFIN GAS /tmp/ccdxqFXK.s page 74 - - - 3043 0192 8A010000 .4byte .LASF44 - 3044 0196 01 .byte 0x1 - 3045 0197 61 .byte 0x61 - 3046 0198 01 .byte 0x1 - 3047 0199 01 .byte 0x1 - 3048 019a 0A .uleb128 0xa - 3049 019b 01 .byte 0x1 - 3050 019c 85040000 .4byte .LASF45 - 3051 01a0 01 .byte 0x1 - 3052 01a1 7F01 .2byte 0x17f - 3053 01a3 01 .byte 0x1 - 3054 01a4 00000000 .4byte .LFB25 - 3055 01a8 28000000 .4byte .LFE25 - 3056 01ac 00000000 .4byte .LLST0 - 3057 01b0 D5010000 .4byte 0x1d5 - 3058 01b4 0B .uleb128 0xb - 3059 01b5 2C050000 .4byte .LASF47 - 3060 01b9 01 .byte 0x1 - 3061 01ba 7F01 .2byte 0x17f - 3062 01bc 53000000 .4byte 0x53 - 3063 01c0 1F000000 .4byte .LLST1 - 3064 01c4 0C .uleb128 0xc - 3065 01c5 AB000000 .4byte .LASF48 - 3066 01c9 01 .byte 0x1 - 3067 01ca 8101 .2byte 0x181 - 3068 01cc 53000000 .4byte 0x53 - 3069 01d0 32000000 .4byte .LLST2 - 3070 01d4 00 .byte 0x0 - 3071 01d5 0A .uleb128 0xa - 3072 01d6 01 .byte 0x1 - 3073 01d7 AC020000 .4byte .LASF46 - 3074 01db 01 .byte 0x1 - 3075 01dc 9101 .2byte 0x191 - 3076 01de 01 .byte 0x1 - 3077 01df 28000000 .4byte .LFB26 - 3078 01e3 50000000 .4byte .LFE26 - 3079 01e7 50000000 .4byte .LLST3 - 3080 01eb 0E020000 .4byte 0x20e - 3081 01ef 0B .uleb128 0xb - 3082 01f0 2C050000 .4byte .LASF47 - 3083 01f4 01 .byte 0x1 - 3084 01f5 9101 .2byte 0x191 - 3085 01f7 53000000 .4byte 0x53 - 3086 01fb 6F000000 .4byte .LLST4 - 3087 01ff 0D .uleb128 0xd - 3088 0200 AB000000 .4byte .LASF48 - 3089 0204 01 .byte 0x1 - 3090 0205 9201 .2byte 0x192 - 3091 0207 53000000 .4byte 0x53 - 3092 020b 01 .byte 0x1 - 3093 020c 51 .byte 0x51 - 3094 020d 00 .byte 0x0 - 3095 020e 0A .uleb128 0xa - 3096 020f 01 .byte 0x1 - 3097 0210 00000000 .4byte .LASF49 - 3098 0214 01 .byte 0x1 - 3099 0215 A301 .2byte 0x1a3 - BFIN GAS /tmp/ccdxqFXK.s page 75 - - - 3100 0217 01 .byte 0x1 - 3101 0218 50000000 .4byte .LFB27 - 3102 021c 72000000 .4byte .LFE27 - 3103 0220 82000000 .4byte .LLST5 - 3104 0224 59020000 .4byte 0x259 - 3105 0228 0B .uleb128 0xb - 3106 0229 83020000 .4byte .LASF50 - 3107 022d 01 .byte 0x1 - 3108 022e A301 .2byte 0x1a3 - 3109 0230 59020000 .4byte 0x259 - 3110 0234 A1000000 .4byte .LLST6 - 3111 0238 0B .uleb128 0xb - 3112 0239 2C050000 .4byte .LASF47 - 3113 023d 01 .byte 0x1 - 3114 023e A301 .2byte 0x1a3 - 3115 0240 53000000 .4byte 0x53 - 3116 0244 B4000000 .4byte .LLST7 - 3117 0248 0C .uleb128 0xc - 3118 0249 B1010000 .4byte .LASF51 - 3119 024d 01 .byte 0x1 - 3120 024e A501 .2byte 0x1a5 - 3121 0250 53000000 .4byte 0x53 - 3122 0254 C7000000 .4byte .LLST8 - 3123 0258 00 .byte 0x0 - 3124 0259 0E .uleb128 0xe - 3125 025a 04 .byte 0x4 - 3126 025b 53000000 .4byte 0x53 - 3127 025f 0F .uleb128 0xf - 3128 0260 01 .byte 0x1 - 3129 0261 DE000000 .4byte .LASF92 - 3130 0265 01 .byte 0x1 - 3131 0266 B401 .2byte 0x1b4 - 3132 0268 01 .byte 0x1 - 3133 0269 53000000 .4byte 0x53 - 3134 026d 74000000 .4byte .LFB28 - 3135 0271 82000000 .4byte .LFE28 - 3136 0275 E5000000 .4byte .LLST9 - 3137 0279 10 .uleb128 0x10 - 3138 027a 01 .byte 0x1 - 3139 027b 91050000 .4byte .LASF58 - 3140 027f 01 .byte 0x1 - 3141 0280 C901 .2byte 0x1c9 - 3142 0282 01 .byte 0x1 - 3143 0283 41000000 .4byte 0x41 - 3144 0287 84000000 .4byte .LFB29 - 3145 028b D2000000 .4byte .LFE29 - 3146 028f 04010000 .4byte .LLST10 - 3147 0293 B4020000 .4byte 0x2b4 - 3148 0297 0B .uleb128 0xb - 3149 0298 2C050000 .4byte .LASF47 - 3150 029c 01 .byte 0x1 - 3151 029d C901 .2byte 0x1c9 - 3152 029f 53000000 .4byte 0x53 - 3153 02a3 2F010000 .4byte .LLST11 - 3154 02a7 11 .uleb128 0x11 - 3155 02a8 6D756C00 .string "mul" - 3156 02ac 01 .byte 0x1 - BFIN GAS /tmp/ccdxqFXK.s page 76 - - - 3157 02ad CA01 .2byte 0x1ca - 3158 02af 73000000 .4byte 0x73 - 3159 02b3 00 .byte 0x0 - 3160 02b4 12 .uleb128 0x12 - 3161 02b5 01 .byte 0x1 - 3162 02b6 05020000 .4byte .LASF52 - 3163 02ba 01 .byte 0x1 - 3164 02bb 0402 .2byte 0x204 - 3165 02bd 01 .byte 0x1 - 3166 02be 01 .byte 0x1 - 3167 02bf C6020000 .4byte 0x2c6 - 3168 02c3 13 .uleb128 0x13 - 3169 02c4 13 .uleb128 0x13 - 3170 02c5 00 .byte 0x0 - 3171 02c6 14 .uleb128 0x14 - 3172 02c7 B4020000 .4byte 0x2b4 - 3173 02cb D4000000 .4byte .LFB31 - 3174 02cf 20010000 .4byte .LFE31 - 3175 02d3 58010000 .4byte .LLST12 - 3176 02d7 FC020000 .4byte 0x2fc - 3177 02db 15 .uleb128 0x15 - 3178 02dc 87010000 .4byte 0x187 - 3179 02e0 EE000000 .4byte .LBB23 - 3180 02e4 F0000000 .4byte .LBE23 - 3181 02e8 01 .byte 0x1 - 3182 02e9 0902 .2byte 0x209 - 3183 02eb 15 .uleb128 0x15 - 3184 02ec 87010000 .4byte 0x187 - 3185 02f0 F0000000 .4byte .LBB25 - 3186 02f4 F2000000 .4byte .LBE25 - 3187 02f8 01 .byte 0x1 - 3188 02f9 0A02 .2byte 0x20a - 3189 02fb 00 .byte 0x0 - 3190 02fc 12 .uleb128 0x12 - 3191 02fd 01 .byte 0x1 - 3192 02fe A6040000 .4byte .LASF53 - 3193 0302 01 .byte 0x1 - 3194 0303 DD01 .2byte 0x1dd - 3195 0305 01 .byte 0x1 - 3196 0306 01 .byte 0x1 - 3197 0307 16030000 .4byte 0x316 - 3198 030b 13 .uleb128 0x13 - 3199 030c 13 .uleb128 0x13 - 3200 030d 13 .uleb128 0x13 - 3201 030e 16 .uleb128 0x16 - 3202 030f 05 .byte 0x5 - 3203 0310 03 .byte 0x3 - 3204 0311 1C000000 .4byte _dummy.2418 - 3205 0315 00 .byte 0x0 - 3206 0316 14 .uleb128 0x14 - 3207 0317 FC020000 .4byte 0x2fc - 3208 031b 20010000 .4byte .LFB30 - 3209 031f 08020000 .4byte .LFE30 - 3210 0323 77010000 .4byte .LLST13 - 3211 0327 5C030000 .4byte 0x35c - 3212 032b 15 .uleb128 0x15 - 3213 032c 87010000 .4byte 0x187 - BFIN GAS /tmp/ccdxqFXK.s page 77 - - - 3214 0330 32010000 .4byte .LBB39 - 3215 0334 34010000 .4byte .LBE39 - 3216 0338 01 .byte 0x1 - 3217 0339 E101 .2byte 0x1e1 - 3218 033b 15 .uleb128 0x15 - 3219 033c 87010000 .4byte 0x187 - 3220 0340 60010000 .4byte .LBB41 - 3221 0344 62010000 .4byte .LBE41 - 3222 0348 01 .byte 0x1 - 3223 0349 E501 .2byte 0x1e5 - 3224 034b 15 .uleb128 0x15 - 3225 034c 87010000 .4byte 0x187 - 3226 0350 C8010000 .4byte .LBB43 - 3227 0354 CA010000 .4byte .LBE43 - 3228 0358 01 .byte 0x1 - 3229 0359 F301 .2byte 0x1f3 - 3230 035b 00 .byte 0x0 - 3231 035c 0A .uleb128 0xa - 3232 035d 01 .byte 0x1 - 3233 035e 24060000 .4byte .LASF54 - 3234 0362 01 .byte 0x1 - 3235 0363 2D01 .2byte 0x12d - 3236 0365 01 .byte 0x1 - 3237 0366 08020000 .4byte .LFB24 - 3238 036a 98030000 .4byte .LFE24 - 3239 036e A2010000 .4byte .LLST14 - 3240 0372 11040000 .4byte 0x411 - 3241 0376 17 .uleb128 0x17 - 3242 0377 00000000 .4byte .Ldebug_ranges0+0x0 - 3243 037b B8030000 .4byte 0x3b8 - 3244 037f 0C .uleb128 0xc - 3245 0380 69000000 .4byte .LASF55 - 3246 0384 01 .byte 0x1 - 3247 0385 3001 .2byte 0x130 - 3248 0387 53000000 .4byte 0x53 - 3249 038b CD010000 .4byte .LLST15 - 3250 038f 0C .uleb128 0xc - 3251 0390 B1010000 .4byte .LASF51 - 3252 0394 01 .byte 0x1 - 3253 0395 3101 .2byte 0x131 - 3254 0397 53000000 .4byte 0x53 - 3255 039b 01020000 .4byte .LLST16 - 3256 039f 18 .uleb128 0x18 - 3257 03a0 00030000 .4byte .LBB46 - 3258 03a4 34030000 .4byte .LBE46 - 3259 03a8 0D .uleb128 0xd - 3260 03a9 F3010000 .4byte .LASF56 - 3261 03ad 01 .byte 0x1 - 3262 03ae 3801 .2byte 0x138 - 3263 03b0 53000000 .4byte 0x53 - 3264 03b4 01 .byte 0x1 - 3265 03b5 50 .byte 0x50 - 3266 03b6 00 .byte 0x0 - 3267 03b7 00 .byte 0x0 - 3268 03b8 19 .uleb128 0x19 - 3269 03b9 20000000 .4byte .Ldebug_ranges0+0x20 - 3270 03bd 0C .uleb128 0xc - BFIN GAS /tmp/ccdxqFXK.s page 78 - - - 3271 03be 98040000 .4byte .LASF57 - 3272 03c2 01 .byte 0x1 - 3273 03c3 4D01 .2byte 0x14d - 3274 03c5 53000000 .4byte 0x53 - 3275 03c9 1F020000 .4byte .LLST17 - 3276 03cd 0C .uleb128 0xc - 3277 03ce B1010000 .4byte .LASF51 - 3278 03d2 01 .byte 0x1 - 3279 03d3 4E01 .2byte 0x14e - 3280 03d5 53000000 .4byte 0x53 - 3281 03d9 5E020000 .4byte .LLST18 - 3282 03dd 1A .uleb128 0x1a - 3283 03de 3C030000 .4byte .LBB48 - 3284 03e2 68030000 .4byte .LBE48 - 3285 03e6 F9030000 .4byte 0x3f9 - 3286 03ea 0D .uleb128 0xd - 3287 03eb F3010000 .4byte .LASF56 - 3288 03ef 01 .byte 0x1 - 3289 03f0 5701 .2byte 0x157 - 3290 03f2 53000000 .4byte 0x53 - 3291 03f6 01 .byte 0x1 - 3292 03f7 50 .byte 0x50 - 3293 03f8 00 .byte 0x0 - 3294 03f9 19 .uleb128 0x19 - 3295 03fa 40000000 .4byte .Ldebug_ranges0+0x40 - 3296 03fe 0C .uleb128 0xc - 3297 03ff AB000000 .4byte .LASF48 - 3298 0403 01 .byte 0x1 - 3299 0404 6501 .2byte 0x165 - 3300 0406 53000000 .4byte 0x53 - 3301 040a 7C020000 .4byte .LLST19 - 3302 040e 00 .byte 0x0 - 3303 040f 00 .byte 0x0 - 3304 0410 00 .byte 0x0 - 3305 0411 1B .uleb128 0x1b - 3306 0412 01 .byte 0x1 - 3307 0413 CC010000 .4byte .LASF59 - 3308 0417 01 .byte 0x1 - 3309 0418 7B .byte 0x7b - 3310 0419 01 .byte 0x1 - 3311 041a 41000000 .4byte 0x41 - 3312 041e 98030000 .4byte .LFB18 - 3313 0422 0C040000 .4byte .LFE18 - 3314 0426 9A020000 .4byte .LLST20 - 3315 042a 3E040000 .4byte 0x43e - 3316 042e 1C .uleb128 0x1c - 3317 042f 65727200 .string "err" - 3318 0433 01 .byte 0x1 - 3319 0434 7C .byte 0x7c - 3320 0435 41000000 .4byte 0x41 - 3321 0439 C5020000 .4byte .LLST21 - 3322 043d 00 .byte 0x0 - 3323 043e 1D .uleb128 0x1d - 3324 043f 01 .byte 0x1 - 3325 0440 A8050000 .4byte .LASF93 - 3326 0444 01 .byte 0x1 - 3327 0445 6C .byte 0x6c - BFIN GAS /tmp/ccdxqFXK.s page 79 - - - 3328 0446 01 .byte 0x1 - 3329 0447 0C040000 .4byte .LFB17 - 3330 044b 2C040000 .4byte .LFE17 - 3331 044f E3020000 .4byte .LLST22 - 3332 0453 10 .uleb128 0x10 - 3333 0454 01 .byte 0x1 - 3334 0455 76020000 .4byte .LASF60 - 3335 0459 01 .byte 0x1 - 3336 045a 0B01 .2byte 0x10b - 3337 045c 01 .byte 0x1 - 3338 045d 41000000 .4byte 0x41 - 3339 0461 2C040000 .4byte .LFB23 - 3340 0465 D2040000 .4byte .LFE23 - 3341 0469 02030000 .4byte .LLST23 - 3342 046d AF040000 .4byte 0x4af - 3343 0471 1E .uleb128 0x1e - 3344 0472 65727200 .string "err" - 3345 0476 01 .byte 0x1 - 3346 0477 0C01 .2byte 0x10c - 3347 0479 41000000 .4byte 0x41 - 3348 047d 2D030000 .4byte .LLST24 - 3349 0481 1F .uleb128 0x1f - 3350 0482 B4020000 .4byte 0x2b4 - 3351 0486 58000000 .4byte .Ldebug_ranges0+0x58 - 3352 048a 01 .byte 0x1 - 3353 048b 1301 .2byte 0x113 - 3354 048d 15 .uleb128 0x15 - 3355 048e 87010000 .4byte 0x187 - 3356 0492 74040000 .4byte .LBB63 - 3357 0496 76040000 .4byte .LBE63 - 3358 049a 01 .byte 0x1 - 3359 049b 0902 .2byte 0x209 - 3360 049d 15 .uleb128 0x15 - 3361 049e 87010000 .4byte 0x187 - 3362 04a2 76040000 .4byte .LBB65 - 3363 04a6 78040000 .4byte .LBE65 - 3364 04aa 01 .byte 0x1 - 3365 04ab 0A02 .2byte 0x20a - 3366 04ad 00 .byte 0x0 - 3367 04ae 00 .byte 0x0 - 3368 04af 0A .uleb128 0xa - 3369 04b0 01 .byte 0x1 - 3370 04b1 E7020000 .4byte .LASF61 - 3371 04b5 01 .byte 0x1 - 3372 04b6 1802 .2byte 0x218 - 3373 04b8 01 .byte 0x1 - 3374 04b9 D4040000 .4byte .LFB32 - 3375 04bd 20060000 .4byte .LFE32 - 3376 04c1 4B030000 .4byte .LLST25 - 3377 04c5 31050000 .4byte 0x531 - 3378 04c9 19 .uleb128 0x19 - 3379 04ca 70000000 .4byte .Ldebug_ranges0+0x70 - 3380 04ce 0C .uleb128 0xc - 3381 04cf 1E010000 .4byte .LASF62 - 3382 04d3 01 .byte 0x1 - 3383 04d4 1A02 .2byte 0x21a - 3384 04d6 53000000 .4byte 0x53 - BFIN GAS /tmp/ccdxqFXK.s page 80 - - - 3385 04da C3040000 .4byte .LLST26 - 3386 04de 0C .uleb128 0xc - 3387 04df AB000000 .4byte .LASF48 - 3388 04e3 01 .byte 0x1 - 3389 04e4 2402 .2byte 0x224 - 3390 04e6 53000000 .4byte 0x53 - 3391 04ea E1040000 .4byte .LLST27 - 3392 04ee 20 .uleb128 0x20 - 3393 04ef 91010000 .4byte 0x191 - 3394 04f3 CA050000 .4byte .LBB79 - 3395 04f7 1A060000 .4byte .LBE79 - 3396 04fb 01 .byte 0x1 - 3397 04fc 3002 .2byte 0x230 - 3398 04fe 21 .uleb128 0x21 - 3399 04ff B4020000 .4byte 0x2b4 - 3400 0503 CA050000 .4byte .LBB81 - 3401 0507 0C060000 .4byte .LBE81 - 3402 050b 01 .byte 0x1 - 3403 050c 63 .byte 0x63 - 3404 050d 15 .uleb128 0x15 - 3405 050e 87010000 .4byte 0x187 - 3406 0512 E0050000 .4byte .LBB83 - 3407 0516 E2050000 .4byte .LBE83 - 3408 051a 01 .byte 0x1 - 3409 051b 0902 .2byte 0x209 - 3410 051d 15 .uleb128 0x15 - 3411 051e 87010000 .4byte 0x187 - 3412 0522 E2050000 .4byte .LBB85 - 3413 0526 E4050000 .4byte .LBE85 - 3414 052a 01 .byte 0x1 - 3415 052b 0A02 .2byte 0x20a - 3416 052d 00 .byte 0x0 - 3417 052e 00 .byte 0x0 - 3418 052f 00 .byte 0x0 - 3419 0530 00 .byte 0x0 - 3420 0531 22 .uleb128 0x22 - 3421 0532 69040000 .4byte .LASF94 - 3422 0536 01 .byte 0x1 - 3423 0537 8F .byte 0x8f - 3424 0538 01 .byte 0x1 - 3425 0539 01 .byte 0x1 - 3426 053a 55050000 .4byte 0x555 - 3427 053e 23 .uleb128 0x23 - 3428 053f A3000000 .4byte .LASF65 - 3429 0543 01 .byte 0x1 - 3430 0544 8F .byte 0x8f - 3431 0545 53000000 .4byte 0x53 - 3432 0549 24 .uleb128 0x24 - 3433 054a C9040000 .4byte .LASF63 - 3434 054e 01 .byte 0x1 - 3435 054f 90 .byte 0x90 - 3436 0550 53000000 .4byte 0x53 - 3437 0554 00 .byte 0x0 - 3438 0555 1B .uleb128 0x1b - 3439 0556 01 .byte 0x1 - 3440 0557 43050000 .4byte .LASF64 - 3441 055b 01 .byte 0x1 - BFIN GAS /tmp/ccdxqFXK.s page 81 - - - 3442 055c B9 .byte 0xb9 - 3443 055d 01 .byte 0x1 - 3444 055e 41000000 .4byte 0x41 - 3445 0562 20060000 .4byte .LFB21 - 3446 0566 82060000 .4byte .LFE21 - 3447 056a FF040000 .4byte .LLST28 - 3448 056e A6050000 .4byte 0x5a6 - 3449 0572 25 .uleb128 0x25 - 3450 0573 A3000000 .4byte .LASF65 - 3451 0577 01 .byte 0x1 - 3452 0578 B9 .byte 0xb9 - 3453 0579 53000000 .4byte 0x53 - 3454 057d 2A050000 .4byte .LLST29 - 3455 0581 26 .uleb128 0x26 - 3456 0582 31050000 .4byte 0x531 - 3457 0586 2E060000 .4byte .LBB90 - 3458 058a 88000000 .4byte .Ldebug_ranges0+0x88 - 3459 058e 01 .byte 0x1 - 3460 058f BA .byte 0xba - 3461 0590 27 .uleb128 0x27 - 3462 0591 3E050000 .4byte 0x53e - 3463 0595 19 .uleb128 0x19 - 3464 0596 B0000000 .4byte .Ldebug_ranges0+0xb0 - 3465 059a 28 .uleb128 0x28 - 3466 059b 49050000 .4byte 0x549 - 3467 059f 3D050000 .4byte .LLST30 - 3468 05a3 00 .byte 0x0 - 3469 05a4 00 .byte 0x0 - 3470 05a5 00 .byte 0x0 - 3471 05a6 1B .uleb128 0x1b - 3472 05a7 01 .byte 0x1 - 3473 05a8 A3010000 .4byte .LASF66 - 3474 05ac 01 .byte 0x1 - 3475 05ad AF .byte 0xaf - 3476 05ae 01 .byte 0x1 - 3477 05af 41000000 .4byte 0x41 - 3478 05b3 84060000 .4byte .LFB20 - 3479 05b7 E4060000 .4byte .LFE20 - 3480 05bb 50050000 .4byte .LLST31 - 3481 05bf F7050000 .4byte 0x5f7 - 3482 05c3 25 .uleb128 0x25 - 3483 05c4 A3000000 .4byte .LASF65 - 3484 05c8 01 .byte 0x1 - 3485 05c9 AF .byte 0xaf - 3486 05ca 53000000 .4byte 0x53 - 3487 05ce 7B050000 .4byte .LLST32 - 3488 05d2 26 .uleb128 0x26 - 3489 05d3 31050000 .4byte 0x531 - 3490 05d7 90060000 .4byte .LBB100 - 3491 05db D8000000 .4byte .Ldebug_ranges0+0xd8 - 3492 05df 01 .byte 0x1 - 3493 05e0 B0 .byte 0xb0 - 3494 05e1 27 .uleb128 0x27 - 3495 05e2 3E050000 .4byte 0x53e - 3496 05e6 19 .uleb128 0x19 - 3497 05e7 00010000 .4byte .Ldebug_ranges0+0x100 - 3498 05eb 28 .uleb128 0x28 - BFIN GAS /tmp/ccdxqFXK.s page 82 - - - 3499 05ec 49050000 .4byte 0x549 - 3500 05f0 8E050000 .4byte .LLST33 - 3501 05f4 00 .byte 0x0 - 3502 05f5 00 .byte 0x0 - 3503 05f6 00 .byte 0x0 - 3504 05f7 1B .uleb128 0x1b - 3505 05f8 01 .byte 0x1 - 3506 05f9 95000000 .4byte .LASF67 - 3507 05fd 01 .byte 0x1 - 3508 05fe CA .byte 0xca - 3509 05ff 01 .byte 0x1 - 3510 0600 41000000 .4byte 0x41 - 3511 0604 E4060000 .4byte .LFB22 - 3512 0608 F0080000 .4byte .LFE22 - 3513 060c A1050000 .4byte .LLST34 - 3514 0610 88060000 .4byte 0x688 - 3515 0614 1C .uleb128 0x1c - 3516 0615 65727200 .string "err" - 3517 0619 01 .byte 0x1 - 3518 061a CB .byte 0xcb - 3519 061b 41000000 .4byte 0x41 - 3520 061f CC050000 .4byte .LLST35 - 3521 0623 29 .uleb128 0x29 - 3522 0624 31050000 .4byte 0x531 - 3523 0628 28010000 .4byte .Ldebug_ranges0+0x128 - 3524 062c 01 .byte 0x1 - 3525 062d D9 .byte 0xd9 - 3526 062e 47060000 .4byte 0x647 - 3527 0632 27 .uleb128 0x27 - 3528 0633 3E050000 .4byte 0x53e - 3529 0637 19 .uleb128 0x19 - 3530 0638 68010000 .4byte .Ldebug_ranges0+0x168 - 3531 063c 28 .uleb128 0x28 - 3532 063d 49050000 .4byte 0x549 - 3533 0641 EA050000 .4byte .LLST36 - 3534 0645 00 .byte 0x0 - 3535 0646 00 .byte 0x0 - 3536 0647 21 .uleb128 0x21 - 3537 0648 FC020000 .4byte 0x2fc - 3538 064c EA070000 .4byte .LBB129 - 3539 0650 C6080000 .4byte .LBE129 - 3540 0654 01 .byte 0x1 - 3541 0655 D3 .byte 0xd3 - 3542 0656 15 .uleb128 0x15 - 3543 0657 87010000 .4byte 0x187 - 3544 065b 24080000 .4byte .LBB131 - 3545 065f 26080000 .4byte .LBE131 - 3546 0663 01 .byte 0x1 - 3547 0664 E501 .2byte 0x1e5 - 3548 0666 15 .uleb128 0x15 - 3549 0667 87010000 .4byte 0x187 - 3550 066b F6070000 .4byte .LBB133 - 3551 066f F8070000 .4byte .LBE133 - 3552 0673 01 .byte 0x1 - 3553 0674 E101 .2byte 0x1e1 - 3554 0676 15 .uleb128 0x15 - 3555 0677 87010000 .4byte 0x187 - BFIN GAS /tmp/ccdxqFXK.s page 83 - - - 3556 067b 8C080000 .4byte .LBB135 - 3557 067f 8E080000 .4byte .LBE135 - 3558 0683 01 .byte 0x1 - 3559 0684 F301 .2byte 0x1f3 - 3560 0686 00 .byte 0x0 - 3561 0687 00 .byte 0x0 - 3562 0688 2A .uleb128 0x2a - 3563 0689 F3000000 .4byte .LASF68 - 3564 068d 01 .byte 0x1 - 3565 068e 36 .byte 0x36 - 3566 068f 73000000 .4byte 0x73 - 3567 0693 05 .byte 0x5 - 3568 0694 03 .byte 0x3 - 3569 0695 18000000 .4byte _f_bf_reg - 3570 0699 2A .uleb128 0x2a - 3571 069a DF050000 .4byte .LASF69 - 3572 069e 01 .byte 0x1 - 3573 069f 39 .byte 0x39 - 3574 06a0 AA060000 .4byte 0x6aa - 3575 06a4 05 .byte 0x5 - 3576 06a5 03 .byte 0x3 - 3577 06a6 00000000 .4byte _f_overflow_wrd - 3578 06aa 2B .uleb128 0x2b - 3579 06ab 53000000 .4byte 0x53 - 3580 06af 2C .uleb128 0x2c - 3581 06b0 53000000 .4byte 0x53 - 3582 06b4 C2060000 .4byte 0x6c2 - 3583 06b8 2D .uleb128 0x2d - 3584 06b9 81000000 .4byte 0x81 - 3585 06bd FFFF1F00 .4byte 0x1fffff - 3586 06c1 00 .byte 0x0 - 3587 06c2 2A .uleb128 0x2a - 3588 06c3 CF030000 .4byte .LASF70 - 3589 06c7 01 .byte 0x1 - 3590 06c8 3F .byte 0x3f - 3591 06c9 D3060000 .4byte 0x6d3 - 3592 06cd 05 .byte 0x5 - 3593 06ce 03 .byte 0x3 - 3594 06cf 00000000 .4byte _f_sport_in_buf - 3595 06d3 2E .uleb128 0x2e - 3596 06d4 AF060000 .4byte 0x6af - 3597 06d8 2A .uleb128 0x2a - 3598 06d9 27030000 .4byte .LASF71 - 3599 06dd 01 .byte 0x1 - 3600 06de 41 .byte 0x41 - 3601 06df E9060000 .4byte 0x6e9 - 3602 06e3 05 .byte 0x5 - 3603 06e4 03 .byte 0x3 - 3604 06e5 0C000000 .4byte _f_sport_in_put_pos - 3605 06e9 2E .uleb128 0x2e - 3606 06ea 53000000 .4byte 0x53 - 3607 06ee 2A .uleb128 0x2a - 3608 06ef 69050000 .4byte .LASF72 - 3609 06f3 01 .byte 0x1 - 3610 06f4 43 .byte 0x43 - 3611 06f5 53000000 .4byte 0x53 - 3612 06f9 05 .byte 0x5 - BFIN GAS /tmp/ccdxqFXK.s page 84 - - - 3613 06fa 03 .byte 0x3 - 3614 06fb 28000000 .4byte _f_sport_in_proc_pos - 3615 06ff 2A .uleb128 0x2a - 3616 0700 62010000 .4byte .LASF73 - 3617 0704 01 .byte 0x1 - 3618 0705 45 .byte 0x45 - 3619 0706 E9060000 .4byte 0x6e9 - 3620 070a 05 .byte 0x5 - 3621 070b 03 .byte 0x3 - 3622 070c 10000000 .4byte _f_sport_in_get_pos - 3623 0710 2A .uleb128 0x2a - 3624 0711 47000000 .4byte .LASF74 - 3625 0715 01 .byte 0x1 - 3626 0716 47 .byte 0x47 - 3627 0717 53000000 .4byte 0x53 - 3628 071b 05 .byte 0x5 - 3629 071c 03 .byte 0x3 - 3630 071d 04000000 .4byte _f_sport_in_block_size - 3631 0721 2A .uleb128 0x2a - 3632 0722 B5040000 .4byte .LASF75 - 3633 0726 01 .byte 0x1 - 3634 0727 49 .byte 0x49 - 3635 0728 53000000 .4byte 0x53 - 3636 072c 05 .byte 0x5 - 3637 072d 03 .byte 0x3 - 3638 072e 08000000 .4byte _f_sport_in_buf_size - 3639 0732 2C .uleb128 0x2c - 3640 0733 53000000 .4byte 0x53 - 3641 0737 45070000 .4byte 0x745 - 3642 073b 2D .uleb128 0x2d - 3643 073c 81000000 .4byte 0x81 - 3644 0740 FFFF0F00 .4byte 0xfffff - 3645 0744 00 .byte 0x0 - 3646 0745 2A .uleb128 0x2a - 3647 0746 C0020000 .4byte .LASF76 - 3648 074a 01 .byte 0x1 - 3649 074b 4E .byte 0x4e - 3650 074c 56070000 .4byte 0x756 - 3651 0750 05 .byte 0x5 - 3652 0751 03 .byte 0x3 - 3653 0752 00008000 .4byte _f_hdma_out_buf - 3654 0756 2E .uleb128 0x2e - 3655 0757 32070000 .4byte 0x732 - 3656 075b 2A .uleb128 0x2a - 3657 075c 00060000 .4byte .LASF77 - 3658 0760 01 .byte 0x1 - 3659 0761 4F .byte 0x4f - 3660 0762 E9060000 .4byte 0x6e9 - 3661 0766 05 .byte 0x5 - 3662 0767 03 .byte 0x3 - 3663 0768 20000000 .4byte _f_hdma_out_put_pos - 3664 076c 2A .uleb128 0x2a - 3665 076d 75010000 .4byte .LASF78 - 3666 0771 01 .byte 0x1 - 3667 0772 50 .byte 0x50 - 3668 0773 53000000 .4byte 0x53 - 3669 0777 05 .byte 0x5 - BFIN GAS /tmp/ccdxqFXK.s page 85 - - - 3670 0778 03 .byte 0x3 - 3671 0779 2C000000 .4byte _f_hdma_out_start_pos - 3672 077d 2A .uleb128 0x2a - 3673 077e 2A010000 .4byte .LASF79 - 3674 0782 01 .byte 0x1 - 3675 0783 52 .byte 0x52 - 3676 0784 E9060000 .4byte 0x6e9 - 3677 0788 05 .byte 0x5 - 3678 0789 03 .byte 0x3 - 3679 078a 24000000 .4byte _f_hdma_out_get_pos - 3680 078e 2F .uleb128 0x2f - 3681 078f 6D030000 .4byte .LASF80 - 3682 0793 01 .byte 0x1 - 3683 0794 54 .byte 0x54 - 3684 0795 9B070000 .4byte 0x79b - 3685 0799 0080 .2byte 0x8000 - 3686 079b 2B .uleb128 0x2b - 3687 079c 73000000 .4byte 0x73 - 3688 07a0 2A .uleb128 0x2a - 3689 07a1 FE020000 .4byte .LASF81 - 3690 07a5 01 .byte 0x1 - 3691 07a6 55 .byte 0x55 - 3692 07a7 73000000 .4byte 0x73 - 3693 07ab 05 .byte 0x5 - 3694 07ac 03 .byte 0x3 - 3695 07ad 30000000 .4byte _f_hdma_out_proc_pos - 3696 07b1 2A .uleb128 0x2a - 3697 07b2 F1030000 .4byte .LASF82 - 3698 07b6 01 .byte 0x1 - 3699 07b7 57 .byte 0x57 - 3700 07b8 53000000 .4byte 0x53 - 3701 07bc 05 .byte 0x5 - 3702 07bd 03 .byte 0x3 - 3703 07be 14000000 .4byte _f_recv_size - 3704 07c2 30 .uleb128 0x30 - 3705 07c3 3A030000 .4byte .LASF83 - 3706 07c7 01 .byte 0x1 - 3707 07c8 30 .byte 0x30 - 3708 07c9 4A010000 .4byte 0x14a - 3709 07cd 01 .byte 0x1 - 3710 07ce 05 .byte 0x5 - 3711 07cf 03 .byte 0x3 - 3712 07d0 00000000 .4byte _g_stream_in_state - 3713 07d4 30 .uleb128 0x30 - 3714 07d5 BC030000 .4byte .LASF84 - 3715 07d9 01 .byte 0x1 - 3716 07da 31 .byte 0x31 - 3717 07db 7C010000 .4byte 0x17c - 3718 07df 01 .byte 0x1 - 3719 07e0 05 .byte 0x5 - 3720 07e1 03 .byte 0x3 - 3721 07e2 04000000 .4byte _g_stream_out_state - 3722 07e6 30 .uleb128 0x30 - 3723 07e7 20030000 .4byte .LASF85 - 3724 07eb 01 .byte 0x1 - 3725 07ec 33 .byte 0x33 - 3726 07ed F8070000 .4byte 0x7f8 - BFIN GAS /tmp/ccdxqFXK.s page 86 - - - 3727 07f1 01 .byte 0x1 - 3728 07f2 05 .byte 0x5 - 3729 07f3 03 .byte 0x3 - 3730 07f4 08000000 .4byte _g_mode - 3731 07f8 2E .uleb128 0x2e - 3732 07f9 73000000 .4byte 0x73 - 3733 07fd 30 .uleb128 0x30 - 3734 07fe C5000000 .4byte .LASF86 - 3735 0802 01 .byte 0x1 - 3736 0803 35 .byte 0x35 - 3737 0804 73000000 .4byte 0x73 - 3738 0808 01 .byte 0x1 - 3739 0809 05 .byte 0x5 - 3740 080a 03 .byte 0x3 - 3741 080b 00000000 .4byte _g_streams - 3742 080f 2C .uleb128 0x2c - 3743 0810 53000000 .4byte 0x53 - 3744 0814 20080000 .4byte 0x820 - 3745 0818 31 .uleb128 0x31 - 3746 0819 81000000 .4byte 0x81 - 3747 081d E703 .2byte 0x3e7 - 3748 081f 00 .byte 0x0 - 3749 0820 30 .uleb128 0x30 - 3750 0821 FD010000 .4byte .LASF87 - 3751 0825 01 .byte 0x1 - 3752 0826 1F .byte 0x1f - 3753 0827 32080000 .4byte 0x832 - 3754 082b 01 .byte 0x1 - 3755 082c 05 .byte 0x5 - 3756 082d 03 .byte 0x3 - 3757 082e 0000C000 .4byte _TX_buff - 3758 0832 2E .uleb128 0x2e - 3759 0833 0F080000 .4byte 0x80f - 3760 0837 30 .uleb128 0x30 - 3761 0838 30060000 .4byte .LASF88 - 3762 083c 01 .byte 0x1 - 3763 083d 21 .byte 0x21 - 3764 083e 49080000 .4byte 0x849 - 3765 0842 01 .byte 0x1 - 3766 0843 05 .byte 0x5 - 3767 0844 03 .byte 0x3 - 3768 0845 A00FC000 .4byte _AVG_buff - 3769 0849 2E .uleb128 0x2e - 3770 084a 0F080000 .4byte 0x80f - 3771 084e 00 .byte 0x0 - 3772 .section .debug_abbrev - 3773 0000 01 .uleb128 0x1 - 3774 0001 11 .uleb128 0x11 - 3775 0002 01 .byte 0x1 - 3776 0003 25 .uleb128 0x25 - 3777 0004 0E .uleb128 0xe - 3778 0005 13 .uleb128 0x13 - 3779 0006 0B .uleb128 0xb - 3780 0007 03 .uleb128 0x3 - 3781 0008 0E .uleb128 0xe - 3782 0009 1B .uleb128 0x1b - 3783 000a 0E .uleb128 0xe - BFIN GAS /tmp/ccdxqFXK.s page 87 - - - 3784 000b 11 .uleb128 0x11 - 3785 000c 01 .uleb128 0x1 - 3786 000d 12 .uleb128 0x12 - 3787 000e 01 .uleb128 0x1 - 3788 000f 10 .uleb128 0x10 - 3789 0010 06 .uleb128 0x6 - 3790 0011 00 .byte 0x0 - 3791 0012 00 .byte 0x0 - 3792 0013 02 .uleb128 0x2 - 3793 0014 24 .uleb128 0x24 - 3794 0015 00 .byte 0x0 - 3795 0016 0B .uleb128 0xb - 3796 0017 0B .uleb128 0xb - 3797 0018 3E .uleb128 0x3e - 3798 0019 0B .uleb128 0xb - 3799 001a 03 .uleb128 0x3 - 3800 001b 0E .uleb128 0xe - 3801 001c 00 .byte 0x0 - 3802 001d 00 .byte 0x0 - 3803 001e 03 .uleb128 0x3 - 3804 001f 16 .uleb128 0x16 - 3805 0020 00 .byte 0x0 - 3806 0021 03 .uleb128 0x3 - 3807 0022 0E .uleb128 0xe - 3808 0023 3A .uleb128 0x3a - 3809 0024 0B .uleb128 0xb - 3810 0025 3B .uleb128 0x3b - 3811 0026 0B .uleb128 0xb - 3812 0027 49 .uleb128 0x49 - 3813 0028 13 .uleb128 0x13 - 3814 0029 00 .byte 0x0 - 3815 002a 00 .byte 0x0 - 3816 002b 04 .uleb128 0x4 - 3817 002c 24 .uleb128 0x24 - 3818 002d 00 .byte 0x0 - 3819 002e 0B .uleb128 0xb - 3820 002f 0B .uleb128 0xb - 3821 0030 3E .uleb128 0x3e - 3822 0031 0B .uleb128 0xb - 3823 0032 03 .uleb128 0x3 - 3824 0033 08 .uleb128 0x8 - 3825 0034 00 .byte 0x0 - 3826 0035 00 .byte 0x0 - 3827 0036 05 .uleb128 0x5 - 3828 0037 24 .uleb128 0x24 - 3829 0038 00 .byte 0x0 - 3830 0039 0B .uleb128 0xb - 3831 003a 0B .uleb128 0xb - 3832 003b 3E .uleb128 0x3e - 3833 003c 0B .uleb128 0xb - 3834 003d 00 .byte 0x0 - 3835 003e 00 .byte 0x0 - 3836 003f 06 .uleb128 0x6 - 3837 0040 04 .uleb128 0x4 - 3838 0041 01 .byte 0x1 - 3839 0042 0B .uleb128 0xb - 3840 0043 0B .uleb128 0xb - BFIN GAS /tmp/ccdxqFXK.s page 88 - - - 3841 0044 3A .uleb128 0x3a - 3842 0045 0B .uleb128 0xb - 3843 0046 3B .uleb128 0x3b - 3844 0047 0B .uleb128 0xb - 3845 0048 01 .uleb128 0x1 - 3846 0049 13 .uleb128 0x13 - 3847 004a 00 .byte 0x0 - 3848 004b 00 .byte 0x0 - 3849 004c 07 .uleb128 0x7 - 3850 004d 28 .uleb128 0x28 - 3851 004e 00 .byte 0x0 - 3852 004f 03 .uleb128 0x3 - 3853 0050 0E .uleb128 0xe - 3854 0051 1C .uleb128 0x1c - 3855 0052 0D .uleb128 0xd - 3856 0053 00 .byte 0x0 - 3857 0054 00 .byte 0x0 - 3858 0055 08 .uleb128 0x8 - 3859 0056 2E .uleb128 0x2e - 3860 0057 00 .byte 0x0 - 3861 0058 03 .uleb128 0x3 - 3862 0059 0E .uleb128 0xe - 3863 005a 3A .uleb128 0x3a - 3864 005b 0B .uleb128 0xb - 3865 005c 3B .uleb128 0x3b - 3866 005d 05 .uleb128 0x5 - 3867 005e 27 .uleb128 0x27 - 3868 005f 0C .uleb128 0xc - 3869 0060 20 .uleb128 0x20 - 3870 0061 0B .uleb128 0xb - 3871 0062 00 .byte 0x0 - 3872 0063 00 .byte 0x0 - 3873 0064 09 .uleb128 0x9 - 3874 0065 2E .uleb128 0x2e - 3875 0066 00 .byte 0x0 - 3876 0067 03 .uleb128 0x3 - 3877 0068 0E .uleb128 0xe - 3878 0069 3A .uleb128 0x3a - 3879 006a 0B .uleb128 0xb - 3880 006b 3B .uleb128 0x3b - 3881 006c 0B .uleb128 0xb - 3882 006d 27 .uleb128 0x27 - 3883 006e 0C .uleb128 0xc - 3884 006f 20 .uleb128 0x20 - 3885 0070 0B .uleb128 0xb - 3886 0071 00 .byte 0x0 - 3887 0072 00 .byte 0x0 - 3888 0073 0A .uleb128 0xa - 3889 0074 2E .uleb128 0x2e - 3890 0075 01 .byte 0x1 - 3891 0076 3F .uleb128 0x3f - 3892 0077 0C .uleb128 0xc - 3893 0078 03 .uleb128 0x3 - 3894 0079 0E .uleb128 0xe - 3895 007a 3A .uleb128 0x3a - 3896 007b 0B .uleb128 0xb - 3897 007c 3B .uleb128 0x3b - BFIN GAS /tmp/ccdxqFXK.s page 89 - - - 3898 007d 05 .uleb128 0x5 - 3899 007e 27 .uleb128 0x27 - 3900 007f 0C .uleb128 0xc - 3901 0080 11 .uleb128 0x11 - 3902 0081 01 .uleb128 0x1 - 3903 0082 12 .uleb128 0x12 - 3904 0083 01 .uleb128 0x1 - 3905 0084 40 .uleb128 0x40 - 3906 0085 06 .uleb128 0x6 - 3907 0086 01 .uleb128 0x1 - 3908 0087 13 .uleb128 0x13 - 3909 0088 00 .byte 0x0 - 3910 0089 00 .byte 0x0 - 3911 008a 0B .uleb128 0xb - 3912 008b 05 .uleb128 0x5 - 3913 008c 00 .byte 0x0 - 3914 008d 03 .uleb128 0x3 - 3915 008e 0E .uleb128 0xe - 3916 008f 3A .uleb128 0x3a - 3917 0090 0B .uleb128 0xb - 3918 0091 3B .uleb128 0x3b - 3919 0092 05 .uleb128 0x5 - 3920 0093 49 .uleb128 0x49 - 3921 0094 13 .uleb128 0x13 - 3922 0095 02 .uleb128 0x2 - 3923 0096 06 .uleb128 0x6 - 3924 0097 00 .byte 0x0 - 3925 0098 00 .byte 0x0 - 3926 0099 0C .uleb128 0xc - 3927 009a 34 .uleb128 0x34 - 3928 009b 00 .byte 0x0 - 3929 009c 03 .uleb128 0x3 - 3930 009d 0E .uleb128 0xe - 3931 009e 3A .uleb128 0x3a - 3932 009f 0B .uleb128 0xb - 3933 00a0 3B .uleb128 0x3b - 3934 00a1 05 .uleb128 0x5 - 3935 00a2 49 .uleb128 0x49 - 3936 00a3 13 .uleb128 0x13 - 3937 00a4 02 .uleb128 0x2 - 3938 00a5 06 .uleb128 0x6 - 3939 00a6 00 .byte 0x0 - 3940 00a7 00 .byte 0x0 - 3941 00a8 0D .uleb128 0xd - 3942 00a9 34 .uleb128 0x34 - 3943 00aa 00 .byte 0x0 - 3944 00ab 03 .uleb128 0x3 - 3945 00ac 0E .uleb128 0xe - 3946 00ad 3A .uleb128 0x3a - 3947 00ae 0B .uleb128 0xb - 3948 00af 3B .uleb128 0x3b - 3949 00b0 05 .uleb128 0x5 - 3950 00b1 49 .uleb128 0x49 - 3951 00b2 13 .uleb128 0x13 - 3952 00b3 02 .uleb128 0x2 - 3953 00b4 0A .uleb128 0xa - 3954 00b5 00 .byte 0x0 - BFIN GAS /tmp/ccdxqFXK.s page 90 - - - 3955 00b6 00 .byte 0x0 - 3956 00b7 0E .uleb128 0xe - 3957 00b8 0F .uleb128 0xf - 3958 00b9 00 .byte 0x0 - 3959 00ba 0B .uleb128 0xb - 3960 00bb 0B .uleb128 0xb - 3961 00bc 49 .uleb128 0x49 - 3962 00bd 13 .uleb128 0x13 - 3963 00be 00 .byte 0x0 - 3964 00bf 00 .byte 0x0 - 3965 00c0 0F .uleb128 0xf - 3966 00c1 2E .uleb128 0x2e - 3967 00c2 00 .byte 0x0 - 3968 00c3 3F .uleb128 0x3f - 3969 00c4 0C .uleb128 0xc - 3970 00c5 03 .uleb128 0x3 - 3971 00c6 0E .uleb128 0xe - 3972 00c7 3A .uleb128 0x3a - 3973 00c8 0B .uleb128 0xb - 3974 00c9 3B .uleb128 0x3b - 3975 00ca 05 .uleb128 0x5 - 3976 00cb 27 .uleb128 0x27 - 3977 00cc 0C .uleb128 0xc - 3978 00cd 49 .uleb128 0x49 - 3979 00ce 13 .uleb128 0x13 - 3980 00cf 11 .uleb128 0x11 - 3981 00d0 01 .uleb128 0x1 - 3982 00d1 12 .uleb128 0x12 - 3983 00d2 01 .uleb128 0x1 - 3984 00d3 40 .uleb128 0x40 - 3985 00d4 06 .uleb128 0x6 - 3986 00d5 00 .byte 0x0 - 3987 00d6 00 .byte 0x0 - 3988 00d7 10 .uleb128 0x10 - 3989 00d8 2E .uleb128 0x2e - 3990 00d9 01 .byte 0x1 - 3991 00da 3F .uleb128 0x3f - 3992 00db 0C .uleb128 0xc - 3993 00dc 03 .uleb128 0x3 - 3994 00dd 0E .uleb128 0xe - 3995 00de 3A .uleb128 0x3a - 3996 00df 0B .uleb128 0xb - 3997 00e0 3B .uleb128 0x3b - 3998 00e1 05 .uleb128 0x5 - 3999 00e2 27 .uleb128 0x27 - 4000 00e3 0C .uleb128 0xc - 4001 00e4 49 .uleb128 0x49 - 4002 00e5 13 .uleb128 0x13 - 4003 00e6 11 .uleb128 0x11 - 4004 00e7 01 .uleb128 0x1 - 4005 00e8 12 .uleb128 0x12 - 4006 00e9 01 .uleb128 0x1 - 4007 00ea 40 .uleb128 0x40 - 4008 00eb 06 .uleb128 0x6 - 4009 00ec 01 .uleb128 0x1 - 4010 00ed 13 .uleb128 0x13 - 4011 00ee 00 .byte 0x0 - BFIN GAS /tmp/ccdxqFXK.s page 91 - - - 4012 00ef 00 .byte 0x0 - 4013 00f0 11 .uleb128 0x11 - 4014 00f1 34 .uleb128 0x34 - 4015 00f2 00 .byte 0x0 - 4016 00f3 03 .uleb128 0x3 - 4017 00f4 08 .uleb128 0x8 - 4018 00f5 3A .uleb128 0x3a - 4019 00f6 0B .uleb128 0xb - 4020 00f7 3B .uleb128 0x3b - 4021 00f8 05 .uleb128 0x5 - 4022 00f9 49 .uleb128 0x49 - 4023 00fa 13 .uleb128 0x13 - 4024 00fb 00 .byte 0x0 - 4025 00fc 00 .byte 0x0 - 4026 00fd 12 .uleb128 0x12 - 4027 00fe 2E .uleb128 0x2e - 4028 00ff 01 .byte 0x1 - 4029 0100 3F .uleb128 0x3f - 4030 0101 0C .uleb128 0xc - 4031 0102 03 .uleb128 0x3 - 4032 0103 0E .uleb128 0xe - 4033 0104 3A .uleb128 0x3a - 4034 0105 0B .uleb128 0xb - 4035 0106 3B .uleb128 0x3b - 4036 0107 05 .uleb128 0x5 - 4037 0108 27 .uleb128 0x27 - 4038 0109 0C .uleb128 0xc - 4039 010a 20 .uleb128 0x20 - 4040 010b 0B .uleb128 0xb - 4041 010c 01 .uleb128 0x1 - 4042 010d 13 .uleb128 0x13 - 4043 010e 00 .byte 0x0 - 4044 010f 00 .byte 0x0 - 4045 0110 13 .uleb128 0x13 - 4046 0111 0B .uleb128 0xb - 4047 0112 00 .byte 0x0 - 4048 0113 00 .byte 0x0 - 4049 0114 00 .byte 0x0 - 4050 0115 14 .uleb128 0x14 - 4051 0116 2E .uleb128 0x2e - 4052 0117 01 .byte 0x1 - 4053 0118 31 .uleb128 0x31 - 4054 0119 13 .uleb128 0x13 - 4055 011a 11 .uleb128 0x11 - 4056 011b 01 .uleb128 0x1 - 4057 011c 12 .uleb128 0x12 - 4058 011d 01 .uleb128 0x1 - 4059 011e 40 .uleb128 0x40 - 4060 011f 06 .uleb128 0x6 - 4061 0120 01 .uleb128 0x1 - 4062 0121 13 .uleb128 0x13 - 4063 0122 00 .byte 0x0 - 4064 0123 00 .byte 0x0 - 4065 0124 15 .uleb128 0x15 - 4066 0125 1D .uleb128 0x1d - 4067 0126 00 .byte 0x0 - 4068 0127 31 .uleb128 0x31 - BFIN GAS /tmp/ccdxqFXK.s page 92 - - - 4069 0128 13 .uleb128 0x13 - 4070 0129 11 .uleb128 0x11 - 4071 012a 01 .uleb128 0x1 - 4072 012b 12 .uleb128 0x12 - 4073 012c 01 .uleb128 0x1 - 4074 012d 58 .uleb128 0x58 - 4075 012e 0B .uleb128 0xb - 4076 012f 59 .uleb128 0x59 - 4077 0130 05 .uleb128 0x5 - 4078 0131 00 .byte 0x0 - 4079 0132 00 .byte 0x0 - 4080 0133 16 .uleb128 0x16 - 4081 0134 34 .uleb128 0x34 - 4082 0135 00 .byte 0x0 - 4083 0136 02 .uleb128 0x2 - 4084 0137 0A .uleb128 0xa - 4085 0138 00 .byte 0x0 - 4086 0139 00 .byte 0x0 - 4087 013a 17 .uleb128 0x17 - 4088 013b 0B .uleb128 0xb - 4089 013c 01 .byte 0x1 - 4090 013d 55 .uleb128 0x55 - 4091 013e 06 .uleb128 0x6 - 4092 013f 01 .uleb128 0x1 - 4093 0140 13 .uleb128 0x13 - 4094 0141 00 .byte 0x0 - 4095 0142 00 .byte 0x0 - 4096 0143 18 .uleb128 0x18 - 4097 0144 0B .uleb128 0xb - 4098 0145 01 .byte 0x1 - 4099 0146 11 .uleb128 0x11 - 4100 0147 01 .uleb128 0x1 - 4101 0148 12 .uleb128 0x12 - 4102 0149 01 .uleb128 0x1 - 4103 014a 00 .byte 0x0 - 4104 014b 00 .byte 0x0 - 4105 014c 19 .uleb128 0x19 - 4106 014d 0B .uleb128 0xb - 4107 014e 01 .byte 0x1 - 4108 014f 55 .uleb128 0x55 - 4109 0150 06 .uleb128 0x6 - 4110 0151 00 .byte 0x0 - 4111 0152 00 .byte 0x0 - 4112 0153 1A .uleb128 0x1a - 4113 0154 0B .uleb128 0xb - 4114 0155 01 .byte 0x1 - 4115 0156 11 .uleb128 0x11 - 4116 0157 01 .uleb128 0x1 - 4117 0158 12 .uleb128 0x12 - 4118 0159 01 .uleb128 0x1 - 4119 015a 01 .uleb128 0x1 - 4120 015b 13 .uleb128 0x13 - 4121 015c 00 .byte 0x0 - 4122 015d 00 .byte 0x0 - 4123 015e 1B .uleb128 0x1b - 4124 015f 2E .uleb128 0x2e - 4125 0160 01 .byte 0x1 - BFIN GAS /tmp/ccdxqFXK.s page 93 - - - 4126 0161 3F .uleb128 0x3f - 4127 0162 0C .uleb128 0xc - 4128 0163 03 .uleb128 0x3 - 4129 0164 0E .uleb128 0xe - 4130 0165 3A .uleb128 0x3a - 4131 0166 0B .uleb128 0xb - 4132 0167 3B .uleb128 0x3b - 4133 0168 0B .uleb128 0xb - 4134 0169 27 .uleb128 0x27 - 4135 016a 0C .uleb128 0xc - 4136 016b 49 .uleb128 0x49 - 4137 016c 13 .uleb128 0x13 - 4138 016d 11 .uleb128 0x11 - 4139 016e 01 .uleb128 0x1 - 4140 016f 12 .uleb128 0x12 - 4141 0170 01 .uleb128 0x1 - 4142 0171 40 .uleb128 0x40 - 4143 0172 06 .uleb128 0x6 - 4144 0173 01 .uleb128 0x1 - 4145 0174 13 .uleb128 0x13 - 4146 0175 00 .byte 0x0 - 4147 0176 00 .byte 0x0 - 4148 0177 1C .uleb128 0x1c - 4149 0178 34 .uleb128 0x34 - 4150 0179 00 .byte 0x0 - 4151 017a 03 .uleb128 0x3 - 4152 017b 08 .uleb128 0x8 - 4153 017c 3A .uleb128 0x3a - 4154 017d 0B .uleb128 0xb - 4155 017e 3B .uleb128 0x3b - 4156 017f 0B .uleb128 0xb - 4157 0180 49 .uleb128 0x49 - 4158 0181 13 .uleb128 0x13 - 4159 0182 02 .uleb128 0x2 - 4160 0183 06 .uleb128 0x6 - 4161 0184 00 .byte 0x0 - 4162 0185 00 .byte 0x0 - 4163 0186 1D .uleb128 0x1d - 4164 0187 2E .uleb128 0x2e - 4165 0188 00 .byte 0x0 - 4166 0189 3F .uleb128 0x3f - 4167 018a 0C .uleb128 0xc - 4168 018b 03 .uleb128 0x3 - 4169 018c 0E .uleb128 0xe - 4170 018d 3A .uleb128 0x3a - 4171 018e 0B .uleb128 0xb - 4172 018f 3B .uleb128 0x3b - 4173 0190 0B .uleb128 0xb - 4174 0191 27 .uleb128 0x27 - 4175 0192 0C .uleb128 0xc - 4176 0193 11 .uleb128 0x11 - 4177 0194 01 .uleb128 0x1 - 4178 0195 12 .uleb128 0x12 - 4179 0196 01 .uleb128 0x1 - 4180 0197 40 .uleb128 0x40 - 4181 0198 06 .uleb128 0x6 - 4182 0199 00 .byte 0x0 - BFIN GAS /tmp/ccdxqFXK.s page 94 - - - 4183 019a 00 .byte 0x0 - 4184 019b 1E .uleb128 0x1e - 4185 019c 34 .uleb128 0x34 - 4186 019d 00 .byte 0x0 - 4187 019e 03 .uleb128 0x3 - 4188 019f 08 .uleb128 0x8 - 4189 01a0 3A .uleb128 0x3a - 4190 01a1 0B .uleb128 0xb - 4191 01a2 3B .uleb128 0x3b - 4192 01a3 05 .uleb128 0x5 - 4193 01a4 49 .uleb128 0x49 - 4194 01a5 13 .uleb128 0x13 - 4195 01a6 02 .uleb128 0x2 - 4196 01a7 06 .uleb128 0x6 - 4197 01a8 00 .byte 0x0 - 4198 01a9 00 .byte 0x0 - 4199 01aa 1F .uleb128 0x1f - 4200 01ab 1D .uleb128 0x1d - 4201 01ac 01 .byte 0x1 - 4202 01ad 31 .uleb128 0x31 - 4203 01ae 13 .uleb128 0x13 - 4204 01af 55 .uleb128 0x55 - 4205 01b0 06 .uleb128 0x6 - 4206 01b1 58 .uleb128 0x58 - 4207 01b2 0B .uleb128 0xb - 4208 01b3 59 .uleb128 0x59 - 4209 01b4 05 .uleb128 0x5 - 4210 01b5 00 .byte 0x0 - 4211 01b6 00 .byte 0x0 - 4212 01b7 20 .uleb128 0x20 - 4213 01b8 1D .uleb128 0x1d - 4214 01b9 01 .byte 0x1 - 4215 01ba 31 .uleb128 0x31 - 4216 01bb 13 .uleb128 0x13 - 4217 01bc 11 .uleb128 0x11 - 4218 01bd 01 .uleb128 0x1 - 4219 01be 12 .uleb128 0x12 - 4220 01bf 01 .uleb128 0x1 - 4221 01c0 58 .uleb128 0x58 - 4222 01c1 0B .uleb128 0xb - 4223 01c2 59 .uleb128 0x59 - 4224 01c3 05 .uleb128 0x5 - 4225 01c4 00 .byte 0x0 - 4226 01c5 00 .byte 0x0 - 4227 01c6 21 .uleb128 0x21 - 4228 01c7 1D .uleb128 0x1d - 4229 01c8 01 .byte 0x1 - 4230 01c9 31 .uleb128 0x31 - 4231 01ca 13 .uleb128 0x13 - 4232 01cb 11 .uleb128 0x11 - 4233 01cc 01 .uleb128 0x1 - 4234 01cd 12 .uleb128 0x12 - 4235 01ce 01 .uleb128 0x1 - 4236 01cf 58 .uleb128 0x58 - 4237 01d0 0B .uleb128 0xb - 4238 01d1 59 .uleb128 0x59 - 4239 01d2 0B .uleb128 0xb - BFIN GAS /tmp/ccdxqFXK.s page 95 - - - 4240 01d3 00 .byte 0x0 - 4241 01d4 00 .byte 0x0 - 4242 01d5 22 .uleb128 0x22 - 4243 01d6 2E .uleb128 0x2e - 4244 01d7 01 .byte 0x1 - 4245 01d8 03 .uleb128 0x3 - 4246 01d9 0E .uleb128 0xe - 4247 01da 3A .uleb128 0x3a - 4248 01db 0B .uleb128 0xb - 4249 01dc 3B .uleb128 0x3b - 4250 01dd 0B .uleb128 0xb - 4251 01de 27 .uleb128 0x27 - 4252 01df 0C .uleb128 0xc - 4253 01e0 20 .uleb128 0x20 - 4254 01e1 0B .uleb128 0xb - 4255 01e2 01 .uleb128 0x1 - 4256 01e3 13 .uleb128 0x13 - 4257 01e4 00 .byte 0x0 - 4258 01e5 00 .byte 0x0 - 4259 01e6 23 .uleb128 0x23 - 4260 01e7 05 .uleb128 0x5 - 4261 01e8 00 .byte 0x0 - 4262 01e9 03 .uleb128 0x3 - 4263 01ea 0E .uleb128 0xe - 4264 01eb 3A .uleb128 0x3a - 4265 01ec 0B .uleb128 0xb - 4266 01ed 3B .uleb128 0x3b - 4267 01ee 0B .uleb128 0xb - 4268 01ef 49 .uleb128 0x49 - 4269 01f0 13 .uleb128 0x13 - 4270 01f1 00 .byte 0x0 - 4271 01f2 00 .byte 0x0 - 4272 01f3 24 .uleb128 0x24 - 4273 01f4 34 .uleb128 0x34 - 4274 01f5 00 .byte 0x0 - 4275 01f6 03 .uleb128 0x3 - 4276 01f7 0E .uleb128 0xe - 4277 01f8 3A .uleb128 0x3a - 4278 01f9 0B .uleb128 0xb - 4279 01fa 3B .uleb128 0x3b - 4280 01fb 0B .uleb128 0xb - 4281 01fc 49 .uleb128 0x49 - 4282 01fd 13 .uleb128 0x13 - 4283 01fe 00 .byte 0x0 - 4284 01ff 00 .byte 0x0 - 4285 0200 25 .uleb128 0x25 - 4286 0201 05 .uleb128 0x5 - 4287 0202 00 .byte 0x0 - 4288 0203 03 .uleb128 0x3 - 4289 0204 0E .uleb128 0xe - 4290 0205 3A .uleb128 0x3a - 4291 0206 0B .uleb128 0xb - 4292 0207 3B .uleb128 0x3b - 4293 0208 0B .uleb128 0xb - 4294 0209 49 .uleb128 0x49 - 4295 020a 13 .uleb128 0x13 - 4296 020b 02 .uleb128 0x2 - BFIN GAS /tmp/ccdxqFXK.s page 96 - - - 4297 020c 06 .uleb128 0x6 - 4298 020d 00 .byte 0x0 - 4299 020e 00 .byte 0x0 - 4300 020f 26 .uleb128 0x26 - 4301 0210 1D .uleb128 0x1d - 4302 0211 01 .byte 0x1 - 4303 0212 31 .uleb128 0x31 - 4304 0213 13 .uleb128 0x13 - 4305 0214 52 .uleb128 0x52 - 4306 0215 01 .uleb128 0x1 - 4307 0216 55 .uleb128 0x55 - 4308 0217 06 .uleb128 0x6 - 4309 0218 58 .uleb128 0x58 - 4310 0219 0B .uleb128 0xb - 4311 021a 59 .uleb128 0x59 - 4312 021b 0B .uleb128 0xb - 4313 021c 00 .byte 0x0 - 4314 021d 00 .byte 0x0 - 4315 021e 27 .uleb128 0x27 - 4316 021f 05 .uleb128 0x5 - 4317 0220 00 .byte 0x0 - 4318 0221 31 .uleb128 0x31 - 4319 0222 13 .uleb128 0x13 - 4320 0223 00 .byte 0x0 - 4321 0224 00 .byte 0x0 - 4322 0225 28 .uleb128 0x28 - 4323 0226 34 .uleb128 0x34 - 4324 0227 00 .byte 0x0 - 4325 0228 31 .uleb128 0x31 - 4326 0229 13 .uleb128 0x13 - 4327 022a 02 .uleb128 0x2 - 4328 022b 06 .uleb128 0x6 - 4329 022c 00 .byte 0x0 - 4330 022d 00 .byte 0x0 - 4331 022e 29 .uleb128 0x29 - 4332 022f 1D .uleb128 0x1d - 4333 0230 01 .byte 0x1 - 4334 0231 31 .uleb128 0x31 - 4335 0232 13 .uleb128 0x13 - 4336 0233 55 .uleb128 0x55 - 4337 0234 06 .uleb128 0x6 - 4338 0235 58 .uleb128 0x58 - 4339 0236 0B .uleb128 0xb - 4340 0237 59 .uleb128 0x59 - 4341 0238 0B .uleb128 0xb - 4342 0239 01 .uleb128 0x1 - 4343 023a 13 .uleb128 0x13 - 4344 023b 00 .byte 0x0 - 4345 023c 00 .byte 0x0 - 4346 023d 2A .uleb128 0x2a - 4347 023e 34 .uleb128 0x34 - 4348 023f 00 .byte 0x0 - 4349 0240 03 .uleb128 0x3 - 4350 0241 0E .uleb128 0xe - 4351 0242 3A .uleb128 0x3a - 4352 0243 0B .uleb128 0xb - 4353 0244 3B .uleb128 0x3b - BFIN GAS /tmp/ccdxqFXK.s page 97 - - - 4354 0245 0B .uleb128 0xb - 4355 0246 49 .uleb128 0x49 - 4356 0247 13 .uleb128 0x13 - 4357 0248 02 .uleb128 0x2 - 4358 0249 0A .uleb128 0xa - 4359 024a 00 .byte 0x0 - 4360 024b 00 .byte 0x0 - 4361 024c 2B .uleb128 0x2b - 4362 024d 26 .uleb128 0x26 - 4363 024e 00 .byte 0x0 - 4364 024f 49 .uleb128 0x49 - 4365 0250 13 .uleb128 0x13 - 4366 0251 00 .byte 0x0 - 4367 0252 00 .byte 0x0 - 4368 0253 2C .uleb128 0x2c - 4369 0254 01 .uleb128 0x1 - 4370 0255 01 .byte 0x1 - 4371 0256 49 .uleb128 0x49 - 4372 0257 13 .uleb128 0x13 - 4373 0258 01 .uleb128 0x1 - 4374 0259 13 .uleb128 0x13 - 4375 025a 00 .byte 0x0 - 4376 025b 00 .byte 0x0 - 4377 025c 2D .uleb128 0x2d - 4378 025d 21 .uleb128 0x21 - 4379 025e 00 .byte 0x0 - 4380 025f 49 .uleb128 0x49 - 4381 0260 13 .uleb128 0x13 - 4382 0261 2F .uleb128 0x2f - 4383 0262 06 .uleb128 0x6 - 4384 0263 00 .byte 0x0 - 4385 0264 00 .byte 0x0 - 4386 0265 2E .uleb128 0x2e - 4387 0266 35 .uleb128 0x35 - 4388 0267 00 .byte 0x0 - 4389 0268 49 .uleb128 0x49 - 4390 0269 13 .uleb128 0x13 - 4391 026a 00 .byte 0x0 - 4392 026b 00 .byte 0x0 - 4393 026c 2F .uleb128 0x2f - 4394 026d 34 .uleb128 0x34 - 4395 026e 00 .byte 0x0 - 4396 026f 03 .uleb128 0x3 - 4397 0270 0E .uleb128 0xe - 4398 0271 3A .uleb128 0x3a - 4399 0272 0B .uleb128 0xb - 4400 0273 3B .uleb128 0x3b - 4401 0274 0B .uleb128 0xb - 4402 0275 49 .uleb128 0x49 - 4403 0276 13 .uleb128 0x13 - 4404 0277 1C .uleb128 0x1c - 4405 0278 05 .uleb128 0x5 - 4406 0279 00 .byte 0x0 - 4407 027a 00 .byte 0x0 - 4408 027b 30 .uleb128 0x30 - 4409 027c 34 .uleb128 0x34 - 4410 027d 00 .byte 0x0 - BFIN GAS /tmp/ccdxqFXK.s page 98 - - - 4411 027e 03 .uleb128 0x3 - 4412 027f 0E .uleb128 0xe - 4413 0280 3A .uleb128 0x3a - 4414 0281 0B .uleb128 0xb - 4415 0282 3B .uleb128 0x3b - 4416 0283 0B .uleb128 0xb - 4417 0284 49 .uleb128 0x49 - 4418 0285 13 .uleb128 0x13 - 4419 0286 3F .uleb128 0x3f - 4420 0287 0C .uleb128 0xc - 4421 0288 02 .uleb128 0x2 - 4422 0289 0A .uleb128 0xa - 4423 028a 00 .byte 0x0 - 4424 028b 00 .byte 0x0 - 4425 028c 31 .uleb128 0x31 - 4426 028d 21 .uleb128 0x21 - 4427 028e 00 .byte 0x0 - 4428 028f 49 .uleb128 0x49 - 4429 0290 13 .uleb128 0x13 - 4430 0291 2F .uleb128 0x2f - 4431 0292 05 .uleb128 0x5 - 4432 0293 00 .byte 0x0 - 4433 0294 00 .byte 0x0 - 4434 0295 00 .byte 0x0 - 4435 .section .debug_pubnames,"",@progbits - 4436 0000 A1010000 .4byte 0x1a1 - 4437 0004 0200 .2byte 0x2 - 4438 0006 00000000 .4byte .Ldebug_info0 - 4439 000a 4F080000 .4byte 0x84f - 4440 000e 9A010000 .4byte 0x19a - 4441 0012 73747265 .string "stream_in_buf_free" - 4441 616D5F69 - 4441 6E5F6275 - 4441 665F6672 - 4441 656500 - 4442 0025 D5010000 .4byte 0x1d5 - 4443 0029 73747265 .string "stream_out_buf_free" - 4443 616D5F6F - 4443 75745F62 - 4443 75665F66 - 4443 72656500 - 4444 003d 0E020000 .4byte 0x20e - 4445 0041 68646D61 .string "hdma_recv_done" - 4445 5F726563 - 4445 765F646F - 4445 6E6500 - 4446 0050 5F020000 .4byte 0x25f - 4447 0054 73706F72 .string "sport_in_buffer_size" - 4447 745F696E - 4447 5F627566 - 4447 6665725F - 4447 73697A65 - 4448 0069 79020000 .4byte 0x279 - 4449 006d 73706F72 .string "sport_in_set_step_size" - 4449 745F696E - 4449 5F736574 - 4449 5F737465 - BFIN GAS /tmp/ccdxqFXK.s page 99 - - - 4449 705F7369 - 4450 0084 C6020000 .4byte 0x2c6 - 4451 0088 73706F72 .string "sport_rx_stop" - 4451 745F7278 - 4451 5F73746F - 4451 7000 - 4452 0096 16030000 .4byte 0x316 - 4453 009a 73706F72 .string "sport_rx_start" - 4453 745F7278 - 4453 5F737461 - 4453 727400 - 4454 00a9 5C030000 .4byte 0x35c - 4455 00ad 73747265 .string "stream_proc" - 4455 616D5F70 - 4455 726F6300 - 4456 00b9 11040000 .4byte 0x411 - 4457 00bd 73747265 .string "stream_out_preload" - 4457 616D5F6F - 4457 75745F70 - 4457 72656C6F - 4457 616400 - 4458 00d0 3E040000 .4byte 0x43e - 4459 00d4 6C353032 .string "l502_stream_init" - 4459 5F737472 - 4459 65616D5F - 4459 696E6974 - 4459 00 - 4460 00e5 53040000 .4byte 0x453 - 4461 00e9 73747265 .string "streams_stop" - 4461 616D735F - 4461 73746F70 - 4461 00 - 4462 00f6 AF040000 .4byte 0x4af - 4463 00fa 6973725F .string "isr_sport_dma_rx" - 4463 73706F72 - 4463 745F646D - 4463 615F7278 - 4463 00 - 4464 010b 55050000 .4byte 0x555 - 4465 010f 73747265 .string "stream_disable" - 4465 616D5F64 - 4465 69736162 - 4465 6C6500 - 4466 011e A6050000 .4byte 0x5a6 - 4467 0122 73747265 .string "stream_enable" - 4467 616D5F65 - 4467 6E61626C - 4467 6500 - 4468 0130 F7050000 .4byte 0x5f7 - 4469 0134 73747265 .string "streams_start" - 4469 616D735F - 4469 73746172 - 4469 7400 - 4470 0142 C2070000 .4byte 0x7c2 - 4471 0146 675F7374 .string "g_stream_in_state" - 4471 7265616D - 4471 5F696E5F - BFIN GAS /tmp/ccdxqFXK.s page 100 - - - 4471 73746174 - 4471 6500 - 4472 0158 D4070000 .4byte 0x7d4 - 4473 015c 675F7374 .string "g_stream_out_state" - 4473 7265616D - 4473 5F6F7574 - 4473 5F737461 - 4473 746500 - 4474 016f E6070000 .4byte 0x7e6 - 4475 0173 675F6D6F .string "g_mode" - 4475 646500 - 4476 017a FD070000 .4byte 0x7fd - 4477 017e 675F7374 .string "g_streams" - 4477 7265616D - 4477 7300 - 4478 0188 20080000 .4byte 0x820 - 4479 018c 54585F62 .string "TX_buff" - 4479 75666600 - 4480 0194 37080000 .4byte 0x837 - 4481 0198 4156475F .string "AVG_buff" - 4481 62756666 - 4481 00 - 4482 01a1 00000000 .4byte 0x0 - 4483 .section .debug_aranges,"",@progbits - 4484 0000 1C000000 .4byte 0x1c - 4485 0004 0200 .2byte 0x2 - 4486 0006 00000000 .4byte .Ldebug_info0 - 4487 000a 04 .byte 0x4 - 4488 000b 00 .byte 0x0 - 4489 000c 0000 .2byte 0x0 - 4490 000e 0000 .2byte 0x0 - 4491 0010 00000000 .4byte .Ltext0 - 4492 0014 F0080000 .4byte .Letext0-.Ltext0 - 4493 0018 00000000 .4byte 0x0 - 4494 001c 00000000 .4byte 0x0 - 4495 .section .debug_ranges,"",@progbits - 4496 .Ldebug_ranges0: - 4497 0000 20020000 .4byte .LBB45-.Ltext0 - 4498 0004 48020000 .4byte .LBE45-.Ltext0 - 4499 0008 68030000 .4byte .LBB53-.Ltext0 - 4500 000c 92030000 .4byte .LBE53-.Ltext0 - 4501 0010 EE020000 .4byte .LBB51-.Ltext0 - 4502 0014 34030000 .4byte .LBE51-.Ltext0 - 4503 0018 00000000 .4byte 0x0 - 4504 001c 00000000 .4byte 0x0 - 4505 0020 60020000 .4byte .LBB47-.Ltext0 - 4506 0024 EE020000 .4byte .LBE47-.Ltext0 - 4507 0028 92030000 .4byte .LBB54-.Ltext0 - 4508 002c 98030000 .4byte .LBE54-.Ltext0 - 4509 0030 34030000 .4byte .LBB52-.Ltext0 - 4510 0034 68030000 .4byte .LBE52-.Ltext0 - 4511 0038 00000000 .4byte 0x0 - 4512 003c 00000000 .4byte 0x0 - 4513 0040 8C020000 .4byte .LBB49-.Ltext0 - 4514 0044 EE020000 .4byte .LBE49-.Ltext0 - 4515 0048 92030000 .4byte .LBB50-.Ltext0 - 4516 004c 98030000 .4byte .LBE50-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 101 - - - 4517 0050 00000000 .4byte 0x0 - 4518 0054 00000000 .4byte 0x0 - 4519 0058 5A040000 .4byte .LBB61-.Ltext0 - 4520 005c 5E040000 .4byte .LBE61-.Ltext0 - 4521 0060 62040000 .4byte .LBB68-.Ltext0 - 4522 0064 A0040000 .4byte .LBE68-.Ltext0 - 4523 0068 00000000 .4byte 0x0 - 4524 006c 00000000 .4byte 0x0 - 4525 0070 20050000 .4byte .LBB78-.Ltext0 - 4526 0074 80050000 .4byte .LBE78-.Ltext0 - 4527 0078 C0050000 .4byte .LBB87-.Ltext0 - 4528 007c 20060000 .4byte .LBE87-.Ltext0 - 4529 0080 00000000 .4byte 0x0 - 4530 0084 00000000 .4byte 0x0 - 4531 0088 2E060000 .4byte .LBB90-.Ltext0 - 4532 008c 32060000 .4byte .LBE90-.Ltext0 - 4533 0090 62060000 .4byte .LBB97-.Ltext0 - 4534 0094 82060000 .4byte .LBE97-.Ltext0 - 4535 0098 3E060000 .4byte .LBB96-.Ltext0 - 4536 009c 58060000 .4byte .LBE96-.Ltext0 - 4537 00a0 34060000 .4byte .LBB95-.Ltext0 - 4538 00a4 3A060000 .4byte .LBE95-.Ltext0 - 4539 00a8 00000000 .4byte 0x0 - 4540 00ac 00000000 .4byte 0x0 - 4541 00b0 2E060000 .4byte .LBB92-.Ltext0 - 4542 00b4 32060000 .4byte .LBE92-.Ltext0 - 4543 00b8 62060000 .4byte .LBB94-.Ltext0 - 4544 00bc 82060000 .4byte .LBE94-.Ltext0 - 4545 00c0 3E060000 .4byte .LBB91-.Ltext0 - 4546 00c4 58060000 .4byte .LBE91-.Ltext0 - 4547 00c8 34060000 .4byte .LBB93-.Ltext0 - 4548 00cc 3A060000 .4byte .LBE93-.Ltext0 - 4549 00d0 00000000 .4byte 0x0 - 4550 00d4 00000000 .4byte 0x0 - 4551 00d8 90060000 .4byte .LBB100-.Ltext0 - 4552 00dc 94060000 .4byte .LBE100-.Ltext0 - 4553 00e0 C4060000 .4byte .LBB107-.Ltext0 - 4554 00e4 E4060000 .4byte .LBE107-.Ltext0 - 4555 00e8 A0060000 .4byte .LBB106-.Ltext0 - 4556 00ec BA060000 .4byte .LBE106-.Ltext0 - 4557 00f0 96060000 .4byte .LBB105-.Ltext0 - 4558 00f4 9C060000 .4byte .LBE105-.Ltext0 - 4559 00f8 00000000 .4byte 0x0 - 4560 00fc 00000000 .4byte 0x0 - 4561 0100 90060000 .4byte .LBB102-.Ltext0 - 4562 0104 94060000 .4byte .LBE102-.Ltext0 - 4563 0108 C4060000 .4byte .LBB104-.Ltext0 - 4564 010c E4060000 .4byte .LBE104-.Ltext0 - 4565 0110 A0060000 .4byte .LBB101-.Ltext0 - 4566 0114 BA060000 .4byte .LBE101-.Ltext0 - 4567 0118 96060000 .4byte .LBB103-.Ltext0 - 4568 011c 9C060000 .4byte .LBE103-.Ltext0 - 4569 0120 00000000 .4byte 0x0 - 4570 0124 00000000 .4byte 0x0 - 4571 0128 3C070000 .4byte .LBB118-.Ltext0 - 4572 012c 3E070000 .4byte .LBE118-.Ltext0 - 4573 0130 E6080000 .4byte .LBB142-.Ltext0 - BFIN GAS /tmp/ccdxqFXK.s page 102 - - - 4574 0134 F0080000 .4byte .LBE142-.Ltext0 - 4575 0138 DA080000 .4byte .LBB141-.Ltext0 - 4576 013c E0080000 .4byte .LBE141-.Ltext0 - 4577 0140 D6080000 .4byte .LBB140-.Ltext0 - 4578 0144 D8080000 .4byte .LBE140-.Ltext0 - 4579 0148 D8070000 .4byte .LBB128-.Ltext0 - 4580 014c EA070000 .4byte .LBE128-.Ltext0 - 4581 0150 5E070000 .4byte .LBB127-.Ltext0 - 4582 0154 60070000 .4byte .LBE127-.Ltext0 - 4583 0158 40070000 .4byte .LBB126-.Ltext0 - 4584 015c 58070000 .4byte .LBE126-.Ltext0 - 4585 0160 00000000 .4byte 0x0 - 4586 0164 00000000 .4byte 0x0 - 4587 0168 3C070000 .4byte .LBB122-.Ltext0 - 4588 016c 3E070000 .4byte .LBE122-.Ltext0 - 4589 0170 E6080000 .4byte .LBB125-.Ltext0 - 4590 0174 F0080000 .4byte .LBE125-.Ltext0 - 4591 0178 DA080000 .4byte .LBB119-.Ltext0 - 4592 017c E0080000 .4byte .LBE119-.Ltext0 - 4593 0180 D6080000 .4byte .LBB124-.Ltext0 - 4594 0184 D8080000 .4byte .LBE124-.Ltext0 - 4595 0188 D8070000 .4byte .LBB120-.Ltext0 - 4596 018c EA070000 .4byte .LBE120-.Ltext0 - 4597 0190 5E070000 .4byte .LBB123-.Ltext0 - 4598 0194 60070000 .4byte .LBE123-.Ltext0 - 4599 0198 40070000 .4byte .LBB121-.Ltext0 - 4600 019c 58070000 .4byte .LBE121-.Ltext0 - 4601 01a0 00000000 .4byte 0x0 - 4602 01a4 00000000 .4byte 0x0 - 4603 .section .debug_str,"MS",@progbits,1 - 4604 .LASF49: - 4605 0000 68646D61 .string "hdma_recv_done" - 4605 5F726563 - 4605 765F646F - 4605 6E6500 - 4606 .LASF35: - 4607 000f 494E5F53 .string "IN_STREAM_ERR" - 4607 54524541 - 4607 4D5F4552 - 4607 5200 - 4608 .LASF39: - 4609 001d 4F55545F .string "OUT_STREAM_RUN" - 4609 53545245 - 4609 414D5F52 - 4609 554E00 - 4610 .LASF18: - 4611 002c 4C353032 .string "L502_BF_ERR_STREAM_RUNNING" - 4611 5F42465F - 4611 4552525F - 4611 53545245 - 4611 414D5F52 - 4612 .LASF74: - 4613 0047 665F7370 .string "f_sport_in_block_size" - 4613 6F72745F - 4613 696E5F62 - 4613 6C6F636B - 4613 5F73697A - BFIN GAS /tmp/ccdxqFXK.s page 103 - - - 4614 .LASF89: - 4615 005d 474E5520 .string "GNU C 4.3.5" - 4615 4320342E - 4615 332E3500 - 4616 .LASF55: - 4617 0069 73706F72 .string "sport_rdy_size" - 4617 745F7264 - 4617 795F7369 - 4617 7A6500 - 4618 .LASF20: - 4619 0078 4C353032 .string "L502_BF_ERR_NO_TEST_IN_PROGR" - 4619 5F42465F - 4619 4552525F - 4619 4E4F5F54 - 4619 4553545F - 4620 .LASF67: - 4621 0095 73747265 .string "streams_start" - 4621 616D735F - 4621 73746172 - 4621 7400 - 4622 .LASF65: - 4623 00a3 73747265 .string "streams" - 4623 616D7300 - 4624 .LASF48: - 4625 00ab 6765745F .string "get_pos" - 4625 706F7300 - 4626 .LASF90: - 4627 00b3 7372632F .string "src/l502_stream.c" - 4627 6C353032 - 4627 5F737472 - 4627 65616D2E - 4627 6300 - 4628 .LASF86: - 4629 00c5 675F7374 .string "g_streams" - 4629 7265616D - 4629 7300 - 4630 .LASF32: - 4631 00cf 494E5F53 .string "IN_STREAM_STOP" - 4631 54524541 - 4631 4D5F5354 - 4631 4F5000 - 4632 .LASF92: - 4633 00de 73706F72 .string "sport_in_buffer_size" - 4633 745F696E - 4633 5F627566 - 4633 6665725F - 4633 73697A65 - 4634 .LASF68: - 4635 00f3 665F6266 .string "f_bf_reg" - 4635 5F726567 - 4635 00 - 4636 .LASF27: - 4637 00fc 4C353032 .string "L502_STREAM_DAC1" - 4637 5F535452 - 4637 45414D5F - 4637 44414331 - 4637 00 - BFIN GAS /tmp/ccdxqFXK.s page 104 - - - 4638 .LASF28: - 4639 010d 4C353032 .string "L502_STREAM_DAC2" - 4639 5F535452 - 4639 45414D5F - 4639 44414332 - 4639 00 - 4640 .LASF62: - 4641 011e 7264795F .string "rdy_put_pos" - 4641 7075745F - 4641 706F7300 - 4642 .LASF79: - 4643 012a 665F6864 .string "f_hdma_out_get_pos" - 4643 6D615F6F - 4643 75745F67 - 4643 65745F70 - 4643 6F7300 - 4644 .LASF2: - 4645 013d 73686F72 .string "short int" - 4645 7420696E - 4645 7400 - 4646 .LASF19: - 4647 0147 4C353032 .string "L502_BF_ERR_STREAM_STOPPED" - 4647 5F42465F - 4647 4552525F - 4647 53545245 - 4647 414D5F53 - 4648 .LASF73: - 4649 0162 665F7370 .string "f_sport_in_get_pos" - 4649 6F72745F - 4649 696E5F67 - 4649 65745F70 - 4649 6F7300 - 4650 .LASF78: - 4651 0175 665F6864 .string "f_hdma_out_start_pos" - 4651 6D615F6F - 4651 75745F73 - 4651 74617274 - 4651 5F706F73 - 4652 .LASF44: - 4653 018a 665F7374 .string "f_stream_in_set_overflow" - 4653 7265616D - 4653 5F696E5F - 4653 7365745F - 4653 6F766572 - 4654 .LASF66: - 4655 01a3 73747265 .string "stream_enable" - 4655 616D5F65 - 4655 6E61626C - 4655 6500 - 4656 .LASF51: - 4657 01b1 7075745F .string "put_pos" - 4657 706F7300 - 4658 .LASF34: - 4659 01b9 494E5F53 .string "IN_STREAM_OV_ALERT" - 4659 54524541 - 4659 4D5F4F56 - 4659 5F414C45 - BFIN GAS /tmp/ccdxqFXK.s page 105 - - - 4659 525400 - 4660 .LASF59: - 4661 01cc 73747265 .string "stream_out_preload" - 4661 616D5F6F - 4661 75745F70 - 4661 72656C6F - 4661 616400 - 4662 .LASF31: - 4663 01df 4C353032 .string "L502_STREAM_ALL_OUT" + 1716 .global _AVG_buff; + 1717 .align 4 + 1718 .type _AVG_buff, @object + 1719 .size _AVG_buff, 4000 + 1720 _AVG_buff: + 1721 c13880 00000000 .zero 4000 + 1721 00000000 + 1721 00000000 + 1721 00000000 + 1721 00000000 + 1722 .section .debug_frame,"",@progbits + 1723 .Lframe0: + 1724 0000 0C000000 .4byte .LECIE0-.LSCIE0 + BFIN GAS /tmp/ccEcEoYb.s page 51 + + + 1725 .LSCIE0: + 1726 0004 FFFFFFFF .4byte 0xffffffff + 1727 0008 01 .byte 0x1 + 1728 0009 00 .string "" + 1729 000a 01 .uleb128 0x1 + 1730 000b 7C .sleb128 -4 + 1731 000c 23 .byte 0x23 + 1732 000d 0C .byte 0xc + 1733 000e 0E .uleb128 0xe + 1734 000f 00 .uleb128 0x0 + 1735 .align 4 + 1736 .LECIE0: + 1737 .LSFDE0: + 1738 0010 14000000 .4byte .LEFDE0-.LASFDE0 + 1739 .LASFDE0: + 1740 0014 00000000 .4byte .Lframe0 + 1741 0018 00000000 .4byte .LFB25 + 1742 001c 28000000 .4byte .LFE25-.LFB25 + 1743 0020 5E .byte 0x4 + 1744 .4byte .LCFI0-.LFB25 + 1745 0021 0C .byte 0xc + 1746 0022 0F .uleb128 0xf + 1747 0023 08 .uleb128 0x8 + 1748 0024 8F .byte 0x8f + 1749 0025 02 .uleb128 0x2 + 1750 0026 A3 .byte 0xa3 + 1751 0027 01 .uleb128 0x1 + 1752 .align 4 + 1753 .LEFDE0: + 1754 .LSFDE2: + 1755 0028 14000000 .4byte .LEFDE2-.LASFDE2 + 1756 .LASFDE2: + 1757 002c 00000000 .4byte .Lframe0 + 1758 0030 28000000 .4byte .LFB26 + 1759 0034 28000000 .4byte .LFE26-.LFB26 + 1760 0038 56 .byte 0x4 + 1761 .4byte .LCFI1-.LFB26 + 1762 0039 0C .byte 0xc + 1763 003a 0F .uleb128 0xf + 1764 003b 08 .uleb128 0x8 + 1765 003c 8F .byte 0x8f + 1766 003d 02 .uleb128 0x2 + 1767 003e A3 .byte 0xa3 + 1768 003f 01 .uleb128 0x1 + 1769 .align 4 + 1770 .LEFDE2: + 1771 .LSFDE4: + 1772 0040 14000000 .4byte .LEFDE4-.LASFDE4 + 1773 .LASFDE4: + 1774 0044 00000000 .4byte .Lframe0 + 1775 0048 50000000 .4byte .LFB27 + 1776 004c 22000000 .4byte .LFE27-.LFB27 + 1777 0050 58 .byte 0x4 + 1778 .4byte .LCFI2-.LFB27 + 1779 0051 0C .byte 0xc + 1780 0052 0F .uleb128 0xf + 1781 0053 08 .uleb128 0x8 + BFIN GAS /tmp/ccEcEoYb.s page 52 + + + 1782 0054 8F .byte 0x8f + 1783 0055 02 .uleb128 0x2 + 1784 0056 A3 .byte 0xa3 + 1785 0057 01 .uleb128 0x1 + 1786 .align 4 + 1787 .LEFDE4: + 1788 .LSFDE6: + 1789 0058 14000000 .4byte .LEFDE6-.LASFDE6 + 1790 .LASFDE6: + 1791 005c 00000000 .4byte .Lframe0 + 1792 0060 74000000 .4byte .LFB28 + 1793 0064 0E000000 .4byte .LFE28-.LFB28 + 1794 0068 44 .byte 0x4 + 1795 .4byte .LCFI3-.LFB28 + 1796 0069 0C .byte 0xc + 1797 006a 0F .uleb128 0xf + 1798 006b 08 .uleb128 0x8 + 1799 006c 8F .byte 0x8f + 1800 006d 02 .uleb128 0x2 + 1801 006e A3 .byte 0xa3 + 1802 006f 01 .uleb128 0x1 + 1803 .align 4 + 1804 .LEFDE6: + 1805 .LSFDE8: + 1806 0070 1C000000 .4byte .LEFDE8-.LASFDE8 + 1807 .LASFDE8: + 1808 0074 00000000 .4byte .Lframe0 + 1809 0078 84000000 .4byte .LFB29 + 1810 007c 4E000000 .4byte .LFE29-.LFB29 + 1811 0080 42 .byte 0x4 + 1812 .4byte .LCFI4-.LFB29 + 1813 0081 0E .byte 0xe + 1814 0082 04 .uleb128 0x4 + 1815 0083 87 .byte 0x87 + 1816 0084 01 .uleb128 0x1 + 1817 0085 4A .byte 0x4 + 1818 .4byte .LCFI5-.LCFI4 + 1819 0086 0C .byte 0xc + 1820 0087 0F .uleb128 0xf + 1821 0088 0C .uleb128 0xc + 1822 0089 8F .byte 0x8f + 1823 008a 03 .uleb128 0x3 + 1824 008b A3 .byte 0xa3 + 1825 008c 02 .uleb128 0x2 + 1826 008d 000000 .align 4 + 1827 .LEFDE8: + 1828 .LSFDE10: + 1829 0090 14000000 .4byte .LEFDE10-.LASFDE10 + 1830 .LASFDE10: + 1831 0094 00000000 .4byte .Lframe0 + 1832 0098 D4000000 .4byte .LFB31 + 1833 009c 4C000000 .4byte .LFE31-.LFB31 + 1834 00a0 48 .byte 0x4 + 1835 .4byte .LCFI8-.LFB31 + 1836 00a1 0C .byte 0xc + 1837 00a2 0F .uleb128 0xf + 1838 00a3 08 .uleb128 0x8 + BFIN GAS /tmp/ccEcEoYb.s page 53 + + + 1839 00a4 8F .byte 0x8f + 1840 00a5 02 .uleb128 0x2 + 1841 00a6 A3 .byte 0xa3 + 1842 00a7 01 .uleb128 0x1 + 1843 .align 4 + 1844 .LEFDE10: + 1845 .LSFDE12: + 1846 00a8 1C000000 .4byte .LEFDE12-.LASFDE12 + 1847 .LASFDE12: + 1848 00ac 00000000 .4byte .Lframe0 + 1849 00b0 20010000 .4byte .LFB30 + 1850 00b4 E8000000 .4byte .LFE30-.LFB30 + 1851 00b8 42 .byte 0x4 + 1852 .4byte .LCFI9-.LFB30 + 1853 00b9 0E .byte 0xe + 1854 00ba 08 .uleb128 0x8 + 1855 00bb 48 .byte 0x4 + 1856 .4byte .LCFI10-.LCFI9 + 1857 00bc 0C .byte 0xc + 1858 00bd 0F .uleb128 0xf + 1859 00be 10 .uleb128 0x10 + 1860 00bf 8F .byte 0x8f + 1861 00c0 04 .uleb128 0x4 + 1862 00c1 A3 .byte 0xa3 + 1863 00c2 03 .uleb128 0x3 + 1864 00c3 87 .byte 0x87 + 1865 00c4 02 .uleb128 0x2 + 1866 00c5 86 .byte 0x86 + 1867 00c6 01 .uleb128 0x1 + 1868 00c7 00 .align 4 + 1869 .LEFDE12: + 1870 .LSFDE14: + 1871 00c8 20000000 .4byte .LEFDE14-.LASFDE14 + 1872 .LASFDE14: + 1873 00cc 00000000 .4byte .Lframe0 + 1874 00d0 08020000 .4byte .LFB24 + 1875 00d4 90010000 .4byte .LFE24-.LFB24 + 1876 00d8 42 .byte 0x4 + 1877 .4byte .LCFI12-.LFB24 + 1878 00d9 0E .byte 0xe + 1879 00da 0C .uleb128 0xc + 1880 00db 8D .byte 0x8d + 1881 00dc 03 .uleb128 0x3 + 1882 00dd 8C .byte 0x8c + 1883 00de 02 .uleb128 0x2 + 1884 00df 8B .byte 0x8b + 1885 00e0 01 .uleb128 0x1 + 1886 00e1 4E .byte 0x4 + 1887 .4byte .LCFI13-.LCFI12 + 1888 00e2 0C .byte 0xc + 1889 00e3 0F .uleb128 0xf + 1890 00e4 14 .uleb128 0x14 + 1891 00e5 8F .byte 0x8f + 1892 00e6 05 .uleb128 0x5 + 1893 00e7 A3 .byte 0xa3 + 1894 00e8 04 .uleb128 0x4 + 1895 00e9 000000 .align 4 + BFIN GAS /tmp/ccEcEoYb.s page 54 + + + 1896 .LEFDE14: + 1897 .LSFDE16: + 1898 00ec 1C000000 .4byte .LEFDE16-.LASFDE16 + 1899 .LASFDE16: + 1900 00f0 00000000 .4byte .Lframe0 + 1901 00f4 98030000 .4byte .LFB18 + 1902 00f8 74000000 .4byte .LFE18-.LFB18 + 1903 00fc 42 .byte 0x4 + 1904 .4byte .LCFI15-.LFB18 + 1905 00fd 0E .byte 0xe + 1906 00fe 08 .uleb128 0x8 + 1907 00ff 8D .byte 0x8d + 1908 0100 02 .uleb128 0x2 + 1909 0101 8C .byte 0x8c + 1910 0102 01 .uleb128 0x1 + 1911 0103 48 .byte 0x4 + 1912 .4byte .LCFI16-.LCFI15 + 1913 0104 0C .byte 0xc + 1914 0105 0F .uleb128 0xf + 1915 0106 10 .uleb128 0x10 + 1916 0107 8F .byte 0x8f + 1917 0108 04 .uleb128 0x4 + 1918 0109 A3 .byte 0xa3 + 1919 010a 03 .uleb128 0x3 + 1920 010b 00 .align 4 + 1921 .LEFDE16: + 1922 .LSFDE18: + 1923 010c 14000000 .4byte .LEFDE18-.LASFDE18 + 1924 .LASFDE18: + 1925 0110 00000000 .4byte .Lframe0 + 1926 0114 0C040000 .4byte .LFB17 + 1927 0118 20000000 .4byte .LFE17-.LFB17 + 1928 011c 44 .byte 0x4 + 1929 .4byte .LCFI19-.LFB17 + 1930 011d 0C .byte 0xc + 1931 011e 0F .uleb128 0xf + 1932 011f 08 .uleb128 0x8 + 1933 0120 8F .byte 0x8f + 1934 0121 02 .uleb128 0x2 + 1935 0122 A3 .byte 0xa3 + 1936 0123 01 .uleb128 0x1 + 1937 .align 4 + 1938 .LEFDE18: + 1939 .LSFDE20: + 1940 0124 20000000 .4byte .LEFDE20-.LASFDE20 + 1941 .LASFDE20: + 1942 0128 00000000 .4byte .Lframe0 + 1943 012c 2C040000 .4byte .LFB23 + 1944 0130 A6000000 .4byte .LFE23-.LFB23 + 1945 0134 42 .byte 0x4 + 1946 .4byte .LCFI20-.LFB23 + 1947 0135 0E .byte 0xe + 1948 0136 0C .uleb128 0xc + 1949 0137 8D .byte 0x8d + 1950 0138 03 .uleb128 0x3 + 1951 0139 8C .byte 0x8c + 1952 013a 02 .uleb128 0x2 + BFIN GAS /tmp/ccEcEoYb.s page 55 + + + 1953 013b 87 .byte 0x87 + 1954 013c 01 .uleb128 0x1 + 1955 013d 48 .byte 0x4 + 1956 .4byte .LCFI21-.LCFI20 + 1957 013e 0C .byte 0xc + 1958 013f 0F .uleb128 0xf + 1959 0140 14 .uleb128 0x14 + 1960 0141 8F .byte 0x8f + 1961 0142 05 .uleb128 0x5 + 1962 0143 A3 .byte 0xa3 + 1963 0144 04 .uleb128 0x4 + 1964 0145 000000 .align 4 + 1965 .LEFDE20: + 1966 .LSFDE22: + 1967 0148 C0000000 .4byte .LEFDE22-.LASFDE22 + 1968 .LASFDE22: + 1969 014c 00000000 .4byte .Lframe0 + 1970 0150 D4040000 .4byte .LFB32 + 1971 0154 4C010000 .4byte .LFE32-.LFB32 + 1972 0158 42 .byte 0x4 + 1973 .4byte .LCFI24-.LFB32 + 1974 0159 0E .byte 0xe + 1975 015a 04 .uleb128 0x4 + 1976 015b 42 .byte 0x4 + 1977 .4byte .LCFI25-.LCFI24 + 1978 015c 0E .byte 0xe + 1979 015d 08 .uleb128 0x8 + 1980 015e 42 .byte 0x4 + 1981 .4byte .LCFI26-.LCFI25 + 1982 015f 0E .byte 0xe + 1983 0160 0C .uleb128 0xc + 1984 0161 42 .byte 0x4 + 1985 .4byte .LCFI27-.LCFI26 + 1986 0162 0E .byte 0xe + 1987 0163 10 .uleb128 0x10 + 1988 0164 42 .byte 0x4 + 1989 .4byte .LCFI28-.LCFI27 + 1990 0165 0E .byte 0xe + 1991 0166 14 .uleb128 0x14 + 1992 0167 42 .byte 0x4 + 1993 .4byte .LCFI29-.LCFI28 + 1994 0168 0E .byte 0xe + 1995 0169 18 .uleb128 0x18 + 1996 016a 42 .byte 0x4 + 1997 .4byte .LCFI30-.LCFI29 + 1998 016b 0E .byte 0xe + 1999 016c 1C .uleb128 0x1c + 2000 016d 42 .byte 0x4 + 2001 .4byte .LCFI31-.LCFI30 + 2002 016e 0E .byte 0xe + 2003 016f 54 .uleb128 0x54 + 2004 0170 42 .byte 0x4 + 2005 .4byte .LCFI32-.LCFI31 + 2006 0171 0E .byte 0xe + 2007 0172 58 .uleb128 0x58 + 2008 0173 42 .byte 0x4 + 2009 .4byte .LCFI33-.LCFI32 + BFIN GAS /tmp/ccEcEoYb.s page 56 + + + 2010 0174 0E .byte 0xe + 2011 0175 5C .uleb128 0x5c + 2012 0176 42 .byte 0x4 + 2013 .4byte .LCFI34-.LCFI33 + 2014 0177 0E .byte 0xe + 2015 0178 60 .uleb128 0x60 + 2016 0179 42 .byte 0x4 + 2017 .4byte .LCFI35-.LCFI34 + 2018 017a 0E .byte 0xe + 2019 017b 64 .uleb128 0x64 + 2020 017c 42 .byte 0x4 + 2021 .4byte .LCFI36-.LCFI35 + 2022 017d 0E .byte 0xe + 2023 017e 68 .uleb128 0x68 + 2024 017f 42 .byte 0x4 + 2025 .4byte .LCFI37-.LCFI36 + 2026 0180 0E .byte 0xe + 2027 0181 6C .uleb128 0x6c + 2028 0182 42 .byte 0x4 + 2029 .4byte .LCFI38-.LCFI37 + 2030 0183 0E .byte 0xe + 2031 0184 70 .uleb128 0x70 + 2032 0185 42 .byte 0x4 + 2033 .4byte .LCFI39-.LCFI38 + 2034 0186 0E .byte 0xe + 2035 0187 74 .uleb128 0x74 + 2036 0188 42 .byte 0x4 + 2037 .4byte .LCFI40-.LCFI39 + 2038 0189 0E .byte 0xe + 2039 018a 78 .uleb128 0x78 + 2040 018b 42 .byte 0x4 + 2041 .4byte .LCFI41-.LCFI40 + 2042 018c 0E .byte 0xe + 2043 018d 7C .uleb128 0x7c + 2044 018e 42 .byte 0x4 + 2045 .4byte .LCFI42-.LCFI41 + 2046 018f 0E .byte 0xe + 2047 0190 8001 .uleb128 0x80 + 2048 0192 42 .byte 0x4 + 2049 .4byte .LCFI43-.LCFI42 + 2050 0193 0E .byte 0xe + 2051 0194 8401 .uleb128 0x84 + 2052 0196 42 .byte 0x4 + 2053 .4byte .LCFI44-.LCFI43 + 2054 0197 0E .byte 0xe + 2055 0198 8801 .uleb128 0x88 + 2056 019a 42 .byte 0x4 + 2057 .4byte .LCFI45-.LCFI44 + 2058 019b 0E .byte 0xe + 2059 019c 8C01 .uleb128 0x8c + 2060 019e 42 .byte 0x4 + 2061 .4byte .LCFI46-.LCFI45 + 2062 019f 0E .byte 0xe + 2063 01a0 9001 .uleb128 0x90 + 2064 01a2 42 .byte 0x4 + 2065 .4byte .LCFI47-.LCFI46 + 2066 01a3 0E .byte 0xe + BFIN GAS /tmp/ccEcEoYb.s page 57 + + + 2067 01a4 9401 .uleb128 0x94 + 2068 01a6 44 .byte 0x4 + 2069 .4byte .LCFI48-.LCFI47 + 2070 01a7 0E .byte 0xe + 2071 01a8 9C01 .uleb128 0x9c + 2072 01aa A0 .byte 0xa0 + 2073 01ab 27 .uleb128 0x27 + 2074 01ac 9F .byte 0x9f + 2075 01ad 25 .uleb128 0x25 + 2076 01ae 9E .byte 0x9e + 2077 01af 24 .uleb128 0x24 + 2078 01b0 9D .byte 0x9d + 2079 01b1 23 .uleb128 0x23 + 2080 01b2 9C .byte 0x9c + 2081 01b3 22 .uleb128 0x22 + 2082 01b4 9B .byte 0x9b + 2083 01b5 21 .uleb128 0x21 + 2084 01b6 9A .byte 0x9a + 2085 01b7 20 .uleb128 0x20 + 2086 01b8 99 .byte 0x99 + 2087 01b9 1F .uleb128 0x1f + 2088 01ba 98 .byte 0x98 + 2089 01bb 1E .uleb128 0x1e + 2090 01bc 97 .byte 0x97 + 2091 01bd 1D .uleb128 0x1d + 2092 01be 96 .byte 0x96 + 2093 01bf 1C .uleb128 0x1c + 2094 01c0 95 .byte 0x95 + 2095 01c1 1B .uleb128 0x1b + 2096 01c2 94 .byte 0x94 + 2097 01c3 1A .uleb128 0x1a + 2098 01c4 93 .byte 0x93 + 2099 01c5 19 .uleb128 0x19 + 2100 01c6 92 .byte 0x92 + 2101 01c7 18 .uleb128 0x18 + 2102 01c8 91 .byte 0x91 + 2103 01c9 17 .uleb128 0x17 + 2104 01ca 90 .byte 0x90 + 2105 01cb 16 .uleb128 0x16 + 2106 01cc 8D .byte 0x8d + 2107 01cd 15 .uleb128 0x15 + 2108 01ce 8C .byte 0x8c + 2109 01cf 14 .uleb128 0x14 + 2110 01d0 8B .byte 0x8b + 2111 01d1 13 .uleb128 0x13 + 2112 01d2 8A .byte 0x8a + 2113 01d3 12 .uleb128 0x12 + 2114 01d4 89 .byte 0x89 + 2115 01d5 11 .uleb128 0x11 + 2116 01d6 88 .byte 0x88 + 2117 01d7 10 .uleb128 0x10 + 2118 01d8 87 .byte 0x87 + 2119 01d9 0F .uleb128 0xf + 2120 01da 86 .byte 0x86 + 2121 01db 0E .uleb128 0xe + 2122 01dc 85 .byte 0x85 + 2123 01dd 0D .uleb128 0xd + BFIN GAS /tmp/ccEcEoYb.s page 58 + + + 2124 01de 84 .byte 0x84 + 2125 01df 0C .uleb128 0xc + 2126 01e0 83 .byte 0x83 + 2127 01e1 0B .uleb128 0xb + 2128 01e2 82 .byte 0x82 + 2129 01e3 0A .uleb128 0xa + 2130 01e4 81 .byte 0x81 + 2131 01e5 09 .uleb128 0x9 + 2132 01e6 80 .byte 0x80 + 2133 01e7 08 .uleb128 0x8 + 2134 01e8 B1 .byte 0xb1 + 2135 01e9 07 .uleb128 0x7 + 2136 01ea B0 .byte 0xb0 + 2137 01eb 06 .uleb128 0x6 + 2138 01ec AF .byte 0xaf + 2139 01ed 05 .uleb128 0x5 + 2140 01ee AE .byte 0xae + 2141 01ef 04 .uleb128 0x4 + 2142 01f0 AD .byte 0xad + 2143 01f1 03 .uleb128 0x3 + 2144 01f2 AC .byte 0xac + 2145 01f3 02 .uleb128 0x2 + 2146 01f4 A8 .byte 0xa8 + 2147 01f5 01 .uleb128 0x1 + 2148 01f6 48 .byte 0x4 + 2149 .4byte .LCFI49-.LCFI48 + 2150 01f7 0E .byte 0xe + 2151 01f8 A401 .uleb128 0xa4 + 2152 01fa 46 .byte 0x4 + 2153 .4byte .LCFI50-.LCFI49 + 2154 01fb 0E .byte 0xe + 2155 01fc A801 .uleb128 0xa8 + 2156 01fe 44 .byte 0x4 + 2157 .4byte .LCFI51-.LCFI50 + 2158 01ff 0C .byte 0xc + 2159 0200 0F .uleb128 0xf + 2160 0201 B001 .uleb128 0xb0 + 2161 0203 8F .byte 0x8f + 2162 0204 2C .uleb128 0x2c + 2163 0205 A3 .byte 0xa3 + 2164 0206 2B .uleb128 0x2b + 2165 0207 A4 .byte 0xa4 + 2166 0208 2A .uleb128 0x2a + 2167 0209 A1 .byte 0xa1 + 2168 020a 29 .uleb128 0x29 + 2169 020b 00 .align 4 + 2170 .LEFDE22: + 2171 .LSFDE24: + 2172 020c 1C000000 .4byte .LEFDE24-.LASFDE24 + 2173 .LASFDE24: + 2174 0210 00000000 .4byte .Lframe0 + 2175 0214 20060000 .4byte .LFB21 + 2176 0218 62000000 .4byte .LFE21-.LFB21 + 2177 021c 42 .byte 0x4 + 2178 .4byte .LCFI53-.LFB21 + 2179 021d 0E .byte 0xe + 2180 021e 08 .uleb128 0x8 + BFIN GAS /tmp/ccEcEoYb.s page 59 + + + 2181 021f 8D .byte 0x8d + 2182 0220 02 .uleb128 0x2 + 2183 0221 87 .byte 0x87 + 2184 0222 01 .uleb128 0x1 + 2185 0223 5C .byte 0x4 + 2186 .4byte .LCFI54-.LCFI53 + 2187 0224 0C .byte 0xc + 2188 0225 0F .uleb128 0xf + 2189 0226 10 .uleb128 0x10 + 2190 0227 8F .byte 0x8f + 2191 0228 04 .uleb128 0x4 + 2192 0229 A3 .byte 0xa3 + 2193 022a 03 .uleb128 0x3 + 2194 022b 00 .align 4 + 2195 .LEFDE24: + 2196 .LSFDE26: + 2197 022c 1C000000 .4byte .LEFDE26-.LASFDE26 + 2198 .LASFDE26: + 2199 0230 00000000 .4byte .Lframe0 + 2200 0234 84060000 .4byte .LFB20 + 2201 0238 60000000 .4byte .LFE20-.LFB20 + 2202 023c 42 .byte 0x4 + 2203 .4byte .LCFI56-.LFB20 + 2204 023d 0E .byte 0xe + 2205 023e 08 .uleb128 0x8 + 2206 023f 8D .byte 0x8d + 2207 0240 02 .uleb128 0x2 + 2208 0241 87 .byte 0x87 + 2209 0242 01 .uleb128 0x1 + 2210 0243 5A .byte 0x4 + 2211 .4byte .LCFI57-.LCFI56 + 2212 0244 0C .byte 0xc + 2213 0245 0F .uleb128 0xf + 2214 0246 10 .uleb128 0x10 + 2215 0247 8F .byte 0x8f + 2216 0248 04 .uleb128 0x4 + 2217 0249 A3 .byte 0xa3 + 2218 024a 03 .uleb128 0x3 + 2219 024b 00 .align 4 + 2220 .LEFDE26: + 2221 .LSFDE28: + 2222 024c 24000000 .4byte .LEFDE28-.LASFDE28 + 2223 .LASFDE28: + 2224 0250 00000000 .4byte .Lframe0 + 2225 0254 E4060000 .4byte .LFB22 + 2226 0258 0C020000 .4byte .LFE22-.LFB22 + 2227 025c 42 .byte 0x4 + 2228 .4byte .LCFI59-.LFB22 + 2229 025d 0E .byte 0xe + 2230 025e 14 .uleb128 0x14 + 2231 025f 8D .byte 0x8d + 2232 0260 05 .uleb128 0x5 + 2233 0261 8C .byte 0x8c + 2234 0262 04 .uleb128 0x4 + 2235 0263 8B .byte 0x8b + 2236 0264 03 .uleb128 0x3 + 2237 0265 87 .byte 0x87 + BFIN GAS /tmp/ccEcEoYb.s page 60 + + + 2238 0266 02 .uleb128 0x2 + 2239 0267 86 .byte 0x86 + 2240 0268 01 .uleb128 0x1 + 2241 0269 48 .byte 0x4 + 2242 .4byte .LCFI60-.LCFI59 + 2243 026a 0C .byte 0xc + 2244 026b 0F .uleb128 0xf + 2245 026c 1C .uleb128 0x1c + 2246 026d 8F .byte 0x8f + 2247 026e 07 .uleb128 0x7 + 2248 026f A3 .byte 0xa3 + 2249 0270 06 .uleb128 0x6 + 2250 0271 000000 .align 4 + 2251 .LEFDE28: + 2252 .text; + 2253 .Letext0: + 2254 .section .debug_loc,"",@progbits + 2255 .Ldebug_loc0: + 2256 .LLST0: + 2257 0000 00000000 .4byte .LFB25-.Ltext0 + 2258 0004 1E000000 .4byte .LCFI0-.Ltext0 + 2259 0008 0100 .2byte 0x1 + 2260 000a 5E .byte 0x5e + 2261 000b 1E000000 .4byte .LCFI0-.Ltext0 + 2262 000f 28000000 .4byte .LFE25-.Ltext0 + 2263 0013 0200 .2byte 0x2 + 2264 0015 7F .byte 0x7f + 2265 0016 08 .sleb128 8 + 2266 0017 00000000 .4byte 0x0 + 2267 001b 00000000 .4byte 0x0 + 2268 .LLST1: + 2269 001f 00000000 .4byte .LVL0-.Ltext0 + 2270 0023 10000000 .4byte .LVL2-.Ltext0 + 2271 0027 0100 .2byte 0x1 + 2272 0029 50 .byte 0x50 + 2273 002a 00000000 .4byte 0x0 + 2274 002e 00000000 .4byte 0x0 + 2275 .LLST2: + 2276 0032 0A000000 .4byte .LVL1-.Ltext0 + 2277 0036 10000000 .4byte .LVL2-.Ltext0 + 2278 003a 0100 .2byte 0x1 + 2279 003c 51 .byte 0x51 + 2280 003d 10000000 .4byte .LVL2-.Ltext0 + 2281 0041 28000000 .4byte .LFE25-.Ltext0 + 2282 0045 0100 .2byte 0x1 + 2283 0047 50 .byte 0x50 + 2284 0048 00000000 .4byte 0x0 + 2285 004c 00000000 .4byte 0x0 + 2286 .LLST3: + 2287 0050 28000000 .4byte .LFB26-.Ltext0 + 2288 0054 3E000000 .4byte .LCFI1-.Ltext0 + 2289 0058 0100 .2byte 0x1 + 2290 005a 5E .byte 0x5e + 2291 005b 3E000000 .4byte .LCFI1-.Ltext0 + 2292 005f 50000000 .4byte .LFE26-.Ltext0 + 2293 0063 0200 .2byte 0x2 + 2294 0065 7F .byte 0x7f + BFIN GAS /tmp/ccEcEoYb.s page 61 + + + 2295 0066 08 .sleb128 8 + 2296 0067 00000000 .4byte 0x0 + 2297 006b 00000000 .4byte 0x0 + 2298 .LLST4: + 2299 006f 28000000 .4byte .LVL3-.Ltext0 + 2300 0073 36000000 .4byte .LVL6-.Ltext0 + 2301 0077 0100 .2byte 0x1 + 2302 0079 50 .byte 0x50 + 2303 007a 00000000 .4byte 0x0 + 2304 007e 00000000 .4byte 0x0 + 2305 .LLST5: + 2306 0082 50000000 .4byte .LFB27-.Ltext0 + 2307 0086 68000000 .4byte .LCFI2-.Ltext0 + 2308 008a 0100 .2byte 0x1 + 2309 008c 5E .byte 0x5e + 2310 008d 68000000 .4byte .LCFI2-.Ltext0 + 2311 0091 72000000 .4byte .LFE27-.Ltext0 + 2312 0095 0200 .2byte 0x2 + 2313 0097 7F .byte 0x7f + 2314 0098 08 .sleb128 8 + 2315 0099 00000000 .4byte 0x0 + 2316 009d 00000000 .4byte 0x0 + 2317 .LLST6: + 2318 00a1 50000000 .4byte .LVL7-.Ltext0 + 2319 00a5 5A000000 .4byte .LVL8-.Ltext0 + 2320 00a9 0100 .2byte 0x1 + 2321 00ab 50 .byte 0x50 + 2322 00ac 00000000 .4byte 0x0 + 2323 00b0 00000000 .4byte 0x0 + 2324 .LLST7: + 2325 00b4 50000000 .4byte .LVL7-.Ltext0 + 2326 00b8 5C000000 .4byte .LVL9-.Ltext0 + 2327 00bc 0100 .2byte 0x1 + 2328 00be 51 .byte 0x51 + 2329 00bf 00000000 .4byte 0x0 + 2330 00c3 00000000 .4byte 0x0 + 2331 .LLST8: + 2332 00c7 5A000000 .4byte .LVL8-.Ltext0 + 2333 00cb 5C000000 .4byte .LVL9-.Ltext0 + 2334 00cf 0100 .2byte 0x1 + 2335 00d1 50 .byte 0x50 + 2336 00d2 5C000000 .4byte .LVL9-.Ltext0 + 2337 00d6 72000000 .4byte .LFE27-.Ltext0 + 2338 00da 0100 .2byte 0x1 + 2339 00dc 51 .byte 0x51 + 2340 00dd 00000000 .4byte 0x0 + 2341 00e1 00000000 .4byte 0x0 + 2342 .LLST9: + 2343 00e5 74000000 .4byte .LFB28-.Ltext0 + 2344 00e9 78000000 .4byte .LCFI3-.Ltext0 + 2345 00ed 0100 .2byte 0x1 + 2346 00ef 5E .byte 0x5e + 2347 00f0 78000000 .4byte .LCFI3-.Ltext0 + 2348 00f4 82000000 .4byte .LFE28-.Ltext0 + 2349 00f8 0200 .2byte 0x2 + 2350 00fa 7F .byte 0x7f + 2351 00fb 08 .sleb128 8 + BFIN GAS /tmp/ccEcEoYb.s page 62 + + + 2352 00fc 00000000 .4byte 0x0 + 2353 0100 00000000 .4byte 0x0 + 2354 .LLST10: + 2355 0104 84000000 .4byte .LFB29-.Ltext0 + 2356 0108 86000000 .4byte .LCFI4-.Ltext0 + 2357 010c 0100 .2byte 0x1 + 2358 010e 5E .byte 0x5e + 2359 010f 86000000 .4byte .LCFI4-.Ltext0 + 2360 0113 90000000 .4byte .LCFI5-.Ltext0 + 2361 0117 0200 .2byte 0x2 + 2362 0119 7E .byte 0x7e + 2363 011a 04 .sleb128 4 + 2364 011b 90000000 .4byte .LCFI5-.Ltext0 + 2365 011f D2000000 .4byte .LFE29-.Ltext0 + 2366 0123 0200 .2byte 0x2 + 2367 0125 7F .byte 0x7f + 2368 0126 0C .sleb128 12 + 2369 0127 00000000 .4byte 0x0 + 2370 012b 00000000 .4byte 0x0 + 2371 .LLST11: + 2372 012f 84000000 .4byte .LVL10-.Ltext0 + 2373 0133 8C000000 .4byte .LVL11-.Ltext0 + 2374 0137 0100 .2byte 0x1 + 2375 0139 50 .byte 0x50 + 2376 013a 8C000000 .4byte .LVL11-.Ltext0 + 2377 013e C4000000 .4byte .LVL12-.Ltext0 + 2378 0142 0100 .2byte 0x1 + 2379 0144 57 .byte 0x57 + 2380 0145 C6000000 .4byte .LVL13-.Ltext0 + 2381 0149 D0000000 .4byte .LVL14-.Ltext0 + 2382 014d 0100 .2byte 0x1 + 2383 014f 57 .byte 0x57 + 2384 0150 00000000 .4byte 0x0 + 2385 0154 00000000 .4byte 0x0 + 2386 .LLST12: + 2387 0158 D4000000 .4byte .LFB31-.Ltext0 + 2388 015c DC000000 .4byte .LCFI8-.Ltext0 + 2389 0160 0100 .2byte 0x1 + 2390 0162 5E .byte 0x5e + 2391 0163 DC000000 .4byte .LCFI8-.Ltext0 + 2392 0167 20010000 .4byte .LFE31-.Ltext0 + 2393 016b 0200 .2byte 0x2 + 2394 016d 7F .byte 0x7f + 2395 016e 08 .sleb128 8 + 2396 016f 00000000 .4byte 0x0 + 2397 0173 00000000 .4byte 0x0 + 2398 .LLST13: + 2399 0177 20010000 .4byte .LFB30-.Ltext0 + 2400 017b 22010000 .4byte .LCFI9-.Ltext0 + 2401 017f 0100 .2byte 0x1 + 2402 0181 5E .byte 0x5e + 2403 0182 22010000 .4byte .LCFI9-.Ltext0 + 2404 0186 2A010000 .4byte .LCFI10-.Ltext0 + 2405 018a 0200 .2byte 0x2 + 2406 018c 7E .byte 0x7e + 2407 018d 08 .sleb128 8 + 2408 018e 2A010000 .4byte .LCFI10-.Ltext0 + BFIN GAS /tmp/ccEcEoYb.s page 63 + + + 2409 0192 08020000 .4byte .LFE30-.Ltext0 + 2410 0196 0200 .2byte 0x2 + 2411 0198 7F .byte 0x7f + 2412 0199 10 .sleb128 16 + 2413 019a 00000000 .4byte 0x0 + 2414 019e 00000000 .4byte 0x0 + 2415 .LLST14: + 2416 01a2 08020000 .4byte .LFB24-.Ltext0 + 2417 01a6 0A020000 .4byte .LCFI12-.Ltext0 + 2418 01aa 0100 .2byte 0x1 + 2419 01ac 5E .byte 0x5e + 2420 01ad 0A020000 .4byte .LCFI12-.Ltext0 + 2421 01b1 18020000 .4byte .LCFI13-.Ltext0 + 2422 01b5 0200 .2byte 0x2 + 2423 01b7 7E .byte 0x7e + 2424 01b8 0C .sleb128 12 + 2425 01b9 18020000 .4byte .LCFI13-.Ltext0 + 2426 01bd 98030000 .4byte .LFE24-.Ltext0 + 2427 01c1 0200 .2byte 0x2 + 2428 01c3 7F .byte 0x7f + 2429 01c4 14 .sleb128 20 + 2430 01c5 00000000 .4byte 0x0 + 2431 01c9 00000000 .4byte 0x0 + 2432 .LLST15: + 2433 01cd 3A020000 .4byte .LVL16-.Ltext0 + 2434 01d1 5E020000 .4byte .LVL18-.Ltext0 + 2435 01d5 0100 .2byte 0x1 + 2436 01d7 5D .byte 0x5d + 2437 01d8 60020000 .4byte .LVL19-.Ltext0 + 2438 01dc 68020000 .4byte .LVL20-.Ltext0 + 2439 01e0 0100 .2byte 0x1 + 2440 01e2 5D .byte 0x5d + 2441 01e3 FA020000 .4byte .LVL30-.Ltext0 + 2442 01e7 34030000 .4byte .LVL32-.Ltext0 + 2443 01eb 0100 .2byte 0x1 + 2444 01ed 5D .byte 0x5d + 2445 01ee 68030000 .4byte .LVL37-.Ltext0 + 2446 01f2 92030000 .4byte .LVL38-.Ltext0 + 2447 01f6 0100 .2byte 0x1 + 2448 01f8 5D .byte 0x5d + 2449 01f9 00000000 .4byte 0x0 + 2450 01fd 00000000 .4byte 0x0 + 2451 .LLST16: + 2452 0201 32020000 .4byte .LVL15-.Ltext0 + 2453 0205 3A020000 .4byte .LVL16-.Ltext0 + 2454 0209 0100 .2byte 0x1 + 2455 020b 5A .byte 0x5a + 2456 020c EE020000 .4byte .LVL28-.Ltext0 + 2457 0210 F2020000 .4byte .LVL29-.Ltext0 + 2458 0214 0100 .2byte 0x1 + 2459 0216 5A .byte 0x5a + 2460 0217 00000000 .4byte 0x0 + 2461 021b 00000000 .4byte 0x0 + 2462 .LLST17: + 2463 021f 58020000 .4byte .LVL17-.Ltext0 + 2464 0223 60020000 .4byte .LVL19-.Ltext0 + 2465 0227 0100 .2byte 0x1 + BFIN GAS /tmp/ccEcEoYb.s page 64 + + + 2466 0229 5A .byte 0x5a + 2467 022a 80020000 .4byte .LVL22-.Ltext0 + 2468 022e 88020000 .4byte .LVL23-.Ltext0 + 2469 0232 0100 .2byte 0x1 + 2470 0234 51 .byte 0x51 + 2471 0235 B0020000 .4byte .LVL25-.Ltext0 + 2472 0239 C0020000 .4byte .LVL27-.Ltext0 + 2473 023d 0100 .2byte 0x1 + 2474 023f 5A .byte 0x5a + 2475 0240 38030000 .4byte .LVL33-.Ltext0 + 2476 0244 4C030000 .4byte .LVL35-.Ltext0 + 2477 0248 0100 .2byte 0x1 + 2478 024a 51 .byte 0x51 + 2479 024b 94030000 .4byte .LVL39-.Ltext0 + 2480 024f 98030000 .4byte .LFE24-.Ltext0 + 2481 0253 0100 .2byte 0x1 + 2482 0255 5A .byte 0x5a + 2483 0256 00000000 .4byte 0x0 + 2484 025a 00000000 .4byte 0x0 + 2485 .LLST18: + 2486 025e 72020000 .4byte .LVL21-.Ltext0 + 2487 0262 88020000 .4byte .LVL23-.Ltext0 + 2488 0266 0100 .2byte 0x1 + 2489 0268 5A .byte 0x5a + 2490 0269 34030000 .4byte .LVL32-.Ltext0 + 2491 026d 40030000 .4byte .LVL34-.Ltext0 + 2492 0271 0100 .2byte 0x1 + 2493 0273 5A .byte 0x5a + 2494 0274 00000000 .4byte 0x0 + 2495 0278 00000000 .4byte 0x0 + 2496 .LLST19: + 2497 027c 9E020000 .4byte .LVL24-.Ltext0 + 2498 0280 B4020000 .4byte .LVL26-.Ltext0 + 2499 0284 0100 .2byte 0x1 + 2500 0286 59 .byte 0x59 + 2501 0287 92030000 .4byte .LVL38-.Ltext0 + 2502 028b 98030000 .4byte .LFE24-.Ltext0 + 2503 028f 0100 .2byte 0x1 + 2504 0291 59 .byte 0x59 + 2505 0292 00000000 .4byte 0x0 + 2506 0296 00000000 .4byte 0x0 + 2507 .LLST20: + 2508 029a 98030000 .4byte .LFB18-.Ltext0 + 2509 029e 9A030000 .4byte .LCFI15-.Ltext0 + 2510 02a2 0100 .2byte 0x1 + 2511 02a4 5E .byte 0x5e + 2512 02a5 9A030000 .4byte .LCFI15-.Ltext0 + 2513 02a9 A2030000 .4byte .LCFI16-.Ltext0 + 2514 02ad 0200 .2byte 0x2 + 2515 02af 7E .byte 0x7e + 2516 02b0 08 .sleb128 8 + 2517 02b1 A2030000 .4byte .LCFI16-.Ltext0 + 2518 02b5 0C040000 .4byte .LFE18-.Ltext0 + 2519 02b9 0200 .2byte 0x2 + 2520 02bb 7F .byte 0x7f + 2521 02bc 10 .sleb128 16 + 2522 02bd 00000000 .4byte 0x0 + BFIN GAS /tmp/ccEcEoYb.s page 65 + + + 2523 02c1 00000000 .4byte 0x0 + 2524 .LLST21: + 2525 02c5 FC030000 .4byte .LVL40-.Ltext0 + 2526 02c9 FC030000 .4byte .LVL41-.Ltext0 + 2527 02cd 0100 .2byte 0x1 + 2528 02cf 50 .byte 0x50 + 2529 02d0 08040000 .4byte .LVL42-.Ltext0 + 2530 02d4 0A040000 .4byte .LVL43-.Ltext0 + 2531 02d8 0100 .2byte 0x1 + 2532 02da 50 .byte 0x50 + 2533 02db 00000000 .4byte 0x0 + 2534 02df 00000000 .4byte 0x0 + 2535 .LLST22: + 2536 02e3 0C040000 .4byte .LFB17-.Ltext0 + 2537 02e7 10040000 .4byte .LCFI19-.Ltext0 + 2538 02eb 0100 .2byte 0x1 + 2539 02ed 5E .byte 0x5e + 2540 02ee 10040000 .4byte .LCFI19-.Ltext0 + 2541 02f2 2C040000 .4byte .LFE17-.Ltext0 + 2542 02f6 0200 .2byte 0x2 + 2543 02f8 7F .byte 0x7f + 2544 02f9 08 .sleb128 8 + 2545 02fa 00000000 .4byte 0x0 + 2546 02fe 00000000 .4byte 0x0 + 2547 .LLST23: + 2548 0302 2C040000 .4byte .LFB23-.Ltext0 + 2549 0306 2E040000 .4byte .LCFI20-.Ltext0 + 2550 030a 0100 .2byte 0x1 + 2551 030c 5E .byte 0x5e + 2552 030d 2E040000 .4byte .LCFI20-.Ltext0 + 2553 0311 36040000 .4byte .LCFI21-.Ltext0 + 2554 0315 0200 .2byte 0x2 + 2555 0317 7E .byte 0x7e + 2556 0318 0C .sleb128 12 + 2557 0319 36040000 .4byte .LCFI21-.Ltext0 + 2558 031d D2040000 .4byte .LFE23-.Ltext0 + 2559 0321 0200 .2byte 0x2 + 2560 0323 7F .byte 0x7f + 2561 0324 14 .sleb128 20 + 2562 0325 00000000 .4byte 0x0 + 2563 0329 00000000 .4byte 0x0 + 2564 .LLST24: + 2565 032d 48040000 .4byte .LVL44-.Ltext0 + 2566 0331 4A040000 .4byte .LVL45-.Ltext0 + 2567 0335 0100 .2byte 0x1 + 2568 0337 50 .byte 0x50 + 2569 0338 CE040000 .4byte .LVL46-.Ltext0 + 2570 033c CE040000 .4byte .LVL47-.Ltext0 + 2571 0340 0100 .2byte 0x1 + 2572 0342 50 .byte 0x50 + 2573 0343 00000000 .4byte 0x0 + 2574 0347 00000000 .4byte 0x0 + 2575 .LLST25: + 2576 034b D4040000 .4byte .LFB32-.Ltext0 + 2577 034f D6040000 .4byte .LCFI24-.Ltext0 + 2578 0353 0100 .2byte 0x1 + 2579 0355 5E .byte 0x5e + BFIN GAS /tmp/ccEcEoYb.s page 66 + + + 2580 0356 D6040000 .4byte .LCFI24-.Ltext0 + 2581 035a D8040000 .4byte .LCFI25-.Ltext0 + 2582 035e 0200 .2byte 0x2 + 2583 0360 7E .byte 0x7e + 2584 0361 04 .sleb128 4 + 2585 0362 D8040000 .4byte .LCFI25-.Ltext0 + 2586 0366 DA040000 .4byte .LCFI26-.Ltext0 + 2587 036a 0200 .2byte 0x2 + 2588 036c 7E .byte 0x7e + 2589 036d 08 .sleb128 8 + 2590 036e DA040000 .4byte .LCFI26-.Ltext0 + 2591 0372 DC040000 .4byte .LCFI27-.Ltext0 + 2592 0376 0200 .2byte 0x2 + 2593 0378 7E .byte 0x7e + 2594 0379 0C .sleb128 12 + 2595 037a DC040000 .4byte .LCFI27-.Ltext0 + 2596 037e DE040000 .4byte .LCFI28-.Ltext0 + 2597 0382 0200 .2byte 0x2 + 2598 0384 7E .byte 0x7e + 2599 0385 10 .sleb128 16 + 2600 0386 DE040000 .4byte .LCFI28-.Ltext0 + 2601 038a E0040000 .4byte .LCFI29-.Ltext0 + 2602 038e 0200 .2byte 0x2 + 2603 0390 7E .byte 0x7e + 2604 0391 14 .sleb128 20 + 2605 0392 E0040000 .4byte .LCFI29-.Ltext0 + 2606 0396 E2040000 .4byte .LCFI30-.Ltext0 + 2607 039a 0200 .2byte 0x2 + 2608 039c 7E .byte 0x7e + 2609 039d 18 .sleb128 24 + 2610 039e E2040000 .4byte .LCFI30-.Ltext0 + 2611 03a2 E4040000 .4byte .LCFI31-.Ltext0 + 2612 03a6 0200 .2byte 0x2 + 2613 03a8 7E .byte 0x7e + 2614 03a9 1C .sleb128 28 + 2615 03aa E4040000 .4byte .LCFI31-.Ltext0 + 2616 03ae E6040000 .4byte .LCFI32-.Ltext0 + 2617 03b2 0300 .2byte 0x3 + 2618 03b4 7E .byte 0x7e + 2619 03b5 D400 .sleb128 84 + 2620 03b7 E6040000 .4byte .LCFI32-.Ltext0 + 2621 03bb E8040000 .4byte .LCFI33-.Ltext0 + 2622 03bf 0300 .2byte 0x3 + 2623 03c1 7E .byte 0x7e + 2624 03c2 D800 .sleb128 88 + 2625 03c4 E8040000 .4byte .LCFI33-.Ltext0 + 2626 03c8 EA040000 .4byte .LCFI34-.Ltext0 + 2627 03cc 0300 .2byte 0x3 + 2628 03ce 7E .byte 0x7e + 2629 03cf DC00 .sleb128 92 + 2630 03d1 EA040000 .4byte .LCFI34-.Ltext0 + 2631 03d5 EC040000 .4byte .LCFI35-.Ltext0 + 2632 03d9 0300 .2byte 0x3 + 2633 03db 7E .byte 0x7e + 2634 03dc E000 .sleb128 96 + 2635 03de EC040000 .4byte .LCFI35-.Ltext0 + 2636 03e2 EE040000 .4byte .LCFI36-.Ltext0 + BFIN GAS /tmp/ccEcEoYb.s page 67 + + + 2637 03e6 0300 .2byte 0x3 + 2638 03e8 7E .byte 0x7e + 2639 03e9 E400 .sleb128 100 + 2640 03eb EE040000 .4byte .LCFI36-.Ltext0 + 2641 03ef F0040000 .4byte .LCFI37-.Ltext0 + 2642 03f3 0300 .2byte 0x3 + 2643 03f5 7E .byte 0x7e + 2644 03f6 E800 .sleb128 104 + 2645 03f8 F0040000 .4byte .LCFI37-.Ltext0 + 2646 03fc F2040000 .4byte .LCFI38-.Ltext0 + 2647 0400 0300 .2byte 0x3 + 2648 0402 7E .byte 0x7e + 2649 0403 EC00 .sleb128 108 + 2650 0405 F2040000 .4byte .LCFI38-.Ltext0 + 2651 0409 F4040000 .4byte .LCFI39-.Ltext0 + 2652 040d 0300 .2byte 0x3 + 2653 040f 7E .byte 0x7e + 2654 0410 F000 .sleb128 112 + 2655 0412 F4040000 .4byte .LCFI39-.Ltext0 + 2656 0416 F6040000 .4byte .LCFI40-.Ltext0 + 2657 041a 0300 .2byte 0x3 + 2658 041c 7E .byte 0x7e + 2659 041d F400 .sleb128 116 + 2660 041f F6040000 .4byte .LCFI40-.Ltext0 + 2661 0423 F8040000 .4byte .LCFI41-.Ltext0 + 2662 0427 0300 .2byte 0x3 + 2663 0429 7E .byte 0x7e + 2664 042a F800 .sleb128 120 + 2665 042c F8040000 .4byte .LCFI41-.Ltext0 + 2666 0430 FA040000 .4byte .LCFI42-.Ltext0 + 2667 0434 0300 .2byte 0x3 + 2668 0436 7E .byte 0x7e + 2669 0437 FC00 .sleb128 124 + 2670 0439 FA040000 .4byte .LCFI42-.Ltext0 + 2671 043d FC040000 .4byte .LCFI43-.Ltext0 + 2672 0441 0300 .2byte 0x3 + 2673 0443 7E .byte 0x7e + 2674 0444 8001 .sleb128 128 + 2675 0446 FC040000 .4byte .LCFI43-.Ltext0 + 2676 044a FE040000 .4byte .LCFI44-.Ltext0 + 2677 044e 0300 .2byte 0x3 + 2678 0450 7E .byte 0x7e + 2679 0451 8401 .sleb128 132 + 2680 0453 FE040000 .4byte .LCFI44-.Ltext0 + 2681 0457 00050000 .4byte .LCFI45-.Ltext0 + 2682 045b 0300 .2byte 0x3 + 2683 045d 7E .byte 0x7e + 2684 045e 8801 .sleb128 136 + 2685 0460 00050000 .4byte .LCFI45-.Ltext0 + 2686 0464 02050000 .4byte .LCFI46-.Ltext0 + 2687 0468 0300 .2byte 0x3 + 2688 046a 7E .byte 0x7e + 2689 046b 8C01 .sleb128 140 + 2690 046d 02050000 .4byte .LCFI46-.Ltext0 + 2691 0471 04050000 .4byte .LCFI47-.Ltext0 + 2692 0475 0300 .2byte 0x3 + 2693 0477 7E .byte 0x7e + BFIN GAS /tmp/ccEcEoYb.s page 68 + + + 2694 0478 9001 .sleb128 144 + 2695 047a 04050000 .4byte .LCFI47-.Ltext0 + 2696 047e 08050000 .4byte .LCFI48-.Ltext0 + 2697 0482 0300 .2byte 0x3 + 2698 0484 7E .byte 0x7e + 2699 0485 9401 .sleb128 148 + 2700 0487 08050000 .4byte .LCFI48-.Ltext0 + 2701 048b 10050000 .4byte .LCFI49-.Ltext0 + 2702 048f 0300 .2byte 0x3 + 2703 0491 7E .byte 0x7e + 2704 0492 9C01 .sleb128 156 + 2705 0494 10050000 .4byte .LCFI49-.Ltext0 + 2706 0498 16050000 .4byte .LCFI50-.Ltext0 + 2707 049c 0300 .2byte 0x3 + 2708 049e 7E .byte 0x7e + 2709 049f A401 .sleb128 164 + 2710 04a1 16050000 .4byte .LCFI50-.Ltext0 + 2711 04a5 1A050000 .4byte .LCFI51-.Ltext0 + 2712 04a9 0300 .2byte 0x3 + 2713 04ab 7E .byte 0x7e + 2714 04ac A801 .sleb128 168 + 2715 04ae 1A050000 .4byte .LCFI51-.Ltext0 + 2716 04b2 20060000 .4byte .LFE32-.Ltext0 + 2717 04b6 0300 .2byte 0x3 + 2718 04b8 7F .byte 0x7f + 2719 04b9 B001 .sleb128 176 + 2720 04bb 00000000 .4byte 0x0 + 2721 04bf 00000000 .4byte 0x0 + 2722 .LLST26: + 2723 04c3 6A050000 .4byte .LVL49-.Ltext0 + 2724 04c7 B0050000 .4byte .LVL50-.Ltext0 + 2725 04cb 0100 .2byte 0x1 + 2726 04cd 51 .byte 0x51 + 2727 04ce C8050000 .4byte .LVL52-.Ltext0 + 2728 04d2 D4050000 .4byte .LVL53-.Ltext0 + 2729 04d6 0100 .2byte 0x1 + 2730 04d8 51 .byte 0x51 + 2731 04d9 00000000 .4byte 0x0 + 2732 04dd 00000000 .4byte 0x0 + 2733 .LLST27: + 2734 04e1 58050000 .4byte .LVL48-.Ltext0 + 2735 04e5 B0050000 .4byte .LVL50-.Ltext0 + 2736 04e9 0100 .2byte 0x1 + 2737 04eb 52 .byte 0x52 + 2738 04ec C0050000 .4byte .LVL51-.Ltext0 + 2739 04f0 E0050000 .4byte .LVL54-.Ltext0 + 2740 04f4 0100 .2byte 0x1 + 2741 04f6 52 .byte 0x52 + 2742 04f7 00000000 .4byte 0x0 + 2743 04fb 00000000 .4byte 0x0 + 2744 .LLST28: + 2745 04ff 20060000 .4byte .LFB21-.Ltext0 + 2746 0503 22060000 .4byte .LCFI53-.Ltext0 + 2747 0507 0100 .2byte 0x1 + 2748 0509 5E .byte 0x5e + 2749 050a 22060000 .4byte .LCFI53-.Ltext0 + 2750 050e 3E060000 .4byte .LCFI54-.Ltext0 + BFIN GAS /tmp/ccEcEoYb.s page 69 + + + 2751 0512 0200 .2byte 0x2 + 2752 0514 7E .byte 0x7e + 2753 0515 08 .sleb128 8 + 2754 0516 3E060000 .4byte .LCFI54-.Ltext0 + 2755 051a 82060000 .4byte .LFE21-.Ltext0 + 2756 051e 0200 .2byte 0x2 + 2757 0520 7F .byte 0x7f + 2758 0521 10 .sleb128 16 + 2759 0522 00000000 .4byte 0x0 + 2760 0526 00000000 .4byte 0x0 + 2761 .LLST29: + 2762 052a 20060000 .4byte .LVL55-.Ltext0 + 2763 052e 2C060000 .4byte .LVL56-.Ltext0 + 2764 0532 0100 .2byte 0x1 + 2765 0534 50 .byte 0x50 + 2766 0535 00000000 .4byte 0x0 + 2767 0539 00000000 .4byte 0x0 + 2768 .LLST30: + 2769 053d 46060000 .4byte .LVL57-.Ltext0 + 2770 0541 56060000 .4byte .LVL58-.Ltext0 + 2771 0545 0100 .2byte 0x1 + 2772 0547 51 .byte 0x51 + 2773 0548 00000000 .4byte 0x0 + 2774 054c 00000000 .4byte 0x0 + 2775 .LLST31: + 2776 0550 84060000 .4byte .LFB20-.Ltext0 + 2777 0554 86060000 .4byte .LCFI56-.Ltext0 + 2778 0558 0100 .2byte 0x1 + 2779 055a 5E .byte 0x5e + 2780 055b 86060000 .4byte .LCFI56-.Ltext0 + 2781 055f A0060000 .4byte .LCFI57-.Ltext0 + 2782 0563 0200 .2byte 0x2 + 2783 0565 7E .byte 0x7e + 2784 0566 08 .sleb128 8 + 2785 0567 A0060000 .4byte .LCFI57-.Ltext0 + 2786 056b E4060000 .4byte .LFE20-.Ltext0 + 2787 056f 0200 .2byte 0x2 + 2788 0571 7F .byte 0x7f + 2789 0572 10 .sleb128 16 + 2790 0573 00000000 .4byte 0x0 + 2791 0577 00000000 .4byte 0x0 + 2792 .LLST32: + 2793 057b 84060000 .4byte .LVL59-.Ltext0 + 2794 057f 9C060000 .4byte .LVL60-.Ltext0 + 2795 0583 0100 .2byte 0x1 + 2796 0585 50 .byte 0x50 + 2797 0586 00000000 .4byte 0x0 + 2798 058a 00000000 .4byte 0x0 + 2799 .LLST33: + 2800 058e A8060000 .4byte .LVL61-.Ltext0 + 2801 0592 B8060000 .4byte .LVL62-.Ltext0 + 2802 0596 0100 .2byte 0x1 + 2803 0598 51 .byte 0x51 + 2804 0599 00000000 .4byte 0x0 + 2805 059d 00000000 .4byte 0x0 + 2806 .LLST34: + 2807 05a1 E4060000 .4byte .LFB22-.Ltext0 + BFIN GAS /tmp/ccEcEoYb.s page 70 + + + 2808 05a5 E6060000 .4byte .LCFI59-.Ltext0 + 2809 05a9 0100 .2byte 0x1 + 2810 05ab 5E .byte 0x5e + 2811 05ac E6060000 .4byte .LCFI59-.Ltext0 + 2812 05b0 EE060000 .4byte .LCFI60-.Ltext0 + 2813 05b4 0200 .2byte 0x2 + 2814 05b6 7E .byte 0x7e + 2815 05b7 14 .sleb128 20 + 2816 05b8 EE060000 .4byte .LCFI60-.Ltext0 + 2817 05bc F0080000 .4byte .LFE22-.Ltext0 + 2818 05c0 0200 .2byte 0x2 + 2819 05c2 7F .byte 0x7f + 2820 05c3 1C .sleb128 28 + 2821 05c4 00000000 .4byte 0x0 + 2822 05c8 00000000 .4byte 0x0 + 2823 .LLST35: + 2824 05cc 00070000 .4byte .LVL63-.Ltext0 + 2825 05d0 02070000 .4byte .LVL64-.Ltext0 + 2826 05d4 0100 .2byte 0x1 + 2827 05d6 50 .byte 0x50 + 2828 05d7 8C070000 .4byte .LVL67-.Ltext0 + 2829 05db 8C070000 .4byte .LVL68-.Ltext0 + 2830 05df 0100 .2byte 0x1 + 2831 05e1 50 .byte 0x50 + 2832 05e2 00000000 .4byte 0x0 + 2833 05e6 00000000 .4byte 0x0 + 2834 .LLST36: + 2835 05ea 48070000 .4byte .LVL65-.Ltext0 + 2836 05ee 58070000 .4byte .LVL66-.Ltext0 + 2837 05f2 0100 .2byte 0x1 + 2838 05f4 51 .byte 0x51 + 2839 05f5 00000000 .4byte 0x0 + 2840 05f9 00000000 .4byte 0x0 + 2841 .file 3 "/home/feda/MIPT/RadioPhotonic_Subserface_radar/BlackFin/toolchain_off/bfin-elf/bin/../lib + 2842 .file 4 "src/l502_bf_cmd_defs.h" + 2843 .file 5 "src/l502_defs.h" + 2844 .file 6 "src/l502_stream.h" + 2845 .section .debug_info + 2846 0000 73080000 .4byte 0x873 + 2847 0004 0200 .2byte 0x2 + 2848 0006 00000000 .4byte .Ldebug_abbrev0 + 2849 000a 04 .byte 0x4 + 2850 000b 01 .uleb128 0x1 + 2851 000c 5D000000 .4byte .LASF90 + 2852 0010 01 .byte 0x1 + 2853 0011 B3000000 .4byte .LASF91 + 2854 0015 C6040000 .4byte .LASF92 + 2855 0019 00000000 .4byte .Ltext0 + 2856 001d F0080000 .4byte .Letext0 + 2857 0021 00000000 .4byte .Ldebug_line0 + 2858 0025 02 .uleb128 0x2 + 2859 0026 01 .byte 0x1 + 2860 0027 06 .byte 0x6 + 2861 0028 79030000 .4byte .LASF0 + 2862 002c 02 .uleb128 0x2 + 2863 002d 01 .byte 0x1 + 2864 002e 08 .byte 0x8 + BFIN GAS /tmp/ccEcEoYb.s page 71 + + + 2865 002f 08030000 .4byte .LASF1 + 2866 0033 02 .uleb128 0x2 + 2867 0034 02 .byte 0x2 + 2868 0035 05 .byte 0x5 + 2869 0036 3D010000 .4byte .LASF2 + 2870 003a 02 .uleb128 0x2 + 2871 003b 02 .byte 0x2 + 2872 003c 07 .byte 0x7 + 2873 003d F3030000 .4byte .LASF3 + 2874 0041 03 .uleb128 0x3 + 2875 0042 3C040000 .4byte .LASF5 + 2876 0046 03 .byte 0x3 + 2877 0047 4F .byte 0x4f + 2878 0048 4C000000 .4byte 0x4c + 2879 004c 02 .uleb128 0x2 + 2880 004d 04 .byte 0x4 + 2881 004e 05 .byte 0x5 + 2882 004f 4D020000 .4byte .LASF4 + 2883 0053 03 .uleb128 0x3 + 2884 0054 9C030000 .4byte .LASF6 + 2885 0058 03 .byte 0x3 + 2886 0059 50 .byte 0x50 + 2887 005a 5E000000 .4byte 0x5e + 2888 005e 02 .uleb128 0x2 + 2889 005f 04 .byte 0x4 + 2890 0060 07 .byte 0x7 + 2891 0061 10050000 .4byte .LASF7 + 2892 0065 02 .uleb128 0x2 + 2893 0066 08 .byte 0x8 + 2894 0067 05 .byte 0x5 + 2895 0068 09020000 .4byte .LASF8 + 2896 006c 02 .uleb128 0x2 + 2897 006d 08 .byte 0x8 + 2898 006e 07 .byte 0x7 + 2899 006f 85030000 .4byte .LASF9 + 2900 0073 04 .uleb128 0x4 + 2901 0074 04 .byte 0x4 + 2902 0075 05 .byte 0x5 + 2903 0076 696E7400 .string "int" + 2904 007a 02 .uleb128 0x2 + 2905 007b 04 .byte 0x4 + 2906 007c 07 .byte 0x7 + 2907 007d A5030000 .4byte .LASF10 + 2908 0081 05 .uleb128 0x5 + 2909 0082 04 .byte 0x4 + 2910 0083 07 .byte 0x7 + 2911 0084 02 .uleb128 0x2 + 2912 0085 01 .byte 0x1 + 2913 0086 06 .byte 0x6 + 2914 0087 37040000 .4byte .LASF11 + 2915 008b 06 .uleb128 0x6 + 2916 008c 04 .byte 0x4 + 2917 008d 04 .byte 0x4 + 2918 008e 69 .byte 0x69 + 2919 008f D9000000 .4byte 0xd9 + 2920 0093 07 .uleb128 0x7 + 2921 0094 8C050000 .4byte .LASF12 + BFIN GAS /tmp/ccEcEoYb.s page 72 + + + 2922 0098 00 .sleb128 0 + 2923 0099 07 .uleb128 0x7 + 2924 009a 61050000 .4byte .LASF13 + 2925 009e 807C .sleb128 -512 + 2926 00a0 07 .uleb128 0x7 + 2927 00a1 56020000 .4byte .LASF14 + 2928 00a5 807C .sleb128 -512 + 2929 00a7 07 .uleb128 0x7 + 2930 00a8 C5020000 .4byte .LASF15 + 2931 00ac FF7B .sleb128 -513 + 2932 00ae 07 .uleb128 0x7 + 2933 00af 06040000 .4byte .LASF16 + 2934 00b3 FE7B .sleb128 -514 + 2935 00b5 07 .uleb128 0x7 + 2936 00b6 44040000 .4byte .LASF17 + 2937 00ba FD7B .sleb128 -515 + 2938 00bc 07 .uleb128 0x7 + 2939 00bd 2C000000 .4byte .LASF18 + 2940 00c1 FC7B .sleb128 -516 + 2941 00c3 07 .uleb128 0x7 + 2942 00c4 47010000 .4byte .LASF19 + 2943 00c8 FB7B .sleb128 -517 + 2944 00ca 07 .uleb128 0x7 + 2945 00cb 78000000 .4byte .LASF20 + 2946 00cf FA7B .sleb128 -518 + 2947 00d1 07 .uleb128 0x7 + 2948 00d2 36020000 .4byte .LASF21 + 2949 00d6 F97B .sleb128 -519 + 2950 00d8 00 .byte 0x0 + 2951 00d9 06 .uleb128 0x6 + 2952 00da 04 .byte 0x4 + 2953 00db 04 .byte 0x4 + 2954 00dc 7A .byte 0x7a + 2955 00dd F4000000 .4byte 0xf4 + 2956 00e1 07 .uleb128 0x7 + 2957 00e2 FD050000 .4byte .LASF22 + 2958 00e6 00 .sleb128 0 + 2959 00e7 07 .uleb128 0x7 + 2960 00e8 8E020000 .4byte .LASF23 + 2961 00ec 01 .sleb128 1 + 2962 00ed 07 .uleb128 0x7 + 2963 00ee 25040000 .4byte .LASF24 + 2964 00f2 02 .sleb128 2 + 2965 00f3 00 .byte 0x0 + 2966 00f4 06 .uleb128 0x6 + 2967 00f5 04 .byte 0x4 + 2968 00f6 05 .byte 0x5 + 2969 00f7 74 .byte 0x74 + 2970 00f8 29010000 .4byte 0x129 + 2971 00fc 07 .uleb128 0x7 + 2972 00fd 42030000 .4byte .LASF25 + 2973 0101 01 .sleb128 1 + 2974 0102 07 .uleb128 0x7 + 2975 0103 7E020000 .4byte .LASF26 + 2976 0107 02 .sleb128 2 + 2977 0108 07 .uleb128 0x7 + 2978 0109 FC000000 .4byte .LASF27 + BFIN GAS /tmp/ccEcEoYb.s page 73 + + + 2979 010d 10 .sleb128 16 + 2980 010e 07 .uleb128 0x7 + 2981 010f 0D010000 .4byte .LASF28 + 2982 0113 20 .sleb128 32 + 2983 0114 07 .uleb128 0x7 + 2984 0115 52030000 .4byte .LASF29 + 2985 0119 C000 .sleb128 64 + 2986 011b 07 .uleb128 0x7 + 2987 011c C8050000 .4byte .LASF30 + 2988 0120 03 .sleb128 3 + 2989 0121 07 .uleb128 0x7 + 2990 0122 D5010000 .4byte .LASF31 + 2991 0126 F000 .sleb128 112 + 2992 0128 00 .byte 0x0 + 2993 0129 06 .uleb128 0x6 + 2994 012a 04 .byte 0x4 + 2995 012b 06 .byte 0x6 + 2996 012c 11 .byte 0x11 + 2997 012d 4A010000 .4byte 0x14a + 2998 0131 07 .uleb128 0x7 + 2999 0132 CF000000 .4byte .LASF32 + 3000 0136 00 .sleb128 0 + 3001 0137 07 .uleb128 0x7 + 3002 0138 6D040000 .4byte .LASF33 + 3003 013c 02 .sleb128 2 + 3004 013d 07 .uleb128 0x7 + 3005 013e AF010000 .4byte .LASF34 + 3006 0142 04 .sleb128 4 + 3007 0143 07 .uleb128 0x7 + 3008 0144 0F000000 .4byte .LASF35 + 3009 0148 03 .sleb128 3 + 3010 0149 00 .byte 0x0 + 3011 014a 03 .uleb128 0x3 + 3012 014b 27050000 .4byte .LASF36 + 3013 014f 06 .byte 0x6 + 3014 0150 16 .byte 0x16 + 3015 0151 29010000 .4byte 0x129 + 3016 0155 06 .uleb128 0x6 + 3017 0156 04 .byte 0x4 + 3018 0157 06 .byte 0x6 + 3019 0158 19 .byte 0x19 + 3020 0159 7C010000 .4byte 0x17c + 3021 015d 07 .uleb128 0x7 + 3022 015e 17020000 .4byte .LASF37 + 3023 0162 00 .sleb128 0 + 3024 0163 07 .uleb128 0x7 + 3025 0164 D4030000 .4byte .LASF38 + 3026 0168 01 .sleb128 1 + 3027 0169 07 .uleb128 0x7 + 3028 016a 1D000000 .4byte .LASF39 + 3029 016e 02 .sleb128 2 + 3030 016f 07 .uleb128 0x7 + 3031 0170 27020000 .4byte .LASF40 + 3032 0174 03 .sleb128 3 + 3033 0175 07 .uleb128 0x7 + 3034 0176 22060000 .4byte .LASF41 + 3035 017a 04 .sleb128 4 + BFIN GAS /tmp/ccEcEoYb.s page 74 + + + 3036 017b 00 .byte 0x0 + 3037 017c 03 .uleb128 0x3 + 3038 017d DB050000 .4byte .LASF42 + 3039 0181 06 .byte 0x6 + 3040 0182 20 .byte 0x20 + 3041 0183 55010000 .4byte 0x155 + 3042 0187 08 .uleb128 0x8 + 3043 0188 EE020000 .4byte .LASF43 + 3044 018c 02 .byte 0x2 + 3045 018d 1401 .2byte 0x114 + 3046 018f 01 .byte 0x1 + 3047 0190 01 .byte 0x1 + 3048 0191 09 .uleb128 0x9 + 3049 0192 39050000 .4byte .LASF44 + 3050 0196 01 .byte 0x1 + 3051 0197 64 .byte 0x64 + 3052 0198 01 .byte 0x1 + 3053 0199 01 .byte 0x1 + 3054 019a 0A .uleb128 0xa + 3055 019b 01 .byte 0x1 + 3056 019c 7B040000 .4byte .LASF45 + 3057 01a0 01 .byte 0x1 + 3058 01a1 8201 .2byte 0x182 + 3059 01a3 01 .byte 0x1 + 3060 01a4 00000000 .4byte .LFB25 + 3061 01a8 28000000 .4byte .LFE25 + 3062 01ac 00000000 .4byte .LLST0 + 3063 01b0 D5010000 .4byte 0x1d5 + 3064 01b4 0B .uleb128 0xb + 3065 01b5 22050000 .4byte .LASF47 + 3066 01b9 01 .byte 0x1 + 3067 01ba 8201 .2byte 0x182 + 3068 01bc 53000000 .4byte 0x53 + 3069 01c0 1F000000 .4byte .LLST1 + 3070 01c4 0C .uleb128 0xc + 3071 01c5 AB000000 .4byte .LASF48 + 3072 01c9 01 .byte 0x1 + 3073 01ca 8401 .2byte 0x184 + 3074 01cc 53000000 .4byte 0x53 + 3075 01d0 32000000 .4byte .LLST2 + 3076 01d4 00 .byte 0x0 + 3077 01d5 0A .uleb128 0xa + 3078 01d6 01 .byte 0x1 + 3079 01d7 A2020000 .4byte .LASF46 + 3080 01db 01 .byte 0x1 + 3081 01dc 9401 .2byte 0x194 + 3082 01de 01 .byte 0x1 + 3083 01df 28000000 .4byte .LFB26 + 3084 01e3 50000000 .4byte .LFE26 + 3085 01e7 50000000 .4byte .LLST3 + 3086 01eb 0E020000 .4byte 0x20e + 3087 01ef 0B .uleb128 0xb + 3088 01f0 22050000 .4byte .LASF47 + 3089 01f4 01 .byte 0x1 + 3090 01f5 9401 .2byte 0x194 + 3091 01f7 53000000 .4byte 0x53 + 3092 01fb 6F000000 .4byte .LLST4 + BFIN GAS /tmp/ccEcEoYb.s page 75 + + + 3093 01ff 0D .uleb128 0xd + 3094 0200 AB000000 .4byte .LASF48 + 3095 0204 01 .byte 0x1 + 3096 0205 9501 .2byte 0x195 + 3097 0207 53000000 .4byte 0x53 + 3098 020b 01 .byte 0x1 + 3099 020c 51 .byte 0x51 + 3100 020d 00 .byte 0x0 + 3101 020e 0A .uleb128 0xa + 3102 020f 01 .byte 0x1 + 3103 0210 00000000 .4byte .LASF49 + 3104 0214 01 .byte 0x1 + 3105 0215 A601 .2byte 0x1a6 + 3106 0217 01 .byte 0x1 + 3107 0218 50000000 .4byte .LFB27 + 3108 021c 72000000 .4byte .LFE27 + 3109 0220 82000000 .4byte .LLST5 + 3110 0224 59020000 .4byte 0x259 + 3111 0228 0B .uleb128 0xb + 3112 0229 79020000 .4byte .LASF50 + 3113 022d 01 .byte 0x1 + 3114 022e A601 .2byte 0x1a6 + 3115 0230 59020000 .4byte 0x259 + 3116 0234 A1000000 .4byte .LLST6 + 3117 0238 0B .uleb128 0xb + 3118 0239 22050000 .4byte .LASF47 + 3119 023d 01 .byte 0x1 + 3120 023e A601 .2byte 0x1a6 + 3121 0240 53000000 .4byte 0x53 + 3122 0244 B4000000 .4byte .LLST7 + 3123 0248 0C .uleb128 0xc + 3124 0249 A7010000 .4byte .LASF51 + 3125 024d 01 .byte 0x1 + 3126 024e A801 .2byte 0x1a8 + 3127 0250 53000000 .4byte 0x53 + 3128 0254 C7000000 .4byte .LLST8 + 3129 0258 00 .byte 0x0 + 3130 0259 0E .uleb128 0xe + 3131 025a 04 .byte 0x4 + 3132 025b 53000000 .4byte 0x53 + 3133 025f 0F .uleb128 0xf + 3134 0260 01 .byte 0x1 + 3135 0261 DE000000 .4byte .LASF93 + 3136 0265 01 .byte 0x1 + 3137 0266 B701 .2byte 0x1b7 + 3138 0268 01 .byte 0x1 + 3139 0269 53000000 .4byte 0x53 + 3140 026d 74000000 .4byte .LFB28 + 3141 0271 82000000 .4byte .LFE28 + 3142 0275 E5000000 .4byte .LLST9 + 3143 0279 10 .uleb128 0x10 + 3144 027a 01 .byte 0x1 + 3145 027b A0050000 .4byte .LASF58 + 3146 027f 01 .byte 0x1 + 3147 0280 CC01 .2byte 0x1cc + 3148 0282 01 .byte 0x1 + 3149 0283 41000000 .4byte 0x41 + BFIN GAS /tmp/ccEcEoYb.s page 76 + + + 3150 0287 84000000 .4byte .LFB29 + 3151 028b D2000000 .4byte .LFE29 + 3152 028f 04010000 .4byte .LLST10 + 3153 0293 B4020000 .4byte 0x2b4 + 3154 0297 0B .uleb128 0xb + 3155 0298 22050000 .4byte .LASF47 + 3156 029c 01 .byte 0x1 + 3157 029d CC01 .2byte 0x1cc + 3158 029f 53000000 .4byte 0x53 + 3159 02a3 2F010000 .4byte .LLST11 + 3160 02a7 11 .uleb128 0x11 + 3161 02a8 6D756C00 .string "mul" + 3162 02ac 01 .byte 0x1 + 3163 02ad CD01 .2byte 0x1cd + 3164 02af 73000000 .4byte 0x73 + 3165 02b3 00 .byte 0x0 + 3166 02b4 12 .uleb128 0x12 + 3167 02b5 01 .byte 0x1 + 3168 02b6 FB010000 .4byte .LASF52 + 3169 02ba 01 .byte 0x1 + 3170 02bb 0702 .2byte 0x207 + 3171 02bd 01 .byte 0x1 + 3172 02be 01 .byte 0x1 + 3173 02bf C6020000 .4byte 0x2c6 + 3174 02c3 13 .uleb128 0x13 + 3175 02c4 13 .uleb128 0x13 + 3176 02c5 00 .byte 0x0 + 3177 02c6 14 .uleb128 0x14 + 3178 02c7 B4020000 .4byte 0x2b4 + 3179 02cb D4000000 .4byte .LFB31 + 3180 02cf 20010000 .4byte .LFE31 + 3181 02d3 58010000 .4byte .LLST12 + 3182 02d7 FC020000 .4byte 0x2fc + 3183 02db 15 .uleb128 0x15 + 3184 02dc 87010000 .4byte 0x187 + 3185 02e0 EE000000 .4byte .LBB23 + 3186 02e4 F0000000 .4byte .LBE23 + 3187 02e8 01 .byte 0x1 + 3188 02e9 0C02 .2byte 0x20c + 3189 02eb 15 .uleb128 0x15 + 3190 02ec 87010000 .4byte 0x187 + 3191 02f0 F0000000 .4byte .LBB25 + 3192 02f4 F2000000 .4byte .LBE25 + 3193 02f8 01 .byte 0x1 + 3194 02f9 0D02 .2byte 0x20d + 3195 02fb 00 .byte 0x0 + 3196 02fc 12 .uleb128 0x12 + 3197 02fd 01 .byte 0x1 + 3198 02fe 9C040000 .4byte .LASF53 + 3199 0302 01 .byte 0x1 + 3200 0303 E001 .2byte 0x1e0 + 3201 0305 01 .byte 0x1 + 3202 0306 01 .byte 0x1 + 3203 0307 16030000 .4byte 0x316 + 3204 030b 13 .uleb128 0x13 + 3205 030c 13 .uleb128 0x13 + 3206 030d 13 .uleb128 0x13 + BFIN GAS /tmp/ccEcEoYb.s page 77 + + + 3207 030e 16 .uleb128 0x16 + 3208 030f 05 .byte 0x5 + 3209 0310 03 .byte 0x3 + 3210 0311 1C000000 .4byte _dummy.2439 + 3211 0315 00 .byte 0x0 + 3212 0316 14 .uleb128 0x14 + 3213 0317 FC020000 .4byte 0x2fc + 3214 031b 20010000 .4byte .LFB30 + 3215 031f 08020000 .4byte .LFE30 + 3216 0323 77010000 .4byte .LLST13 + 3217 0327 5C030000 .4byte 0x35c + 3218 032b 15 .uleb128 0x15 + 3219 032c 87010000 .4byte 0x187 + 3220 0330 32010000 .4byte .LBB39 + 3221 0334 34010000 .4byte .LBE39 + 3222 0338 01 .byte 0x1 + 3223 0339 E401 .2byte 0x1e4 + 3224 033b 15 .uleb128 0x15 + 3225 033c 87010000 .4byte 0x187 + 3226 0340 60010000 .4byte .LBB41 + 3227 0344 62010000 .4byte .LBE41 + 3228 0348 01 .byte 0x1 + 3229 0349 E801 .2byte 0x1e8 + 3230 034b 15 .uleb128 0x15 + 3231 034c 87010000 .4byte 0x187 + 3232 0350 C8010000 .4byte .LBB43 + 3233 0354 CA010000 .4byte .LBE43 + 3234 0358 01 .byte 0x1 + 3235 0359 F601 .2byte 0x1f6 + 3236 035b 00 .byte 0x0 + 3237 035c 0A .uleb128 0xa + 3238 035d 01 .byte 0x1 + 3239 035e 33060000 .4byte .LASF54 + 3240 0362 01 .byte 0x1 + 3241 0363 3001 .2byte 0x130 + 3242 0365 01 .byte 0x1 + 3243 0366 08020000 .4byte .LFB24 + 3244 036a 98030000 .4byte .LFE24 + 3245 036e A2010000 .4byte .LLST14 + 3246 0372 11040000 .4byte 0x411 + 3247 0376 17 .uleb128 0x17 + 3248 0377 00000000 .4byte .Ldebug_ranges0+0x0 + 3249 037b B8030000 .4byte 0x3b8 + 3250 037f 0C .uleb128 0xc + 3251 0380 69000000 .4byte .LASF55 + 3252 0384 01 .byte 0x1 + 3253 0385 3301 .2byte 0x133 + 3254 0387 53000000 .4byte 0x53 + 3255 038b CD010000 .4byte .LLST15 + 3256 038f 0C .uleb128 0xc + 3257 0390 A7010000 .4byte .LASF51 + 3258 0394 01 .byte 0x1 + 3259 0395 3401 .2byte 0x134 + 3260 0397 53000000 .4byte 0x53 + 3261 039b 01020000 .4byte .LLST16 + 3262 039f 18 .uleb128 0x18 + 3263 03a0 00030000 .4byte .LBB46 + BFIN GAS /tmp/ccEcEoYb.s page 78 + + + 3264 03a4 34030000 .4byte .LBE46 + 3265 03a8 0D .uleb128 0xd + 3266 03a9 E9010000 .4byte .LASF56 + 3267 03ad 01 .byte 0x1 + 3268 03ae 3B01 .2byte 0x13b + 3269 03b0 53000000 .4byte 0x53 + 3270 03b4 01 .byte 0x1 + 3271 03b5 50 .byte 0x50 + 3272 03b6 00 .byte 0x0 + 3273 03b7 00 .byte 0x0 + 3274 03b8 19 .uleb128 0x19 + 3275 03b9 20000000 .4byte .Ldebug_ranges0+0x20 + 3276 03bd 0C .uleb128 0xc + 3277 03be 8E040000 .4byte .LASF57 + 3278 03c2 01 .byte 0x1 + 3279 03c3 5001 .2byte 0x150 + 3280 03c5 53000000 .4byte 0x53 + 3281 03c9 1F020000 .4byte .LLST17 + 3282 03cd 0C .uleb128 0xc + 3283 03ce A7010000 .4byte .LASF51 + 3284 03d2 01 .byte 0x1 + 3285 03d3 5101 .2byte 0x151 + 3286 03d5 53000000 .4byte 0x53 + 3287 03d9 5E020000 .4byte .LLST18 + 3288 03dd 1A .uleb128 0x1a + 3289 03de 3C030000 .4byte .LBB48 + 3290 03e2 68030000 .4byte .LBE48 + 3291 03e6 F9030000 .4byte 0x3f9 + 3292 03ea 0D .uleb128 0xd + 3293 03eb E9010000 .4byte .LASF56 + 3294 03ef 01 .byte 0x1 + 3295 03f0 5A01 .2byte 0x15a + 3296 03f2 53000000 .4byte 0x53 + 3297 03f6 01 .byte 0x1 + 3298 03f7 50 .byte 0x50 + 3299 03f8 00 .byte 0x0 + 3300 03f9 19 .uleb128 0x19 + 3301 03fa 40000000 .4byte .Ldebug_ranges0+0x40 + 3302 03fe 0C .uleb128 0xc + 3303 03ff AB000000 .4byte .LASF48 + 3304 0403 01 .byte 0x1 + 3305 0404 6801 .2byte 0x168 + 3306 0406 53000000 .4byte 0x53 + 3307 040a 7C020000 .4byte .LLST19 + 3308 040e 00 .byte 0x0 + 3309 040f 00 .byte 0x0 + 3310 0410 00 .byte 0x0 + 3311 0411 1B .uleb128 0x1b + 3312 0412 01 .byte 0x1 + 3313 0413 C2010000 .4byte .LASF59 + 3314 0417 01 .byte 0x1 + 3315 0418 7E .byte 0x7e + 3316 0419 01 .byte 0x1 + 3317 041a 41000000 .4byte 0x41 + 3318 041e 98030000 .4byte .LFB18 + 3319 0422 0C040000 .4byte .LFE18 + 3320 0426 9A020000 .4byte .LLST20 + BFIN GAS /tmp/ccEcEoYb.s page 79 + + + 3321 042a 3E040000 .4byte 0x43e + 3322 042e 1C .uleb128 0x1c + 3323 042f 65727200 .string "err" + 3324 0433 01 .byte 0x1 + 3325 0434 7F .byte 0x7f + 3326 0435 41000000 .4byte 0x41 + 3327 0439 C5020000 .4byte .LLST21 + 3328 043d 00 .byte 0x0 + 3329 043e 1D .uleb128 0x1d + 3330 043f 01 .byte 0x1 + 3331 0440 B7050000 .4byte .LASF94 + 3332 0444 01 .byte 0x1 + 3333 0445 6F .byte 0x6f + 3334 0446 01 .byte 0x1 + 3335 0447 0C040000 .4byte .LFB17 + 3336 044b 2C040000 .4byte .LFE17 + 3337 044f E3020000 .4byte .LLST22 + 3338 0453 10 .uleb128 0x10 + 3339 0454 01 .byte 0x1 + 3340 0455 6C020000 .4byte .LASF60 + 3341 0459 01 .byte 0x1 + 3342 045a 0E01 .2byte 0x10e + 3343 045c 01 .byte 0x1 + 3344 045d 41000000 .4byte 0x41 + 3345 0461 2C040000 .4byte .LFB23 + 3346 0465 D2040000 .4byte .LFE23 + 3347 0469 02030000 .4byte .LLST23 + 3348 046d AF040000 .4byte 0x4af + 3349 0471 1E .uleb128 0x1e + 3350 0472 65727200 .string "err" + 3351 0476 01 .byte 0x1 + 3352 0477 0F01 .2byte 0x10f + 3353 0479 41000000 .4byte 0x41 + 3354 047d 2D030000 .4byte .LLST24 + 3355 0481 1F .uleb128 0x1f + 3356 0482 B4020000 .4byte 0x2b4 + 3357 0486 58000000 .4byte .Ldebug_ranges0+0x58 + 3358 048a 01 .byte 0x1 + 3359 048b 1601 .2byte 0x116 + 3360 048d 15 .uleb128 0x15 + 3361 048e 87010000 .4byte 0x187 + 3362 0492 74040000 .4byte .LBB63 + 3363 0496 76040000 .4byte .LBE63 + 3364 049a 01 .byte 0x1 + 3365 049b 0C02 .2byte 0x20c + 3366 049d 15 .uleb128 0x15 + 3367 049e 87010000 .4byte 0x187 + 3368 04a2 76040000 .4byte .LBB65 + 3369 04a6 78040000 .4byte .LBE65 + 3370 04aa 01 .byte 0x1 + 3371 04ab 0D02 .2byte 0x20d + 3372 04ad 00 .byte 0x0 + 3373 04ae 00 .byte 0x0 + 3374 04af 0A .uleb128 0xa + 3375 04b0 01 .byte 0x1 + 3376 04b1 DD020000 .4byte .LASF61 + 3377 04b5 01 .byte 0x1 + BFIN GAS /tmp/ccEcEoYb.s page 80 + + + 3378 04b6 1B02 .2byte 0x21b + 3379 04b8 01 .byte 0x1 + 3380 04b9 D4040000 .4byte .LFB32 + 3381 04bd 20060000 .4byte .LFE32 + 3382 04c1 4B030000 .4byte .LLST25 + 3383 04c5 31050000 .4byte 0x531 + 3384 04c9 19 .uleb128 0x19 + 3385 04ca 70000000 .4byte .Ldebug_ranges0+0x70 + 3386 04ce 0C .uleb128 0xc + 3387 04cf 1E010000 .4byte .LASF62 + 3388 04d3 01 .byte 0x1 + 3389 04d4 1D02 .2byte 0x21d + 3390 04d6 53000000 .4byte 0x53 + 3391 04da C3040000 .4byte .LLST26 + 3392 04de 0C .uleb128 0xc + 3393 04df AB000000 .4byte .LASF48 + 3394 04e3 01 .byte 0x1 + 3395 04e4 2702 .2byte 0x227 + 3396 04e6 53000000 .4byte 0x53 + 3397 04ea E1040000 .4byte .LLST27 + 3398 04ee 20 .uleb128 0x20 + 3399 04ef 91010000 .4byte 0x191 + 3400 04f3 CA050000 .4byte .LBB79 + 3401 04f7 1A060000 .4byte .LBE79 + 3402 04fb 01 .byte 0x1 + 3403 04fc 3302 .2byte 0x233 + 3404 04fe 21 .uleb128 0x21 + 3405 04ff B4020000 .4byte 0x2b4 + 3406 0503 CA050000 .4byte .LBB81 + 3407 0507 0C060000 .4byte .LBE81 + 3408 050b 01 .byte 0x1 + 3409 050c 66 .byte 0x66 + 3410 050d 15 .uleb128 0x15 + 3411 050e 87010000 .4byte 0x187 + 3412 0512 E0050000 .4byte .LBB83 + 3413 0516 E2050000 .4byte .LBE83 + 3414 051a 01 .byte 0x1 + 3415 051b 0C02 .2byte 0x20c + 3416 051d 15 .uleb128 0x15 + 3417 051e 87010000 .4byte 0x187 + 3418 0522 E2050000 .4byte .LBB85 + 3419 0526 E4050000 .4byte .LBE85 + 3420 052a 01 .byte 0x1 + 3421 052b 0D02 .2byte 0x20d + 3422 052d 00 .byte 0x0 + 3423 052e 00 .byte 0x0 + 3424 052f 00 .byte 0x0 + 3425 0530 00 .byte 0x0 + 3426 0531 22 .uleb128 0x22 + 3427 0532 5F040000 .4byte .LASF95 + 3428 0536 01 .byte 0x1 + 3429 0537 92 .byte 0x92 + 3430 0538 01 .byte 0x1 + 3431 0539 01 .byte 0x1 + 3432 053a 55050000 .4byte 0x555 + 3433 053e 23 .uleb128 0x23 + 3434 053f A3000000 .4byte .LASF65 + BFIN GAS /tmp/ccEcEoYb.s page 81 + + + 3435 0543 01 .byte 0x1 + 3436 0544 92 .byte 0x92 + 3437 0545 53000000 .4byte 0x53 + 3438 0549 24 .uleb128 0x24 + 3439 054a BF040000 .4byte .LASF63 + 3440 054e 01 .byte 0x1 + 3441 054f 93 .byte 0x93 + 3442 0550 53000000 .4byte 0x53 + 3443 0554 00 .byte 0x0 + 3444 0555 1B .uleb128 0x1b + 3445 0556 01 .byte 0x1 + 3446 0557 52050000 .4byte .LASF64 + 3447 055b 01 .byte 0x1 + 3448 055c BC .byte 0xbc + 3449 055d 01 .byte 0x1 + 3450 055e 41000000 .4byte 0x41 + 3451 0562 20060000 .4byte .LFB21 + 3452 0566 82060000 .4byte .LFE21 + 3453 056a FF040000 .4byte .LLST28 + 3454 056e A6050000 .4byte 0x5a6 + 3455 0572 25 .uleb128 0x25 + 3456 0573 A3000000 .4byte .LASF65 + 3457 0577 01 .byte 0x1 + 3458 0578 BC .byte 0xbc + 3459 0579 53000000 .4byte 0x53 + 3460 057d 2A050000 .4byte .LLST29 + 3461 0581 26 .uleb128 0x26 + 3462 0582 31050000 .4byte 0x531 + 3463 0586 2E060000 .4byte .LBB90 + 3464 058a 88000000 .4byte .Ldebug_ranges0+0x88 + 3465 058e 01 .byte 0x1 + 3466 058f BD .byte 0xbd + 3467 0590 27 .uleb128 0x27 + 3468 0591 3E050000 .4byte 0x53e + 3469 0595 19 .uleb128 0x19 + 3470 0596 B0000000 .4byte .Ldebug_ranges0+0xb0 + 3471 059a 28 .uleb128 0x28 + 3472 059b 49050000 .4byte 0x549 + 3473 059f 3D050000 .4byte .LLST30 + 3474 05a3 00 .byte 0x0 + 3475 05a4 00 .byte 0x0 + 3476 05a5 00 .byte 0x0 + 3477 05a6 1B .uleb128 0x1b + 3478 05a7 01 .byte 0x1 + 3479 05a8 99010000 .4byte .LASF66 + 3480 05ac 01 .byte 0x1 + 3481 05ad B2 .byte 0xb2 + 3482 05ae 01 .byte 0x1 + 3483 05af 41000000 .4byte 0x41 + 3484 05b3 84060000 .4byte .LFB20 + 3485 05b7 E4060000 .4byte .LFE20 + 3486 05bb 50050000 .4byte .LLST31 + 3487 05bf F7050000 .4byte 0x5f7 + 3488 05c3 25 .uleb128 0x25 + 3489 05c4 A3000000 .4byte .LASF65 + 3490 05c8 01 .byte 0x1 + 3491 05c9 B2 .byte 0xb2 + BFIN GAS /tmp/ccEcEoYb.s page 82 + + + 3492 05ca 53000000 .4byte 0x53 + 3493 05ce 7B050000 .4byte .LLST32 + 3494 05d2 26 .uleb128 0x26 + 3495 05d3 31050000 .4byte 0x531 + 3496 05d7 90060000 .4byte .LBB100 + 3497 05db D8000000 .4byte .Ldebug_ranges0+0xd8 + 3498 05df 01 .byte 0x1 + 3499 05e0 B3 .byte 0xb3 + 3500 05e1 27 .uleb128 0x27 + 3501 05e2 3E050000 .4byte 0x53e + 3502 05e6 19 .uleb128 0x19 + 3503 05e7 00010000 .4byte .Ldebug_ranges0+0x100 + 3504 05eb 28 .uleb128 0x28 + 3505 05ec 49050000 .4byte 0x549 + 3506 05f0 8E050000 .4byte .LLST33 + 3507 05f4 00 .byte 0x0 + 3508 05f5 00 .byte 0x0 + 3509 05f6 00 .byte 0x0 + 3510 05f7 1B .uleb128 0x1b + 3511 05f8 01 .byte 0x1 + 3512 05f9 95000000 .4byte .LASF67 + 3513 05fd 01 .byte 0x1 + 3514 05fe CD .byte 0xcd + 3515 05ff 01 .byte 0x1 + 3516 0600 41000000 .4byte 0x41 + 3517 0604 E4060000 .4byte .LFB22 + 3518 0608 F0080000 .4byte .LFE22 + 3519 060c A1050000 .4byte .LLST34 + 3520 0610 88060000 .4byte 0x688 + 3521 0614 1C .uleb128 0x1c + 3522 0615 65727200 .string "err" + 3523 0619 01 .byte 0x1 + 3524 061a CE .byte 0xce + 3525 061b 41000000 .4byte 0x41 + 3526 061f CC050000 .4byte .LLST35 + 3527 0623 29 .uleb128 0x29 + 3528 0624 31050000 .4byte 0x531 + 3529 0628 28010000 .4byte .Ldebug_ranges0+0x128 + 3530 062c 01 .byte 0x1 + 3531 062d DC .byte 0xdc + 3532 062e 47060000 .4byte 0x647 + 3533 0632 27 .uleb128 0x27 + 3534 0633 3E050000 .4byte 0x53e + 3535 0637 19 .uleb128 0x19 + 3536 0638 68010000 .4byte .Ldebug_ranges0+0x168 + 3537 063c 28 .uleb128 0x28 + 3538 063d 49050000 .4byte 0x549 + 3539 0641 EA050000 .4byte .LLST36 + 3540 0645 00 .byte 0x0 + 3541 0646 00 .byte 0x0 + 3542 0647 21 .uleb128 0x21 + 3543 0648 FC020000 .4byte 0x2fc + 3544 064c EA070000 .4byte .LBB129 + 3545 0650 C6080000 .4byte .LBE129 + 3546 0654 01 .byte 0x1 + 3547 0655 D6 .byte 0xd6 + 3548 0656 15 .uleb128 0x15 + BFIN GAS /tmp/ccEcEoYb.s page 83 + + + 3549 0657 87010000 .4byte 0x187 + 3550 065b 24080000 .4byte .LBB131 + 3551 065f 26080000 .4byte .LBE131 + 3552 0663 01 .byte 0x1 + 3553 0664 E801 .2byte 0x1e8 + 3554 0666 15 .uleb128 0x15 + 3555 0667 87010000 .4byte 0x187 + 3556 066b F6070000 .4byte .LBB133 + 3557 066f F8070000 .4byte .LBE133 + 3558 0673 01 .byte 0x1 + 3559 0674 E401 .2byte 0x1e4 + 3560 0676 15 .uleb128 0x15 + 3561 0677 87010000 .4byte 0x187 + 3562 067b 8C080000 .4byte .LBB135 + 3563 067f 8E080000 .4byte .LBE135 + 3564 0683 01 .byte 0x1 + 3565 0684 F601 .2byte 0x1f6 + 3566 0686 00 .byte 0x0 + 3567 0687 00 .byte 0x0 + 3568 0688 2A .uleb128 0x2a + 3569 0689 F3000000 .4byte .LASF68 + 3570 068d 01 .byte 0x1 + 3571 068e 39 .byte 0x39 + 3572 068f 73000000 .4byte 0x73 + 3573 0693 05 .byte 0x5 + 3574 0694 03 .byte 0x3 + 3575 0695 18000000 .4byte _f_bf_reg + 3576 0699 2A .uleb128 0x2a + 3577 069a EE050000 .4byte .LASF69 + 3578 069e 01 .byte 0x1 + 3579 069f 3C .byte 0x3c + 3580 06a0 AA060000 .4byte 0x6aa + 3581 06a4 05 .byte 0x5 + 3582 06a5 03 .byte 0x3 + 3583 06a6 00000000 .4byte _f_overflow_wrd + 3584 06aa 2B .uleb128 0x2b + 3585 06ab 53000000 .4byte 0x53 + 3586 06af 2C .uleb128 0x2c + 3587 06b0 53000000 .4byte 0x53 + 3588 06b4 C2060000 .4byte 0x6c2 + 3589 06b8 2D .uleb128 0x2d + 3590 06b9 81000000 .4byte 0x81 + 3591 06bd FFFF1F00 .4byte 0x1fffff + 3592 06c1 00 .byte 0x0 + 3593 06c2 2A .uleb128 0x2a + 3594 06c3 C5030000 .4byte .LASF70 + 3595 06c7 01 .byte 0x1 + 3596 06c8 42 .byte 0x42 + 3597 06c9 D3060000 .4byte 0x6d3 + 3598 06cd 05 .byte 0x5 + 3599 06ce 03 .byte 0x3 + 3600 06cf 00000000 .4byte _f_sport_in_buf + 3601 06d3 2E .uleb128 0x2e + 3602 06d4 AF060000 .4byte 0x6af + 3603 06d8 2A .uleb128 0x2a + 3604 06d9 1D030000 .4byte .LASF71 + 3605 06dd 01 .byte 0x1 + BFIN GAS /tmp/ccEcEoYb.s page 84 + + + 3606 06de 44 .byte 0x44 + 3607 06df E9060000 .4byte 0x6e9 + 3608 06e3 05 .byte 0x5 + 3609 06e4 03 .byte 0x3 + 3610 06e5 0C000000 .4byte _f_sport_in_put_pos + 3611 06e9 2E .uleb128 0x2e + 3612 06ea 53000000 .4byte 0x53 + 3613 06ee 2A .uleb128 0x2a + 3614 06ef 78050000 .4byte .LASF72 + 3615 06f3 01 .byte 0x1 + 3616 06f4 46 .byte 0x46 + 3617 06f5 53000000 .4byte 0x53 + 3618 06f9 05 .byte 0x5 + 3619 06fa 03 .byte 0x3 + 3620 06fb 28000000 .4byte _f_sport_in_proc_pos + 3621 06ff 2A .uleb128 0x2a + 3622 0700 62010000 .4byte .LASF73 + 3623 0704 01 .byte 0x1 + 3624 0705 48 .byte 0x48 + 3625 0706 E9060000 .4byte 0x6e9 + 3626 070a 05 .byte 0x5 + 3627 070b 03 .byte 0x3 + 3628 070c 10000000 .4byte _f_sport_in_get_pos + 3629 0710 2A .uleb128 0x2a + 3630 0711 47000000 .4byte .LASF74 + 3631 0715 01 .byte 0x1 + 3632 0716 4A .byte 0x4a + 3633 0717 53000000 .4byte 0x53 + 3634 071b 05 .byte 0x5 + 3635 071c 03 .byte 0x3 + 3636 071d 04000000 .4byte _f_sport_in_block_size + 3637 0721 2A .uleb128 0x2a + 3638 0722 AB040000 .4byte .LASF75 + 3639 0726 01 .byte 0x1 + 3640 0727 4C .byte 0x4c + 3641 0728 53000000 .4byte 0x53 + 3642 072c 05 .byte 0x5 + 3643 072d 03 .byte 0x3 + 3644 072e 08000000 .4byte _f_sport_in_buf_size + 3645 0732 2C .uleb128 0x2c + 3646 0733 53000000 .4byte 0x53 + 3647 0737 45070000 .4byte 0x745 + 3648 073b 2D .uleb128 0x2d + 3649 073c 81000000 .4byte 0x81 + 3650 0740 FFFF0F00 .4byte 0xfffff + 3651 0744 00 .byte 0x0 + 3652 0745 2A .uleb128 0x2a + 3653 0746 B6020000 .4byte .LASF76 + 3654 074a 01 .byte 0x1 + 3655 074b 51 .byte 0x51 + 3656 074c 56070000 .4byte 0x756 + 3657 0750 05 .byte 0x5 + 3658 0751 03 .byte 0x3 + 3659 0752 00008000 .4byte _f_hdma_out_buf + 3660 0756 2E .uleb128 0x2e + 3661 0757 32070000 .4byte 0x732 + 3662 075b 2A .uleb128 0x2a + BFIN GAS /tmp/ccEcEoYb.s page 85 + + + 3663 075c 0F060000 .4byte .LASF77 + 3664 0760 01 .byte 0x1 + 3665 0761 52 .byte 0x52 + 3666 0762 E9060000 .4byte 0x6e9 + 3667 0766 05 .byte 0x5 + 3668 0767 03 .byte 0x3 + 3669 0768 20000000 .4byte _f_hdma_out_put_pos + 3670 076c 2A .uleb128 0x2a + 3671 076d 75010000 .4byte .LASF78 + 3672 0771 01 .byte 0x1 + 3673 0772 53 .byte 0x53 + 3674 0773 53000000 .4byte 0x53 + 3675 0777 05 .byte 0x5 + 3676 0778 03 .byte 0x3 + 3677 0779 2C000000 .4byte _f_hdma_out_start_pos + 3678 077d 2A .uleb128 0x2a + 3679 077e 2A010000 .4byte .LASF79 + 3680 0782 01 .byte 0x1 + 3681 0783 55 .byte 0x55 + 3682 0784 E9060000 .4byte 0x6e9 + 3683 0788 05 .byte 0x5 + 3684 0789 03 .byte 0x3 + 3685 078a 24000000 .4byte _f_hdma_out_get_pos + 3686 078e 2F .uleb128 0x2f + 3687 078f 63030000 .4byte .LASF80 + 3688 0793 01 .byte 0x1 + 3689 0794 57 .byte 0x57 + 3690 0795 9B070000 .4byte 0x79b + 3691 0799 0080 .2byte 0x8000 + 3692 079b 2B .uleb128 0x2b + 3693 079c 73000000 .4byte 0x73 + 3694 07a0 2A .uleb128 0x2a + 3695 07a1 F4020000 .4byte .LASF81 + 3696 07a5 01 .byte 0x1 + 3697 07a6 58 .byte 0x58 + 3698 07a7 73000000 .4byte 0x73 + 3699 07ab 05 .byte 0x5 + 3700 07ac 03 .byte 0x3 + 3701 07ad 30000000 .4byte _f_hdma_out_proc_pos + 3702 07b1 2A .uleb128 0x2a + 3703 07b2 E7030000 .4byte .LASF82 + 3704 07b6 01 .byte 0x1 + 3705 07b7 5A .byte 0x5a + 3706 07b8 53000000 .4byte 0x53 + 3707 07bc 05 .byte 0x5 + 3708 07bd 03 .byte 0x3 + 3709 07be 14000000 .4byte _f_recv_size + 3710 07c2 30 .uleb128 0x30 + 3711 07c3 30030000 .4byte .LASF83 + 3712 07c7 01 .byte 0x1 + 3713 07c8 33 .byte 0x33 + 3714 07c9 4A010000 .4byte 0x14a + 3715 07cd 01 .byte 0x1 + 3716 07ce 05 .byte 0x5 + 3717 07cf 03 .byte 0x3 + 3718 07d0 00000000 .4byte _g_stream_in_state + 3719 07d4 30 .uleb128 0x30 + BFIN GAS /tmp/ccEcEoYb.s page 86 + + + 3720 07d5 B2030000 .4byte .LASF84 + 3721 07d9 01 .byte 0x1 + 3722 07da 34 .byte 0x34 + 3723 07db 7C010000 .4byte 0x17c + 3724 07df 01 .byte 0x1 + 3725 07e0 05 .byte 0x5 + 3726 07e1 03 .byte 0x3 + 3727 07e2 04000000 .4byte _g_stream_out_state + 3728 07e6 30 .uleb128 0x30 + 3729 07e7 16030000 .4byte .LASF85 + 3730 07eb 01 .byte 0x1 + 3731 07ec 36 .byte 0x36 + 3732 07ed F8070000 .4byte 0x7f8 + 3733 07f1 01 .byte 0x1 + 3734 07f2 05 .byte 0x5 + 3735 07f3 03 .byte 0x3 + 3736 07f4 08000000 .4byte _g_mode + 3737 07f8 2E .uleb128 0x2e + 3738 07f9 73000000 .4byte 0x73 + 3739 07fd 30 .uleb128 0x30 + 3740 07fe C5000000 .4byte .LASF86 + 3741 0802 01 .byte 0x1 + 3742 0803 38 .byte 0x38 + 3743 0804 73000000 .4byte 0x73 + 3744 0808 01 .byte 0x1 + 3745 0809 05 .byte 0x5 + 3746 080a 03 .byte 0x3 + 3747 080b 00000000 .4byte _g_streams + 3748 080f 2C .uleb128 0x2c + 3749 0810 53000000 .4byte 0x53 + 3750 0814 20080000 .4byte 0x820 + 3751 0818 31 .uleb128 0x31 + 3752 0819 81000000 .4byte 0x81 + 3753 081d 0F27 .2byte 0x270f + 3754 081f 00 .byte 0x0 + 3755 0820 30 .uleb128 0x30 + 3756 0821 F3010000 .4byte .LASF87 + 3757 0825 01 .byte 0x1 + 3758 0826 1F .byte 0x1f + 3759 0827 32080000 .4byte 0x832 + 3760 082b 01 .byte 0x1 + 3761 082c 05 .byte 0x5 + 3762 082d 03 .byte 0x3 + 3763 082e 0000C000 .4byte _TX_buff + 3764 0832 2E .uleb128 0x2e + 3765 0833 0F080000 .4byte 0x80f + 3766 0837 30 .uleb128 0x30 + 3767 0838 8A010000 .4byte .LASF88 + 3768 083c 01 .byte 0x1 + 3769 083d 20 .byte 0x20 + 3770 083e 49080000 .4byte 0x849 + 3771 0842 01 .byte 0x1 + 3772 0843 05 .byte 0x5 + 3773 0844 03 .byte 0x3 + 3774 0845 409CC000 .4byte _TX_buff_shadow + 3775 0849 2E .uleb128 0x2e + 3776 084a 0F080000 .4byte 0x80f + BFIN GAS /tmp/ccEcEoYb.s page 87 + + + 3777 084e 2C .uleb128 0x2c + 3778 084f 53000000 .4byte 0x53 + 3779 0853 5F080000 .4byte 0x85f + 3780 0857 31 .uleb128 0x31 + 3781 0858 81000000 .4byte 0x81 + 3782 085c E703 .2byte 0x3e7 + 3783 085e 00 .byte 0x0 + 3784 085f 30 .uleb128 0x30 + 3785 0860 3F060000 .4byte .LASF89 + 3786 0864 01 .byte 0x1 + 3787 0865 23 .byte 0x23 + 3788 0866 71080000 .4byte 0x871 + 3789 086a 01 .byte 0x1 + 3790 086b 05 .byte 0x5 + 3791 086c 03 .byte 0x3 + 3792 086d 8038C100 .4byte _AVG_buff + 3793 0871 2E .uleb128 0x2e + 3794 0872 4E080000 .4byte 0x84e + 3795 0876 00 .byte 0x0 + 3796 .section .debug_abbrev + 3797 0000 01 .uleb128 0x1 + 3798 0001 11 .uleb128 0x11 + 3799 0002 01 .byte 0x1 + 3800 0003 25 .uleb128 0x25 + 3801 0004 0E .uleb128 0xe + 3802 0005 13 .uleb128 0x13 + 3803 0006 0B .uleb128 0xb + 3804 0007 03 .uleb128 0x3 + 3805 0008 0E .uleb128 0xe + 3806 0009 1B .uleb128 0x1b + 3807 000a 0E .uleb128 0xe + 3808 000b 11 .uleb128 0x11 + 3809 000c 01 .uleb128 0x1 + 3810 000d 12 .uleb128 0x12 + 3811 000e 01 .uleb128 0x1 + 3812 000f 10 .uleb128 0x10 + 3813 0010 06 .uleb128 0x6 + 3814 0011 00 .byte 0x0 + 3815 0012 00 .byte 0x0 + 3816 0013 02 .uleb128 0x2 + 3817 0014 24 .uleb128 0x24 + 3818 0015 00 .byte 0x0 + 3819 0016 0B .uleb128 0xb + 3820 0017 0B .uleb128 0xb + 3821 0018 3E .uleb128 0x3e + 3822 0019 0B .uleb128 0xb + 3823 001a 03 .uleb128 0x3 + 3824 001b 0E .uleb128 0xe + 3825 001c 00 .byte 0x0 + 3826 001d 00 .byte 0x0 + 3827 001e 03 .uleb128 0x3 + 3828 001f 16 .uleb128 0x16 + 3829 0020 00 .byte 0x0 + 3830 0021 03 .uleb128 0x3 + 3831 0022 0E .uleb128 0xe + 3832 0023 3A .uleb128 0x3a + 3833 0024 0B .uleb128 0xb + BFIN GAS /tmp/ccEcEoYb.s page 88 + + + 3834 0025 3B .uleb128 0x3b + 3835 0026 0B .uleb128 0xb + 3836 0027 49 .uleb128 0x49 + 3837 0028 13 .uleb128 0x13 + 3838 0029 00 .byte 0x0 + 3839 002a 00 .byte 0x0 + 3840 002b 04 .uleb128 0x4 + 3841 002c 24 .uleb128 0x24 + 3842 002d 00 .byte 0x0 + 3843 002e 0B .uleb128 0xb + 3844 002f 0B .uleb128 0xb + 3845 0030 3E .uleb128 0x3e + 3846 0031 0B .uleb128 0xb + 3847 0032 03 .uleb128 0x3 + 3848 0033 08 .uleb128 0x8 + 3849 0034 00 .byte 0x0 + 3850 0035 00 .byte 0x0 + 3851 0036 05 .uleb128 0x5 + 3852 0037 24 .uleb128 0x24 + 3853 0038 00 .byte 0x0 + 3854 0039 0B .uleb128 0xb + 3855 003a 0B .uleb128 0xb + 3856 003b 3E .uleb128 0x3e + 3857 003c 0B .uleb128 0xb + 3858 003d 00 .byte 0x0 + 3859 003e 00 .byte 0x0 + 3860 003f 06 .uleb128 0x6 + 3861 0040 04 .uleb128 0x4 + 3862 0041 01 .byte 0x1 + 3863 0042 0B .uleb128 0xb + 3864 0043 0B .uleb128 0xb + 3865 0044 3A .uleb128 0x3a + 3866 0045 0B .uleb128 0xb + 3867 0046 3B .uleb128 0x3b + 3868 0047 0B .uleb128 0xb + 3869 0048 01 .uleb128 0x1 + 3870 0049 13 .uleb128 0x13 + 3871 004a 00 .byte 0x0 + 3872 004b 00 .byte 0x0 + 3873 004c 07 .uleb128 0x7 + 3874 004d 28 .uleb128 0x28 + 3875 004e 00 .byte 0x0 + 3876 004f 03 .uleb128 0x3 + 3877 0050 0E .uleb128 0xe + 3878 0051 1C .uleb128 0x1c + 3879 0052 0D .uleb128 0xd + 3880 0053 00 .byte 0x0 + 3881 0054 00 .byte 0x0 + 3882 0055 08 .uleb128 0x8 + 3883 0056 2E .uleb128 0x2e + 3884 0057 00 .byte 0x0 + 3885 0058 03 .uleb128 0x3 + 3886 0059 0E .uleb128 0xe + 3887 005a 3A .uleb128 0x3a + 3888 005b 0B .uleb128 0xb + 3889 005c 3B .uleb128 0x3b + 3890 005d 05 .uleb128 0x5 + BFIN GAS /tmp/ccEcEoYb.s page 89 + + + 3891 005e 27 .uleb128 0x27 + 3892 005f 0C .uleb128 0xc + 3893 0060 20 .uleb128 0x20 + 3894 0061 0B .uleb128 0xb + 3895 0062 00 .byte 0x0 + 3896 0063 00 .byte 0x0 + 3897 0064 09 .uleb128 0x9 + 3898 0065 2E .uleb128 0x2e + 3899 0066 00 .byte 0x0 + 3900 0067 03 .uleb128 0x3 + 3901 0068 0E .uleb128 0xe + 3902 0069 3A .uleb128 0x3a + 3903 006a 0B .uleb128 0xb + 3904 006b 3B .uleb128 0x3b + 3905 006c 0B .uleb128 0xb + 3906 006d 27 .uleb128 0x27 + 3907 006e 0C .uleb128 0xc + 3908 006f 20 .uleb128 0x20 + 3909 0070 0B .uleb128 0xb + 3910 0071 00 .byte 0x0 + 3911 0072 00 .byte 0x0 + 3912 0073 0A .uleb128 0xa + 3913 0074 2E .uleb128 0x2e + 3914 0075 01 .byte 0x1 + 3915 0076 3F .uleb128 0x3f + 3916 0077 0C .uleb128 0xc + 3917 0078 03 .uleb128 0x3 + 3918 0079 0E .uleb128 0xe + 3919 007a 3A .uleb128 0x3a + 3920 007b 0B .uleb128 0xb + 3921 007c 3B .uleb128 0x3b + 3922 007d 05 .uleb128 0x5 + 3923 007e 27 .uleb128 0x27 + 3924 007f 0C .uleb128 0xc + 3925 0080 11 .uleb128 0x11 + 3926 0081 01 .uleb128 0x1 + 3927 0082 12 .uleb128 0x12 + 3928 0083 01 .uleb128 0x1 + 3929 0084 40 .uleb128 0x40 + 3930 0085 06 .uleb128 0x6 + 3931 0086 01 .uleb128 0x1 + 3932 0087 13 .uleb128 0x13 + 3933 0088 00 .byte 0x0 + 3934 0089 00 .byte 0x0 + 3935 008a 0B .uleb128 0xb + 3936 008b 05 .uleb128 0x5 + 3937 008c 00 .byte 0x0 + 3938 008d 03 .uleb128 0x3 + 3939 008e 0E .uleb128 0xe + 3940 008f 3A .uleb128 0x3a + 3941 0090 0B .uleb128 0xb + 3942 0091 3B .uleb128 0x3b + 3943 0092 05 .uleb128 0x5 + 3944 0093 49 .uleb128 0x49 + 3945 0094 13 .uleb128 0x13 + 3946 0095 02 .uleb128 0x2 + 3947 0096 06 .uleb128 0x6 + BFIN GAS /tmp/ccEcEoYb.s page 90 + + + 3948 0097 00 .byte 0x0 + 3949 0098 00 .byte 0x0 + 3950 0099 0C .uleb128 0xc + 3951 009a 34 .uleb128 0x34 + 3952 009b 00 .byte 0x0 + 3953 009c 03 .uleb128 0x3 + 3954 009d 0E .uleb128 0xe + 3955 009e 3A .uleb128 0x3a + 3956 009f 0B .uleb128 0xb + 3957 00a0 3B .uleb128 0x3b + 3958 00a1 05 .uleb128 0x5 + 3959 00a2 49 .uleb128 0x49 + 3960 00a3 13 .uleb128 0x13 + 3961 00a4 02 .uleb128 0x2 + 3962 00a5 06 .uleb128 0x6 + 3963 00a6 00 .byte 0x0 + 3964 00a7 00 .byte 0x0 + 3965 00a8 0D .uleb128 0xd + 3966 00a9 34 .uleb128 0x34 + 3967 00aa 00 .byte 0x0 + 3968 00ab 03 .uleb128 0x3 + 3969 00ac 0E .uleb128 0xe + 3970 00ad 3A .uleb128 0x3a + 3971 00ae 0B .uleb128 0xb + 3972 00af 3B .uleb128 0x3b + 3973 00b0 05 .uleb128 0x5 + 3974 00b1 49 .uleb128 0x49 + 3975 00b2 13 .uleb128 0x13 + 3976 00b3 02 .uleb128 0x2 + 3977 00b4 0A .uleb128 0xa + 3978 00b5 00 .byte 0x0 + 3979 00b6 00 .byte 0x0 + 3980 00b7 0E .uleb128 0xe + 3981 00b8 0F .uleb128 0xf + 3982 00b9 00 .byte 0x0 + 3983 00ba 0B .uleb128 0xb + 3984 00bb 0B .uleb128 0xb + 3985 00bc 49 .uleb128 0x49 + 3986 00bd 13 .uleb128 0x13 + 3987 00be 00 .byte 0x0 + 3988 00bf 00 .byte 0x0 + 3989 00c0 0F .uleb128 0xf + 3990 00c1 2E .uleb128 0x2e + 3991 00c2 00 .byte 0x0 + 3992 00c3 3F .uleb128 0x3f + 3993 00c4 0C .uleb128 0xc + 3994 00c5 03 .uleb128 0x3 + 3995 00c6 0E .uleb128 0xe + 3996 00c7 3A .uleb128 0x3a + 3997 00c8 0B .uleb128 0xb + 3998 00c9 3B .uleb128 0x3b + 3999 00ca 05 .uleb128 0x5 + 4000 00cb 27 .uleb128 0x27 + 4001 00cc 0C .uleb128 0xc + 4002 00cd 49 .uleb128 0x49 + 4003 00ce 13 .uleb128 0x13 + 4004 00cf 11 .uleb128 0x11 + BFIN GAS /tmp/ccEcEoYb.s page 91 + + + 4005 00d0 01 .uleb128 0x1 + 4006 00d1 12 .uleb128 0x12 + 4007 00d2 01 .uleb128 0x1 + 4008 00d3 40 .uleb128 0x40 + 4009 00d4 06 .uleb128 0x6 + 4010 00d5 00 .byte 0x0 + 4011 00d6 00 .byte 0x0 + 4012 00d7 10 .uleb128 0x10 + 4013 00d8 2E .uleb128 0x2e + 4014 00d9 01 .byte 0x1 + 4015 00da 3F .uleb128 0x3f + 4016 00db 0C .uleb128 0xc + 4017 00dc 03 .uleb128 0x3 + 4018 00dd 0E .uleb128 0xe + 4019 00de 3A .uleb128 0x3a + 4020 00df 0B .uleb128 0xb + 4021 00e0 3B .uleb128 0x3b + 4022 00e1 05 .uleb128 0x5 + 4023 00e2 27 .uleb128 0x27 + 4024 00e3 0C .uleb128 0xc + 4025 00e4 49 .uleb128 0x49 + 4026 00e5 13 .uleb128 0x13 + 4027 00e6 11 .uleb128 0x11 + 4028 00e7 01 .uleb128 0x1 + 4029 00e8 12 .uleb128 0x12 + 4030 00e9 01 .uleb128 0x1 + 4031 00ea 40 .uleb128 0x40 + 4032 00eb 06 .uleb128 0x6 + 4033 00ec 01 .uleb128 0x1 + 4034 00ed 13 .uleb128 0x13 + 4035 00ee 00 .byte 0x0 + 4036 00ef 00 .byte 0x0 + 4037 00f0 11 .uleb128 0x11 + 4038 00f1 34 .uleb128 0x34 + 4039 00f2 00 .byte 0x0 + 4040 00f3 03 .uleb128 0x3 + 4041 00f4 08 .uleb128 0x8 + 4042 00f5 3A .uleb128 0x3a + 4043 00f6 0B .uleb128 0xb + 4044 00f7 3B .uleb128 0x3b + 4045 00f8 05 .uleb128 0x5 + 4046 00f9 49 .uleb128 0x49 + 4047 00fa 13 .uleb128 0x13 + 4048 00fb 00 .byte 0x0 + 4049 00fc 00 .byte 0x0 + 4050 00fd 12 .uleb128 0x12 + 4051 00fe 2E .uleb128 0x2e + 4052 00ff 01 .byte 0x1 + 4053 0100 3F .uleb128 0x3f + 4054 0101 0C .uleb128 0xc + 4055 0102 03 .uleb128 0x3 + 4056 0103 0E .uleb128 0xe + 4057 0104 3A .uleb128 0x3a + 4058 0105 0B .uleb128 0xb + 4059 0106 3B .uleb128 0x3b + 4060 0107 05 .uleb128 0x5 + 4061 0108 27 .uleb128 0x27 + BFIN GAS /tmp/ccEcEoYb.s page 92 + + + 4062 0109 0C .uleb128 0xc + 4063 010a 20 .uleb128 0x20 + 4064 010b 0B .uleb128 0xb + 4065 010c 01 .uleb128 0x1 + 4066 010d 13 .uleb128 0x13 + 4067 010e 00 .byte 0x0 + 4068 010f 00 .byte 0x0 + 4069 0110 13 .uleb128 0x13 + 4070 0111 0B .uleb128 0xb + 4071 0112 00 .byte 0x0 + 4072 0113 00 .byte 0x0 + 4073 0114 00 .byte 0x0 + 4074 0115 14 .uleb128 0x14 + 4075 0116 2E .uleb128 0x2e + 4076 0117 01 .byte 0x1 + 4077 0118 31 .uleb128 0x31 + 4078 0119 13 .uleb128 0x13 + 4079 011a 11 .uleb128 0x11 + 4080 011b 01 .uleb128 0x1 + 4081 011c 12 .uleb128 0x12 + 4082 011d 01 .uleb128 0x1 + 4083 011e 40 .uleb128 0x40 + 4084 011f 06 .uleb128 0x6 + 4085 0120 01 .uleb128 0x1 + 4086 0121 13 .uleb128 0x13 + 4087 0122 00 .byte 0x0 + 4088 0123 00 .byte 0x0 + 4089 0124 15 .uleb128 0x15 + 4090 0125 1D .uleb128 0x1d + 4091 0126 00 .byte 0x0 + 4092 0127 31 .uleb128 0x31 + 4093 0128 13 .uleb128 0x13 + 4094 0129 11 .uleb128 0x11 + 4095 012a 01 .uleb128 0x1 + 4096 012b 12 .uleb128 0x12 + 4097 012c 01 .uleb128 0x1 + 4098 012d 58 .uleb128 0x58 + 4099 012e 0B .uleb128 0xb + 4100 012f 59 .uleb128 0x59 + 4101 0130 05 .uleb128 0x5 + 4102 0131 00 .byte 0x0 + 4103 0132 00 .byte 0x0 + 4104 0133 16 .uleb128 0x16 + 4105 0134 34 .uleb128 0x34 + 4106 0135 00 .byte 0x0 + 4107 0136 02 .uleb128 0x2 + 4108 0137 0A .uleb128 0xa + 4109 0138 00 .byte 0x0 + 4110 0139 00 .byte 0x0 + 4111 013a 17 .uleb128 0x17 + 4112 013b 0B .uleb128 0xb + 4113 013c 01 .byte 0x1 + 4114 013d 55 .uleb128 0x55 + 4115 013e 06 .uleb128 0x6 + 4116 013f 01 .uleb128 0x1 + 4117 0140 13 .uleb128 0x13 + 4118 0141 00 .byte 0x0 + BFIN GAS /tmp/ccEcEoYb.s page 93 + + + 4119 0142 00 .byte 0x0 + 4120 0143 18 .uleb128 0x18 + 4121 0144 0B .uleb128 0xb + 4122 0145 01 .byte 0x1 + 4123 0146 11 .uleb128 0x11 + 4124 0147 01 .uleb128 0x1 + 4125 0148 12 .uleb128 0x12 + 4126 0149 01 .uleb128 0x1 + 4127 014a 00 .byte 0x0 + 4128 014b 00 .byte 0x0 + 4129 014c 19 .uleb128 0x19 + 4130 014d 0B .uleb128 0xb + 4131 014e 01 .byte 0x1 + 4132 014f 55 .uleb128 0x55 + 4133 0150 06 .uleb128 0x6 + 4134 0151 00 .byte 0x0 + 4135 0152 00 .byte 0x0 + 4136 0153 1A .uleb128 0x1a + 4137 0154 0B .uleb128 0xb + 4138 0155 01 .byte 0x1 + 4139 0156 11 .uleb128 0x11 + 4140 0157 01 .uleb128 0x1 + 4141 0158 12 .uleb128 0x12 + 4142 0159 01 .uleb128 0x1 + 4143 015a 01 .uleb128 0x1 + 4144 015b 13 .uleb128 0x13 + 4145 015c 00 .byte 0x0 + 4146 015d 00 .byte 0x0 + 4147 015e 1B .uleb128 0x1b + 4148 015f 2E .uleb128 0x2e + 4149 0160 01 .byte 0x1 + 4150 0161 3F .uleb128 0x3f + 4151 0162 0C .uleb128 0xc + 4152 0163 03 .uleb128 0x3 + 4153 0164 0E .uleb128 0xe + 4154 0165 3A .uleb128 0x3a + 4155 0166 0B .uleb128 0xb + 4156 0167 3B .uleb128 0x3b + 4157 0168 0B .uleb128 0xb + 4158 0169 27 .uleb128 0x27 + 4159 016a 0C .uleb128 0xc + 4160 016b 49 .uleb128 0x49 + 4161 016c 13 .uleb128 0x13 + 4162 016d 11 .uleb128 0x11 + 4163 016e 01 .uleb128 0x1 + 4164 016f 12 .uleb128 0x12 + 4165 0170 01 .uleb128 0x1 + 4166 0171 40 .uleb128 0x40 + 4167 0172 06 .uleb128 0x6 + 4168 0173 01 .uleb128 0x1 + 4169 0174 13 .uleb128 0x13 + 4170 0175 00 .byte 0x0 + 4171 0176 00 .byte 0x0 + 4172 0177 1C .uleb128 0x1c + 4173 0178 34 .uleb128 0x34 + 4174 0179 00 .byte 0x0 + 4175 017a 03 .uleb128 0x3 + BFIN GAS /tmp/ccEcEoYb.s page 94 + + + 4176 017b 08 .uleb128 0x8 + 4177 017c 3A .uleb128 0x3a + 4178 017d 0B .uleb128 0xb + 4179 017e 3B .uleb128 0x3b + 4180 017f 0B .uleb128 0xb + 4181 0180 49 .uleb128 0x49 + 4182 0181 13 .uleb128 0x13 + 4183 0182 02 .uleb128 0x2 + 4184 0183 06 .uleb128 0x6 + 4185 0184 00 .byte 0x0 + 4186 0185 00 .byte 0x0 + 4187 0186 1D .uleb128 0x1d + 4188 0187 2E .uleb128 0x2e + 4189 0188 00 .byte 0x0 + 4190 0189 3F .uleb128 0x3f + 4191 018a 0C .uleb128 0xc + 4192 018b 03 .uleb128 0x3 + 4193 018c 0E .uleb128 0xe + 4194 018d 3A .uleb128 0x3a + 4195 018e 0B .uleb128 0xb + 4196 018f 3B .uleb128 0x3b + 4197 0190 0B .uleb128 0xb + 4198 0191 27 .uleb128 0x27 + 4199 0192 0C .uleb128 0xc + 4200 0193 11 .uleb128 0x11 + 4201 0194 01 .uleb128 0x1 + 4202 0195 12 .uleb128 0x12 + 4203 0196 01 .uleb128 0x1 + 4204 0197 40 .uleb128 0x40 + 4205 0198 06 .uleb128 0x6 + 4206 0199 00 .byte 0x0 + 4207 019a 00 .byte 0x0 + 4208 019b 1E .uleb128 0x1e + 4209 019c 34 .uleb128 0x34 + 4210 019d 00 .byte 0x0 + 4211 019e 03 .uleb128 0x3 + 4212 019f 08 .uleb128 0x8 + 4213 01a0 3A .uleb128 0x3a + 4214 01a1 0B .uleb128 0xb + 4215 01a2 3B .uleb128 0x3b + 4216 01a3 05 .uleb128 0x5 + 4217 01a4 49 .uleb128 0x49 + 4218 01a5 13 .uleb128 0x13 + 4219 01a6 02 .uleb128 0x2 + 4220 01a7 06 .uleb128 0x6 + 4221 01a8 00 .byte 0x0 + 4222 01a9 00 .byte 0x0 + 4223 01aa 1F .uleb128 0x1f + 4224 01ab 1D .uleb128 0x1d + 4225 01ac 01 .byte 0x1 + 4226 01ad 31 .uleb128 0x31 + 4227 01ae 13 .uleb128 0x13 + 4228 01af 55 .uleb128 0x55 + 4229 01b0 06 .uleb128 0x6 + 4230 01b1 58 .uleb128 0x58 + 4231 01b2 0B .uleb128 0xb + 4232 01b3 59 .uleb128 0x59 + BFIN GAS /tmp/ccEcEoYb.s page 95 + + + 4233 01b4 05 .uleb128 0x5 + 4234 01b5 00 .byte 0x0 + 4235 01b6 00 .byte 0x0 + 4236 01b7 20 .uleb128 0x20 + 4237 01b8 1D .uleb128 0x1d + 4238 01b9 01 .byte 0x1 + 4239 01ba 31 .uleb128 0x31 + 4240 01bb 13 .uleb128 0x13 + 4241 01bc 11 .uleb128 0x11 + 4242 01bd 01 .uleb128 0x1 + 4243 01be 12 .uleb128 0x12 + 4244 01bf 01 .uleb128 0x1 + 4245 01c0 58 .uleb128 0x58 + 4246 01c1 0B .uleb128 0xb + 4247 01c2 59 .uleb128 0x59 + 4248 01c3 05 .uleb128 0x5 + 4249 01c4 00 .byte 0x0 + 4250 01c5 00 .byte 0x0 + 4251 01c6 21 .uleb128 0x21 + 4252 01c7 1D .uleb128 0x1d + 4253 01c8 01 .byte 0x1 + 4254 01c9 31 .uleb128 0x31 + 4255 01ca 13 .uleb128 0x13 + 4256 01cb 11 .uleb128 0x11 + 4257 01cc 01 .uleb128 0x1 + 4258 01cd 12 .uleb128 0x12 + 4259 01ce 01 .uleb128 0x1 + 4260 01cf 58 .uleb128 0x58 + 4261 01d0 0B .uleb128 0xb + 4262 01d1 59 .uleb128 0x59 + 4263 01d2 0B .uleb128 0xb + 4264 01d3 00 .byte 0x0 + 4265 01d4 00 .byte 0x0 + 4266 01d5 22 .uleb128 0x22 + 4267 01d6 2E .uleb128 0x2e + 4268 01d7 01 .byte 0x1 + 4269 01d8 03 .uleb128 0x3 + 4270 01d9 0E .uleb128 0xe + 4271 01da 3A .uleb128 0x3a + 4272 01db 0B .uleb128 0xb + 4273 01dc 3B .uleb128 0x3b + 4274 01dd 0B .uleb128 0xb + 4275 01de 27 .uleb128 0x27 + 4276 01df 0C .uleb128 0xc + 4277 01e0 20 .uleb128 0x20 + 4278 01e1 0B .uleb128 0xb + 4279 01e2 01 .uleb128 0x1 + 4280 01e3 13 .uleb128 0x13 + 4281 01e4 00 .byte 0x0 + 4282 01e5 00 .byte 0x0 + 4283 01e6 23 .uleb128 0x23 + 4284 01e7 05 .uleb128 0x5 + 4285 01e8 00 .byte 0x0 + 4286 01e9 03 .uleb128 0x3 + 4287 01ea 0E .uleb128 0xe + 4288 01eb 3A .uleb128 0x3a + 4289 01ec 0B .uleb128 0xb + BFIN GAS /tmp/ccEcEoYb.s page 96 + + + 4290 01ed 3B .uleb128 0x3b + 4291 01ee 0B .uleb128 0xb + 4292 01ef 49 .uleb128 0x49 + 4293 01f0 13 .uleb128 0x13 + 4294 01f1 00 .byte 0x0 + 4295 01f2 00 .byte 0x0 + 4296 01f3 24 .uleb128 0x24 + 4297 01f4 34 .uleb128 0x34 + 4298 01f5 00 .byte 0x0 + 4299 01f6 03 .uleb128 0x3 + 4300 01f7 0E .uleb128 0xe + 4301 01f8 3A .uleb128 0x3a + 4302 01f9 0B .uleb128 0xb + 4303 01fa 3B .uleb128 0x3b + 4304 01fb 0B .uleb128 0xb + 4305 01fc 49 .uleb128 0x49 + 4306 01fd 13 .uleb128 0x13 + 4307 01fe 00 .byte 0x0 + 4308 01ff 00 .byte 0x0 + 4309 0200 25 .uleb128 0x25 + 4310 0201 05 .uleb128 0x5 + 4311 0202 00 .byte 0x0 + 4312 0203 03 .uleb128 0x3 + 4313 0204 0E .uleb128 0xe + 4314 0205 3A .uleb128 0x3a + 4315 0206 0B .uleb128 0xb + 4316 0207 3B .uleb128 0x3b + 4317 0208 0B .uleb128 0xb + 4318 0209 49 .uleb128 0x49 + 4319 020a 13 .uleb128 0x13 + 4320 020b 02 .uleb128 0x2 + 4321 020c 06 .uleb128 0x6 + 4322 020d 00 .byte 0x0 + 4323 020e 00 .byte 0x0 + 4324 020f 26 .uleb128 0x26 + 4325 0210 1D .uleb128 0x1d + 4326 0211 01 .byte 0x1 + 4327 0212 31 .uleb128 0x31 + 4328 0213 13 .uleb128 0x13 + 4329 0214 52 .uleb128 0x52 + 4330 0215 01 .uleb128 0x1 + 4331 0216 55 .uleb128 0x55 + 4332 0217 06 .uleb128 0x6 + 4333 0218 58 .uleb128 0x58 + 4334 0219 0B .uleb128 0xb + 4335 021a 59 .uleb128 0x59 + 4336 021b 0B .uleb128 0xb + 4337 021c 00 .byte 0x0 + 4338 021d 00 .byte 0x0 + 4339 021e 27 .uleb128 0x27 + 4340 021f 05 .uleb128 0x5 + 4341 0220 00 .byte 0x0 + 4342 0221 31 .uleb128 0x31 + 4343 0222 13 .uleb128 0x13 + 4344 0223 00 .byte 0x0 + 4345 0224 00 .byte 0x0 + 4346 0225 28 .uleb128 0x28 + BFIN GAS /tmp/ccEcEoYb.s page 97 + + + 4347 0226 34 .uleb128 0x34 + 4348 0227 00 .byte 0x0 + 4349 0228 31 .uleb128 0x31 + 4350 0229 13 .uleb128 0x13 + 4351 022a 02 .uleb128 0x2 + 4352 022b 06 .uleb128 0x6 + 4353 022c 00 .byte 0x0 + 4354 022d 00 .byte 0x0 + 4355 022e 29 .uleb128 0x29 + 4356 022f 1D .uleb128 0x1d + 4357 0230 01 .byte 0x1 + 4358 0231 31 .uleb128 0x31 + 4359 0232 13 .uleb128 0x13 + 4360 0233 55 .uleb128 0x55 + 4361 0234 06 .uleb128 0x6 + 4362 0235 58 .uleb128 0x58 + 4363 0236 0B .uleb128 0xb + 4364 0237 59 .uleb128 0x59 + 4365 0238 0B .uleb128 0xb + 4366 0239 01 .uleb128 0x1 + 4367 023a 13 .uleb128 0x13 + 4368 023b 00 .byte 0x0 + 4369 023c 00 .byte 0x0 + 4370 023d 2A .uleb128 0x2a + 4371 023e 34 .uleb128 0x34 + 4372 023f 00 .byte 0x0 + 4373 0240 03 .uleb128 0x3 + 4374 0241 0E .uleb128 0xe + 4375 0242 3A .uleb128 0x3a + 4376 0243 0B .uleb128 0xb + 4377 0244 3B .uleb128 0x3b + 4378 0245 0B .uleb128 0xb + 4379 0246 49 .uleb128 0x49 + 4380 0247 13 .uleb128 0x13 + 4381 0248 02 .uleb128 0x2 + 4382 0249 0A .uleb128 0xa + 4383 024a 00 .byte 0x0 + 4384 024b 00 .byte 0x0 + 4385 024c 2B .uleb128 0x2b + 4386 024d 26 .uleb128 0x26 + 4387 024e 00 .byte 0x0 + 4388 024f 49 .uleb128 0x49 + 4389 0250 13 .uleb128 0x13 + 4390 0251 00 .byte 0x0 + 4391 0252 00 .byte 0x0 + 4392 0253 2C .uleb128 0x2c + 4393 0254 01 .uleb128 0x1 + 4394 0255 01 .byte 0x1 + 4395 0256 49 .uleb128 0x49 + 4396 0257 13 .uleb128 0x13 + 4397 0258 01 .uleb128 0x1 + 4398 0259 13 .uleb128 0x13 + 4399 025a 00 .byte 0x0 + 4400 025b 00 .byte 0x0 + 4401 025c 2D .uleb128 0x2d + 4402 025d 21 .uleb128 0x21 + 4403 025e 00 .byte 0x0 + BFIN GAS /tmp/ccEcEoYb.s page 98 + + + 4404 025f 49 .uleb128 0x49 + 4405 0260 13 .uleb128 0x13 + 4406 0261 2F .uleb128 0x2f + 4407 0262 06 .uleb128 0x6 + 4408 0263 00 .byte 0x0 + 4409 0264 00 .byte 0x0 + 4410 0265 2E .uleb128 0x2e + 4411 0266 35 .uleb128 0x35 + 4412 0267 00 .byte 0x0 + 4413 0268 49 .uleb128 0x49 + 4414 0269 13 .uleb128 0x13 + 4415 026a 00 .byte 0x0 + 4416 026b 00 .byte 0x0 + 4417 026c 2F .uleb128 0x2f + 4418 026d 34 .uleb128 0x34 + 4419 026e 00 .byte 0x0 + 4420 026f 03 .uleb128 0x3 + 4421 0270 0E .uleb128 0xe + 4422 0271 3A .uleb128 0x3a + 4423 0272 0B .uleb128 0xb + 4424 0273 3B .uleb128 0x3b + 4425 0274 0B .uleb128 0xb + 4426 0275 49 .uleb128 0x49 + 4427 0276 13 .uleb128 0x13 + 4428 0277 1C .uleb128 0x1c + 4429 0278 05 .uleb128 0x5 + 4430 0279 00 .byte 0x0 + 4431 027a 00 .byte 0x0 + 4432 027b 30 .uleb128 0x30 + 4433 027c 34 .uleb128 0x34 + 4434 027d 00 .byte 0x0 + 4435 027e 03 .uleb128 0x3 + 4436 027f 0E .uleb128 0xe + 4437 0280 3A .uleb128 0x3a + 4438 0281 0B .uleb128 0xb + 4439 0282 3B .uleb128 0x3b + 4440 0283 0B .uleb128 0xb + 4441 0284 49 .uleb128 0x49 + 4442 0285 13 .uleb128 0x13 + 4443 0286 3F .uleb128 0x3f + 4444 0287 0C .uleb128 0xc + 4445 0288 02 .uleb128 0x2 + 4446 0289 0A .uleb128 0xa + 4447 028a 00 .byte 0x0 + 4448 028b 00 .byte 0x0 + 4449 028c 31 .uleb128 0x31 + 4450 028d 21 .uleb128 0x21 + 4451 028e 00 .byte 0x0 + 4452 028f 49 .uleb128 0x49 + 4453 0290 13 .uleb128 0x13 + 4454 0291 2F .uleb128 0x2f + 4455 0292 05 .uleb128 0x5 + 4456 0293 00 .byte 0x0 + 4457 0294 00 .byte 0x0 + 4458 0295 00 .byte 0x0 + 4459 .section .debug_pubnames,"",@progbits + 4460 0000 B4010000 .4byte 0x1b4 + BFIN GAS /tmp/ccEcEoYb.s page 99 + + + 4461 0004 0200 .2byte 0x2 + 4462 0006 00000000 .4byte .Ldebug_info0 + 4463 000a 77080000 .4byte 0x877 + 4464 000e 9A010000 .4byte 0x19a + 4465 0012 73747265 .string "stream_in_buf_free" + 4465 616D5F69 + 4465 6E5F6275 + 4465 665F6672 + 4465 656500 + 4466 0025 D5010000 .4byte 0x1d5 + 4467 0029 73747265 .string "stream_out_buf_free" + 4467 616D5F6F + 4467 75745F62 + 4467 75665F66 + 4467 72656500 + 4468 003d 0E020000 .4byte 0x20e + 4469 0041 68646D61 .string "hdma_recv_done" + 4469 5F726563 + 4469 765F646F + 4469 6E6500 + 4470 0050 5F020000 .4byte 0x25f + 4471 0054 73706F72 .string "sport_in_buffer_size" + 4471 745F696E + 4471 5F627566 + 4471 6665725F + 4471 73697A65 + 4472 0069 79020000 .4byte 0x279 + 4473 006d 73706F72 .string "sport_in_set_step_size" + 4473 745F696E + 4473 5F736574 + 4473 5F737465 + 4473 705F7369 + 4474 0084 C6020000 .4byte 0x2c6 + 4475 0088 73706F72 .string "sport_rx_stop" + 4475 745F7278 + 4475 5F73746F + 4475 7000 + 4476 0096 16030000 .4byte 0x316 + 4477 009a 73706F72 .string "sport_rx_start" + 4477 745F7278 + 4477 5F737461 + 4477 727400 + 4478 00a9 5C030000 .4byte 0x35c + 4479 00ad 73747265 .string "stream_proc" + 4479 616D5F70 + 4479 726F6300 + 4480 00b9 11040000 .4byte 0x411 + 4481 00bd 73747265 .string "stream_out_preload" + 4481 616D5F6F + 4481 75745F70 + 4481 72656C6F + 4481 616400 + 4482 00d0 3E040000 .4byte 0x43e + 4483 00d4 6C353032 .string "l502_stream_init" + 4483 5F737472 + 4483 65616D5F + 4483 696E6974 + BFIN GAS /tmp/ccEcEoYb.s page 100 + + + 4483 00 + 4484 00e5 53040000 .4byte 0x453 + 4485 00e9 73747265 .string "streams_stop" + 4485 616D735F + 4485 73746F70 + 4485 00 + 4486 00f6 AF040000 .4byte 0x4af + 4487 00fa 6973725F .string "isr_sport_dma_rx" + 4487 73706F72 + 4487 745F646D + 4487 615F7278 + 4487 00 + 4488 010b 55050000 .4byte 0x555 + 4489 010f 73747265 .string "stream_disable" + 4489 616D5F64 + 4489 69736162 + 4489 6C6500 + 4490 011e A6050000 .4byte 0x5a6 + 4491 0122 73747265 .string "stream_enable" + 4491 616D5F65 + 4491 6E61626C + 4491 6500 + 4492 0130 F7050000 .4byte 0x5f7 + 4493 0134 73747265 .string "streams_start" + 4493 616D735F + 4493 73746172 + 4493 7400 + 4494 0142 C2070000 .4byte 0x7c2 + 4495 0146 675F7374 .string "g_stream_in_state" + 4495 7265616D + 4495 5F696E5F + 4495 73746174 + 4495 6500 + 4496 0158 D4070000 .4byte 0x7d4 + 4497 015c 675F7374 .string "g_stream_out_state" + 4497 7265616D + 4497 5F6F7574 + 4497 5F737461 + 4497 746500 + 4498 016f E6070000 .4byte 0x7e6 + 4499 0173 675F6D6F .string "g_mode" + 4499 646500 + 4500 017a FD070000 .4byte 0x7fd + 4501 017e 675F7374 .string "g_streams" + 4501 7265616D + 4501 7300 + 4502 0188 20080000 .4byte 0x820 + 4503 018c 54585F62 .string "TX_buff" + 4503 75666600 + 4504 0194 37080000 .4byte 0x837 + 4505 0198 54585F62 .string "TX_buff_shadow" + 4505 7566665F + 4505 73686164 + 4505 6F7700 + 4506 01a7 5F080000 .4byte 0x85f + 4507 01ab 4156475F .string "AVG_buff" + 4507 62756666 + BFIN GAS /tmp/ccEcEoYb.s page 101 + + + 4507 00 + 4508 01b4 00000000 .4byte 0x0 + 4509 .section .debug_aranges,"",@progbits + 4510 0000 1C000000 .4byte 0x1c + 4511 0004 0200 .2byte 0x2 + 4512 0006 00000000 .4byte .Ldebug_info0 + 4513 000a 04 .byte 0x4 + 4514 000b 00 .byte 0x0 + 4515 000c 0000 .2byte 0x0 + 4516 000e 0000 .2byte 0x0 + 4517 0010 00000000 .4byte .Ltext0 + 4518 0014 F0080000 .4byte .Letext0-.Ltext0 + 4519 0018 00000000 .4byte 0x0 + 4520 001c 00000000 .4byte 0x0 + 4521 .section .debug_ranges,"",@progbits + 4522 .Ldebug_ranges0: + 4523 0000 20020000 .4byte .LBB45-.Ltext0 + 4524 0004 48020000 .4byte .LBE45-.Ltext0 + 4525 0008 68030000 .4byte .LBB53-.Ltext0 + 4526 000c 92030000 .4byte .LBE53-.Ltext0 + 4527 0010 EE020000 .4byte .LBB51-.Ltext0 + 4528 0014 34030000 .4byte .LBE51-.Ltext0 + 4529 0018 00000000 .4byte 0x0 + 4530 001c 00000000 .4byte 0x0 + 4531 0020 60020000 .4byte .LBB47-.Ltext0 + 4532 0024 EE020000 .4byte .LBE47-.Ltext0 + 4533 0028 92030000 .4byte .LBB54-.Ltext0 + 4534 002c 98030000 .4byte .LBE54-.Ltext0 + 4535 0030 34030000 .4byte .LBB52-.Ltext0 + 4536 0034 68030000 .4byte .LBE52-.Ltext0 + 4537 0038 00000000 .4byte 0x0 + 4538 003c 00000000 .4byte 0x0 + 4539 0040 8C020000 .4byte .LBB49-.Ltext0 + 4540 0044 EE020000 .4byte .LBE49-.Ltext0 + 4541 0048 92030000 .4byte .LBB50-.Ltext0 + 4542 004c 98030000 .4byte .LBE50-.Ltext0 + 4543 0050 00000000 .4byte 0x0 + 4544 0054 00000000 .4byte 0x0 + 4545 0058 5A040000 .4byte .LBB61-.Ltext0 + 4546 005c 5E040000 .4byte .LBE61-.Ltext0 + 4547 0060 62040000 .4byte .LBB68-.Ltext0 + 4548 0064 A0040000 .4byte .LBE68-.Ltext0 + 4549 0068 00000000 .4byte 0x0 + 4550 006c 00000000 .4byte 0x0 + 4551 0070 20050000 .4byte .LBB78-.Ltext0 + 4552 0074 80050000 .4byte .LBE78-.Ltext0 + 4553 0078 C0050000 .4byte .LBB87-.Ltext0 + 4554 007c 20060000 .4byte .LBE87-.Ltext0 + 4555 0080 00000000 .4byte 0x0 + 4556 0084 00000000 .4byte 0x0 + 4557 0088 2E060000 .4byte .LBB90-.Ltext0 + 4558 008c 32060000 .4byte .LBE90-.Ltext0 + 4559 0090 62060000 .4byte .LBB97-.Ltext0 + 4560 0094 82060000 .4byte .LBE97-.Ltext0 + 4561 0098 3E060000 .4byte .LBB96-.Ltext0 + 4562 009c 58060000 .4byte .LBE96-.Ltext0 + 4563 00a0 34060000 .4byte .LBB95-.Ltext0 + BFIN GAS /tmp/ccEcEoYb.s page 102 + + + 4564 00a4 3A060000 .4byte .LBE95-.Ltext0 + 4565 00a8 00000000 .4byte 0x0 + 4566 00ac 00000000 .4byte 0x0 + 4567 00b0 2E060000 .4byte .LBB92-.Ltext0 + 4568 00b4 32060000 .4byte .LBE92-.Ltext0 + 4569 00b8 62060000 .4byte .LBB94-.Ltext0 + 4570 00bc 82060000 .4byte .LBE94-.Ltext0 + 4571 00c0 3E060000 .4byte .LBB91-.Ltext0 + 4572 00c4 58060000 .4byte .LBE91-.Ltext0 + 4573 00c8 34060000 .4byte .LBB93-.Ltext0 + 4574 00cc 3A060000 .4byte .LBE93-.Ltext0 + 4575 00d0 00000000 .4byte 0x0 + 4576 00d4 00000000 .4byte 0x0 + 4577 00d8 90060000 .4byte .LBB100-.Ltext0 + 4578 00dc 94060000 .4byte .LBE100-.Ltext0 + 4579 00e0 C4060000 .4byte .LBB107-.Ltext0 + 4580 00e4 E4060000 .4byte .LBE107-.Ltext0 + 4581 00e8 A0060000 .4byte .LBB106-.Ltext0 + 4582 00ec BA060000 .4byte .LBE106-.Ltext0 + 4583 00f0 96060000 .4byte .LBB105-.Ltext0 + 4584 00f4 9C060000 .4byte .LBE105-.Ltext0 + 4585 00f8 00000000 .4byte 0x0 + 4586 00fc 00000000 .4byte 0x0 + 4587 0100 90060000 .4byte .LBB102-.Ltext0 + 4588 0104 94060000 .4byte .LBE102-.Ltext0 + 4589 0108 C4060000 .4byte .LBB104-.Ltext0 + 4590 010c E4060000 .4byte .LBE104-.Ltext0 + 4591 0110 A0060000 .4byte .LBB101-.Ltext0 + 4592 0114 BA060000 .4byte .LBE101-.Ltext0 + 4593 0118 96060000 .4byte .LBB103-.Ltext0 + 4594 011c 9C060000 .4byte .LBE103-.Ltext0 + 4595 0120 00000000 .4byte 0x0 + 4596 0124 00000000 .4byte 0x0 + 4597 0128 3C070000 .4byte .LBB118-.Ltext0 + 4598 012c 3E070000 .4byte .LBE118-.Ltext0 + 4599 0130 E6080000 .4byte .LBB142-.Ltext0 + 4600 0134 F0080000 .4byte .LBE142-.Ltext0 + 4601 0138 DA080000 .4byte .LBB141-.Ltext0 + 4602 013c E0080000 .4byte .LBE141-.Ltext0 + 4603 0140 D6080000 .4byte .LBB140-.Ltext0 + 4604 0144 D8080000 .4byte .LBE140-.Ltext0 + 4605 0148 D8070000 .4byte .LBB128-.Ltext0 + 4606 014c EA070000 .4byte .LBE128-.Ltext0 + 4607 0150 5E070000 .4byte .LBB127-.Ltext0 + 4608 0154 60070000 .4byte .LBE127-.Ltext0 + 4609 0158 40070000 .4byte .LBB126-.Ltext0 + 4610 015c 58070000 .4byte .LBE126-.Ltext0 + 4611 0160 00000000 .4byte 0x0 + 4612 0164 00000000 .4byte 0x0 + 4613 0168 3C070000 .4byte .LBB122-.Ltext0 + 4614 016c 3E070000 .4byte .LBE122-.Ltext0 + 4615 0170 E6080000 .4byte .LBB125-.Ltext0 + 4616 0174 F0080000 .4byte .LBE125-.Ltext0 + 4617 0178 DA080000 .4byte .LBB119-.Ltext0 + 4618 017c E0080000 .4byte .LBE119-.Ltext0 + 4619 0180 D6080000 .4byte .LBB124-.Ltext0 + 4620 0184 D8080000 .4byte .LBE124-.Ltext0 + BFIN GAS /tmp/ccEcEoYb.s page 103 + + + 4621 0188 D8070000 .4byte .LBB120-.Ltext0 + 4622 018c EA070000 .4byte .LBE120-.Ltext0 + 4623 0190 5E070000 .4byte .LBB123-.Ltext0 + 4624 0194 60070000 .4byte .LBE123-.Ltext0 + 4625 0198 40070000 .4byte .LBB121-.Ltext0 + 4626 019c 58070000 .4byte .LBE121-.Ltext0 + 4627 01a0 00000000 .4byte 0x0 + 4628 01a4 00000000 .4byte 0x0 + 4629 .section .debug_str,"MS",@progbits,1 + 4630 .LASF49: + 4631 0000 68646D61 .string "hdma_recv_done" + 4631 5F726563 + 4631 765F646F + 4631 6E6500 + 4632 .LASF35: + 4633 000f 494E5F53 .string "IN_STREAM_ERR" + 4633 54524541 + 4633 4D5F4552 + 4633 5200 + 4634 .LASF39: + 4635 001d 4F55545F .string "OUT_STREAM_RUN" + 4635 53545245 + 4635 414D5F52 + 4635 554E00 + 4636 .LASF18: + 4637 002c 4C353032 .string "L502_BF_ERR_STREAM_RUNNING" + 4637 5F42465F + 4637 4552525F + 4637 53545245 + 4637 414D5F52 + 4638 .LASF74: + 4639 0047 665F7370 .string "f_sport_in_block_size" + 4639 6F72745F + 4639 696E5F62 + 4639 6C6F636B + 4639 5F73697A + 4640 .LASF90: + 4641 005d 474E5520 .string "GNU C 4.3.5" + 4641 4320342E + 4641 332E3500 + 4642 .LASF55: + 4643 0069 73706F72 .string "sport_rdy_size" + 4643 745F7264 + 4643 795F7369 + 4643 7A6500 + 4644 .LASF20: + 4645 0078 4C353032 .string "L502_BF_ERR_NO_TEST_IN_PROGR" + 4645 5F42465F + 4645 4552525F + 4645 4E4F5F54 + 4645 4553545F + 4646 .LASF67: + 4647 0095 73747265 .string "streams_start" + 4647 616D735F + 4647 73746172 + 4647 7400 + 4648 .LASF65: + BFIN GAS /tmp/ccEcEoYb.s page 104 + + + 4649 00a3 73747265 .string "streams" + 4649 616D7300 + 4650 .LASF48: + 4651 00ab 6765745F .string "get_pos" + 4651 706F7300 + 4652 .LASF91: + 4653 00b3 7372632F .string "src/l502_stream.c" + 4653 6C353032 + 4653 5F737472 + 4653 65616D2E + 4653 6300 + 4654 .LASF86: + 4655 00c5 675F7374 .string "g_streams" + 4655 7265616D + 4655 7300 + 4656 .LASF32: + 4657 00cf 494E5F53 .string "IN_STREAM_STOP" + 4657 54524541 + 4657 4D5F5354 + 4657 4F5000 + 4658 .LASF93: + 4659 00de 73706F72 .string "sport_in_buffer_size" + 4659 745F696E + 4659 5F627566 + 4659 6665725F + 4659 73697A65 + 4660 .LASF68: + 4661 00f3 665F6266 .string "f_bf_reg" + 4661 5F726567 + 4661 00 + 4662 .LASF27: + 4663 00fc 4C353032 .string "L502_STREAM_DAC1" 4663 5F535452 4663 45414D5F - 4663 414C4C5F - 4663 4F555400 - 4664 .LASF56: - 4665 01f3 70726F63 .string "processed" - 4665 65737365 - 4665 6400 - 4666 .LASF87: - 4667 01fd 54585F62 .string "TX_buff" - 4667 75666600 - 4668 .LASF52: - 4669 0205 73706F72 .string "sport_rx_stop" - 4669 745F7278 - 4669 5F73746F - 4669 7000 - 4670 .LASF8: - 4671 0213 6C6F6E67 .string "long long int" - 4671 206C6F6E - 4671 6720696E + 4663 44414331 + 4663 00 + 4664 .LASF28: + 4665 010d 4C353032 .string "L502_STREAM_DAC2" + 4665 5F535452 + 4665 45414D5F + 4665 44414332 + 4665 00 + 4666 .LASF62: + 4667 011e 7264795F .string "rdy_put_pos" + 4667 7075745F + 4667 706F7300 + 4668 .LASF79: + 4669 012a 665F6864 .string "f_hdma_out_get_pos" + 4669 6D615F6F + 4669 75745F67 + 4669 65745F70 + 4669 6F7300 + 4670 .LASF2: + 4671 013d 73686F72 .string "short int" + 4671 7420696E 4671 7400 - 4672 .LASF37: - 4673 0221 4F55545F .string "OUT_STREAM_STOP" + 4672 .LASF19: + BFIN GAS /tmp/ccEcEoYb.s page 105 + + + 4673 0147 4C353032 .string "L502_BF_ERR_STREAM_STOPPED" + 4673 5F42465F + 4673 4552525F 4673 53545245 4673 414D5F53 - 4673 544F5000 - 4674 .LASF40: - 4675 0231 4F55545F .string "OUT_STREAM_ERR" - 4675 53545245 - 4675 414D5F45 - 4675 525200 - 4676 .LASF21: - 4677 0240 4C353032 .string "L502_BF_ERR_TEST_VALUE" - 4677 5F42465F - 4677 4552525F - 4677 54455354 - 4677 5F56414C - 4678 .LASF4: - 4679 0257 6C6F6E67 .string "long int" - 4679 20696E74 - 4679 00 - 4680 .LASF14: - 4681 0260 4C353032 .string "L502_BF_ERR_UNSUP_CMD" - 4681 5F42465F - 4681 4552525F - 4681 554E5355 - 4681 505F434D - 4682 .LASF60: - BFIN GAS /tmp/ccdxqFXK.s page 106 - - - 4683 0276 73747265 .string "streams_stop" - 4683 616D735F - 4683 73746F70 - 4683 00 - 4684 .LASF50: - 4685 0283 61646472 .string "addr" - 4685 00 - 4686 .LASF26: - 4687 0288 4C353032 .string "L502_STREAM_DIN" - 4687 5F535452 - 4687 45414D5F - 4687 44494E00 - 4688 .LASF23: - 4689 0298 4C353032 .string "L502_BF_MODE_STREAM" - 4689 5F42465F - 4689 4D4F4445 + 4674 .LASF73: + 4675 0162 665F7370 .string "f_sport_in_get_pos" + 4675 6F72745F + 4675 696E5F67 + 4675 65745F70 + 4675 6F7300 + 4676 .LASF78: + 4677 0175 665F6864 .string "f_hdma_out_start_pos" + 4677 6D615F6F + 4677 75745F73 + 4677 74617274 + 4677 5F706F73 + 4678 .LASF88: + 4679 018a 54585F62 .string "TX_buff_shadow" + 4679 7566665F + 4679 73686164 + 4679 6F7700 + 4680 .LASF66: + 4681 0199 73747265 .string "stream_enable" + 4681 616D5F65 + 4681 6E61626C + 4681 6500 + 4682 .LASF51: + 4683 01a7 7075745F .string "put_pos" + 4683 706F7300 + 4684 .LASF34: + 4685 01af 494E5F53 .string "IN_STREAM_OV_ALERT" + 4685 54524541 + 4685 4D5F4F56 + 4685 5F414C45 + 4685 525400 + 4686 .LASF59: + 4687 01c2 73747265 .string "stream_out_preload" + 4687 616D5F6F + 4687 75745F70 + 4687 72656C6F + 4687 616400 + 4688 .LASF31: + 4689 01d5 4C353032 .string "L502_STREAM_ALL_OUT" 4689 5F535452 - 4689 45414D00 - 4690 .LASF46: - 4691 02ac 73747265 .string "stream_out_buf_free" - 4691 616D5F6F - 4691 75745F62 - 4691 75665F66 - 4691 72656500 - 4692 .LASF76: - 4693 02c0 665F6864 .string "f_hdma_out_buf" - 4693 6D615F6F - 4693 75745F62 - 4693 756600 - 4694 .LASF15: - 4695 02cf 4C353032 .string "L502_BF_ERR_CMD_OVERRUN" - 4695 5F42465F - 4695 4552525F - 4695 434D445F - 4695 4F564552 - 4696 .LASF61: - 4697 02e7 6973725F .string "isr_sport_dma_rx" - 4697 73706F72 - 4697 745F646D - 4697 615F7278 - 4697 00 - 4698 .LASF43: - 4699 02f8 7373796E .string "ssync" - 4699 6300 - 4700 .LASF81: - 4701 02fe 665F6864 .string "f_hdma_out_proc_pos" - 4701 6D615F6F - 4701 75745F70 - 4701 726F635F - 4701 706F7300 - 4702 .LASF1: - 4703 0312 756E7369 .string "unsigned char" - 4703 676E6564 - 4703 20636861 - 4703 7200 - 4704 .LASF85: - 4705 0320 675F6D6F .string "g_mode" - BFIN GAS /tmp/ccdxqFXK.s page 107 + 4689 45414D5F + 4689 414C4C5F + 4689 4F555400 + 4690 .LASF56: + 4691 01e9 70726F63 .string "processed" + 4691 65737365 + 4691 6400 + 4692 .LASF87: + 4693 01f3 54585F62 .string "TX_buff" + 4693 75666600 + 4694 .LASF52: + 4695 01fb 73706F72 .string "sport_rx_stop" + BFIN GAS /tmp/ccEcEoYb.s page 106 - 4705 646500 - 4706 .LASF71: - 4707 0327 665F7370 .string "f_sport_in_put_pos" - 4707 6F72745F - 4707 696E5F70 - 4707 75745F70 - 4707 6F7300 - 4708 .LASF83: - 4709 033a 675F7374 .string "g_stream_in_state" - 4709 7265616D - 4709 5F696E5F - 4709 73746174 - 4709 6500 - 4710 .LASF25: - 4711 034c 4C353032 .string "L502_STREAM_ADC" - 4711 5F535452 - 4711 45414D5F - 4711 41444300 - 4712 .LASF29: - 4713 035c 4C353032 .string "L502_STREAM_DOUT" + 4695 745F7278 + 4695 5F73746F + 4695 7000 + 4696 .LASF8: + 4697 0209 6C6F6E67 .string "long long int" + 4697 206C6F6E + 4697 6720696E + 4697 7400 + 4698 .LASF37: + 4699 0217 4F55545F .string "OUT_STREAM_STOP" + 4699 53545245 + 4699 414D5F53 + 4699 544F5000 + 4700 .LASF40: + 4701 0227 4F55545F .string "OUT_STREAM_ERR" + 4701 53545245 + 4701 414D5F45 + 4701 525200 + 4702 .LASF21: + 4703 0236 4C353032 .string "L502_BF_ERR_TEST_VALUE" + 4703 5F42465F + 4703 4552525F + 4703 54455354 + 4703 5F56414C + 4704 .LASF4: + 4705 024d 6C6F6E67 .string "long int" + 4705 20696E74 + 4705 00 + 4706 .LASF14: + 4707 0256 4C353032 .string "L502_BF_ERR_UNSUP_CMD" + 4707 5F42465F + 4707 4552525F + 4707 554E5355 + 4707 505F434D + 4708 .LASF60: + 4709 026c 73747265 .string "streams_stop" + 4709 616D735F + 4709 73746F70 + 4709 00 + 4710 .LASF50: + 4711 0279 61646472 .string "addr" + 4711 00 + 4712 .LASF26: + 4713 027e 4C353032 .string "L502_STREAM_DIN" 4713 5F535452 4713 45414D5F - 4713 444F5554 - 4713 00 - 4714 .LASF80: - 4715 036d 665F6864 .string "f_hdma_out_block_size" - 4715 6D615F6F - 4715 75745F62 - 4715 6C6F636B - 4715 5F73697A - 4716 .LASF0: - 4717 0383 7369676E .string "signed char" - 4717 65642063 - 4717 68617200 - 4718 .LASF9: - 4719 038f 6C6F6E67 .string "long long unsigned int" - 4719 206C6F6E - 4719 6720756E - 4719 7369676E - 4719 65642069 - 4720 .LASF6: - 4721 03a6 75696E74 .string "uint32_t" - 4721 33325F74 - 4721 00 - 4722 .LASF10: - 4723 03af 756E7369 .string "unsigned int" - 4723 676E6564 - 4723 20696E74 + 4713 44494E00 + 4714 .LASF23: + 4715 028e 4C353032 .string "L502_BF_MODE_STREAM" + 4715 5F42465F + 4715 4D4F4445 + 4715 5F535452 + 4715 45414D00 + 4716 .LASF46: + 4717 02a2 73747265 .string "stream_out_buf_free" + 4717 616D5F6F + 4717 75745F62 + BFIN GAS /tmp/ccEcEoYb.s page 107 + + + 4717 75665F66 + 4717 72656500 + 4718 .LASF76: + 4719 02b6 665F6864 .string "f_hdma_out_buf" + 4719 6D615F6F + 4719 75745F62 + 4719 756600 + 4720 .LASF15: + 4721 02c5 4C353032 .string "L502_BF_ERR_CMD_OVERRUN" + 4721 5F42465F + 4721 4552525F + 4721 434D445F + 4721 4F564552 + 4722 .LASF61: + 4723 02dd 6973725F .string "isr_sport_dma_rx" + 4723 73706F72 + 4723 745F646D + 4723 615F7278 4723 00 - 4724 .LASF84: - 4725 03bc 675F7374 .string "g_stream_out_state" - 4725 7265616D - 4725 5F6F7574 - 4725 5F737461 - 4725 746500 - 4726 .LASF70: - 4727 03cf 665F7370 .string "f_sport_in_buf" - BFIN GAS /tmp/ccdxqFXK.s page 108 + 4724 .LASF43: + 4725 02ee 7373796E .string "ssync" + 4725 6300 + 4726 .LASF81: + 4727 02f4 665F6864 .string "f_hdma_out_proc_pos" + 4727 6D615F6F + 4727 75745F70 + 4727 726F635F + 4727 706F7300 + 4728 .LASF1: + 4729 0308 756E7369 .string "unsigned char" + 4729 676E6564 + 4729 20636861 + 4729 7200 + 4730 .LASF85: + 4731 0316 675F6D6F .string "g_mode" + 4731 646500 + 4732 .LASF71: + 4733 031d 665F7370 .string "f_sport_in_put_pos" + 4733 6F72745F + 4733 696E5F70 + 4733 75745F70 + 4733 6F7300 + 4734 .LASF83: + 4735 0330 675F7374 .string "g_stream_in_state" + 4735 7265616D + 4735 5F696E5F + 4735 73746174 + 4735 6500 + 4736 .LASF25: + 4737 0342 4C353032 .string "L502_STREAM_ADC" + 4737 5F535452 + 4737 45414D5F + 4737 41444300 + 4738 .LASF29: + 4739 0352 4C353032 .string "L502_STREAM_DOUT" + 4739 5F535452 + 4739 45414D5F + BFIN GAS /tmp/ccEcEoYb.s page 108 - 4727 6F72745F - 4727 696E5F62 - 4727 756600 - 4728 .LASF38: - 4729 03de 4F55545F .string "OUT_STREAM_PRELOAD" - 4729 53545245 - 4729 414D5F50 - 4729 52454C4F - 4729 414400 - 4730 .LASF82: - 4731 03f1 665F7265 .string "f_recv_size" - 4731 63765F73 - 4731 697A6500 - 4732 .LASF3: - 4733 03fd 73686F72 .string "short unsigned int" - 4733 7420756E - 4733 7369676E - 4733 65642069 - 4733 6E7400 - 4734 .LASF16: - 4735 0410 4C353032 .string "L502_BF_ERR_INVALID_CMD_PARAMS" - 4735 5F42465F - 4735 4552525F - 4735 494E5641 - 4735 4C49445F - 4736 .LASF24: - 4737 042f 4C353032 .string "L502_BF_MODE_TEST" - 4737 5F42465F - 4737 4D4F4445 - 4737 5F544553 - 4737 5400 - 4738 .LASF11: - 4739 0441 63686172 .string "char" + 4739 444F5554 4739 00 - 4740 .LASF5: - 4741 0446 696E7433 .string "int32_t" - 4741 325F7400 - 4742 .LASF17: - 4743 044e 4C353032 .string "L502_BF_ERR_INSUF_CMD_DATA" - 4743 5F42465F - 4743 4552525F - 4743 494E5355 - 4743 465F434D - 4744 .LASF94: - 4745 0469 665F7365 .string "f_set_streams" - 4745 745F7374 - 4745 7265616D - 4745 7300 - 4746 .LASF33: - 4747 0477 494E5F53 .string "IN_STREAM_RUN" - 4747 54524541 - 4747 4D5F5255 - 4747 4E00 - 4748 .LASF45: - 4749 0485 73747265 .string "stream_in_buf_free" - 4749 616D5F69 - 4749 6E5F6275 - BFIN GAS /tmp/ccdxqFXK.s page 109 + 4740 .LASF80: + 4741 0363 665F6864 .string "f_hdma_out_block_size" + 4741 6D615F6F + 4741 75745F62 + 4741 6C6F636B + 4741 5F73697A + 4742 .LASF0: + 4743 0379 7369676E .string "signed char" + 4743 65642063 + 4743 68617200 + 4744 .LASF9: + 4745 0385 6C6F6E67 .string "long long unsigned int" + 4745 206C6F6E + 4745 6720756E + 4745 7369676E + 4745 65642069 + 4746 .LASF6: + 4747 039c 75696E74 .string "uint32_t" + 4747 33325F74 + 4747 00 + 4748 .LASF10: + 4749 03a5 756E7369 .string "unsigned int" + 4749 676E6564 + 4749 20696E74 + 4749 00 + 4750 .LASF84: + 4751 03b2 675F7374 .string "g_stream_out_state" + 4751 7265616D + 4751 5F6F7574 + 4751 5F737461 + 4751 746500 + 4752 .LASF70: + 4753 03c5 665F7370 .string "f_sport_in_buf" + 4753 6F72745F + 4753 696E5F62 + 4753 756600 + 4754 .LASF38: + 4755 03d4 4F55545F .string "OUT_STREAM_PRELOAD" + 4755 53545245 + 4755 414D5F50 + 4755 52454C4F + 4755 414400 + 4756 .LASF82: + 4757 03e7 665F7265 .string "f_recv_size" + 4757 63765F73 + 4757 697A6500 + 4758 .LASF3: + 4759 03f3 73686F72 .string "short unsigned int" + 4759 7420756E + 4759 7369676E + 4759 65642069 + 4759 6E7400 + 4760 .LASF16: + 4761 0406 4C353032 .string "L502_BF_ERR_INVALID_CMD_PARAMS" + 4761 5F42465F + BFIN GAS /tmp/ccEcEoYb.s page 109 - 4749 665F6672 - 4749 656500 - 4750 .LASF57: - 4751 0498 68646D61 .string "hdma_rdy_size" - 4751 5F726479 - 4751 5F73697A - 4751 6500 - 4752 .LASF53: - 4753 04a6 73706F72 .string "sport_rx_start" - 4753 745F7278 - 4753 5F737461 - 4753 727400 - 4754 .LASF75: - 4755 04b5 665F7370 .string "f_sport_in_buf_size" - 4755 6F72745F - 4755 696E5F62 - 4755 75665F73 - 4755 697A6500 - 4756 .LASF63: - 4757 04c9 7772645F .string "wrd_en" - 4757 656E00 - 4758 .LASF91: - 4759 04d0 2F686F6D .string "/home/feda/MIPT/RadioPhotonic_Subserface_radar/ADC_computing/BFfirmware_0" - 4759 652F6665 - 4759 64612F4D - 4759 4950542F - 4759 52616469 - 4760 .LASF7: - 4761 051a 6C6F6E67 .string "long unsigned int" - 4761 20756E73 - 4761 69676E65 - 4761 6420696E - 4761 7400 - 4762 .LASF47: - 4763 052c 73697A65 .string "size" - 4763 00 - 4764 .LASF36: - 4765 0531 745F696E .string "t_in_stream_state" - 4765 5F737472 - 4765 65616D5F - 4765 73746174 - 4765 6500 - 4766 .LASF64: - 4767 0543 73747265 .string "stream_disable" - 4767 616D5F64 - 4767 69736162 - 4767 6C6500 - 4768 .LASF13: - 4769 0552 4C353032 .string "L502_BF_ERR_FIRST_CODE" + 4761 4552525F + 4761 494E5641 + 4761 4C49445F + 4762 .LASF24: + 4763 0425 4C353032 .string "L502_BF_MODE_TEST" + 4763 5F42465F + 4763 4D4F4445 + 4763 5F544553 + 4763 5400 + 4764 .LASF11: + 4765 0437 63686172 .string "char" + 4765 00 + 4766 .LASF5: + 4767 043c 696E7433 .string "int32_t" + 4767 325F7400 + 4768 .LASF17: + 4769 0444 4C353032 .string "L502_BF_ERR_INSUF_CMD_DATA" 4769 5F42465F 4769 4552525F - 4769 46495253 - 4769 545F434F - 4770 .LASF72: - 4771 0569 665F7370 .string "f_sport_in_proc_pos" - 4771 6F72745F - 4771 696E5F70 - BFIN GAS /tmp/ccdxqFXK.s page 110 + 4769 494E5355 + 4769 465F434D + 4770 .LASF95: + 4771 045f 665F7365 .string "f_set_streams" + 4771 745F7374 + 4771 7265616D + 4771 7300 + 4772 .LASF33: + 4773 046d 494E5F53 .string "IN_STREAM_RUN" + 4773 54524541 + 4773 4D5F5255 + 4773 4E00 + 4774 .LASF45: + 4775 047b 73747265 .string "stream_in_buf_free" + 4775 616D5F69 + 4775 6E5F6275 + 4775 665F6672 + 4775 656500 + 4776 .LASF57: + 4777 048e 68646D61 .string "hdma_rdy_size" + 4777 5F726479 + 4777 5F73697A + 4777 6500 + 4778 .LASF53: + 4779 049c 73706F72 .string "sport_rx_start" + 4779 745F7278 + 4779 5F737461 + 4779 727400 + 4780 .LASF75: + 4781 04ab 665F7370 .string "f_sport_in_buf_size" + 4781 6F72745F + 4781 696E5F62 + 4781 75665F73 + 4781 697A6500 + 4782 .LASF63: + 4783 04bf 7772645F .string "wrd_en" + 4783 656E00 + 4784 .LASF92: + BFIN GAS /tmp/ccEcEoYb.s page 110 - 4771 726F635F - 4771 706F7300 - 4772 .LASF12: - 4773 057d 4C353032 .string "L502_BF_ERR_SUCCESS" - 4773 5F42465F - 4773 4552525F - 4773 53554343 - 4773 45535300 - 4774 .LASF58: - 4775 0591 73706F72 .string "sport_in_set_step_size" - 4775 745F696E - 4775 5F736574 - 4775 5F737465 - 4775 705F7369 - 4776 .LASF93: - 4777 05a8 6C353032 .string "l502_stream_init" - 4777 5F737472 - 4777 65616D5F - 4777 696E6974 - 4777 00 - 4778 .LASF30: - 4779 05b9 4C353032 .string "L502_STREAM_ALL_IN" - 4779 5F535452 - 4779 45414D5F - 4779 414C4C5F - 4779 494E00 - 4780 .LASF42: - 4781 05cc 745F6F75 .string "t_out_stream_state" - 4781 745F7374 - 4781 7265616D - 4781 5F737461 - 4781 746500 - 4782 .LASF69: - 4783 05df 665F6F76 .string "f_overflow_wrd" - 4783 6572666C - 4783 6F775F77 - 4783 726400 - 4784 .LASF22: - 4785 05ee 4C353032 .string "L502_BF_MODE_IDLE" - 4785 5F42465F - 4785 4D4F4445 - 4785 5F49444C - 4785 4500 - 4786 .LASF77: - 4787 0600 665F6864 .string "f_hdma_out_put_pos" - 4787 6D615F6F - 4787 75745F70 - 4787 75745F70 - 4787 6F7300 - 4788 .LASF41: - 4789 0613 4F55545F .string "OUT_STREAM_CYCLE" - 4789 53545245 - 4789 414D5F43 - 4789 59434C45 + 4785 04c6 2F686F6D .string "/home/feda/MIPT/RadioPhotonic_Subserface_radar/ADC_computing/BFfirmware_0" + 4785 652F6665 + 4785 64612F4D + 4785 4950542F + 4785 52616469 + 4786 .LASF7: + 4787 0510 6C6F6E67 .string "long unsigned int" + 4787 20756E73 + 4787 69676E65 + 4787 6420696E + 4787 7400 + 4788 .LASF47: + 4789 0522 73697A65 .string "size" 4789 00 - 4790 .LASF54: - 4791 0624 73747265 .string "stream_proc" - BFIN GAS /tmp/ccdxqFXK.s page 111 + 4790 .LASF36: + 4791 0527 745F696E .string "t_in_stream_state" + 4791 5F737472 + 4791 65616D5F + 4791 73746174 + 4791 6500 + 4792 .LASF44: + 4793 0539 665F7374 .string "f_stream_in_set_overflow" + 4793 7265616D + 4793 5F696E5F + 4793 7365745F + 4793 6F766572 + 4794 .LASF64: + 4795 0552 73747265 .string "stream_disable" + 4795 616D5F64 + 4795 69736162 + 4795 6C6500 + 4796 .LASF13: + 4797 0561 4C353032 .string "L502_BF_ERR_FIRST_CODE" + 4797 5F42465F + 4797 4552525F + 4797 46495253 + 4797 545F434F + 4798 .LASF72: + 4799 0578 665F7370 .string "f_sport_in_proc_pos" + 4799 6F72745F + 4799 696E5F70 + 4799 726F635F + 4799 706F7300 + 4800 .LASF12: + 4801 058c 4C353032 .string "L502_BF_ERR_SUCCESS" + 4801 5F42465F + 4801 4552525F + 4801 53554343 + 4801 45535300 + 4802 .LASF58: + 4803 05a0 73706F72 .string "sport_in_set_step_size" + 4803 745F696E + 4803 5F736574 + 4803 5F737465 + 4803 705F7369 + 4804 .LASF94: + 4805 05b7 6C353032 .string "l502_stream_init" + BFIN GAS /tmp/ccEcEoYb.s page 111 - 4791 616D5F70 - 4791 726F6300 - 4792 .LASF88: - 4793 0630 4156475F .string "AVG_buff" - 4793 62756666 - 4793 00 - 4794 .ident "GCC: (ADI-2014R1-RC2) 4.3.5" - BFIN GAS /tmp/ccdxqFXK.s page 112 + 4805 5F737472 + 4805 65616D5F + 4805 696E6974 + 4805 00 + 4806 .LASF30: + 4807 05c8 4C353032 .string "L502_STREAM_ALL_IN" + 4807 5F535452 + 4807 45414D5F + 4807 414C4C5F + 4807 494E00 + 4808 .LASF42: + 4809 05db 745F6F75 .string "t_out_stream_state" + 4809 745F7374 + 4809 7265616D + 4809 5F737461 + 4809 746500 + 4810 .LASF69: + 4811 05ee 665F6F76 .string "f_overflow_wrd" + 4811 6572666C + 4811 6F775F77 + 4811 726400 + 4812 .LASF22: + 4813 05fd 4C353032 .string "L502_BF_MODE_IDLE" + 4813 5F42465F + 4813 4D4F4445 + 4813 5F49444C + 4813 4500 + 4814 .LASF77: + 4815 060f 665F6864 .string "f_hdma_out_put_pos" + 4815 6D615F6F + 4815 75745F70 + 4815 75745F70 + 4815 6F7300 + 4816 .LASF41: + 4817 0622 4F55545F .string "OUT_STREAM_CYCLE" + 4817 53545245 + 4817 414D5F43 + 4817 59434C45 + 4817 00 + 4818 .LASF54: + 4819 0633 73747265 .string "stream_proc" + 4819 616D5F70 + 4819 726F6300 + 4820 .LASF89: + 4821 063f 4156475F .string "AVG_buff" + 4821 62756666 + 4821 00 + 4822 .ident "GCC: (ADI-2014R1-RC2) 4.3.5" + BFIN GAS /tmp/ccEcEoYb.s page 112 DEFINED SYMBOLS *ABS*:0000000000000000 src/l502_stream.c - /tmp/ccdxqFXK.s:13 .text:0000000000000000 _stream_in_buf_free - /tmp/ccdxqFXK.s:1670 .bss:0000000000000010 _f_sport_in_get_pos - /tmp/ccdxqFXK.s:1667 .data:0000000000000008 _f_sport_in_buf_size - /tmp/ccdxqFXK.s:49 .text:0000000000000028 _stream_out_buf_free - /tmp/ccdxqFXK.s:1680 .bss:0000000000000024 _f_hdma_out_get_pos - /tmp/ccdxqFXK.s:86 .text:0000000000000050 _hdma_recv_done - /tmp/ccdxqFXK.s:1678 .bss:0000000000000020 _f_hdma_out_put_pos - /tmp/ccdxqFXK.s:118 .text:0000000000000074 _sport_in_buffer_size - /tmp/ccdxqFXK.s:134 .text:0000000000000084 _sport_in_set_step_size - /tmp/ccdxqFXK.s:1662 .data:0000000000000004 _f_sport_in_block_size - /tmp/ccdxqFXK.s:193 .text:00000000000000d4 _sport_rx_stop - /tmp/ccdxqFXK.s:1674 .bss:0000000000000018 _f_bf_reg - /tmp/ccdxqFXK.s:246 .text:0000000000000120 _sport_rx_start - /tmp/ccdxqFXK.s:1676 .bss:000000000000001c _dummy.2418 - /tmp/ccdxqFXK.s:1693 .sdram_noinit:0000000000000000 _f_sport_in_buf - /tmp/ccdxqFXK.s:384 .text:0000000000000208 _stream_proc - /tmp/ccdxqFXK.s:1636 .bss:0000000000000000 _g_stream_in_state - /tmp/ccdxqFXK.s:1658 .bss:000000000000000c _f_sport_in_put_pos - /tmp/ccdxqFXK.s:1682 .bss:0000000000000028 _f_sport_in_proc_pos - /tmp/ccdxqFXK.s:1642 .bss:0000000000000004 _g_stream_out_state - /tmp/ccdxqFXK.s:1703 .bss:0000000000000030 _f_hdma_out_proc_pos - /tmp/ccdxqFXK.s:1701 .bss:000000000000002c _f_hdma_out_start_pos - /tmp/ccdxqFXK.s:1698 .sdram_noinit:0000000000800000 _f_hdma_out_buf - /tmp/ccdxqFXK.s:1687 .rodata:0000000000000000 _f_overflow_wrd - /tmp/ccdxqFXK.s:661 .text:0000000000000398 _stream_out_preload - /tmp/ccdxqFXK.s:733 .text:000000000000040c _l502_stream_init - /tmp/ccdxqFXK.s:755 .text:000000000000042c _streams_stop - /tmp/ccdxqFXK.s:1648 .bss:0000000000000008 _g_mode - /tmp/ccdxqFXK.s:874 .text:00000000000004d4 _isr_sport_dma_rx - /tmp/ccdxqFXK.s:1672 .bss:0000000000000014 _f_recv_size - /tmp/ccdxqFXK.s:1107 .text:0000000000000620 _stream_disable - /tmp/ccdxqFXK.s:1655 .data:0000000000000000 _g_streams - /tmp/ccdxqFXK.s:1199 .text:0000000000000684 _stream_enable - /tmp/ccdxqFXK.s:1290 .text:00000000000006e4 _streams_start - /tmp/ccdxqFXK.s:1708 .sdram_noinit:0000000000c00000 _TX_buff - /tmp/ccdxqFXK.s:1714 .sdram_noinit:0000000000c00fa0 _AVG_buff + /tmp/ccEcEoYb.s:13 .text:0000000000000000 _stream_in_buf_free + /tmp/ccEcEoYb.s:1670 .bss:0000000000000010 _f_sport_in_get_pos + /tmp/ccEcEoYb.s:1667 .data:0000000000000008 _f_sport_in_buf_size + /tmp/ccEcEoYb.s:49 .text:0000000000000028 _stream_out_buf_free + /tmp/ccEcEoYb.s:1680 .bss:0000000000000024 _f_hdma_out_get_pos + /tmp/ccEcEoYb.s:86 .text:0000000000000050 _hdma_recv_done + /tmp/ccEcEoYb.s:1678 .bss:0000000000000020 _f_hdma_out_put_pos + /tmp/ccEcEoYb.s:118 .text:0000000000000074 _sport_in_buffer_size + /tmp/ccEcEoYb.s:134 .text:0000000000000084 _sport_in_set_step_size + /tmp/ccEcEoYb.s:1662 .data:0000000000000004 _f_sport_in_block_size + /tmp/ccEcEoYb.s:193 .text:00000000000000d4 _sport_rx_stop + /tmp/ccEcEoYb.s:1674 .bss:0000000000000018 _f_bf_reg + /tmp/ccEcEoYb.s:246 .text:0000000000000120 _sport_rx_start + /tmp/ccEcEoYb.s:1676 .bss:000000000000001c _dummy.2439 + /tmp/ccEcEoYb.s:1693 .sdram_noinit:0000000000000000 _f_sport_in_buf + /tmp/ccEcEoYb.s:384 .text:0000000000000208 _stream_proc + /tmp/ccEcEoYb.s:1636 .bss:0000000000000000 _g_stream_in_state + /tmp/ccEcEoYb.s:1658 .bss:000000000000000c _f_sport_in_put_pos + /tmp/ccEcEoYb.s:1682 .bss:0000000000000028 _f_sport_in_proc_pos + /tmp/ccEcEoYb.s:1642 .bss:0000000000000004 _g_stream_out_state + /tmp/ccEcEoYb.s:1703 .bss:0000000000000030 _f_hdma_out_proc_pos + /tmp/ccEcEoYb.s:1701 .bss:000000000000002c _f_hdma_out_start_pos + /tmp/ccEcEoYb.s:1698 .sdram_noinit:0000000000800000 _f_hdma_out_buf + /tmp/ccEcEoYb.s:1687 .rodata:0000000000000000 _f_overflow_wrd + /tmp/ccEcEoYb.s:661 .text:0000000000000398 _stream_out_preload + /tmp/ccEcEoYb.s:733 .text:000000000000040c _l502_stream_init + /tmp/ccEcEoYb.s:755 .text:000000000000042c _streams_stop + /tmp/ccEcEoYb.s:1648 .bss:0000000000000008 _g_mode + /tmp/ccEcEoYb.s:874 .text:00000000000004d4 _isr_sport_dma_rx + /tmp/ccEcEoYb.s:1672 .bss:0000000000000014 _f_recv_size + /tmp/ccEcEoYb.s:1107 .text:0000000000000620 _stream_disable + /tmp/ccEcEoYb.s:1655 .data:0000000000000000 _g_streams + /tmp/ccEcEoYb.s:1199 .text:0000000000000684 _stream_enable + /tmp/ccEcEoYb.s:1290 .text:00000000000006e4 _streams_start + /tmp/ccEcEoYb.s:1708 .sdram_noinit:0000000000c00000 _TX_buff + /tmp/ccEcEoYb.s:1714 .sdram_noinit:0000000000c09c40 _TX_buff_shadow + /tmp/ccEcEoYb.s:1720 .sdram_noinit:0000000000c13880 _AVG_buff UNDEFINED SYMBOLS ___udivsi3 diff --git a/build/release/lst/l502_user_process.lst b/build/release/lst/l502_user_process.lst index 3dd983d..384d3bc 100644 --- a/build/release/lst/l502_user_process.lst +++ b/build/release/lst/l502_user_process.lst @@ -1,4 +1,4 @@ -BFIN GAS /tmp/ccPntIEp.s page 1 +BFIN GAS /tmp/ccG6eBVz.s page 1 1 .file "src/l502_user_process.c"; @@ -8,7 +8,7 @@ BFIN GAS /tmp/ccPntIEp.s page 1 5 .Ldebug_info0: 6 .section .debug_line,"",@progbits 7 .Ldebug_line0: - 8 0000 F1010000 .text; + 8 0000 53020000 .text; 8 02000001 8 00000101 8 FB0E0D00 @@ -58,7 +58,7 @@ BFIN GAS /tmp/ccPntIEp.s page 1 36:src/l502_user_process.c **** //#define TX_BUFF_SIZE 1024*1024 37:src/l502_user_process.c **** //#define TX_BUFF_SIZE 1000 38:src/l502_user_process.c **** - BFIN GAS /tmp/ccPntIEp.s page 2 + BFIN GAS /tmp/ccG6eBVz.s page 2 39:src/l502_user_process.c **** #define LFSM_BUFF_SIZE 1000 @@ -69,7 +69,7 @@ BFIN GAS /tmp/ccPntIEp.s page 1 44:src/l502_user_process.c **** //#define LFSM_DATALEN 1024 45:src/l502_user_process.c **** 46:src/l502_user_process.c **** - 47:src/l502_user_process.c **** + 47:src/l502_user_process.c **** volatile uint32_t dbg_receive_value = 1234321; 48:src/l502_user_process.c **** 49:src/l502_user_process.c **** 50:src/l502_user_process.c **** //#pragma section("sdram_noinit", NO_INIT) @@ -108,4208 +108,5466 @@ BFIN GAS /tmp/ccPntIEp.s page 1 83:src/l502_user_process.c **** 84:src/l502_user_process.c **** 85:src/l502_user_process.c **** extern volatile uint32_t TX_buff[]; //size: TX_BUFF_SIZE - 86:src/l502_user_process.c **** //extern volatile uint32_t RAW_data_buff[]; //size: RAW_DATA_BUFF_SIZE - 87:src/l502_user_process.c **** extern volatile uint32_t AVG_buff[]; //size: AVG_BUFF_SIZE - 88:src/l502_user_process.c **** //extern volatile uint32_t FFT_buff[]; //size: FFT_BUFF_SIZE - 89:src/l502_user_process.c **** - 90:src/l502_user_process.c **** volatile struct dataprocessor_dypedef{ - 91:src/l502_user_process.c **** uint8_t mode; - 92:src/l502_user_process.c **** uint8_t mode_next; - 93:src/l502_user_process.c **** uint8_t cycle_state; - 94:src/l502_user_process.c **** uint8_t LFSM_state; // 0 -- waiting for it... ; 1 -- receiving LFSM data - 95:src/l502_user_process.c **** uint16_t average_N_max; - BFIN GAS /tmp/ccPntIEp.s page 3 + 86:src/l502_user_process.c **** extern volatile uint32_t TX_buff_shadow[]; //size: TX_BUFF_SIZE + 87:src/l502_user_process.c **** //extern volatile uint32_t RAW_data_buff[]; //size: RAW_DATA_BUFF_SIZE + 88:src/l502_user_process.c **** extern volatile uint32_t AVG_buff[]; //size: AVG_BUFF_SIZE + 89:src/l502_user_process.c **** //extern volatile uint32_t AVG_buff_B[]; //size: AVG_BUFF_SIZE + 90:src/l502_user_process.c **** //extern volatile uint32_t FFT_buff[]; //size: FFT_BUFF_SIZE + 91:src/l502_user_process.c **** + 92:src/l502_user_process.c **** + 93:src/l502_user_process.c **** volatile uint32_t TX_marker[10] = {0xFE00000F,0xFE0000F0, 0xFE000F00, 0xFE00F000, 0xFE0F0000,0xFEF0 + 94:src/l502_user_process.c **** + 95:src/l502_user_process.c **** volatile struct dataprocessor_dypedef{ + BFIN GAS /tmp/ccG6eBVz.s page 3 - 96:src/l502_user_process.c **** uint16_t average_N; - 97:src/l502_user_process.c **** uint32_t TX_buff_I; - 98:src/l502_user_process.c **** uint8_t TX_buff_state; //0 --blocked, 1 -- filling, 2 -- ready to send - 99:src/l502_user_process.c **** uint32_t AVG_buff_I; - 100:src/l502_user_process.c **** uint8_t AVG_buff_state; - 101:src/l502_user_process.c **** uint32_t FFT_buff_I; - 102:src/l502_user_process.c **** uint8_t FFT_buff_state; - 103:src/l502_user_process.c **** uint32_t digital_word_prev; - 104:src/l502_user_process.c **** uint32_t digital_word_curr; - 105:src/l502_user_process.c **** uint8_t DIN2_SYN_value_curr; - 106:src/l502_user_process.c **** uint8_t DIN2_SYN_value_prev; - 107:src/l502_user_process.c **** }Proc_state; - 108:src/l502_user_process.c **** - 109:src/l502_user_process.c **** volatile uint32_t TX_buff_I = 0; - 110:src/l502_user_process.c **** volatile uint32_t TX_buff_I_shadow = 123321; - 111:src/l502_user_process.c **** - 112:src/l502_user_process.c **** volatile uint32_t data_I = 0; - 113:src/l502_user_process.c **** volatile uint32_t send_size = 0; - 114:src/l502_user_process.c **** + 96:src/l502_user_process.c **** uint8_t mode; + 97:src/l502_user_process.c **** uint8_t mode_next; + 98:src/l502_user_process.c **** uint8_t cycle_state; + 99:src/l502_user_process.c **** uint8_t LFSM_state; // 0 -- waiting for it... ; 1 -- receiving LFSM data + 100:src/l502_user_process.c **** uint16_t average_N_max; + 101:src/l502_user_process.c **** uint16_t average_N; + 102:src/l502_user_process.c **** uint32_t TX_buff_I; + 103:src/l502_user_process.c **** uint8_t TX_buff_state; //0 --blocked, 1 -- filling, 2 -- ready to send + 104:src/l502_user_process.c **** uint32_t AVG_buff_I; + 105:src/l502_user_process.c **** uint8_t AVG_state; + 106:src/l502_user_process.c **** uint8_t AVG_buff_state; + 107:src/l502_user_process.c **** uint8_t AVG_buff_active; + 108:src/l502_user_process.c **** uint32_t FFT_buff_I; + 109:src/l502_user_process.c **** uint8_t FFT_buff_state; + 110:src/l502_user_process.c **** uint32_t digital_word_prev; + 111:src/l502_user_process.c **** uint32_t digital_word_curr; + 112:src/l502_user_process.c **** uint8_t DIN2_SYN_value_curr; + 113:src/l502_user_process.c **** uint8_t DIN2_SYN_value_prev; + 114:src/l502_user_process.c **** }Proc_state; 115:src/l502_user_process.c **** - 116:src/l502_user_process.c **** - 117:src/l502_user_process.c **** //int f_sport_test(void); - 118:src/l502_user_process.c **** void l502_stream_init(void); - 119:src/l502_user_process.c **** - 120:src/l502_user_process.c **** //struct LFSM_typedef{ - 121:src/l502_user_process.c **** // uint8_t - 122:src/l502_user_process.c **** //}; - 123:src/l502_user_process.c **** - 124:src/l502_user_process.c **** uint8_t LFSM_started = 0; - 125:src/l502_user_process.c **** - 126:src/l502_user_process.c **** - 127:src/l502_user_process.c **** uint8_t DY_SYN_2_value = 0; - 128:src/l502_user_process.c **** uint8_t DY_SYN_2_value_prev = 0; - 129:src/l502_user_process.c **** /***************************************************************************//** - 130:src/l502_user_process.c **** @brief Обработка принятого массива данных АЦП/DIN. + 116:src/l502_user_process.c **** volatile uint32_t TX_buff_I = 0; + 117:src/l502_user_process.c **** volatile uint32_t TX_buff_I_shadow = 123321; + 118:src/l502_user_process.c **** + 119:src/l502_user_process.c **** volatile uint32_t data_I = 0; + 120:src/l502_user_process.c **** volatile uint32_t send_size = 0; + 121:src/l502_user_process.c **** + 122:src/l502_user_process.c **** volatile uint8_t TX_buff_state = TX_DONE; //FILLING, TODO_TX, TRANSMITTING, TX_DONE, BUFF_READY, + 123:src/l502_user_process.c **** volatile uint32_t tx_val = 0; + 124:src/l502_user_process.c **** + 125:src/l502_user_process.c **** //int f_sport_test(void); + 126:src/l502_user_process.c **** void l502_stream_init(void); + 127:src/l502_user_process.c **** + 128:src/l502_user_process.c **** //struct LFSM_typedef{ + 129:src/l502_user_process.c **** // uint8_t + 130:src/l502_user_process.c **** //}; 131:src/l502_user_process.c **** - 132:src/l502_user_process.c **** Функция вызывается каждый раз, когда обнаружены нов - 133:src/l502_user_process.c **** АЦП/цифровых входов, пришедшие по SPORT0. + 132:src/l502_user_process.c **** uint8_t LFSM_started = 0; + 133:src/l502_user_process.c **** 134:src/l502_user_process.c **** - 135:src/l502_user_process.c **** Функция должна обработать данные и вернуть количес - 136:src/l502_user_process.c **** однако эти данные все еще считаются использованным - 137:src/l502_user_process.c **** новыми пришедшими данными) до тех пор пока не будет - 138:src/l502_user_process.c **** stream_in_buf_free()). + 135:src/l502_user_process.c **** uint8_t DY_SYN_2_value = 0; + 136:src/l502_user_process.c **** uint8_t DY_SYN_2_value_prev = 0; + 137:src/l502_user_process.c **** /***************************************************************************//** + 138:src/l502_user_process.c **** @brief Обработка принятого массива данных АЦП/DIN. 139:src/l502_user_process.c **** - 140:src/l502_user_process.c **** Если функция вернет значение меньше чем size, то функц - 141:src/l502_user_process.c **** следующем проходе еще раз с указателем на необработ + 140:src/l502_user_process.c **** Функция вызывается каждый раз, когда обнаружены нов + 141:src/l502_user_process.c **** АЦП/цифровых входов, пришедшие по SPORT0. 142:src/l502_user_process.c **** - 143:src/l502_user_process.c **** В текущей реализации просто запускается передача д - 144:src/l502_user_process.c **** - 145:src/l502_user_process.c **** @param[in] data Указатель на массив с принятыми данными - 146:src/l502_user_process.c **** @param[in] size Количество принятых данных в 32-битных сло - 147:src/l502_user_process.c **** @return Функция возвращает количество обработанн - 148:src/l502_user_process.c **** На эти данные не будет вызываться повторн - 149:src/l502_user_process.c **** но они считаются еще используемыми - 150:src/l502_user_process.c **** *******************************************************************************/ - 151:src/l502_user_process.c **** uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { - 152:src/l502_user_process.c **** /* если есть свободные дескрипторы на передачу по HDMA - BFIN GAS /tmp/ccPntIEp.s page 4 + 143:src/l502_user_process.c **** Функция должна обработать данные и вернуть количес + 144:src/l502_user_process.c **** однако эти данные все еще считаются использованным + 145:src/l502_user_process.c **** новыми пришедшими данными) до тех пор пока не будет + 146:src/l502_user_process.c **** stream_in_buf_free()). + 147:src/l502_user_process.c **** + 148:src/l502_user_process.c **** Если функция вернет значение меньше чем size, то функц + 149:src/l502_user_process.c **** следующем проходе еще раз с указателем на необработ + 150:src/l502_user_process.c **** + 151:src/l502_user_process.c **** В текущей реализации просто запускается передача д + 152:src/l502_user_process.c **** + BFIN GAS /tmp/ccG6eBVz.s page 4 - 153:src/l502_user_process.c **** передачу. Иначе возвращаем 0, чтобы на обработку эт - 154:src/l502_user_process.c **** вызвали бы позже */ - 155:src/l502_user_process.c **** ++streams_cnt[0]; - 156:src/l502_user_process.c **** /* - 157:src/l502_user_process.c **** for (int i = 0; i < TX_BUFF_SIZE; ++i){ - 158:src/l502_user_process.c **** TX_buff[i] = 0x00000000; - 159:src/l502_user_process.c **** } - 160:src/l502_user_process.c **** */ - 161:src/l502_user_process.c **** - 162:src/l502_user_process.c **** //for (int i = 0; i < dbg_sport_rx_copy; ++i){ - 163:src/l502_user_process.c **** // dbg_sport_rx_copy[i] = data[i]; - 164:src/l502_user_process.c **** //} + 153:src/l502_user_process.c **** @param[in] data Указатель на массив с принятыми данными + 154:src/l502_user_process.c **** @param[in] size Количество принятых данных в 32-битных сло + 155:src/l502_user_process.c **** @return Функция возвращает количество обработанн + 156:src/l502_user_process.c **** На эти данные не будет вызываться повторн + 157:src/l502_user_process.c **** но они считаются еще используемыми + 158:src/l502_user_process.c **** *******************************************************************************/ + 159:src/l502_user_process.c **** uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { + 160:src/l502_user_process.c **** /* если есть свободные дескрипторы на передачу по HDMA + 161:src/l502_user_process.c **** передачу. Иначе возвращаем 0, чтобы на обработку эт + 162:src/l502_user_process.c **** вызвали бы позже */ + 163:src/l502_user_process.c **** ++streams_cnt[0]; + 164:src/l502_user_process.c **** 165:src/l502_user_process.c **** 166:src/l502_user_process.c **** - 167:src/l502_user_process.c **** - 168:src/l502_user_process.c **** //* - 169:src/l502_user_process.c **** //simple transparent mode - 170:src/l502_user_process.c **** if (Proc_state.mode == TRANSPARENT){ - 171:src/l502_user_process.c **** data_I = 0; - 172:src/l502_user_process.c **** while((data_I < size )&& (TX_buff_I < TX_BUFF_SIZE)){ - 173:src/l502_user_process.c **** TX_buff[TX_buff_I++] = data[data_I++]; - 174:src/l502_user_process.c **** } + 167:src/l502_user_process.c **** //clear TX_buff + 168:src/l502_user_process.c **** if (TX_buff_state == TX_DONE){ + 169:src/l502_user_process.c **** for (int i = 0; i < TX_BUFF_SIZE; ++i){ + 170:src/l502_user_process.c **** //TX_buff[i] = 0x00000123; + 171:src/l502_user_process.c **** TX_buff[i] = tx_val++ | 0xEE000000; + 172:src/l502_user_process.c **** //TX_buff[i] = size; + 173:src/l502_user_process.c **** } + 174:src/l502_user_process.c **** TX_buff_state = FILLING; 175:src/l502_user_process.c **** } - 176:src/l502_user_process.c **** - 177:src/l502_user_process.c **** if (Proc_state.mode == AVG){ - 178:src/l502_user_process.c **** data_I = 0; - 179:src/l502_user_process.c **** //TX_buff_I = 0; - 180:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - 181:src/l502_user_process.c **** while((data_I < size )&& (Proc_state.AVG_buff_I < AVG_BUFF_SIZE)){ - 182:src/l502_user_process.c **** //uint32_t word = data[data_I]; - 183:src/l502_user_process.c **** //uint32_t avg_word = AVG_buff[Proc_state.AVG_buff_I++]; - 184:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I] = (avg_word & 0x00FFFFFF) + (word & 0x00FFFFFF); - 185:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; - 186:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; - 187:src/l502_user_process.c **** // Proc_state.AVG_buff_I++; - 188:src/l502_user_process.c **** // data_I++; - 189:src/l502_user_process.c **** } - 190:src/l502_user_process.c **** //Proc_state.AVG_buff_I = 0; - 191:src/l502_user_process.c **** - 192:src/l502_user_process.c **** } - 193:src/l502_user_process.c **** - 194:src/l502_user_process.c **** - 195:src/l502_user_process.c **** - 196:src/l502_user_process.c **** /*/ - 197:src/l502_user_process.c **** - 198:src/l502_user_process.c **** if (Proc_state.mode == AVG){ - 199:src/l502_user_process.c **** uint32_t data_I = 0; - 200:src/l502_user_process.c **** while((data_I < size )&& (TX_buff_I < (TX_BUFF_SIZE - 1))){ - 201:src/l502_user_process.c **** // TX_buff[TX_buff_I++] = data[data_I++]; - 202:src/l502_user_process.c **** uint32_t word = data[data_I++]; - 203:src/l502_user_process.c **** TX_buff[TX_buff_I++] = (word & 0x00FFFFFF);// | 0xDE000000; - 204:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = ((word & 0x00FFFFFF) | 0xDE000000); - 205:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xADEFDEED; - 206:src/l502_user_process.c **** } - 207:src/l502_user_process.c **** } - 208:src/l502_user_process.c **** //*/ - 209:src/l502_user_process.c **** - BFIN GAS /tmp/ccPntIEp.s page 5 + 176:src/l502_user_process.c **** /* + 177:src/l502_user_process.c **** for (int i = 0; i < TX_BUFF_SIZE; ++i){ + 178:src/l502_user_process.c **** TX_buff[i] = 0x00000000; + 179:src/l502_user_process.c **** } + 180:src/l502_user_process.c **** */ + 181:src/l502_user_process.c **** + 182:src/l502_user_process.c **** //for (int i = 0; i < dbg_sport_rx_copy; ++i){ + 183:src/l502_user_process.c **** // dbg_sport_rx_copy[i] = data[i]; + 184:src/l502_user_process.c **** //} + 185:src/l502_user_process.c **** + 186:src/l502_user_process.c **** + 187:src/l502_user_process.c **** + 188:src/l502_user_process.c **** //* + 189:src/l502_user_process.c **** //simple transparent mode + 190:src/l502_user_process.c **** if (Proc_state.mode == TRANSPARENT){ + 191:src/l502_user_process.c **** //++Proc_state.average_N; + 192:src/l502_user_process.c **** + 193:src/l502_user_process.c **** if (TX_buff_state == FILLING){ + 194:src/l502_user_process.c **** data_I = 0; + 195:src/l502_user_process.c **** TX_buff_I = 0; + 196:src/l502_user_process.c **** while((++data_I < size )&& (++TX_buff_I < TX_BUFF_SIZE)){ + 197:src/l502_user_process.c **** //; + 198:src/l502_user_process.c **** TX_buff[TX_buff_I] = data[data_I]; + 199:src/l502_user_process.c **** } + 200:src/l502_user_process.c **** + 201:src/l502_user_process.c **** TX_buff_state = TODO_TX; + 202:src/l502_user_process.c **** //tx_val = 0; + 203:src/l502_user_process.c **** } + 204:src/l502_user_process.c **** //TX_buff_state = DUMMY; + 205:src/l502_user_process.c **** + 206:src/l502_user_process.c **** } + 207:src/l502_user_process.c **** //TX_buff_I = TX_BUFF_SIZE; + 208:src/l502_user_process.c **** + 209:src/l502_user_process.c **** if (Proc_state.mode == AVG){ + BFIN GAS /tmp/ccG6eBVz.s page 5 - 210:src/l502_user_process.c **** //* - 211:src/l502_user_process.c **** - 212:src/l502_user_process.c **** - 213:src/l502_user_process.c **** // if (Proc_state.mode == AVG){ - 214:src/l502_user_process.c **** //TX_buff_I = 10; - 215:src/l502_user_process.c **** /* - 216:src/l502_user_process.c **** uint32_t data_I = 0; - 217:src/l502_user_process.c **** uint8_t new_cycle_started = 0; - 218:src/l502_user_process.c **** uint8_t cycle_cont = 1; - 219:src/l502_user_process.c **** while ((data_I < size) && (Proc_state.AVG_buff_I < AVG_BUFF_SIZE) && cycle_cont ){ - 220:src/l502_user_process.c **** uint32_t word = data[data_I]; - 221:src/l502_user_process.c **** uint32_t val = word & 0x00FFFFFF; - 222:src/l502_user_process.c **** uint8_t header = (uint8_t)(word >> 24); - 223:src/l502_user_process.c **** */ - 224:src/l502_user_process.c **** /* - 225:src/l502_user_process.c **** if (header == 0x00){ - 226:src/l502_user_process.c **** Proc_state.digital_word_prev = Proc_state.digital_word_curr; - 227:src/l502_user_process.c **** Proc_state.digital_word_curr = word; - 228:src/l502_user_process.c **** DY_SYN_2_value_prev = DY_SYN_2_value; - 229:src/l502_user_process.c **** if (word & 0b1 << 17){ - 230:src/l502_user_process.c **** DY_SYN_2_value = 1; - 231:src/l502_user_process.c **** }else{ - 232:src/l502_user_process.c **** DY_SYN_2_value = 0; - 233:src/l502_user_process.c **** } - 234:src/l502_user_process.c **** - 235:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ //new cycle started - 236:src/l502_user_process.c **** new_cycle_started = 1; - 237:src/l502_user_process.c **** } - 238:src/l502_user_process.c **** } - 239:src/l502_user_process.c **** //*/ - 240:src/l502_user_process.c **** /* - 241:src/l502_user_process.c **** if (header == 0xD0){ //it`s first channel - 242:src/l502_user_process.c **** if (new_cycle_started){ - 243:src/l502_user_process.c **** new_cycle_started = 0; - 244:src/l502_user_process.c **** ++Proc_state.average_N; - 245:src/l502_user_process.c **** if (Proc_state.average_N >= Proc_state.average_N_max){ - 246:src/l502_user_process.c **** Proc_state.mode == AVG_DONE; - 247:src/l502_user_process.c **** cycle_cont = 0; //break averaging cycle - 248:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - 249:src/l502_user_process.c **** } - 250:src/l502_user_process.c **** }else{ - 251:src/l502_user_process.c **** if (Proc_state.AVG_buff_I < AVG_BUFF_SIZE){ - 252:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I] =(word & 0x00FFFFFF);// | 0xDE000000; - 253:src/l502_user_process.c **** //uint32_t tmp = AVG_buff[Proc_state.AVG_buff_I]; - 254:src/l502_user_process.c **** //tmp += val; - 255:src/l502_user_process.c **** //tmp &= 0x0FFFFFFF; - 256:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I] = tmp | (0x40000000 & 0xF0000000); //set header (first 4 bit + 210:src/l502_user_process.c **** while(++data_I < size ){ + 211:src/l502_user_process.c **** uint32_t word = data[data_I]; + 212:src/l502_user_process.c **** uint32_t val = word & 0x00FFFFFF; + 213:src/l502_user_process.c **** uint8_t header = (uint8_t)(word >> 24); + 214:src/l502_user_process.c **** if (header == 0x00){ //digital_channel. switches LFSM state machine + 215:src/l502_user_process.c **** DY_SYN_2_value_prev = DY_SYN_2_value; + 216:src/l502_user_process.c **** if (word & 0b1 << 17){ + 217:src/l502_user_process.c **** DY_SYN_2_value = 1; + 218:src/l502_user_process.c **** }else{ + 219:src/l502_user_process.c **** DY_SYN_2_value = 0; + 220:src/l502_user_process.c **** } + 221:src/l502_user_process.c **** + 222:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ //new cycle started + 223:src/l502_user_process.c **** //data[data_I] = 0xB00000000; + 224:src/l502_user_process.c **** Proc_state.average_N ++; + 225:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 226:src/l502_user_process.c **** Proc_state.LFSM_state = CYCLE_STARTED; + 227:src/l502_user_process.c **** //if (Proc_state.average_N >= Proc_state.average_N_max){ //whole average ended + 228:src/l502_user_process.c **** if (1){ + 229:src/l502_user_process.c **** Proc_state.AVG_state = FULLY_COMPLETED; + 230:src/l502_user_process.c **** //averaging completed => copy average results to TX_buff and start avg again + 231:src/l502_user_process.c **** TX_buff_I = 0; + 232:src/l502_user_process.c **** for (uint32_t i = 0; ((TX_buff_I < TX_BUFF_SIZE) && (i < AVG_BUFF_SIZE)); i++){ + 233:src/l502_user_process.c **** // uint32_t i = 0; + 234:src/l502_user_process.c **** // while ((TX_buff_I < TX_BUFF_SIZE) && (i < AVG_BUFF_SIZE)){ + 235:src/l502_user_process.c **** TX_buff[TX_buff_I++] = AVG_buff[i]; + 236:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xB0000000 + Proc_state.average_N; + 237:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xC1000000; + 238:src/l502_user_process.c **** } + 239:src/l502_user_process.c **** + 240:src/l502_user_process.c **** //clear AVG_buff: + 241:src/l502_user_process.c **** for (uint32_t i = 0; i < AVG_BUFF_SIZE; i++ ){ + 242:src/l502_user_process.c **** AVG_buff[i] = 0xC2321123; + 243:src/l502_user_process.c **** } + 244:src/l502_user_process.c **** + 245:src/l502_user_process.c **** TX_buff_state = TODO_TX; + 246:src/l502_user_process.c **** + 247:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 248:src/l502_user_process.c **** TX_buff_shadow[i] = TX_buff[i]; + 249:src/l502_user_process.c **** } + 250:src/l502_user_process.c **** hdma_send_req_start(TX_buff_shadow, TX_buff_I, 0); + 251:src/l502_user_process.c **** hdma_send_req_start(TX_marker, 10, 0); + 252:src/l502_user_process.c **** + 253:src/l502_user_process.c **** + 254:src/l502_user_process.c **** // hdma_send_req_start(TX_buff, TX_BUFF_SIZE, 0); + 255:src/l502_user_process.c **** //TX_buff_state = TRANSMITTING; + 256:src/l502_user_process.c **** TX_buff_state = TX_DONE; 257:src/l502_user_process.c **** - 258:src/l502_user_process.c **** Proc_state.AVG_buff_I++; - 259:src/l502_user_process.c **** } - 260:src/l502_user_process.c **** } - 261:src/l502_user_process.c **** } - 262:src/l502_user_process.c **** data_I++; - 263:src/l502_user_process.c **** //*/ - 264:src/l502_user_process.c **** - 265:src/l502_user_process.c **** // AVG_buff[Proc_state.AVG_buff_I] = 0xDDDDDDDD; - 266:src/l502_user_process.c **** - BFIN GAS /tmp/ccPntIEp.s page 6 + 258:src/l502_user_process.c **** + 259:src/l502_user_process.c **** }else{ // + 260:src/l502_user_process.c **** Proc_state.AVG_state = STEP_RUNNING; + 261:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 262:src/l502_user_process.c **** + 263:src/l502_user_process.c **** } + 264:src/l502_user_process.c **** } + 265:src/l502_user_process.c **** + 266:src/l502_user_process.c **** }else if(header == 0xD0){ //first phy channel + BFIN GAS /tmp/ccG6eBVz.s page 6 - 267:src/l502_user_process.c **** - 268:src/l502_user_process.c **** - 269:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = data[data_I]; - 270:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xEEEEEEEE; - 271:src/l502_user_process.c **** // data_I++; - 272:src/l502_user_process.c **** // Proc_state.AVG_buff_I++; - 273:src/l502_user_process.c **** - 274:src/l502_user_process.c **** //} - 275:src/l502_user_process.c **** - 276:src/l502_user_process.c **** - 277:src/l502_user_process.c **** // if (Proc_state.AVG_buff_I == AVG_BUFF_SIZE){ - 278:src/l502_user_process.c **** /* if (Proc_state.AVG_buff_I >= 10){ - 279:src/l502_user_process.c **** Proc_state.AVG_buff_I = 10; - 280:src/l502_user_process.c **** Proc_state.mode == AVG_DONE; - 281:src/l502_user_process.c **** } - 282:src/l502_user_process.c **** */ - 283:src/l502_user_process.c **** // } - 284:src/l502_user_process.c **** /* - 285:src/l502_user_process.c **** if(Proc_state.mode == AVG_DONE){ //TODO: - 286:src/l502_user_process.c **** if (Proc_state.TX_buff_state == 0){ - 287:src/l502_user_process.c **** Proc_state.TX_buff_state = 1; //0 --ready, 1 -- filling, 2 -- ready to send - 288:src/l502_user_process.c **** // Proc_state.AVG_buff_state = 1; //0 -- ready, 1 -- blocked, - 289:src/l502_user_process.c **** uint32_t max_I = TX_BUFF_SIZE; - 290:src/l502_user_process.c **** if (max_I > AVG_BUFF_SIZE){ - 291:src/l502_user_process.c **** max_I = AVG_BUFF_SIZE; - 292:src/l502_user_process.c **** } - 293:src/l502_user_process.c **** for (uint32_t I = 0; I < max_I; ++I){ - 294:src/l502_user_process.c **** if (TX_buff_I < TX_BUFF_SIZE){ - 295:src/l502_user_process.c **** ++TX_buff_I; - 296:src/l502_user_process.c **** } - 297:src/l502_user_process.c **** TX_buff[TX_buff_I] = AVG_buff[I]; - 298:src/l502_user_process.c **** AVG_buff[I] = 0; - 299:src/l502_user_process.c **** } - 300:src/l502_user_process.c **** Proc_state.TX_buff_state = 2; //0 --ready, 1 -- filling, 2 -- ready to send - 301:src/l502_user_process.c **** } - 302:src/l502_user_process.c **** Proc_state.mode = Proc_state.mode_next; - 303:src/l502_user_process.c **** } - 304:src/l502_user_process.c **** //*/ - 305:src/l502_user_process.c **** - 306:src/l502_user_process.c **** - 307:src/l502_user_process.c **** - 308:src/l502_user_process.c **** - 309:src/l502_user_process.c **** - 310:src/l502_user_process.c **** /* - 311:src/l502_user_process.c **** uint32_t radar_word_I = 0; - 312:src/l502_user_process.c **** - 313:src/l502_user_process.c **** //uint32_t TX_buff_I = 0; - 314:src/l502_user_process.c **** uint32_t word_prev = 0; - 315:src/l502_user_process.c **** uint32_t digital_word_prev = 0; - 316:src/l502_user_process.c **** - 317:src/l502_user_process.c **** - 318:src/l502_user_process.c **** - 319:src/l502_user_process.c **** - 320:src/l502_user_process.c **** for (int data_I = 0; (data_I < size) && (TX_buff_I < TX_BUFF_SIZE); ++data_I){ - 321:src/l502_user_process.c **** uint32_t word = data[data_I]; - 322:src/l502_user_process.c **** uint32_t val = word & 0x00FFFFFF; - 323:src/l502_user_process.c **** uint8_t header = (uint8_t)(word >> 24); - BFIN GAS /tmp/ccPntIEp.s page 7 + 267:src/l502_user_process.c **** // if (Proc_state.AVG_state == STEP_RUNNING){ + 268:src/l502_user_process.c **** // if (Proc_state.LFSM_state == CYCLE_STARTED){ + 269:src/l502_user_process.c **** if (1){ + 270:src/l502_user_process.c **** if (1){ + 271:src/l502_user_process.c **** // AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000 | (0x00FFFFFF & (AVG_buff[Proc_state.AVG + 272:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000 | val; + 273:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000; + 274:src/l502_user_process.c **** if (Proc_state.AVG_buff_I >= AVG_BUFF_SIZE){ + 275:src/l502_user_process.c **** Proc_state.AVG_state = STEP_COMPLETED; + 276:src/l502_user_process.c **** } + 277:src/l502_user_process.c **** } + 278:src/l502_user_process.c **** } + 279:src/l502_user_process.c **** } + 280:src/l502_user_process.c **** } + 281:src/l502_user_process.c **** } + 282:src/l502_user_process.c **** + 283:src/l502_user_process.c **** + 284:src/l502_user_process.c **** + 285:src/l502_user_process.c **** + 286:src/l502_user_process.c **** /* + 287:src/l502_user_process.c **** if (Proc_state.mode == AVG){ + 288:src/l502_user_process.c **** data_I = 0; + 289:src/l502_user_process.c **** //TX_buff_I = 0; + 290:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 291:src/l502_user_process.c **** if (Proc_state.AVG_buff_active == A){ + 292:src/l502_user_process.c **** while((data_I < size )&& (Proc_state.AVG_buff_I < (AVG_BUFF_SIZE - 10))){ + 293:src/l502_user_process.c **** uint32_t word = data[data_I]; + 294:src/l502_user_process.c **** //uint32_t avg_word = AVG_buff_A[Proc_state.AVG_buff_I++]; + 295:src/l502_user_process.c **** //AVG_buff_A[Proc_state.AVG_buff_I] = (avg_word & 0x007FFFFF) + (word & 0x007FFFFF); + 296:src/l502_user_process.c **** //AVG_buff_A[Proc_state.AVG_buff_I] = 0xDD000000 | (word & 0x00FFFFFF); + 297:src/l502_user_process.c **** AVG_buff_A[Proc_state.AVG_buff_I] = word; + 298:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; + 299:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I] = data[data_I]; + 300:src/l502_user_process.c **** //uint32_t word = data[data_I]; + 301:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I] = word; + 302:src/l502_user_process.c **** //AVG_buff_A[Proc_state.AVG_buff_I] = 0xDD000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + 303:src/l502_user_process.c **** + 304:src/l502_user_process.c **** Proc_state.AVG_buff_I++; + 305:src/l502_user_process.c **** data_I++; + 306:src/l502_user_process.c **** } + 307:src/l502_user_process.c **** //Proc_state.AVG_buff_I++; + 308:src/l502_user_process.c **** //AVG_buff_A[Proc_state.AVG_buff_I] = 0xDD000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + 309:src/l502_user_process.c **** //data_I++; + 310:src/l502_user_process.c **** //Proc_state.AVG_buff_I = 0; + 311:src/l502_user_process.c **** }else{ + 312:src/l502_user_process.c **** while((data_I < size )&& (Proc_state.AVG_buff_I < (AVG_BUFF_SIZE - 10))){ + 313:src/l502_user_process.c **** //uint32_t word = data[data_I]; + 314:src/l502_user_process.c **** AVG_buff_B[Proc_state.AVG_buff_I] = 0xDE000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + 315:src/l502_user_process.c **** Proc_state.AVG_buff_I++; + 316:src/l502_user_process.c **** data_I++; + 317:src/l502_user_process.c **** } + 318:src/l502_user_process.c **** // Proc_state.AVG_buff_I++; + 319:src/l502_user_process.c **** // AVG_buff_B[Proc_state.AVG_buff_I] = 0xDD000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + 320:src/l502_user_process.c **** + 321:src/l502_user_process.c **** } + 322:src/l502_user_process.c **** + 323:src/l502_user_process.c **** + BFIN GAS /tmp/ccG6eBVz.s page 7 - 324:src/l502_user_process.c **** //11010000 - 325:src/l502_user_process.c **** if (((header & 0b10000000) == 0b10000000)){ //it`s ADC word - 326:src/l502_user_process.c **** if (header == 0XD0){ //phy channel № 1 in common mode - 327:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = ((0b01100000 & LFSM_val_ON) << 24) & val; - 328:src/l502_user_process.c **** TX_buff[TX_buff_I++] = 0xD0ADEFEA; - 329:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = word; - 330:src/l502_user_process.c **** - 331:src/l502_user_process.c **** }else if (header == 0xD1){//phy channel № 2 in common mode - 332:src/l502_user_process.c **** TX_buff[TX_buff_I++] = word; - 333:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = ((0b01100000 & LFSM_val_OFF) << 24) & val; - 334:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xD0ADEFEB; - 335:src/l502_user_process.c **** }else{ - 336:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = word; - 337:src/l502_user_process.c **** TX_buff[TX_buff_I++] = word; - 338:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xD0AAAAAA; - 339:src/l502_user_process.c **** } + 324:src/l502_user_process.c **** } + 325:src/l502_user_process.c **** */ + 326:src/l502_user_process.c **** + 327:src/l502_user_process.c **** /*/ + 328:src/l502_user_process.c **** + 329:src/l502_user_process.c **** if (Proc_state.mode == AVG){ + 330:src/l502_user_process.c **** uint32_t data_I = 0; + 331:src/l502_user_process.c **** while((data_I < size )&& (TX_buff_I < (TX_BUFF_SIZE - 1))){ + 332:src/l502_user_process.c **** // TX_buff[TX_buff_I++] = data[data_I++]; + 333:src/l502_user_process.c **** uint32_t word = data[data_I++]; + 334:src/l502_user_process.c **** TX_buff[TX_buff_I++] = (word & 0x00FFFFFF);// | 0xDE000000; + 335:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = ((word & 0x00FFFFFF) | 0xDE000000); + 336:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xADEFDEED; + 337:src/l502_user_process.c **** } + 338:src/l502_user_process.c **** } + 339:src/l502_user_process.c **** //*/ 340:src/l502_user_process.c **** - 341:src/l502_user_process.c **** - 342:src/l502_user_process.c **** } else if ( header == 0b00000000){ //it`s digital - 343:src/l502_user_process.c **** //if ((word & 0x2200) == 0x2200){ - 344:src/l502_user_process.c **** TX_buff[TX_buff_I++] = word; - 345:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xAD000000; - 346:src/l502_user_process.c **** - 347:src/l502_user_process.c **** - 348:src/l502_user_process.c **** - 349:src/l502_user_process.c **** //detect rise on DI_SYN2 -- start of chirp - 350:src/l502_user_process.c **** if (word & 0b1 << 17){ - 351:src/l502_user_process.c **** DY_SYN_2_value = 1; - 352:src/l502_user_process.c **** }else{ - 353:src/l502_user_process.c **** DY_SYN_2_value = 0; - 354:src/l502_user_process.c **** } - 355:src/l502_user_process.c **** - 356:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ - 357:src/l502_user_process.c **** TX_buff[TX_buff_I++] = 0xAD000000; - 358:src/l502_user_process.c **** } - 359:src/l502_user_process.c **** DY_SYN_2_value_prev = DY_SYN_2_value; - 360:src/l502_user_process.c **** - 361:src/l502_user_process.c **** digital_word_prev = word; - 362:src/l502_user_process.c **** } else{ - 363:src/l502_user_process.c **** // TX_buff[TX_buff_I++] = word; - 364:src/l502_user_process.c **** } - 365:src/l502_user_process.c **** word_prev = word; - 366:src/l502_user_process.c **** - 367:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ - 368:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ - 369:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ - 370:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ - 371:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ - 372:src/l502_user_process.c **** - 373:src/l502_user_process.c **** } - 374:src/l502_user_process.c **** */ - 375:src/l502_user_process.c **** - 376:src/l502_user_process.c **** //stream_in_buf_free(size); - 377:src/l502_user_process.c **** - 378:src/l502_user_process.c **** /* - 379:src/l502_user_process.c **** - 380:src/l502_user_process.c **** //int i = 0; - BFIN GAS /tmp/ccPntIEp.s page 8 + 341:src/l502_user_process.c **** //* + 342:src/l502_user_process.c **** + 343:src/l502_user_process.c **** + 344:src/l502_user_process.c **** // if (Proc_state.mode == AVG){ + 345:src/l502_user_process.c **** //TX_buff_I = 10; + 346:src/l502_user_process.c **** /* + 347:src/l502_user_process.c **** uint32_t data_I = 0; + 348:src/l502_user_process.c **** uint8_t new_cycle_started = 0; + 349:src/l502_user_process.c **** uint8_t cycle_cont = 1; + 350:src/l502_user_process.c **** while ((data_I < size) && (Proc_state.AVG_buff_I < AVG_BUFF_SIZE) && cycle_cont ){ + 351:src/l502_user_process.c **** uint32_t word = data[data_I]; + 352:src/l502_user_process.c **** uint32_t val = word & 0x00FFFFFF; + 353:src/l502_user_process.c **** uint8_t header = (uint8_t)(word >> 24); + 354:src/l502_user_process.c **** */ + 355:src/l502_user_process.c **** /* + 356:src/l502_user_process.c **** if (header == 0x00){ + 357:src/l502_user_process.c **** Proc_state.digital_word_prev = Proc_state.digital_word_curr; + 358:src/l502_user_process.c **** Proc_state.digital_word_curr = word; + 359:src/l502_user_process.c **** DY_SYN_2_value_prev = DY_SYN_2_value; + 360:src/l502_user_process.c **** if (word & 0b1 << 17){ + 361:src/l502_user_process.c **** DY_SYN_2_value = 1; + 362:src/l502_user_process.c **** }else{ + 363:src/l502_user_process.c **** DY_SYN_2_value = 0; + 364:src/l502_user_process.c **** } + 365:src/l502_user_process.c **** + 366:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ //new cycle started + 367:src/l502_user_process.c **** new_cycle_started = 1; + 368:src/l502_user_process.c **** } + 369:src/l502_user_process.c **** } + 370:src/l502_user_process.c **** //*/ + 371:src/l502_user_process.c **** /* + 372:src/l502_user_process.c **** if (header == 0xD0){ //it`s first channel + 373:src/l502_user_process.c **** if (new_cycle_started){ + 374:src/l502_user_process.c **** new_cycle_started = 0; + 375:src/l502_user_process.c **** ++Proc_state.average_N; + 376:src/l502_user_process.c **** if (Proc_state.average_N >= Proc_state.average_N_max){ + 377:src/l502_user_process.c **** Proc_state.mode == AVG_DONE; + 378:src/l502_user_process.c **** cycle_cont = 0; //break averaging cycle + 379:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 380:src/l502_user_process.c **** } + BFIN GAS /tmp/ccG6eBVz.s page 8 - 381:src/l502_user_process.c **** //uint8_t - 382:src/l502_user_process.c **** //while - 383:src/l502_user_process.c **** - 384:src/l502_user_process.c **** for (int i = 0; i < LFSM_DATALEN; ++i){ - 385:src/l502_user_process.c **** uint32_t msg; - 386:src/l502_user_process.c **** if (i % 2){ - 387:src/l502_user_process.c **** msg = (LFSM_val_ON << 24) + data[i]; - 388:src/l502_user_process.c **** }else{ - 389:src/l502_user_process.c **** msg = (LFSM_val_OFF << 24) + data[i]; - 390:src/l502_user_process.c **** } - 391:src/l502_user_process.c **** LFSM_data[i] = msg; - 392:src/l502_user_process.c **** } - 393:src/l502_user_process.c **** - 394:src/l502_user_process.c **** */ - 395:src/l502_user_process.c **** if (hdma_send_req_rdy()) { - 396:src/l502_user_process.c **** - 397:src/l502_user_process.c **** //streams_cnt[0] - 398:src/l502_user_process.c **** /* - 399:src/l502_user_process.c **** if (Proc_state.TX_buff_state == 2){ - 400:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_BUFF_SIZE, 0); - 401:src/l502_user_process.c **** }else if(0){ - 402:src/l502_user_process.c **** - 403:src/l502_user_process.c **** }else{ - 404:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_buff_I, 0); - 405:src/l502_user_process.c **** TX_buff_I = 0; - 406:src/l502_user_process.c **** //hdma_send_req_start(data, size, 0); - 407:src/l502_user_process.c **** } - 408:src/l502_user_process.c **** */ - 409:src/l502_user_process.c **** - 410:src/l502_user_process.c **** /* - 411:src/l502_user_process.c **** if (Proc_state.mode == AVG_DONE){ - 412:src/l502_user_process.c **** - 413:src/l502_user_process.c **** uint32_t send_size = Proc_state.AVG_buff_I; - 414:src/l502_user_process.c **** // uint32_t send_size = AVG_BUFF_SIZE; - 415:src/l502_user_process.c **** hdma_send_req_start(AVG_buff, send_size, 0); - 416:src/l502_user_process.c **** Proc_state.mode = AVG; - 417:src/l502_user_process.c **** return send_size; - 418:src/l502_user_process.c **** } - 419:src/l502_user_process.c **** //*/ - 420:src/l502_user_process.c **** if (Proc_state.mode == AVG){ - 421:src/l502_user_process.c **** send_size = Proc_state.AVG_buff_I; - 422:src/l502_user_process.c **** //send_size = TX_buff_I; - 423:src/l502_user_process.c **** //uint32_t send_size = AVG_BUFF_SIZE; - 424:src/l502_user_process.c **** hdma_send_req_start(AVG_buff, send_size, 0); - 425:src/l502_user_process.c **** return send_size; - 426:src/l502_user_process.c **** }else{ - 427:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_buff_I, 0); - 428:src/l502_user_process.c **** TX_buff_I_shadow = TX_buff_I; - 429:src/l502_user_process.c **** TX_buff_I = 0; - 430:src/l502_user_process.c **** return TX_buff_I_shadow; - 431:src/l502_user_process.c **** } - 432:src/l502_user_process.c **** //hdma_send_req_start(data, size, 0); - 433:src/l502_user_process.c **** //streams_cnt[0] = hdma_send_req_start(LFSM_data, LFSM_DATALEN, 0); - 434:src/l502_user_process.c **** //return size; - 435:src/l502_user_process.c **** } - 436:src/l502_user_process.c **** return 0; - 437:src/l502_user_process.c **** } - BFIN GAS /tmp/ccPntIEp.s page 9 + 381:src/l502_user_process.c **** }else{ + 382:src/l502_user_process.c **** if (Proc_state.AVG_buff_I < AVG_BUFF_SIZE){ + 383:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I] =(word & 0x00FFFFFF);// | 0xDE000000; + 384:src/l502_user_process.c **** //uint32_t tmp = AVG_buff[Proc_state.AVG_buff_I]; + 385:src/l502_user_process.c **** //tmp += val; + 386:src/l502_user_process.c **** //tmp &= 0x0FFFFFFF; + 387:src/l502_user_process.c **** //AVG_buff[Proc_state.AVG_buff_I] = tmp | (0x40000000 & 0xF0000000); //set header (first 4 bit + 388:src/l502_user_process.c **** + 389:src/l502_user_process.c **** Proc_state.AVG_buff_I++; + 390:src/l502_user_process.c **** } + 391:src/l502_user_process.c **** } + 392:src/l502_user_process.c **** } + 393:src/l502_user_process.c **** data_I++; + 394:src/l502_user_process.c **** //*/ + 395:src/l502_user_process.c **** + 396:src/l502_user_process.c **** // AVG_buff[Proc_state.AVG_buff_I] = 0xDDDDDDDD; + 397:src/l502_user_process.c **** + 398:src/l502_user_process.c **** + 399:src/l502_user_process.c **** + 400:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = data[data_I]; + 401:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xEEEEEEEE; + 402:src/l502_user_process.c **** // data_I++; + 403:src/l502_user_process.c **** // Proc_state.AVG_buff_I++; + 404:src/l502_user_process.c **** + 405:src/l502_user_process.c **** //} + 406:src/l502_user_process.c **** + 407:src/l502_user_process.c **** + 408:src/l502_user_process.c **** // if (Proc_state.AVG_buff_I == AVG_BUFF_SIZE){ + 409:src/l502_user_process.c **** /* if (Proc_state.AVG_buff_I >= 10){ + 410:src/l502_user_process.c **** Proc_state.AVG_buff_I = 10; + 411:src/l502_user_process.c **** Proc_state.mode == AVG_DONE; + 412:src/l502_user_process.c **** } + 413:src/l502_user_process.c **** */ + 414:src/l502_user_process.c **** // } + 415:src/l502_user_process.c **** /* + 416:src/l502_user_process.c **** if(Proc_state.mode == AVG_DONE){ //TODO: + 417:src/l502_user_process.c **** if (Proc_state.TX_buff_state == 0){ + 418:src/l502_user_process.c **** Proc_state.TX_buff_state = 1; //0 --ready, 1 -- filling, 2 -- ready to send + 419:src/l502_user_process.c **** // Proc_state.AVG_buff_state = 1; //0 -- ready, 1 -- blocked, + 420:src/l502_user_process.c **** uint32_t max_I = TX_BUFF_SIZE; + 421:src/l502_user_process.c **** if (max_I > AVG_BUFF_SIZE){ + 422:src/l502_user_process.c **** max_I = AVG_BUFF_SIZE; + 423:src/l502_user_process.c **** } + 424:src/l502_user_process.c **** for (uint32_t I = 0; I < max_I; ++I){ + 425:src/l502_user_process.c **** if (TX_buff_I < TX_BUFF_SIZE){ + 426:src/l502_user_process.c **** ++TX_buff_I; + 427:src/l502_user_process.c **** } + 428:src/l502_user_process.c **** TX_buff[TX_buff_I] = AVG_buff[I]; + 429:src/l502_user_process.c **** AVG_buff[I] = 0; + 430:src/l502_user_process.c **** } + 431:src/l502_user_process.c **** Proc_state.TX_buff_state = 2; //0 --ready, 1 -- filling, 2 -- ready to send + 432:src/l502_user_process.c **** } + 433:src/l502_user_process.c **** Proc_state.mode = Proc_state.mode_next; + 434:src/l502_user_process.c **** } + 435:src/l502_user_process.c **** //*/ + 436:src/l502_user_process.c **** + 437:src/l502_user_process.c **** + BFIN GAS /tmp/ccG6eBVz.s page 9 438:src/l502_user_process.c **** 439:src/l502_user_process.c **** 440:src/l502_user_process.c **** - 441:src/l502_user_process.c **** /***************************************************************************//** - 442:src/l502_user_process.c **** @brief Обработка принятого массива с данными ЦАП/DOUT + 441:src/l502_user_process.c **** /* + 442:src/l502_user_process.c **** uint32_t radar_word_I = 0; 443:src/l502_user_process.c **** - 444:src/l502_user_process.c **** Функция вызывается каждый раз, когда обнаружены нов - 445:src/l502_user_process.c **** ПК по HDMA. - 446:src/l502_user_process.c **** Функция должна обработать данные и вернуть количес - 447:src/l502_user_process.c **** однако эти данные все еще считаются использованным - 448:src/l502_user_process.c **** новыми пришедшими данными) до тех пор пока не будет - 449:src/l502_user_process.c **** stream_out_buf_free()). + 444:src/l502_user_process.c **** //uint32_t TX_buff_I = 0; + 445:src/l502_user_process.c **** uint32_t word_prev = 0; + 446:src/l502_user_process.c **** uint32_t digital_word_prev = 0; + 447:src/l502_user_process.c **** + 448:src/l502_user_process.c **** + 449:src/l502_user_process.c **** 450:src/l502_user_process.c **** - 451:src/l502_user_process.c **** Если функция вернет значение меньше чем size, то функц - 452:src/l502_user_process.c **** вызвана после еще раз с указателем на необработанны - 453:src/l502_user_process.c **** - 454:src/l502_user_process.c **** В текущей реализации просто запускается передача д - 455:src/l502_user_process.c **** для вывода на ЦАП/цифровые выходы. - 456:src/l502_user_process.c **** - 457:src/l502_user_process.c **** @param[in] data Указатель на массив с принятыми данными - 458:src/l502_user_process.c **** @param[in] size Количество принятых данных в 32-битных сло - 459:src/l502_user_process.c **** @return Функция возвращает количество обработанн - 460:src/l502_user_process.c **** На эти данные не будет вызываться повторн - 461:src/l502_user_process.c **** но они считаются еще используемыми - 462:src/l502_user_process.c **** ******************************************************************************/ - 463:src/l502_user_process.c **** uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { - 464:src/l502_user_process.c **** - 465:src/l502_user_process.c **** /* если есть свободные дескрипторы на передачу по HDMA - 466:src/l502_user_process.c **** передачу. Иначе возвращаем 0, чтобы на обработку эт - 467:src/l502_user_process.c **** вызвали бы позже */ - 468:src/l502_user_process.c **** ++streams_cnt[2]; - 469:src/l502_user_process.c **** - 470:src/l502_user_process.c **** if (sport_tx_req_rdy()) { + 451:src/l502_user_process.c **** for (int data_I = 0; (data_I < size) && (TX_buff_I < TX_BUFF_SIZE); ++data_I){ + 452:src/l502_user_process.c **** uint32_t word = data[data_I]; + 453:src/l502_user_process.c **** uint32_t val = word & 0x00FFFFFF; + 454:src/l502_user_process.c **** uint8_t header = (uint8_t)(word >> 24); + 455:src/l502_user_process.c **** //11010000 + 456:src/l502_user_process.c **** if (((header & 0b10000000) == 0b10000000)){ //it`s ADC word + 457:src/l502_user_process.c **** if (header == 0XD0){ //phy channel № 1 in common mode + 458:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = ((0b01100000 & LFSM_val_ON) << 24) & val; + 459:src/l502_user_process.c **** TX_buff[TX_buff_I++] = 0xD0ADEFEA; + 460:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = word; + 461:src/l502_user_process.c **** + 462:src/l502_user_process.c **** }else if (header == 0xD1){//phy channel № 2 in common mode + 463:src/l502_user_process.c **** TX_buff[TX_buff_I++] = word; + 464:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = ((0b01100000 & LFSM_val_OFF) << 24) & val; + 465:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xD0ADEFEB; + 466:src/l502_user_process.c **** }else{ + 467:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = word; + 468:src/l502_user_process.c **** TX_buff[TX_buff_I++] = word; + 469:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xD0AAAAAA; + 470:src/l502_user_process.c **** } 471:src/l502_user_process.c **** - 472:src/l502_user_process.c **** /* за один раз можем передать в SPORT не более - 473:src/l502_user_process.c **** SPORT_TX_REQ_SIZE_MAX слов */ - 474:src/l502_user_process.c **** if (size > SPORT_TX_REQ_SIZE_MAX) - 475:src/l502_user_process.c **** size = SPORT_TX_REQ_SIZE_MAX; - 476:src/l502_user_process.c **** - 477:src/l502_user_process.c **** sport_tx_start_req(data, size); + 472:src/l502_user_process.c **** + 473:src/l502_user_process.c **** } else if ( header == 0b00000000){ //it`s digital + 474:src/l502_user_process.c **** //if ((word & 0x2200) == 0x2200){ + 475:src/l502_user_process.c **** TX_buff[TX_buff_I++] = word; + 476:src/l502_user_process.c **** //TX_buff[TX_buff_I++] = 0xAD000000; + 477:src/l502_user_process.c **** 478:src/l502_user_process.c **** - 479:src/l502_user_process.c **** return size; - 480:src/l502_user_process.c **** } - 481:src/l502_user_process.c **** return 0; - 482:src/l502_user_process.c **** } - 483:src/l502_user_process.c **** - 484:src/l502_user_process.c **** - 485:src/l502_user_process.c **** + 479:src/l502_user_process.c **** + 480:src/l502_user_process.c **** //detect rise on DI_SYN2 -- start of chirp + 481:src/l502_user_process.c **** if (word & 0b1 << 17){ + 482:src/l502_user_process.c **** DY_SYN_2_value = 1; + 483:src/l502_user_process.c **** }else{ + 484:src/l502_user_process.c **** DY_SYN_2_value = 0; + 485:src/l502_user_process.c **** } 486:src/l502_user_process.c **** - 487:src/l502_user_process.c **** - 488:src/l502_user_process.c **** - 489:src/l502_user_process.c **** /****************************************************************************//** - 490:src/l502_user_process.c **** @brief Обработка завершения передачи по HostDMA + 487:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ + 488:src/l502_user_process.c **** TX_buff[TX_buff_I++] = 0xAD000000; + 489:src/l502_user_process.c **** } + 490:src/l502_user_process.c **** DY_SYN_2_value_prev = DY_SYN_2_value; 491:src/l502_user_process.c **** - 492:src/l502_user_process.c **** Функция вызывается из обработчика прерывания, когд - 493:src/l502_user_process.c **** блока данных по HDMA в ПК, поставленного до этого на пе - 494:src/l502_user_process.c **** помощью hdma_send_req_start(). - BFIN GAS /tmp/ccPntIEp.s page 10 + 492:src/l502_user_process.c **** digital_word_prev = word; + 493:src/l502_user_process.c **** } else{ + 494:src/l502_user_process.c **** // TX_buff[TX_buff_I++] = word; + BFIN GAS /tmp/ccG6eBVz.s page 10 - 495:src/l502_user_process.c **** - 496:src/l502_user_process.c **** @param[in] addr Адрес слова, сразу за последним переданны - 497:src/l502_user_process.c **** @param[in] size Размер переданных данных в 32-битных слова - 498:src/l502_user_process.c **** ****************************************************************************/ - 499:src/l502_user_process.c **** void hdma_send_done(uint32_t* addr, uint32_t size) { - 500:src/l502_user_process.c **** ++streams_cnt[3]; - 501:src/l502_user_process.c **** - 502:src/l502_user_process.c **** stream_in_buf_free(size); - 503:src/l502_user_process.c **** } - 504:src/l502_user_process.c **** - 505:src/l502_user_process.c **** + 495:src/l502_user_process.c **** } + 496:src/l502_user_process.c **** word_prev = word; + 497:src/l502_user_process.c **** + 498:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ + 499:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ + 500:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ + 501:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ + 502:src/l502_user_process.c **** // }else if ((header & 0b00000000) == ){ + 503:src/l502_user_process.c **** + 504:src/l502_user_process.c **** } + 505:src/l502_user_process.c **** */ 506:src/l502_user_process.c **** - 507:src/l502_user_process.c **** /***************************************************************************//** - 508:src/l502_user_process.c **** @brief Обработка завершения передачи по SPORT - 509:src/l502_user_process.c **** - 510:src/l502_user_process.c **** Функция вызывается из обработчика прерывания при з - 511:src/l502_user_process.c **** по SPORT'у на цифровые выходы/ЦАП, поставленного до это - 512:src/l502_user_process.c **** помощью sport_tx_start_req(). - 513:src/l502_user_process.c **** - 514:src/l502_user_process.c **** - 515:src/l502_user_process.c **** @param[in] addr Адрес слова, сразу за последним переданны - 516:src/l502_user_process.c **** @param[in] size Размер переданных данных в 32-битных слова - 517:src/l502_user_process.c **** void sport_tx_done(uint32_t* addr, uint32_t size) { - 518:src/l502_user_process.c **** ++streams_cnt[1]; - 519:src/l502_user_process.c **** - 520:src/l502_user_process.c **** stream_out_buf_free(size); - 521:src/l502_user_process.c **** } - 522:src/l502_user_process.c **** - 523:src/l502_user_process.c **** + 507:src/l502_user_process.c **** //stream_in_buf_free(size); + 508:src/l502_user_process.c **** + 509:src/l502_user_process.c **** /* + 510:src/l502_user_process.c **** + 511:src/l502_user_process.c **** //int i = 0; + 512:src/l502_user_process.c **** //uint8_t + 513:src/l502_user_process.c **** //while + 514:src/l502_user_process.c **** + 515:src/l502_user_process.c **** for (int i = 0; i < LFSM_DATALEN; ++i){ + 516:src/l502_user_process.c **** uint32_t msg; + 517:src/l502_user_process.c **** if (i % 2){ + 518:src/l502_user_process.c **** msg = (LFSM_val_ON << 24) + data[i]; + 519:src/l502_user_process.c **** }else{ + 520:src/l502_user_process.c **** msg = (LFSM_val_OFF << 24) + data[i]; + 521:src/l502_user_process.c **** } + 522:src/l502_user_process.c **** LFSM_data[i] = msg; + 523:src/l502_user_process.c **** } 524:src/l502_user_process.c **** - 525:src/l502_user_process.c **** - 526:src/l502_user_process.c **** + 525:src/l502_user_process.c **** */ + 526:src/l502_user_process.c **** if (hdma_send_req_rdy()) { 527:src/l502_user_process.c **** - 528:src/l502_user_process.c **** - 529:src/l502_user_process.c **** - 530:src/l502_user_process.c **** - 531:src/l502_user_process.c **** /****************************************************************************//** - 532:src/l502_user_process.c **** @brief Обработка пользовательских команд. + 528:src/l502_user_process.c **** //streams_cnt[0] + 529:src/l502_user_process.c **** /* + 530:src/l502_user_process.c **** if (Proc_state.TX_buff_state == 2){ + 531:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_BUFF_SIZE, 0); + 532:src/l502_user_process.c **** }else if(0){ 533:src/l502_user_process.c **** - 534:src/l502_user_process.c **** Функция вызывается при приеме команды от ПК с кодом - 535:src/l502_user_process.c **** #L502_BF_CMD_CODE_USER. - 536:src/l502_user_process.c **** - 537:src/l502_user_process.c **** По завершению обработки необходимо обязательно выз - 538:src/l502_user_process.c **** l502_cmd_done(), указав код завершения команды и - 539:src/l502_user_process.c **** при необходимости передать данные с результатом + 534:src/l502_user_process.c **** }else{ + 535:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_buff_I, 0); + 536:src/l502_user_process.c **** TX_buff_I = 0; + 537:src/l502_user_process.c **** //hdma_send_req_start(data, size, 0); + 538:src/l502_user_process.c **** } + 539:src/l502_user_process.c **** */ 540:src/l502_user_process.c **** - 541:src/l502_user_process.c **** @param[in] cmd Структура с описанием принятой команды - 542:src/l502_user_process.c **** ******************************************************************************/ + 541:src/l502_user_process.c **** /* + 542:src/l502_user_process.c **** if (Proc_state.mode == AVG_DONE){ 543:src/l502_user_process.c **** - 544:src/l502_user_process.c **** - 545:src/l502_user_process.c **** void usr_cmd_process(t_l502_bf_cmd *cmd) { - 16 .loc 1 545 0 - 17 .LVL0: - 18 0000 0032 P0 = R0; - 19 0002 FC05 [--sp] = ( r7:7, p5:4 ); - 20 - 21 .LCFI0: - BFIN GAS /tmp/ccPntIEp.s page 11 + 544:src/l502_user_process.c **** uint32_t send_size = Proc_state.AVG_buff_I; + 545:src/l502_user_process.c **** // uint32_t send_size = AVG_BUFF_SIZE; + 546:src/l502_user_process.c **** hdma_send_req_start(AVG_buff, send_size, 0); + 547:src/l502_user_process.c **** Proc_state.mode = AVG; + 548:src/l502_user_process.c **** return send_size; + 549:src/l502_user_process.c **** } + 550:src/l502_user_process.c **** //*/ + 551:src/l502_user_process.c **** /* + BFIN GAS /tmp/ccG6eBVz.s page 11 - 22 0004 00E81A00 LINK 104; - 23 .LCFI1: - 546:src/l502_user_process.c **** switch (cmd->code){ - 24 .loc 1 546 0 - 25 0008 21E1FF7F R1 = 32767 (X); - 547:src/l502_user_process.c **** - 548:src/l502_user_process.c **** - 549:src/l502_user_process.c **** /* - 550:src/l502_user_process.c **** Command template - 551:src/l502_user_process.c **** case 0x800?:{ - 552:src/l502_user_process.c **** - 553:src/l502_user_process.c **** l502_cmd_done(rcv_code, rcv_data, rcv_data_length); //void l502_cmd_done (int32_t result, uint32_ - 554:src/l502_user_process.c **** break; - 555:src/l502_user_process.c **** } - 556:src/l502_user_process.c **** */ - 557:src/l502_user_process.c **** // typedef struct { - 558:src/l502_user_process.c **** // uint16_t code; /**< Код команды из #t_l502_bf_cmd_code */ - 559:src/l502_user_process.c **** // uint16_t status; /**< Статус выполнения - в обработчике не и - 560:src/l502_user_process.c **** // uint32_t param; /**< Параметр команды */ - 561:src/l502_user_process.c **** // int32_t result; /**< Код результата выполнения команды */ - 562:src/l502_user_process.c **** // uint32_t data_size; /**< Количество данных, переданных с кома - 563:src/l502_user_process.c **** // uint32_t data[L502_BF_CMD_DATA_SIZE_MAX]; /**< Данные, передаваемые с к - 564:src/l502_user_process.c **** // } t_l502_bf_cmd; - 565:src/l502_user_process.c **** - 566:src/l502_user_process.c **** - 567:src/l502_user_process.c **** - 568:src/l502_user_process.c **** - 569:src/l502_user_process.c **** case 0x8001:{ //L502_BF_USR_CMD_CODE_ECHO - 570:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); - 571:src/l502_user_process.c **** break; - 572:src/l502_user_process.c **** } + 552:src/l502_user_process.c **** if (Proc_state.mode == AVG){ + 553:src/l502_user_process.c **** send_size = Proc_state.AVG_buff_I; + 554:src/l502_user_process.c **** //send_size = TX_buff_I; + 555:src/l502_user_process.c **** //send_size = AVG_BUFF_SIZE - 500; + 556:src/l502_user_process.c **** dbg_receive_value = send_size; + 557:src/l502_user_process.c **** if (Proc_state.AVG_buff_active == A){ + 558:src/l502_user_process.c **** hdma_send_req_start(AVG_buff_A, send_size, 0); + 559:src/l502_user_process.c **** Proc_state.AVG_buff_active == B; + 560:src/l502_user_process.c **** }else{ + 561:src/l502_user_process.c **** hdma_send_req_start(AVG_buff_B, send_size, 0); + 562:src/l502_user_process.c **** Proc_state.AVG_buff_active = A; + 563:src/l502_user_process.c **** } + 564:src/l502_user_process.c **** return send_size; + 565:src/l502_user_process.c **** }else{ + 566:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_buff_I, 0); + 567:src/l502_user_process.c **** TX_buff_I_shadow = TX_buff_I; + 568:src/l502_user_process.c **** dbg_receive_value = TX_buff_I; + 569:src/l502_user_process.c **** TX_buff_I = 0; + 570:src/l502_user_process.c **** return TX_buff_I_shadow; + 571:src/l502_user_process.c **** } + 572:src/l502_user_process.c **** */ 573:src/l502_user_process.c **** - 574:src/l502_user_process.c **** case 0x8002:{ //L502_BF_USR_CMD_CODE_DATA_ECHO - 575:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; - 576:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ - 577:src/l502_user_process.c **** //rcv_data[I] = (cmd-> data)[I]; - 578:src/l502_user_process.c **** rcv_data[I] = I; - 579:src/l502_user_process.c **** } - 580:src/l502_user_process.c **** l502_cmd_done(cmd-> param, rcv_data, cmd->data_size); - 581:src/l502_user_process.c **** break; - 582:src/l502_user_process.c **** } - 583:src/l502_user_process.c **** case 0x8003:{ //configure ADC - 584:src/l502_user_process.c **** uint32_t err_codes[15] = {0,}; - 585:src/l502_user_process.c **** err_codes[0] = params_set_lch_cnt(1); - 586:src/l502_user_process.c **** //err_codes[1] = params_set_lch(1, 1, L502_LCH_MODE_COMM, L502_ADC_RANGE_5, 1, 0);// chan index - 587:src/l502_user_process.c **** err_codes[1] = params_set_lch(0, 0, L502_LCH_MODE_COMM, L502_ADC_RANGE_5, 1, 0);// chan index 1, - 588:src/l502_user_process.c **** err_codes[2] = params_set_adc_freq_div(1); - 589:src/l502_user_process.c **** err_codes[3] = params_set_ref_freq(2000000); - 590:src/l502_user_process.c **** err_codes[4] = params_set_adc_interframe_delay(0); - 591:src/l502_user_process.c **** err_codes[5] = params_set_sync_mode (L502_SYNC_INTERNAL); - 592:src/l502_user_process.c **** err_codes[6] = params_set_sync_start_mode (L502_SYNC_INTERNAL); - 593:src/l502_user_process.c **** //err_codes[7] = params_set_din_freq_div; - 594:src/l502_user_process.c **** //err_codes[8] = params_set_dac_freq_div; + 574:src/l502_user_process.c **** if (TX_buff_state == TODO_TX){ + 575:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 576:src/l502_user_process.c **** TX_buff_shadow[i] = TX_buff[i]; + 577:src/l502_user_process.c **** } + 578:src/l502_user_process.c **** hdma_send_req_start(TX_buff_shadow, TX_buff_I, 0); + 579:src/l502_user_process.c **** hdma_send_req_start(TX_marker, 10, 0); + 580:src/l502_user_process.c **** + 581:src/l502_user_process.c **** + 582:src/l502_user_process.c **** // hdma_send_req_start(TX_buff, TX_BUFF_SIZE, 0); + 583:src/l502_user_process.c **** //TX_buff_state = TRANSMITTING; + 584:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 585:src/l502_user_process.c **** //}else{ + 586:src/l502_user_process.c **** // hdma_send_req_start(data, size, 0); + 587:src/l502_user_process.c **** } + 588:src/l502_user_process.c **** + 589:src/l502_user_process.c **** //hdma_send_req_start(data, size, 0); + 590:src/l502_user_process.c **** //streams_cnt[0] = hdma_send_req_start(LFSM_data, LFSM_DATALEN, 0); + 591:src/l502_user_process.c **** return size; + 592:src/l502_user_process.c **** //return data_I; //number of really processed words + 593:src/l502_user_process.c **** } + 594:src/l502_user_process.c **** //return data_I; //number of really processed words 595:src/l502_user_process.c **** - 596:src/l502_user_process.c **** err_codes[9] = sport_in_set_step_size(1024); - 597:src/l502_user_process.c **** - 598:src/l502_user_process.c **** //L502_BF_PARAM_ADC_COEF - BFIN GAS /tmp/ccPntIEp.s page 12 - - - 599:src/l502_user_process.c **** //err_codes[10] = fpga_reg_write(f_regaddr_k[range], ??); - 600:src/l502_user_process.c **** //err_codes[11] = fpga_reg_write(f_regaddr_offs[range], ??); - 601:src/l502_user_process.c **** err_codes[12] = configure(); - 602:src/l502_user_process.c **** + 596:src/l502_user_process.c **** return 0; + 597:src/l502_user_process.c **** } + 598:src/l502_user_process.c **** + 599:src/l502_user_process.c **** + 600:src/l502_user_process.c **** + 601:src/l502_user_process.c **** /***************************************************************************//** + 602:src/l502_user_process.c **** @brief Обработка принятого массива с данными ЦАП/DOUT 603:src/l502_user_process.c **** - 604:src/l502_user_process.c **** - 605:src/l502_user_process.c **** - 606:src/l502_user_process.c **** uint32_t err_codes_sum = 0; - 607:src/l502_user_process.c **** for (int i = 0; i < 15; ++i){ - 608:src/l502_user_process.c **** err_codes_sum += err_codes[i]; - 609:src/l502_user_process.c **** } - 610:src/l502_user_process.c **** l502_cmd_done(err_codes_sum, err_codes, 15); - 611:src/l502_user_process.c **** break; - 612:src/l502_user_process.c **** } - 613:src/l502_user_process.c **** case 0x8004:{ //start streams - 614:src/l502_user_process.c **** uint32_t err_codes[5] = {0,}; - 615:src/l502_user_process.c **** l502_stream_init(); - 616:src/l502_user_process.c **** err_codes[0] = stream_enable(L502_STREAM_ADC | L502_STREAM_DIN); //bitmask - 617:src/l502_user_process.c **** err_codes[1] = stream_out_preload(); - 618:src/l502_user_process.c **** err_codes[2] = streams_start(); - 619:src/l502_user_process.c **** //hdma_send_start(); - 620:src/l502_user_process.c **** l502_cmd_done(0, err_codes, 5); - 621:src/l502_user_process.c **** break; - 622:src/l502_user_process.c **** } - 623:src/l502_user_process.c **** case 0x8005:{ //get some data from adc buff. Or simple flag, raised inside usr_in_proc_data() + 604:src/l502_user_process.c **** Функция вызывается каждый раз, когда обнаружены нов + 605:src/l502_user_process.c **** ПК по HDMA. + 606:src/l502_user_process.c **** Функция должна обработать данные и вернуть количес + 607:src/l502_user_process.c **** однако эти данные все еще считаются использованным + 608:src/l502_user_process.c **** новыми пришедшими данными) до тех пор пока не будет + BFIN GAS /tmp/ccG6eBVz.s page 12 + + + 609:src/l502_user_process.c **** stream_out_buf_free()). + 610:src/l502_user_process.c **** + 611:src/l502_user_process.c **** Если функция вернет значение меньше чем size, то функц + 612:src/l502_user_process.c **** вызвана после еще раз с указателем на необработанны + 613:src/l502_user_process.c **** + 614:src/l502_user_process.c **** В текущей реализации просто запускается передача д + 615:src/l502_user_process.c **** для вывода на ЦАП/цифровые выходы. + 616:src/l502_user_process.c **** + 617:src/l502_user_process.c **** @param[in] data Указатель на массив с принятыми данными + 618:src/l502_user_process.c **** @param[in] size Количество принятых данных в 32-битных сло + 619:src/l502_user_process.c **** @return Функция возвращает количество обработанн + 620:src/l502_user_process.c **** На эти данные не будет вызываться повторн + 621:src/l502_user_process.c **** но они считаются еще используемыми + 622:src/l502_user_process.c **** ******************************************************************************/ + 623:src/l502_user_process.c **** uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { 624:src/l502_user_process.c **** - 625:src/l502_user_process.c **** uint32_t streams_sum = streams_cnt[0] + streams_cnt[1] + streams_cnt[2] + streams_cnt[3]; - 626:src/l502_user_process.c **** l502_cmd_done(streams_sum, streams_cnt, 4); - 627:src/l502_user_process.c **** break; - 628:src/l502_user_process.c **** } + 625:src/l502_user_process.c **** /* если есть свободные дескрипторы на передачу по HDMA + 626:src/l502_user_process.c **** передачу. Иначе возвращаем 0, чтобы на обработку эт + 627:src/l502_user_process.c **** вызвали бы позже */ + 628:src/l502_user_process.c **** ++streams_cnt[2]; 629:src/l502_user_process.c **** - 630:src/l502_user_process.c **** case 0x8006:{ //get data from SPORT_RX copied arr - 631:src/l502_user_process.c **** uint32_t sport_rx_nonzero_sum = 0; - 632:src/l502_user_process.c **** - 633:src/l502_user_process.c **** for (int i = 0; i < dbg_sport_rx_copy_size; ++i){ - 634:src/l502_user_process.c **** if (dbg_sport_rx_copy[i]){ - 635:src/l502_user_process.c **** ++sport_rx_nonzero_sum; - 636:src/l502_user_process.c **** } - 637:src/l502_user_process.c **** } - 638:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); - 639:src/l502_user_process.c **** break; - 640:src/l502_user_process.c **** } - 641:src/l502_user_process.c **** - 642:src/l502_user_process.c **** + 630:src/l502_user_process.c **** if (sport_tx_req_rdy()) { + 631:src/l502_user_process.c **** + 632:src/l502_user_process.c **** /* за один раз можем передать в SPORT не более + 633:src/l502_user_process.c **** SPORT_TX_REQ_SIZE_MAX слов */ + 634:src/l502_user_process.c **** if (size > SPORT_TX_REQ_SIZE_MAX) + 635:src/l502_user_process.c **** size = SPORT_TX_REQ_SIZE_MAX; + 636:src/l502_user_process.c **** + 637:src/l502_user_process.c **** sport_tx_start_req(data, size); + 638:src/l502_user_process.c **** + 639:src/l502_user_process.c **** return size; + 640:src/l502_user_process.c **** } + 641:src/l502_user_process.c **** return 0; + 642:src/l502_user_process.c **** } 643:src/l502_user_process.c **** - 644:src/l502_user_process.c **** case 0x8007:{ //start data processing: No dataprocessing. Just copy data to output buffer - 645:src/l502_user_process.c **** TX_buff_I = 0; + 644:src/l502_user_process.c **** + 645:src/l502_user_process.c **** 646:src/l502_user_process.c **** - 647:src/l502_user_process.c **** Proc_state.mode = TRANSPARENT; - 648:src/l502_user_process.c **** Proc_state.mode_next = TRANSPARENT; - 649:src/l502_user_process.c **** Proc_state.LFSM_state = 0; - 650:src/l502_user_process.c **** Proc_state.average_N_max = 10; - 651:src/l502_user_process.c **** // Proc_state.average_N_max = cmd->param; - 652:src/l502_user_process.c **** Proc_state.average_N = 1; - 653:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; - 654:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; - 655:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - BFIN GAS /tmp/ccPntIEp.s page 13 + 647:src/l502_user_process.c **** + 648:src/l502_user_process.c **** + 649:src/l502_user_process.c **** /****************************************************************************//** + 650:src/l502_user_process.c **** @brief Обработка завершения передачи по HostDMA + 651:src/l502_user_process.c **** + 652:src/l502_user_process.c **** Функция вызывается из обработчика прерывания, когд + 653:src/l502_user_process.c **** блока данных по HDMA в ПК, поставленного до этого на пе + 654:src/l502_user_process.c **** помощью hdma_send_req_start(). + 655:src/l502_user_process.c **** + 656:src/l502_user_process.c **** @param[in] addr Адрес слова, сразу за последним переданны + 657:src/l502_user_process.c **** @param[in] size Размер переданных данных в 32-битных слова + 658:src/l502_user_process.c **** ****************************************************************************/ + 659:src/l502_user_process.c **** void hdma_send_done(uint32_t* addr, uint32_t size) { + 660:src/l502_user_process.c **** + 661:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 662:src/l502_user_process.c **** ++streams_cnt[3]; + 663:src/l502_user_process.c **** + 664:src/l502_user_process.c **** stream_in_buf_free(size); + 665:src/l502_user_process.c **** } + BFIN GAS /tmp/ccG6eBVz.s page 13 - 656:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; - 657:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; - 658:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; - 659:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; - 660:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; - 661:src/l502_user_process.c **** - 662:src/l502_user_process.c **** - 663:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ - 664:src/l502_user_process.c **** TX_buff[i] = 0; - 665:src/l502_user_process.c **** } 666:src/l502_user_process.c **** - 667:src/l502_user_process.c **** // l502_cmd_done(cmd-> param, NULL, 0); - 668:src/l502_user_process.c **** l502_cmd_done(TX_buff_I, NULL, 0); - 669:src/l502_user_process.c **** break; - 670:src/l502_user_process.c **** } - 671:src/l502_user_process.c **** case 0x8008:{ //get data from SPORT_RX copied arr - 672:src/l502_user_process.c **** TX_buff_I = 0; - 673:src/l502_user_process.c **** - 674:src/l502_user_process.c **** Proc_state.mode = AVG; - 675:src/l502_user_process.c **** Proc_state.mode_next = AVG; - 676:src/l502_user_process.c **** Proc_state.LFSM_state = 0; - 677:src/l502_user_process.c **** Proc_state.average_N_max = 10; - 678:src/l502_user_process.c **** // Proc_state.average_N_max = cmd->param; - 679:src/l502_user_process.c **** Proc_state.average_N = 1; - 680:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; - 681:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; - 682:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - 683:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; - 684:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; - 685:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; - 686:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; - 687:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; + 667:src/l502_user_process.c **** + 668:src/l502_user_process.c **** + 669:src/l502_user_process.c **** /***************************************************************************//** + 670:src/l502_user_process.c **** @brief Обработка завершения передачи по SPORT + 671:src/l502_user_process.c **** + 672:src/l502_user_process.c **** Функция вызывается из обработчика прерывания при з + 673:src/l502_user_process.c **** по SPORT'у на цифровые выходы/ЦАП, поставленного до это + 674:src/l502_user_process.c **** помощью sport_tx_start_req(). + 675:src/l502_user_process.c **** + 676:src/l502_user_process.c **** + 677:src/l502_user_process.c **** @param[in] addr Адрес слова, сразу за последним переданны + 678:src/l502_user_process.c **** @param[in] size Размер переданных данных в 32-битных слова + 679:src/l502_user_process.c **** void sport_tx_done(uint32_t* addr, uint32_t size) { + 680:src/l502_user_process.c **** ++streams_cnt[1]; + 681:src/l502_user_process.c **** + 682:src/l502_user_process.c **** stream_out_buf_free(size); + 683:src/l502_user_process.c **** } + 684:src/l502_user_process.c **** + 685:src/l502_user_process.c **** + 686:src/l502_user_process.c **** + 687:src/l502_user_process.c **** 688:src/l502_user_process.c **** 689:src/l502_user_process.c **** - 690:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ - 691:src/l502_user_process.c **** TX_buff[i] = 0; - 692:src/l502_user_process.c **** } - 693:src/l502_user_process.c **** - 694:src/l502_user_process.c **** // l502_cmd_done(cmd-> param, NULL, 0); - 695:src/l502_user_process.c **** l502_cmd_done(TX_buff_I, NULL, 0); - 696:src/l502_user_process.c **** - 697:src/l502_user_process.c **** break; - 698:src/l502_user_process.c **** } - 699:src/l502_user_process.c **** case 0x8009:{ //request TX_buff_I_shadow value (last size of TX_buff transferred to pc ) - 700:src/l502_user_process.c **** l502_cmd_done(TX_buff_I_shadow, NULL, 0); - 701:src/l502_user_process.c **** break; - 702:src/l502_user_process.c **** } - 703:src/l502_user_process.c **** case 0x800A:{ //get data from SPORT_RX copied arr - 704:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); - 705:src/l502_user_process.c **** break; - 706:src/l502_user_process.c **** } - 707:src/l502_user_process.c **** - 708:src/l502_user_process.c **** + 690:src/l502_user_process.c **** + 691:src/l502_user_process.c **** + 692:src/l502_user_process.c **** + 693:src/l502_user_process.c **** /****************************************************************************//** + 694:src/l502_user_process.c **** @brief Обработка пользовательских команд. + 695:src/l502_user_process.c **** + 696:src/l502_user_process.c **** Функция вызывается при приеме команды от ПК с кодом + 697:src/l502_user_process.c **** #L502_BF_CMD_CODE_USER. + 698:src/l502_user_process.c **** + 699:src/l502_user_process.c **** По завершению обработки необходимо обязательно выз + 700:src/l502_user_process.c **** l502_cmd_done(), указав код завершения команды и + 701:src/l502_user_process.c **** при необходимости передать данные с результатом + 702:src/l502_user_process.c **** + 703:src/l502_user_process.c **** @param[in] cmd Структура с описанием принятой команды + 704:src/l502_user_process.c **** ******************************************************************************/ + 705:src/l502_user_process.c **** + 706:src/l502_user_process.c **** + 707:src/l502_user_process.c **** void usr_cmd_process(t_l502_bf_cmd *cmd) { + 16 .loc 1 707 0 + 17 .LVL0: + 18 0000 0032 P0 = R0; + 19 0002 F405 [--sp] = ( r7:6, p5:4 ); + 20 + 21 .LCFI0: + 22 0004 00E81A00 LINK 104; + 23 .LCFI1: + 708:src/l502_user_process.c **** switch (cmd->code){ + 24 .loc 1 708 0 + 25 0008 21E1FF7F R1 = 32767 (X); 709:src/l502_user_process.c **** 710:src/l502_user_process.c **** - 711:src/l502_user_process.c **** - 712:src/l502_user_process.c **** case 0x8010:{ //L502_BF_USR_CMD_CODE_ECHO - BFIN GAS /tmp/ccPntIEp.s page 14 + 711:src/l502_user_process.c **** /* + 712:src/l502_user_process.c **** Command template + BFIN GAS /tmp/ccG6eBVz.s page 14 - 713:src/l502_user_process.c **** //uint32_t test_res = f_sport_test(); - 714:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); - 715:src/l502_user_process.c **** break; - 716:src/l502_user_process.c **** } - 717:src/l502_user_process.c **** - 718:src/l502_user_process.c **** - 719:src/l502_user_process.c **** - 720:src/l502_user_process.c **** /* - 721:src/l502_user_process.c **** case 0x8002:{ - 722:src/l502_user_process.c **** cmd-> result = cmd->param * 2; - 723:src/l502_user_process.c **** uint32_t data[] = {0,1,2,3,4,5,6,5,4,3,2,1,0}; - 724:src/l502_user_process.c **** l502_cmd_done(cmd-> param*3, data, 13); - 725:src/l502_user_process.c **** break;} - 726:src/l502_user_process.c **** case 0x8001:{ - 727:src/l502_user_process.c **** //cmd-> result = cmd->param * 2; - 728:src/l502_user_process.c **** uint32_t data[] = {6,5,4,3,2,1,0,1,2,3,4,5,6}; - 729:src/l502_user_process.c **** l502_cmd_done(cmd-> param*75, data, 13); - 730:src/l502_user_process.c **** break;} - 731:src/l502_user_process.c **** */ - 732:src/l502_user_process.c **** - 733:src/l502_user_process.c **** default: { - 734:src/l502_user_process.c **** l502_cmd_done(1, NULL, 0); - 735:src/l502_user_process.c **** } - 736:src/l502_user_process.c **** } - 737:src/l502_user_process.c **** //l502_cmd_done(1, 1, 1); - 738:src/l502_user_process.c **** //l502_cmd_done(L502_BF_ERR_UNSUP_CMD, NULL, 0); - 739:src/l502_user_process.c **** } - 26 .loc 1 739 0 - 27 000c 7E30 R7 = SP; - 546:src/l502_user_process.c **** switch (cmd->code){ - 28 .loc 1 546 0 + 713:src/l502_user_process.c **** case 0x800?:{ + 714:src/l502_user_process.c **** + 715:src/l502_user_process.c **** l502_cmd_done(rcv_code, rcv_data, rcv_data_length); //void l502_cmd_done (int32_t result, uint32_ + 716:src/l502_user_process.c **** break; + 717:src/l502_user_process.c **** } + 718:src/l502_user_process.c **** */ + 719:src/l502_user_process.c **** // typedef struct { + 720:src/l502_user_process.c **** // uint16_t code; /**< Код команды из #t_l502_bf_cmd_code */ + 721:src/l502_user_process.c **** // uint16_t status; /**< Статус выполнения - в обработчике не и + 722:src/l502_user_process.c **** // uint32_t param; /**< Параметр команды */ + 723:src/l502_user_process.c **** // int32_t result; /**< Код результата выполнения команды */ + 724:src/l502_user_process.c **** // uint32_t data_size; /**< Количество данных, переданных с кома + 725:src/l502_user_process.c **** // uint32_t data[L502_BF_CMD_DATA_SIZE_MAX]; /**< Данные, передаваемые с к + 726:src/l502_user_process.c **** // } t_l502_bf_cmd; + 727:src/l502_user_process.c **** + 728:src/l502_user_process.c **** + 729:src/l502_user_process.c **** + 730:src/l502_user_process.c **** + 731:src/l502_user_process.c **** case 0x8001:{ //L502_BF_USR_CMD_CODE_ECHO + 732:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 733:src/l502_user_process.c **** break; + 734:src/l502_user_process.c **** } + 735:src/l502_user_process.c **** + 736:src/l502_user_process.c **** case 0x8002:{ //L502_BF_USR_CMD_CODE_DATA_ECHO + 737:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; + 738:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ + 739:src/l502_user_process.c **** //rcv_data[I] = (cmd-> data)[I]; + 740:src/l502_user_process.c **** rcv_data[I] = I; + 741:src/l502_user_process.c **** } + 742:src/l502_user_process.c **** l502_cmd_done(cmd-> param, rcv_data, cmd->data_size); + 743:src/l502_user_process.c **** break; + 744:src/l502_user_process.c **** } + 745:src/l502_user_process.c **** case 0x8003:{ //configure ADC + 746:src/l502_user_process.c **** uint32_t err_codes[15] = {0,}; + 747:src/l502_user_process.c **** err_codes[0] = params_set_lch_cnt(1); + 748:src/l502_user_process.c **** //err_codes[1] = params_set_lch(1, 1, L502_LCH_MODE_COMM, L502_ADC_RANGE_5, 1, 0);// chan index + 749:src/l502_user_process.c **** err_codes[1] = params_set_lch(0, 0, L502_LCH_MODE_COMM, L502_ADC_RANGE_5, 1, 0);// chan index 1, + 750:src/l502_user_process.c **** err_codes[2] = params_set_adc_freq_div(1); + 751:src/l502_user_process.c **** err_codes[3] = params_set_ref_freq(2000000); + 752:src/l502_user_process.c **** err_codes[4] = params_set_adc_interframe_delay(0); + 753:src/l502_user_process.c **** err_codes[5] = params_set_sync_mode (L502_SYNC_INTERNAL); + 754:src/l502_user_process.c **** err_codes[6] = params_set_sync_start_mode (L502_SYNC_INTERNAL); + 755:src/l502_user_process.c **** //err_codes[7] = params_set_din_freq_div; + 756:src/l502_user_process.c **** //err_codes[8] = params_set_dac_freq_div; + 757:src/l502_user_process.c **** + 758:src/l502_user_process.c **** err_codes[9] = sport_in_set_step_size(1024); + 759:src/l502_user_process.c **** + 760:src/l502_user_process.c **** //L502_BF_PARAM_ADC_COEF + 761:src/l502_user_process.c **** //err_codes[10] = fpga_reg_write(f_regaddr_k[range], ??); + 762:src/l502_user_process.c **** //err_codes[11] = fpga_reg_write(f_regaddr_offs[range], ??); + 763:src/l502_user_process.c **** err_codes[12] = configure(); + 764:src/l502_user_process.c **** + 765:src/l502_user_process.c **** + 766:src/l502_user_process.c **** + 767:src/l502_user_process.c **** + 768:src/l502_user_process.c **** uint32_t err_codes_sum = 0; + 769:src/l502_user_process.c **** for (int i = 0; i < 15; ++i){ + BFIN GAS /tmp/ccG6eBVz.s page 15 + + + 770:src/l502_user_process.c **** err_codes_sum += err_codes[i]; + 771:src/l502_user_process.c **** } + 772:src/l502_user_process.c **** l502_cmd_done(err_codes_sum, err_codes, 15); + 773:src/l502_user_process.c **** break; + 774:src/l502_user_process.c **** } + 775:src/l502_user_process.c **** case 0x8004:{ //start streams + 776:src/l502_user_process.c **** uint32_t err_codes[5] = {0,}; + 777:src/l502_user_process.c **** l502_stream_init(); + 778:src/l502_user_process.c **** err_codes[0] = stream_enable(L502_STREAM_ADC | L502_STREAM_DIN); //bitmask + 779:src/l502_user_process.c **** err_codes[1] = stream_out_preload(); + 780:src/l502_user_process.c **** err_codes[2] = streams_start(); + 781:src/l502_user_process.c **** //hdma_send_start(); + 782:src/l502_user_process.c **** l502_cmd_done(0, err_codes, 5); + 783:src/l502_user_process.c **** break; + 784:src/l502_user_process.c **** } + 785:src/l502_user_process.c **** case 0x8005:{ //get some data from adc buff. Or simple flag, raised inside usr_in_proc_data() + 786:src/l502_user_process.c **** + 787:src/l502_user_process.c **** uint32_t streams_sum = streams_cnt[0] + streams_cnt[1] + streams_cnt[2] + streams_cnt[3]; + 788:src/l502_user_process.c **** l502_cmd_done(streams_sum, streams_cnt, 4); + 789:src/l502_user_process.c **** break; + 790:src/l502_user_process.c **** } + 791:src/l502_user_process.c **** + 792:src/l502_user_process.c **** case 0x8006:{ //get data from SPORT_RX copied arr + 793:src/l502_user_process.c **** uint32_t sport_rx_nonzero_sum = 0; + 794:src/l502_user_process.c **** + 795:src/l502_user_process.c **** for (int i = 0; i < dbg_sport_rx_copy_size; ++i){ + 796:src/l502_user_process.c **** if (dbg_sport_rx_copy[i]){ + 797:src/l502_user_process.c **** ++sport_rx_nonzero_sum; + 798:src/l502_user_process.c **** } + 799:src/l502_user_process.c **** } + 800:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); + 801:src/l502_user_process.c **** break; + 802:src/l502_user_process.c **** } + 803:src/l502_user_process.c **** + 804:src/l502_user_process.c **** + 805:src/l502_user_process.c **** + 806:src/l502_user_process.c **** case 0x8007:{ //start data processing: No dataprocessing. Just copy data to output buffer + 807:src/l502_user_process.c **** TX_buff_I = 0; + 808:src/l502_user_process.c **** + 809:src/l502_user_process.c **** Proc_state.mode = TRANSPARENT; + 810:src/l502_user_process.c **** Proc_state.mode_next = TRANSPARENT; + 811:src/l502_user_process.c **** Proc_state.LFSM_state = CYCLE_UNKNOWN; + 812:src/l502_user_process.c **** Proc_state.average_N_max = 10; + 813:src/l502_user_process.c **** // Proc_state.average_N_max = cmd->param; + 814:src/l502_user_process.c **** Proc_state.average_N = 1; + 815:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; + 816:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; + 817:src/l502_user_process.c **** Proc_state.AVG_state = 0; + 818:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 819:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; + 820:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; + 821:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; + 822:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; + 823:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; + 824:src/l502_user_process.c **** Proc_state.AVG_buff_active = A; + 825:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 826:src/l502_user_process.c **** + BFIN GAS /tmp/ccG6eBVz.s page 16 + + + 827:src/l502_user_process.c **** + 828:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 829:src/l502_user_process.c **** TX_buff[i] = 0; + 830:src/l502_user_process.c **** } + 831:src/l502_user_process.c **** + 832:src/l502_user_process.c **** // l502_cmd_done(cmd-> param, NULL, 0); + 833:src/l502_user_process.c **** l502_cmd_done(TX_buff_I, NULL, 0); + 834:src/l502_user_process.c **** break; + 835:src/l502_user_process.c **** } + 836:src/l502_user_process.c **** case 0x8008:{ //AVG mode + 837:src/l502_user_process.c **** TX_buff_I = 0; + 838:src/l502_user_process.c **** + 839:src/l502_user_process.c **** Proc_state.mode = AVG; + 840:src/l502_user_process.c **** Proc_state.mode_next = AVG; + 841:src/l502_user_process.c **** Proc_state.LFSM_state = CYCLE_UNKNOWN; + 842:src/l502_user_process.c **** Proc_state.average_N_max = 3; + 843:src/l502_user_process.c **** // Proc_state.average_N_max = cmd->param; + 844:src/l502_user_process.c **** Proc_state.average_N = 0; + 845:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; + 846:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; + 847:src/l502_user_process.c **** Proc_state.AVG_state = 0; + 848:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 849:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; + 850:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; + 851:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; + 852:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; + 853:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; + 854:src/l502_user_process.c **** Proc_state.AVG_buff_active = A; + 855:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 856:src/l502_user_process.c **** + 857:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 858:src/l502_user_process.c **** TX_buff[i] = 0; + 859:src/l502_user_process.c **** } + 860:src/l502_user_process.c **** + 861:src/l502_user_process.c **** // l502_cmd_done(cmd-> param, NULL, 0); + 862:src/l502_user_process.c **** l502_cmd_done(TX_buff_I, NULL, 0); + 863:src/l502_user_process.c **** + 864:src/l502_user_process.c **** break; + 865:src/l502_user_process.c **** } + 866:src/l502_user_process.c **** case 0x8009:{ //request TX_buff_I_shadow value (last size of TX_buff transferred to pc ) + 867:src/l502_user_process.c **** l502_cmd_done(TX_buff_I_shadow, NULL, 0); + 868:src/l502_user_process.c **** break; + 869:src/l502_user_process.c **** } + 870:src/l502_user_process.c **** case 0x800A:{ //return uint32_t value stored in dbg_receive_value + 871:src/l502_user_process.c **** l502_cmd_done(dbg_receive_value, NULL, 0); + 872:src/l502_user_process.c **** break; + 873:src/l502_user_process.c **** } + 874:src/l502_user_process.c **** + 875:src/l502_user_process.c **** + 876:src/l502_user_process.c **** + 877:src/l502_user_process.c **** + 878:src/l502_user_process.c **** + 879:src/l502_user_process.c **** case 0x8010:{ //flush HDMA TX buffer + 880:src/l502_user_process.c **** int number_of_free_tx_descriptors = hdma_send_req_rdy(); + 881:src/l502_user_process.c **** hdma_send_stop(); + 882:src/l502_user_process.c **** hdma_send_start(); + 883:src/l502_user_process.c **** l502_cmd_done(number_of_free_tx_descriptors, NULL, 0); + BFIN GAS /tmp/ccG6eBVz.s page 17 + + + 884:src/l502_user_process.c **** break; + 885:src/l502_user_process.c **** } + 886:src/l502_user_process.c **** case 0x8011:{ //L502_BF_USR_CMD_CODE_ECHO + 887:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 888:src/l502_user_process.c **** break; + 889:src/l502_user_process.c **** } + 890:src/l502_user_process.c **** case 0x8012:{ //L502_BF_USR_CMD_CODE_ECHO + 891:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 892:src/l502_user_process.c **** break; + 893:src/l502_user_process.c **** } + 894:src/l502_user_process.c **** case 0x8013:{ //L502_BF_USR_CMD_CODE_ECHO + 895:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 896:src/l502_user_process.c **** break; + 897:src/l502_user_process.c **** } + 898:src/l502_user_process.c **** case 0x8014:{ //L502_BF_USR_CMD_CODE_ECHO + 899:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 900:src/l502_user_process.c **** break; + 901:src/l502_user_process.c **** } + 902:src/l502_user_process.c **** case 0x8015:{ //L502_BF_USR_CMD_CODE_ECHO + 903:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 904:src/l502_user_process.c **** break; + 905:src/l502_user_process.c **** } + 906:src/l502_user_process.c **** + 907:src/l502_user_process.c **** + 908:src/l502_user_process.c **** + 909:src/l502_user_process.c **** /* + 910:src/l502_user_process.c **** case 0x8002:{ + 911:src/l502_user_process.c **** cmd-> result = cmd->param * 2; + 912:src/l502_user_process.c **** uint32_t data[] = {0,1,2,3,4,5,6,5,4,3,2,1,0}; + 913:src/l502_user_process.c **** l502_cmd_done(cmd-> param*3, data, 13); + 914:src/l502_user_process.c **** break;} + 915:src/l502_user_process.c **** case 0x8001:{ + 916:src/l502_user_process.c **** //cmd-> result = cmd->param * 2; + 917:src/l502_user_process.c **** uint32_t data[] = {6,5,4,3,2,1,0,1,2,3,4,5,6}; + 918:src/l502_user_process.c **** l502_cmd_done(cmd-> param*75, data, 13); + 919:src/l502_user_process.c **** break;} + 920:src/l502_user_process.c **** */ + 921:src/l502_user_process.c **** + 922:src/l502_user_process.c **** default: { + 923:src/l502_user_process.c **** l502_cmd_done(1, NULL, 0); + 924:src/l502_user_process.c **** } + 925:src/l502_user_process.c **** } + 926:src/l502_user_process.c **** //l502_cmd_done(1, 1, 1); + 927:src/l502_user_process.c **** //l502_cmd_done(L502_BF_ERR_UNSUP_CMD, NULL, 0); + 928:src/l502_user_process.c **** } + 26 .loc 1 928 0 + 27 000c 7630 R6 = SP; + 708:src/l502_user_process.c **** switch (cmd->code){ + 28 .loc 1 708 0 29 000e 0095 R0 = W [P0] (Z); 30 .LVL1: 31 0010 0850 R0 = R0 + R1; 32 0012 C042 R0 = R0.L (Z); - 33 0014 7960 R1 = 15 (X); + 33 0014 A160 R1 = 20 (X); 34 0016 080A cc =R0<=R1 (iu); - 35 0018 0B1C if cc jump .L46 (bp); + 35 0018 0B1C if cc jump .L51 (bp); 36 .L2: - 734:src/l502_user_process.c **** l502_cmd_done(1, NULL, 0); - 37 .loc 1 734 0 + BFIN GAS /tmp/ccG6eBVz.s page 18 + + + 923:src/l502_user_process.c **** l502_cmd_done(1, NULL, 0); + 37 .loc 1 923 0 38 001a 0860 R0 = 1 (X); 39 001c 0160 R1 = 0 (X); 40 001e 0260 R2 = 0 (X); 41 0020 FFE3F0FF call _l502_cmd_done; 42 .LVL2: - 43 .L40: - 44 .loc 1 739 0 - 45 0024 3732 SP = R7; + 43 .L45: + 44 .loc 1 928 0 + 45 0024 3632 SP = R6; 46 0026 01E80000 UNLINK; - 47 002a BC05 ( r7:7, p5:4 ) = [sp++]; + 47 002a B405 ( r7:6, p5:4 ) = [sp++]; 48 49 .LCFI2: - 50 002c 1000 rts; - 51 .LVL3: - 52 .L46: - 546:src/l502_user_process.c **** switch (cmd->code){ - BFIN GAS /tmp/ccPntIEp.s page 15 - - - 53 .loc 1 546 0 - 54 002e 0832 P1 = R0; - 55 0030 4AE10000 P2.H = .L14; - 56 0034 0AE10000 P2.L = .L14; - 57 0038 8A5E P2 = P2 + (P1 << 2); - 58 003a 5291 P2 = [P2]; - 59 003c 5200 jump (P2); - 60 .section .rodata - 61 .align 4 + 50 .LVL3: + 51 002c 1000 rts; + 52 .LVL4: + 53 .L51: + 708:src/l502_user_process.c **** switch (cmd->code){ + 54 .loc 1 708 0 + 55 002e 0832 P1 = R0; + 56 0030 4AE10000 P2.H = .L19; + 57 0034 0AE10000 P2.L = .L19; + 58 0038 8A5E P2 = P2 + (P1 << 2); + 59 003a 5291 P2 = [P2]; + 60 003c 5200 jump (P2); + 61 .section .rodata 62 .align 4 - 63 .L14: - 64 0000 3E000000 .dd .L13; - 65 0004 66000000 .dd .L4; - 66 0008 92000000 .dd .L5; - 67 000c 44010000 .dd .L6; - 68 0010 76010000 .dd .L7; - 69 0014 96010000 .dd .L8; - 70 0018 0A020000 .dd .L9; - 71 001c 78020000 .dd .L10; - 72 0020 52000000 .dd .L11; - 73 0024 3E000000 .dd .L13; - 74 0028 1A000000 .dd .L2; - 75 002c 1A000000 .dd .L2; - 76 0030 1A000000 .dd .L2; - 77 0034 1A000000 .dd .L2; - 78 0038 1A000000 .dd .L2; - 79 003c 3E000000 .dd .L13; - 80 .text; - 81 .L13: - 714:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); - 82 .loc 1 714 0 - 83 003e 40A0 R0 = [P0+4]; - 84 0040 0160 R1 = 0 (X); - 85 0042 0260 R2 = 0 (X); - 86 0044 FFE3DEFF call _l502_cmd_done; - 87 .LVL4: - 88 .loc 1 739 0 - 89 0048 3732 SP = R7; - 90 004a 01E80000 UNLINK; - 91 004e BC05 ( r7:7, p5:4 ) = [sp++]; - 92 - 93 .LCFI3: - 94 0050 1000 rts; - 95 .LVL5: - 96 .L11: - 700:src/l502_user_process.c **** l502_cmd_done(TX_buff_I_shadow, NULL, 0); - 97 .loc 1 700 0 - 98 0052 4AE10000 P2.H = _TX_buff_I_shadow; - 99 0056 0AE10000 P2.L = _TX_buff_I_shadow; - 100 005a 1091 R0 = [P2]; - 101 005c 0160 R1 = 0 (X); - 102 005e 0260 R2 = 0 (X); - 103 0060 FFE3D0FF call _l502_cmd_done; - 104 .LVL6: - 105 0064 E02F jump.s .L40; + 63 .align 4 + 64 .L19: + 65 0000 3E000000 .dd .L18; + 66 0004 6C000000 .dd .L4; + 67 0008 98000000 .dd .L5; + 68 000c 4A010000 .dd .L6; + 69 0010 7C010000 .dd .L7; + 70 0014 9C010000 .dd .L8; + 71 0018 10020000 .dd .L9; + 72 001c 92020000 .dd .L10; + 73 0020 02030000 .dd .L11; + 74 0024 16030000 .dd .L12; + 75 0028 1A000000 .dd .L2; + 76 002c 1A000000 .dd .L2; + 77 0030 1A000000 .dd .L2; + 78 0034 1A000000 .dd .L2; + 79 0038 1A000000 .dd .L2; + 80 003c 52000000 .dd .L13; + 81 0040 3E000000 .dd .L18; + 82 0044 3E000000 .dd .L18; + 83 0048 3E000000 .dd .L18; + 84 004c 3E000000 .dd .L18; + 85 0050 3E000000 .dd .L18; + 86 .text; + 87 .L18: + 903:src/l502_user_process.c **** l502_cmd_done(cmd-> param, NULL, 0); + 88 .loc 1 903 0 + 89 003e 40A0 R0 = [P0+4]; + 90 0040 0160 R1 = 0 (X); + BFIN GAS /tmp/ccG6eBVz.s page 19 + + + 91 0042 0260 R2 = 0 (X); + 92 0044 FFE3DEFF call _l502_cmd_done; + 93 .LVL5: + 94 .loc 1 928 0 + 95 0048 3632 SP = R6; + 96 004a 01E80000 UNLINK; + 97 004e B405 ( r7:6, p5:4 ) = [sp++]; + 98 + 99 .LCFI3: + 100 0050 1000 rts; + 101 .LVL6: + 102 .L13: + 103 .LBB2: + 880:src/l502_user_process.c **** int number_of_free_tx_descriptors = hdma_send_req_rdy(); + 104 .loc 1 880 0 + 105 0052 FFE3D7FF call _hdma_send_req_rdy; 106 .LVL7: - 107 .L4: - BFIN GAS /tmp/ccPntIEp.s page 16 + 107 0056 3830 R7 = R0; + 108 .LVL8: + 881:src/l502_user_process.c **** hdma_send_stop(); + 109 .loc 1 881 0 + 110 0058 FFE3D4FF call _hdma_send_stop; + 882:src/l502_user_process.c **** hdma_send_start(); + 111 .loc 1 882 0 + 112 005c FFE3D2FF call _hdma_send_start; + 883:src/l502_user_process.c **** l502_cmd_done(number_of_free_tx_descriptors, NULL, 0); + 113 .loc 1 883 0 + 114 0060 0730 R0 = R7; + 115 0062 0160 R1 = 0 (X); + 116 0064 0260 R2 = 0 (X); + 117 0066 FFE3CDFF call _l502_cmd_done; + 118 006a DD2F jump.s .L45; + 119 .LVL9: + 120 .L4: + 121 .LBE2: + 122 .LBB3: + 737:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; + 123 .loc 1 737 0 + 124 006c C1AC P1 = [P0+12]; + 125 .LBE3: + 733:src/l502_user_process.c **** break; + 126 .loc 1 733 0 + 127 006e 7E30 R7 = SP; + 128 .LBB6: + 737:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; + 129 .loc 1 737 0 + 130 0070 4A44 P2 = P1 << 2; + 131 0072 226C P2 += 4; + 132 0074 1644 SP -= P2; + 133 0076 4E30 R1 = SP; + 134 .LBB4: + 738:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ + 135 .loc 1 738 0 + 136 0078 5130 R2 = P1; + 137 .LBE4: + 737:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; + 138 .loc 1 737 0 + BFIN GAS /tmp/ccG6eBVz.s page 20 - 108 .LBB2: - 575:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; - 109 .loc 1 575 0 - 110 0066 C1AC P1 = [P0+12]; - 111 .LBE2: - 571:src/l502_user_process.c **** break; - 112 .loc 1 571 0 - 113 0068 6E32 P5 = SP; - 114 .LBB5: - 575:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; - 115 .loc 1 575 0 - 116 006a 4A44 P2 = P1 << 2; - 117 006c 226C P2 += 4; - 118 006e 1644 SP -= P2; - 119 0070 4E30 R1 = SP; - 120 .LBB3: - 576:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ - 121 .loc 1 576 0 - 122 0072 5130 R2 = P1; - 123 .LBE3: - 575:src/l502_user_process.c **** uint32_t rcv_data[cmd->data_size]; - 124 .loc 1 575 0 - 125 0074 C164 R1 += 24; - 126 .LBB4: - 576:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ - 127 .loc 1 576 0 - 128 0076 020C cc =R2==0; - 129 0078 0818 if cc jump .L16; - 130 007a 1132 P2 = R1; - 131 007c 0060 R0 = 0 (X); - 132 .LVL8: - 133 .L17: - 578:src/l502_user_process.c **** rcv_data[I] = I; - 134 .loc 1 578 0 - 135 007e 1092 [P2++] = R0; - 576:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ - 136 .loc 1 576 0 - 137 0080 0864 R0 += 1; - 138 0082 C2A0 R2 = [P0+12]; - 139 0084 020A cc =R2<=R0 (iu); - 140 0086 FC17 if !cc jump .L17 (bp); - 141 .L16: - 142 .LBE4: - 580:src/l502_user_process.c **** l502_cmd_done(cmd-> param, rcv_data, cmd->data_size); - 143 .loc 1 580 0 - 144 0088 40A0 R0 = [P0+4]; - 145 .LVL9: - 146 008a FFE3BBFF call _l502_cmd_done; - 147 .LVL10: - 148 008e 7532 SP = P5; - 149 0090 CA2F jump.s .L40; - 150 .LVL11: - 151 .L5: - 152 .LBE5: - 153 .LBB6: - 584:src/l502_user_process.c **** uint32_t err_codes[15] = {0,}; - 154 .loc 1 584 0 - BFIN GAS /tmp/ccPntIEp.s page 17 - - - 155 0092 2AE1B0FF P2 = -80 (X); - 156 0096 575B P5 = FP + P2; - 157 0098 0160 R1 = 0 (X); - 158 009a E261 R2 = 60 (X); - 159 009c 4530 R0 = P5; - 160 009e FFE3B1FF call _memset; + 139 007a C164 R1 += 24; + 140 .LBB5: + 738:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ + 141 .loc 1 738 0 + 142 007c 020C cc =R2==0; + 143 007e 0818 if cc jump .L21; + 144 0080 1132 P2 = R1; + 145 0082 0060 R0 = 0 (X); + 146 .LVL10: + 147 .L22: + 740:src/l502_user_process.c **** rcv_data[I] = I; + 148 .loc 1 740 0 + 149 0084 1092 [P2++] = R0; + 738:src/l502_user_process.c **** for (uint32_t I = 0; I < (cmd -> data_size); ++I){ + 150 .loc 1 738 0 + 151 0086 0864 R0 += 1; + 152 0088 C2A0 R2 = [P0+12]; + 153 008a 020A cc =R2<=R0 (iu); + 154 008c FC17 if !cc jump .L22 (bp); + 155 .L21: + 156 .LBE5: + 742:src/l502_user_process.c **** l502_cmd_done(cmd-> param, rcv_data, cmd->data_size); + 157 .loc 1 742 0 + 158 008e 40A0 R0 = [P0+4]; + 159 .LVL11: + 160 0090 FFE3B8FF call _l502_cmd_done; 161 .LVL12: - 585:src/l502_user_process.c **** err_codes[0] = params_set_lch_cnt(1); - 162 .loc 1 585 0 - 163 00a2 0860 R0 = 1 (X); - 164 00a4 FFE3AEFF call _params_set_lch_cnt; - 165 00a8 C0BA [FP+-80] = R0; - 587:src/l502_user_process.c **** err_codes[1] = params_set_lch(0, 0, L502_LCH_MODE_COMM, L502_ADC_RANGE_5, 1, 0);// chan index 1, - 166 .loc 1 587 0 - 167 00aa 0860 R0 = 1 (X); - 168 00ac F0B0 [SP+12] = R0; - 169 00ae 30B1 [SP+16] = R0; - 170 00b0 0060 R0 = 0 (X); - 171 00b2 00CC09C2 R1 = R1 -|- R1 || - 171 70B10000 - 172 [SP+20] = R0 || - 173 nop; - 174 00ba 0260 R2 = 0 (X); - 175 00bc FFE3A2FF call _params_set_lch; - 176 00c0 D0BA [FP+-76] = R0; - 588:src/l502_user_process.c **** err_codes[2] = params_set_adc_freq_div(1); - 177 .loc 1 588 0 - 178 00c2 0860 R0 = 1 (X); - 179 00c4 FFE39EFF call _params_set_adc_freq_div; - 180 00c8 E0BA [FP+-72] = R0; - 589:src/l502_user_process.c **** err_codes[3] = params_set_ref_freq(2000000); - 181 .loc 1 589 0 - 182 00ca 20E1093D R0 = 15625 (X); - 183 00ce 384F R0 <<= 7; - 184 00d0 FFE398FF call _params_set_ref_freq; - 185 00d4 F0BA [FP+-68] = R0; - 590:src/l502_user_process.c **** err_codes[4] = params_set_adc_interframe_delay(0); - 186 .loc 1 590 0 - 187 00d6 0060 R0 = 0 (X); - 188 00d8 FFE394FF call _params_set_adc_interframe_delay; - 189 00dc 00BB [FP+-64] = R0; - 591:src/l502_user_process.c **** err_codes[5] = params_set_sync_mode (L502_SYNC_INTERNAL); - 190 .loc 1 591 0 - 191 00de 0060 R0 = 0 (X); - 192 00e0 FFE390FF call _params_set_sync_mode; - 193 00e4 10BB [FP+-60] = R0; - 592:src/l502_user_process.c **** err_codes[6] = params_set_sync_start_mode (L502_SYNC_INTERNAL); - 194 .loc 1 592 0 - 195 00e6 0060 R0 = 0 (X); - 196 00e8 FFE38CFF call _params_set_sync_start_mode; - 197 00ec 20BB [FP+-56] = R0; - 596:src/l502_user_process.c **** err_codes[9] = sport_in_set_step_size(1024); - 198 .loc 1 596 0 - 199 00ee 20E10004 R0 = 1024 (X); - 200 00f2 FFE387FF call _sport_in_set_step_size; - 201 00f6 50BB [FP+-44] = R0; - 601:src/l502_user_process.c **** err_codes[12] = configure(); - BFIN GAS /tmp/ccPntIEp.s page 18 + 162 0094 3732 SP = R7; + 163 0096 C72F jump.s .L45; + 164 .LVL13: + 165 .L5: + 166 .LBE6: + 167 .LBB7: + 746:src/l502_user_process.c **** uint32_t err_codes[15] = {0,}; + 168 .loc 1 746 0 + 169 0098 2AE1B0FF P2 = -80 (X); + 170 009c 575B P5 = FP + P2; + 171 009e 0160 R1 = 0 (X); + 172 00a0 E261 R2 = 60 (X); + 173 00a2 4530 R0 = P5; + 174 00a4 FFE3AEFF call _memset; + 175 .LVL14: + 747:src/l502_user_process.c **** err_codes[0] = params_set_lch_cnt(1); + 176 .loc 1 747 0 + 177 00a8 0860 R0 = 1 (X); + 178 00aa FFE3ABFF call _params_set_lch_cnt; + 179 00ae C0BA [FP+-80] = R0; + 749:src/l502_user_process.c **** err_codes[1] = params_set_lch(0, 0, L502_LCH_MODE_COMM, L502_ADC_RANGE_5, 1, 0);// chan index 1, + 180 .loc 1 749 0 + 181 00b0 0860 R0 = 1 (X); + 182 00b2 F0B0 [SP+12] = R0; + 183 00b4 30B1 [SP+16] = R0; + 184 00b6 0060 R0 = 0 (X); + 185 00b8 00CC09C2 R1 = R1 -|- R1 || + 185 70B10000 + 186 [SP+20] = R0 || + 187 nop; + BFIN GAS /tmp/ccG6eBVz.s page 21 - 202 .loc 1 601 0 - 203 00f8 FFE384FF call _configure; - 204 .LBB7: - 608:src/l502_user_process.c **** err_codes_sum += err_codes[i]; - 205 .loc 1 608 0 - 206 00fc D2B8 R2 = [FP+-76]; - 207 00fe C1B8 R1 = [FP+-80]; - 208 0100 04CC0A02 R1 = R1 + R2 (NS) || - 208 80BB0000 - 209 [FP+-32] = R0 || - 210 nop; - 211 .LVL13: - 212 0108 E2B8 R2 = [FP+-72]; - 213 010a 5150 R1 = R1 + R2; - 214 .LVL14: - 215 010c F2B8 R2 = [FP+-68]; - 216 010e 5150 R1 = R1 + R2; - 217 .LVL15: - 218 0110 02B9 R2 = [FP+-64]; - 219 0112 5150 R1 = R1 + R2; - 220 .LVL16: - 221 0114 12B9 R2 = [FP+-60]; - 222 0116 5150 R1 = R1 + R2; - 223 .LVL17: - 224 0118 22B9 R2 = [FP+-56]; - 225 011a 5150 R1 = R1 + R2; - 226 .LVL18: - 227 011c 32B9 R2 = [FP+-52]; - 228 011e 5150 R1 = R1 + R2; - 229 .LVL19: - 230 0120 42B9 R2 = [FP+-48]; - 231 0122 5150 R1 = R1 + R2; - 232 .LVL20: - 233 0124 52B9 R2 = [FP+-44]; - 234 0126 5150 R1 = R1 + R2; - 235 .LVL21: - 236 0128 62B9 R2 = [FP+-40]; - 237 012a 5150 R1 = R1 + R2; - 238 .LVL22: - 239 012c 72B9 R2 = [FP+-36]; - 240 012e 5150 R1 = R1 + R2; - 241 .LVL23: - 242 0130 0850 R0 = R0 + R1; - 243 .LVL24: - 244 0132 91B9 R1 = [FP+-28]; - 245 0134 0850 R0 = R0 + R1; - 246 .LVL25: - 247 .LBE7: - 610:src/l502_user_process.c **** l502_cmd_done(err_codes_sum, err_codes, 15); - 248 .loc 1 610 0 - 249 0136 A1B9 R1 = [FP+-24]; - 250 0138 0850 R0 = R0 + R1; - 251 .LVL26: - 252 013a 4D30 R1 = P5; - 253 013c 7A60 R2 = 15 (X); - 254 013e FFE361FF call _l502_cmd_done; - 255 0142 712F jump.s .L40; - BFIN GAS /tmp/ccPntIEp.s page 19 + 188 00c0 0260 R2 = 0 (X); + 189 00c2 FFE39FFF call _params_set_lch; + 190 00c6 D0BA [FP+-76] = R0; + 750:src/l502_user_process.c **** err_codes[2] = params_set_adc_freq_div(1); + 191 .loc 1 750 0 + 192 00c8 0860 R0 = 1 (X); + 193 00ca FFE39BFF call _params_set_adc_freq_div; + 194 00ce E0BA [FP+-72] = R0; + 751:src/l502_user_process.c **** err_codes[3] = params_set_ref_freq(2000000); + 195 .loc 1 751 0 + 196 00d0 20E1093D R0 = 15625 (X); + 197 00d4 384F R0 <<= 7; + 198 00d6 FFE395FF call _params_set_ref_freq; + 199 00da F0BA [FP+-68] = R0; + 752:src/l502_user_process.c **** err_codes[4] = params_set_adc_interframe_delay(0); + 200 .loc 1 752 0 + 201 00dc 0060 R0 = 0 (X); + 202 00de FFE391FF call _params_set_adc_interframe_delay; + 203 00e2 00BB [FP+-64] = R0; + 753:src/l502_user_process.c **** err_codes[5] = params_set_sync_mode (L502_SYNC_INTERNAL); + 204 .loc 1 753 0 + 205 00e4 0060 R0 = 0 (X); + 206 00e6 FFE38DFF call _params_set_sync_mode; + 207 00ea 10BB [FP+-60] = R0; + 754:src/l502_user_process.c **** err_codes[6] = params_set_sync_start_mode (L502_SYNC_INTERNAL); + 208 .loc 1 754 0 + 209 00ec 0060 R0 = 0 (X); + 210 00ee FFE389FF call _params_set_sync_start_mode; + 211 00f2 20BB [FP+-56] = R0; + 758:src/l502_user_process.c **** err_codes[9] = sport_in_set_step_size(1024); + 212 .loc 1 758 0 + 213 00f4 20E10004 R0 = 1024 (X); + 214 00f8 FFE384FF call _sport_in_set_step_size; + 215 00fc 50BB [FP+-44] = R0; + 763:src/l502_user_process.c **** err_codes[12] = configure(); + 216 .loc 1 763 0 + 217 00fe FFE381FF call _configure; + 218 .LBB8: + 770:src/l502_user_process.c **** err_codes_sum += err_codes[i]; + 219 .loc 1 770 0 + 220 0102 D2B8 R2 = [FP+-76]; + 221 0104 C1B8 R1 = [FP+-80]; + 222 0106 04CC0A02 R1 = R1 + R2 (NS) || + 222 80BB0000 + 223 [FP+-32] = R0 || + 224 nop; + 225 .LVL15: + 226 010e E2B8 R2 = [FP+-72]; + 227 0110 5150 R1 = R1 + R2; + 228 .LVL16: + 229 0112 F2B8 R2 = [FP+-68]; + 230 0114 5150 R1 = R1 + R2; + 231 .LVL17: + 232 0116 02B9 R2 = [FP+-64]; + 233 0118 5150 R1 = R1 + R2; + 234 .LVL18: + 235 011a 12B9 R2 = [FP+-60]; + BFIN GAS /tmp/ccG6eBVz.s page 22 - 256 .LVL27: - 257 .L6: - 258 .LBE6: - 259 .LBB8: - 614:src/l502_user_process.c **** uint32_t err_codes[5] = {0,}; - 260 .loc 1 614 0 - 261 0144 0060 R0 = 0 (X); - 262 0146 B0BB [FP+-20] = R0; - 263 0148 C0BB [FP+-16] = R0; - 264 014a D0BB [FP+-12] = R0; - 265 014c E0BB [FP+-8] = R0; - 266 014e F0BB [FP+-4] = R0; - 615:src/l502_user_process.c **** l502_stream_init(); - 267 .loc 1 615 0 - 268 0150 FFE358FF call _l502_stream_init; - 269 .LVL28: - 616:src/l502_user_process.c **** err_codes[0] = stream_enable(L502_STREAM_ADC | L502_STREAM_DIN); //bitmask - 270 .loc 1 616 0 - 271 0154 1860 R0 = 3 (X); - 272 0156 FFE355FF call _stream_enable; - 273 015a B0BB [FP+-20] = R0; - 617:src/l502_user_process.c **** err_codes[1] = stream_out_preload(); - 274 .loc 1 617 0 - 275 015c FFE352FF call _stream_out_preload; - 276 0160 C0BB [FP+-16] = R0; - 618:src/l502_user_process.c **** err_codes[2] = streams_start(); - 277 .loc 1 618 0 - 278 0162 FFE34FFF call _streams_start; - 279 0166 D0BB [FP+-12] = R0; - 620:src/l502_user_process.c **** l502_cmd_done(0, err_codes, 5); - 280 .loc 1 620 0 - 281 0168 4F30 R1 = FP; - 282 016a 0060 R0 = 0 (X); - 283 016c 6167 R1 += -20; - 284 016e 2A60 R2 = 5 (X); - 285 0170 FFE348FF call _l502_cmd_done; - 286 0174 582F jump.s .L40; - 287 .LVL29: - 288 .L7: - 289 .LBE8: - 290 .LBB9: - 626:src/l502_user_process.c **** l502_cmd_done(streams_sum, streams_cnt, 4); - 291 .loc 1 626 0 - 292 0176 4AE10000 P2.H = _streams_cnt; - 293 017a 0AE10000 P2.L = _streams_cnt; - 294 017e 1191 R1 = [P2]; - 295 0180 50A0 R0 = [P2+4]; - 296 0182 0850 R0 = R0 + R1; - 297 0184 91A0 R1 = [P2+8]; - 298 0186 0850 R0 = R0 + R1; - 299 0188 D1A0 R1 = [P2+12]; - 300 018a 0850 R0 = R0 + R1; - 301 018c 4A30 R1 = P2; - 302 018e 2260 R2 = 4 (X); - 303 0190 FFE338FF call _l502_cmd_done; - 304 .LVL30: - 305 0194 482F jump.s .L40; - BFIN GAS /tmp/ccPntIEp.s page 20 + 236 011c 5150 R1 = R1 + R2; + 237 .LVL19: + 238 011e 22B9 R2 = [FP+-56]; + 239 0120 5150 R1 = R1 + R2; + 240 .LVL20: + 241 0122 32B9 R2 = [FP+-52]; + 242 0124 5150 R1 = R1 + R2; + 243 .LVL21: + 244 0126 42B9 R2 = [FP+-48]; + 245 0128 5150 R1 = R1 + R2; + 246 .LVL22: + 247 012a 52B9 R2 = [FP+-44]; + 248 012c 5150 R1 = R1 + R2; + 249 .LVL23: + 250 012e 62B9 R2 = [FP+-40]; + 251 0130 5150 R1 = R1 + R2; + 252 .LVL24: + 253 0132 72B9 R2 = [FP+-36]; + 254 0134 5150 R1 = R1 + R2; + 255 .LVL25: + 256 0136 0850 R0 = R0 + R1; + 257 .LVL26: + 258 0138 91B9 R1 = [FP+-28]; + 259 013a 0850 R0 = R0 + R1; + 260 .LVL27: + 261 .LBE8: + 772:src/l502_user_process.c **** l502_cmd_done(err_codes_sum, err_codes, 15); + 262 .loc 1 772 0 + 263 013c A1B9 R1 = [FP+-24]; + 264 013e 0850 R0 = R0 + R1; + 265 .LVL28: + 266 0140 4D30 R1 = P5; + 267 0142 7A60 R2 = 15 (X); + 268 0144 FFE35EFF call _l502_cmd_done; + 269 0148 6E2F jump.s .L45; + 270 .LVL29: + 271 .L6: + 272 .LBE7: + 273 .LBB9: + 776:src/l502_user_process.c **** uint32_t err_codes[5] = {0,}; + 274 .loc 1 776 0 + 275 014a 0060 R0 = 0 (X); + 276 014c B0BB [FP+-20] = R0; + 277 014e C0BB [FP+-16] = R0; + 278 0150 D0BB [FP+-12] = R0; + 279 0152 E0BB [FP+-8] = R0; + 280 0154 F0BB [FP+-4] = R0; + 777:src/l502_user_process.c **** l502_stream_init(); + 281 .loc 1 777 0 + 282 0156 FFE355FF call _l502_stream_init; + 283 .LVL30: + 778:src/l502_user_process.c **** err_codes[0] = stream_enable(L502_STREAM_ADC | L502_STREAM_DIN); //bitmask + 284 .loc 1 778 0 + 285 015a 1860 R0 = 3 (X); + 286 015c FFE352FF call _stream_enable; + 287 0160 B0BB [FP+-20] = R0; + 779:src/l502_user_process.c **** err_codes[1] = stream_out_preload(); + BFIN GAS /tmp/ccG6eBVz.s page 23 - 306 .LVL31: - 307 .L8: - 627:src/l502_user_process.c **** break; - 308 .loc 1 627 0 - 309 0196 4AE10000 P2.H = _dbg_sport_rx_copy; - 310 019a 0AE12800 P2.L = _dbg_sport_rx_copy; - 311 019e 1091 R0 = [P2]; - 312 01a0 0802 CC = R0; - 313 01a2 0002 R0 = CC; - 314 .LBE9: - 315 .LBB10: - 316 .LBB11: - 635:src/l502_user_process.c **** ++sport_rx_nonzero_sum; - 317 .loc 1 635 0 - 318 01a4 51A0 R1 = [P2+4]; - 319 01a6 1030 R2 = R0; - 320 .LVL32: - 321 01a8 010C cc =R1==0; - 322 01aa 0A64 R2 += 1; - 323 01ac 0206 if !cc R0 = R2; - 324 .LVL33: - 325 01ae 91A0 R1 = [P2+8]; - 326 01b0 1030 R2 = R0; - 327 01b2 010C cc =R1==0; - 328 01b4 0A64 R2 += 1; - 329 .LVL34: - 330 01b6 0206 if !cc R0 = R2; - 331 .LVL35: - 332 01b8 D1A0 R1 = [P2+12]; - 333 01ba 1030 R2 = R0; - 334 01bc 010C cc =R1==0; - 335 01be 0A64 R2 += 1; - 336 .LVL36: - 337 01c0 0206 if !cc R0 = R2; - 338 .LVL37: - 339 01c2 11A1 R1 = [P2+16]; - 340 01c4 1030 R2 = R0; - 341 01c6 010C cc =R1==0; - 342 01c8 0A64 R2 += 1; - 343 .LVL38: - 344 01ca 0206 if !cc R0 = R2; - 345 .LVL39: - 346 01cc 51A1 R1 = [P2+20]; - 347 01ce 1030 R2 = R0; - 348 01d0 010C cc =R1==0; - 349 01d2 0A64 R2 += 1; - 350 .LVL40: - 351 01d4 0206 if !cc R0 = R2; - 352 .LVL41: - 353 01d6 91A1 R1 = [P2+24]; - 354 01d8 1030 R2 = R0; - 355 01da 010C cc =R1==0; - 356 01dc 0A64 R2 += 1; - 357 .LVL42: - 358 01de 0206 if !cc R0 = R2; - 359 .LVL43: - 360 01e0 D1A1 R1 = [P2+28]; - BFIN GAS /tmp/ccPntIEp.s page 21 + 288 .loc 1 779 0 + 289 0162 FFE34FFF call _stream_out_preload; + 290 0166 C0BB [FP+-16] = R0; + 780:src/l502_user_process.c **** err_codes[2] = streams_start(); + 291 .loc 1 780 0 + 292 0168 FFE34CFF call _streams_start; + 293 016c D0BB [FP+-12] = R0; + 782:src/l502_user_process.c **** l502_cmd_done(0, err_codes, 5); + 294 .loc 1 782 0 + 295 016e 4F30 R1 = FP; + 296 0170 0060 R0 = 0 (X); + 297 0172 6167 R1 += -20; + 298 0174 2A60 R2 = 5 (X); + 299 0176 FFE345FF call _l502_cmd_done; + 300 017a 552F jump.s .L45; + 301 .LVL31: + 302 .L7: + 303 .LBE9: + 304 .LBB10: + 788:src/l502_user_process.c **** l502_cmd_done(streams_sum, streams_cnt, 4); + 305 .loc 1 788 0 + 306 017c 4AE10000 P2.H = _streams_cnt; + 307 0180 0AE10000 P2.L = _streams_cnt; + 308 0184 1191 R1 = [P2]; + 309 0186 50A0 R0 = [P2+4]; + 310 0188 0850 R0 = R0 + R1; + 311 018a 91A0 R1 = [P2+8]; + 312 018c 0850 R0 = R0 + R1; + 313 018e D1A0 R1 = [P2+12]; + 314 0190 0850 R0 = R0 + R1; + 315 0192 4A30 R1 = P2; + 316 0194 2260 R2 = 4 (X); + 317 0196 FFE335FF call _l502_cmd_done; + 318 .LVL32: + 319 019a 452F jump.s .L45; + 320 .LVL33: + 321 .L8: + 789:src/l502_user_process.c **** break; + 322 .loc 1 789 0 + 323 019c 4AE10000 P2.H = _dbg_sport_rx_copy; + 324 01a0 0AE12800 P2.L = _dbg_sport_rx_copy; + 325 01a4 1091 R0 = [P2]; + 326 01a6 0802 CC = R0; + 327 01a8 0002 R0 = CC; + 328 .LBE10: + 329 .LBB11: + 330 .LBB12: + 797:src/l502_user_process.c **** ++sport_rx_nonzero_sum; + 331 .loc 1 797 0 + 332 01aa 51A0 R1 = [P2+4]; + 333 01ac 1030 R2 = R0; + 334 .LVL34: + 335 01ae 010C cc =R1==0; + 336 01b0 0A64 R2 += 1; + 337 01b2 0206 if !cc R0 = R2; + 338 .LVL35: + 339 01b4 91A0 R1 = [P2+8]; + BFIN GAS /tmp/ccG6eBVz.s page 24 - 361 01e2 1030 R2 = R0; - 362 01e4 010C cc =R1==0; - 363 01e6 0A64 R2 += 1; - 364 .LVL44: - 365 01e8 0206 if !cc R0 = R2; - 366 .LVL45: - 367 01ea 11A2 R1 = [P2+32]; - 368 01ec 1030 R2 = R0; - 369 01ee 010C cc =R1==0; - 370 01f0 0A64 R2 += 1; - 371 .LVL46: - 372 01f2 0206 if !cc R0 = R2; - 373 .LVL47: - 374 .LBE11: - 638:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); - 375 .loc 1 638 0 - 376 01f4 51A2 R1 = [P2+36]; - 377 .LBB12: - 635:src/l502_user_process.c **** ++sport_rx_nonzero_sum; - 378 .loc 1 635 0 - 379 01f6 1030 R2 = R0; - 380 .LBE12: - 638:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); - 381 .loc 1 638 0 - 382 01f8 010C cc =R1==0; - 383 .LBB13: - 635:src/l502_user_process.c **** ++sport_rx_nonzero_sum; - 384 .loc 1 635 0 - 385 01fa 0A64 R2 += 1; - 386 .LVL48: - 387 .LBE13: - 638:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); - 388 .loc 1 638 0 - 389 01fc 0206 if !cc R0 = R2; - 390 .LVL49: - 391 01fe 4A30 R1 = P2; - 392 0200 22E10004 R2 = 1024 (X); - 393 0204 FFE3FEFE call _l502_cmd_done; - 394 .LVL50: - 395 0208 0E2F jump.s .L40; - 396 .LVL51: - 397 .L9: - 398 .LBE10: - 645:src/l502_user_process.c **** TX_buff_I = 0; - 399 .loc 1 645 0 - 400 020a 4CE10000 P4.H = _TX_buff_I; - 401 020e 0260 R2 = 0 (X); - 402 0210 0CE11400 P4.L = _TX_buff_I; - 647:src/l502_user_process.c **** Proc_state.mode = TRANSPARENT; - 403 .loc 1 647 0 - 404 0214 4AE10000 P2.H = _Proc_state; - 645:src/l502_user_process.c **** TX_buff_I = 0; - 405 .loc 1 645 0 - 406 0218 2293 [P4] = R2; - 647:src/l502_user_process.c **** Proc_state.mode = TRANSPARENT; - 407 .loc 1 647 0 - 408 021a 0AE12C00 P2.L = _Proc_state; - BFIN GAS /tmp/ccPntIEp.s page 22 + 340 01b6 1030 R2 = R0; + 341 01b8 010C cc =R1==0; + 342 01ba 0A64 R2 += 1; + 343 .LVL36: + 344 01bc 0206 if !cc R0 = R2; + 345 .LVL37: + 346 01be D1A0 R1 = [P2+12]; + 347 01c0 1030 R2 = R0; + 348 01c2 010C cc =R1==0; + 349 01c4 0A64 R2 += 1; + 350 .LVL38: + 351 01c6 0206 if !cc R0 = R2; + 352 .LVL39: + 353 01c8 11A1 R1 = [P2+16]; + 354 01ca 1030 R2 = R0; + 355 01cc 010C cc =R1==0; + 356 01ce 0A64 R2 += 1; + 357 .LVL40: + 358 01d0 0206 if !cc R0 = R2; + 359 .LVL41: + 360 01d2 51A1 R1 = [P2+20]; + 361 01d4 1030 R2 = R0; + 362 01d6 010C cc =R1==0; + 363 01d8 0A64 R2 += 1; + 364 .LVL42: + 365 01da 0206 if !cc R0 = R2; + 366 .LVL43: + 367 01dc 91A1 R1 = [P2+24]; + 368 01de 1030 R2 = R0; + 369 01e0 010C cc =R1==0; + 370 01e2 0A64 R2 += 1; + 371 .LVL44: + 372 01e4 0206 if !cc R0 = R2; + 373 .LVL45: + 374 01e6 D1A1 R1 = [P2+28]; + 375 01e8 1030 R2 = R0; + 376 01ea 010C cc =R1==0; + 377 01ec 0A64 R2 += 1; + 378 .LVL46: + 379 01ee 0206 if !cc R0 = R2; + 380 .LVL47: + 381 01f0 11A2 R1 = [P2+32]; + 382 01f2 1030 R2 = R0; + 383 01f4 010C cc =R1==0; + 384 01f6 0A64 R2 += 1; + 385 .LVL48: + 386 01f8 0206 if !cc R0 = R2; + 387 .LVL49: + 388 .LBE12: + 800:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); + 389 .loc 1 800 0 + 390 01fa 51A2 R1 = [P2+36]; + 391 .LBB13: + 797:src/l502_user_process.c **** ++sport_rx_nonzero_sum; + 392 .loc 1 797 0 + 393 01fc 1030 R2 = R0; + 394 .LBE13: + BFIN GAS /tmp/ccG6eBVz.s page 25 - 409 021e 0860 R0 = 1 (X); - 410 0220 109B B [P2] = R0; - 648:src/l502_user_process.c **** Proc_state.mode_next = TRANSPARENT; - 411 .loc 1 648 0 - 412 0222 90E60100 B [P2+1] = R0; - 649:src/l502_user_process.c **** Proc_state.LFSM_state = 0; - 413 .loc 1 649 0 - 414 0226 0160 R1 = 0 (X); - 415 0228 91E60300 B [P2+3] = R1; - 650:src/l502_user_process.c **** Proc_state.average_N_max = 10; - 416 .loc 1 650 0 - 417 022c 5060 R0 = 10 (X); - 418 022e 90B4 W [P2+4] = R0; - 652:src/l502_user_process.c **** Proc_state.average_N = 1; - 419 .loc 1 652 0 - 420 0230 0860 R0 = 1 (X); - 421 0232 D0B4 W [P2+6] = R0; - 653:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; - 422 .loc 1 653 0 - 423 0234 92B0 [P2+8] = R2; - 654:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; - 424 .loc 1 654 0 - 425 0236 91E60C00 B [P2+12] = R1; - 655:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - 426 .loc 1 655 0 - 427 023a 12B1 [P2+16] = R2; - 656:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; - 428 .loc 1 656 0 - 429 023c 91E61400 B [P2+20] = R1; - 657:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; - 430 .loc 1 657 0 - 431 0240 92B1 [P2+24] = R2; - 658:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; - 432 .loc 1 658 0 - 433 0242 91E61C00 B [P2+28] = R1; - 659:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; - 434 .loc 1 659 0 - 435 0246 12B2 [P2+32] = R2; - 436 0248 4DE10000 P5.H = _TX_buff; - 660:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; - 437 .loc 1 660 0 - 438 024c 52B2 [P2+36] = R2; - 439 024e 0068 P0 = 0 (X); - 440 .LVL52: - 441 0250 0DE10000 P5.L = _TX_buff; - 442 .LBB14: - 664:src/l502_user_process.c **** TX_buff[i] = 0; - 443 .loc 1 664 0 - 444 0254 0060 R0 = 0 (X); - 445 0256 29E1E803 P1 = 1000 (X); - 446 025a B2E00410 LSETUP (.L38, .L48) LC1 = P1; - 447 .L38: - 448 025e 855E P2 = P5 + (P0 << 2); - 449 0260 1093 [P2] = R0; - 450 .L48: - 663:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ - 451 .loc 1 663 0 - BFIN GAS /tmp/ccPntIEp.s page 23 + 800:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); + 395 .loc 1 800 0 + 396 01fe 010C cc =R1==0; + 397 .LBB14: + 797:src/l502_user_process.c **** ++sport_rx_nonzero_sum; + 398 .loc 1 797 0 + 399 0200 0A64 R2 += 1; + 400 .LVL50: + 401 .LBE14: + 800:src/l502_user_process.c **** l502_cmd_done(sport_rx_nonzero_sum, dbg_sport_rx_copy, 1024); + 402 .loc 1 800 0 + 403 0202 0206 if !cc R0 = R2; + 404 .LVL51: + 405 0204 4A30 R1 = P2; + 406 0206 22E10004 R2 = 1024 (X); + 407 020a FFE3FBFE call _l502_cmd_done; + 408 .LVL52: + 409 020e 0B2F jump.s .L45; + 410 .LVL53: + 411 .L9: + 412 .LBE11: + 807:src/l502_user_process.c **** TX_buff_I = 0; + 413 .loc 1 807 0 + 414 0210 4CE10000 P4.H = _TX_buff_I; + 415 0214 0260 R2 = 0 (X); + 416 0216 0CE11400 P4.L = _TX_buff_I; + 809:src/l502_user_process.c **** Proc_state.mode = TRANSPARENT; + 417 .loc 1 809 0 + 418 021a 4AE10000 P2.H = _Proc_state; + 807:src/l502_user_process.c **** TX_buff_I = 0; + 419 .loc 1 807 0 + 420 021e 2293 [P4] = R2; + 809:src/l502_user_process.c **** Proc_state.mode = TRANSPARENT; + 421 .loc 1 809 0 + 422 0220 0AE12C00 P2.L = _Proc_state; + 423 0224 0860 R0 = 1 (X); + 424 0226 109B B [P2] = R0; + 810:src/l502_user_process.c **** Proc_state.mode_next = TRANSPARENT; + 425 .loc 1 810 0 + 426 0228 90E60100 B [P2+1] = R0; + 811:src/l502_user_process.c **** Proc_state.LFSM_state = CYCLE_UNKNOWN; + 427 .loc 1 811 0 + 428 022c 0160 R1 = 0 (X); + 429 022e 91E60300 B [P2+3] = R1; + 812:src/l502_user_process.c **** Proc_state.average_N_max = 10; + 430 .loc 1 812 0 + 431 0232 5060 R0 = 10 (X); + 432 0234 90B4 W [P2+4] = R0; + 814:src/l502_user_process.c **** Proc_state.average_N = 1; + 433 .loc 1 814 0 + 434 0236 0860 R0 = 1 (X); + 435 0238 D0B4 W [P2+6] = R0; + 815:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; + 436 .loc 1 815 0 + 437 023a 92B0 [P2+8] = R2; + 816:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; + 438 .loc 1 816 0 + BFIN GAS /tmp/ccG6eBVz.s page 26 - 452 0262 086C P0 += 1; - 453 .LVL53: - 454 .L44: - 455 .LBE14: - 695:src/l502_user_process.c **** l502_cmd_done(TX_buff_I, NULL, 0); - 456 .loc 1 695 0 - 457 0264 2091 R0 = [P4]; - 458 0266 0160 R1 = 0 (X); - 459 0268 0260 R2 = 0 (X); - 460 026a FFE3CBFE call _l502_cmd_done; - 461 .LVL54: - 462 .loc 1 739 0 - 463 026e 3732 SP = R7; - 464 0270 01E80000 UNLINK; - 465 0274 BC05 ( r7:7, p5:4 ) = [sp++]; - 466 - 467 .LCFI4: - 468 0276 1000 rts; - 469 .LVL55: - 470 .L10: - 672:src/l502_user_process.c **** TX_buff_I = 0; - 471 .loc 1 672 0 - 472 0278 4CE10000 P4.H = _TX_buff_I; - 473 027c 0260 R2 = 0 (X); - 474 027e 0CE11400 P4.L = _TX_buff_I; - 674:src/l502_user_process.c **** Proc_state.mode = AVG; - 475 .loc 1 674 0 - 476 0282 4AE10000 P2.H = _Proc_state; - 672:src/l502_user_process.c **** TX_buff_I = 0; - 477 .loc 1 672 0 - 478 0286 2293 [P4] = R2; - 674:src/l502_user_process.c **** Proc_state.mode = AVG; - 479 .loc 1 674 0 - 480 0288 0AE12C00 P2.L = _Proc_state; - 481 028c 1060 R0 = 2 (X); - 482 028e 109B B [P2] = R0; - 675:src/l502_user_process.c **** Proc_state.mode_next = AVG; - 483 .loc 1 675 0 - 484 0290 90E60100 B [P2+1] = R0; - 676:src/l502_user_process.c **** Proc_state.LFSM_state = 0; - 485 .loc 1 676 0 - 486 0294 0160 R1 = 0 (X); - 487 0296 91E60300 B [P2+3] = R1; - 677:src/l502_user_process.c **** Proc_state.average_N_max = 10; - 488 .loc 1 677 0 - 489 029a 5060 R0 = 10 (X); - 490 029c 90B4 W [P2+4] = R0; - 679:src/l502_user_process.c **** Proc_state.average_N = 1; - 491 .loc 1 679 0 - 492 029e 0860 R0 = 1 (X); - 493 02a0 D0B4 W [P2+6] = R0; - 680:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; - 494 .loc 1 680 0 - 495 02a2 92B0 [P2+8] = R2; - 681:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; - 496 .loc 1 681 0 - 497 02a4 91E60C00 B [P2+12] = R1; - BFIN GAS /tmp/ccPntIEp.s page 24 + 439 023c 91E60C00 B [P2+12] = R1; + 817:src/l502_user_process.c **** Proc_state.AVG_state = 0; + 440 .loc 1 817 0 + 441 0240 91E61400 B [P2+20] = R1; + 818:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 442 .loc 1 818 0 + 443 0244 12B1 [P2+16] = R2; + 819:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; + 444 .loc 1 819 0 + 445 0246 91E61500 B [P2+21] = R1; + 820:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; + 446 .loc 1 820 0 + 447 024a 92B1 [P2+24] = R2; + 821:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; + 448 .loc 1 821 0 + 449 024c 91E61C00 B [P2+28] = R1; + 822:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; + 450 .loc 1 822 0 + 451 0250 12B2 [P2+32] = R2; + 823:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; + 452 .loc 1 823 0 + 453 0252 52B2 [P2+36] = R2; + 824:src/l502_user_process.c **** Proc_state.AVG_buff_active = A; + 454 .loc 1 824 0 + 455 0254 91E61600 B [P2+22] = R1; + 825:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 456 .loc 1 825 0 + 457 0258 4AE10000 P2.H = _TX_buff_state; + 458 025c 1860 R0 = 3 (X); + 459 025e 0AE13000 P2.L = _TX_buff_state; + 460 0262 109B B [P2] = R0; + 461 0264 4DE10000 P5.H = _TX_buff; + 462 0268 0068 P0 = 0 (X); + 463 .LVL54: + 464 026a 0DE10000 P5.L = _TX_buff; + 465 .LBB15: + 829:src/l502_user_process.c **** TX_buff[i] = 0; + 466 .loc 1 829 0 + 467 026e 0060 R0 = 0 (X); + 468 0270 29E11027 P1 = 10000 (X); + 469 0274 B2E00410 LSETUP (.L43, .L53) LC1 = P1; + 470 .L43: + 471 0278 855E P2 = P5 + (P0 << 2); + 472 027a 1093 [P2] = R0; + 473 .L53: + 828:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 474 .loc 1 828 0 + 475 027c 086C P0 += 1; + 476 .LVL55: + 477 .L49: + 478 .LBE15: + 862:src/l502_user_process.c **** l502_cmd_done(TX_buff_I, NULL, 0); + 479 .loc 1 862 0 + 480 027e 2091 R0 = [P4]; + 481 0280 0160 R1 = 0 (X); + 482 0282 0260 R2 = 0 (X); + 483 0284 FFE3BEFE call _l502_cmd_done; + BFIN GAS /tmp/ccG6eBVz.s page 27 - 682:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - 498 .loc 1 682 0 - 499 02a8 12B1 [P2+16] = R2; - 683:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; - 500 .loc 1 683 0 - 501 02aa 91E61400 B [P2+20] = R1; - 684:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; - 502 .loc 1 684 0 - 503 02ae 92B1 [P2+24] = R2; - 685:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; - 504 .loc 1 685 0 - 505 02b0 91E61C00 B [P2+28] = R1; - 686:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; - 506 .loc 1 686 0 - 507 02b4 12B2 [P2+32] = R2; - 508 02b6 4DE10000 P5.H = _TX_buff; - 687:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; - 509 .loc 1 687 0 - 510 02ba 52B2 [P2+36] = R2; - 511 02bc 0068 P0 = 0 (X); - 512 .LVL56: - 513 02be 0DE10000 P5.L = _TX_buff; - 514 .LBB15: - 691:src/l502_user_process.c **** TX_buff[i] = 0; - 515 .loc 1 691 0 - 516 02c2 0060 R0 = 0 (X); - 517 02c4 29E1E803 P1 = 1000 (X); - 518 02c8 B2E00410 LSETUP (.L39, .L47) LC1 = P1; - 519 .L39: - 520 02cc 855E P2 = P5 + (P0 << 2); - 521 02ce 1093 [P2] = R0; - 522 .L47: - 690:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ - 523 .loc 1 690 0 - 524 02d0 086C P0 += 1; - 525 02d2 C92F jump.s .L44; - 526 .LBE15: - 527 .LFE6: - 528 .size _usr_cmd_process, .-_usr_cmd_process - 529 .align 4 - 530 .global _sport_tx_done; - 531 .type _sport_tx_done, STT_FUNC; - 532 _sport_tx_done: - 533 .LFB5: - 517:src/l502_user_process.c **** void sport_tx_done(uint32_t* addr, uint32_t size) { - 534 .loc 1 517 0 - 535 .LVL57: - 518:src/l502_user_process.c **** ++streams_cnt[1]; - 536 .loc 1 518 0 - 537 02d4 4AE10000 P2.H = _streams_cnt; - 517:src/l502_user_process.c **** void sport_tx_done(uint32_t* addr, uint32_t size) { - 538 .loc 1 517 0 - 539 02d8 00E80000 LINK 0; - 540 .LCFI5: - 518:src/l502_user_process.c **** ++streams_cnt[1]; - 541 .loc 1 518 0 - 542 02dc 0AE10000 P2.L = _streams_cnt; - BFIN GAS /tmp/ccPntIEp.s page 25 + 484 .LVL56: + 485 .loc 1 928 0 + 486 0288 3632 SP = R6; + 487 028a 01E80000 UNLINK; + 488 028e B405 ( r7:6, p5:4 ) = [sp++]; + 489 + 490 .LCFI4: + 491 0290 1000 rts; + 492 .LVL57: + 493 .L10: + 837:src/l502_user_process.c **** TX_buff_I = 0; + 494 .loc 1 837 0 + 495 0292 4CE10000 P4.H = _TX_buff_I; + 496 0296 0260 R2 = 0 (X); + 497 0298 0CE11400 P4.L = _TX_buff_I; + 839:src/l502_user_process.c **** Proc_state.mode = AVG; + 498 .loc 1 839 0 + 499 029c 4AE10000 P2.H = _Proc_state; + 837:src/l502_user_process.c **** TX_buff_I = 0; + 500 .loc 1 837 0 + 501 02a0 2293 [P4] = R2; + 839:src/l502_user_process.c **** Proc_state.mode = AVG; + 502 .loc 1 839 0 + 503 02a2 0AE12C00 P2.L = _Proc_state; + 504 02a6 1060 R0 = 2 (X); + 505 02a8 109B B [P2] = R0; + 840:src/l502_user_process.c **** Proc_state.mode_next = AVG; + 506 .loc 1 840 0 + 507 02aa 90E60100 B [P2+1] = R0; + 841:src/l502_user_process.c **** Proc_state.LFSM_state = CYCLE_UNKNOWN; + 508 .loc 1 841 0 + 509 02ae 0160 R1 = 0 (X); + 510 02b0 91E60300 B [P2+3] = R1; + 842:src/l502_user_process.c **** Proc_state.average_N_max = 3; + 511 .loc 1 842 0 + 512 02b4 1860 R0 = 3 (X); + 513 02b6 90B4 W [P2+4] = R0; + 844:src/l502_user_process.c **** Proc_state.average_N = 0; + 514 .loc 1 844 0 + 515 02b8 0060 R0 = 0 (X); + 516 02ba D0B4 W [P2+6] = R0; + 845:src/l502_user_process.c **** Proc_state.TX_buff_I = 0; + 517 .loc 1 845 0 + 518 02bc 92B0 [P2+8] = R2; + 846:src/l502_user_process.c **** Proc_state.TX_buff_state = 0; + 519 .loc 1 846 0 + 520 02be 91E60C00 B [P2+12] = R1; + 847:src/l502_user_process.c **** Proc_state.AVG_state = 0; + 521 .loc 1 847 0 + 522 02c2 91E61400 B [P2+20] = R1; + 848:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 523 .loc 1 848 0 + 524 02c6 12B1 [P2+16] = R2; + 849:src/l502_user_process.c **** Proc_state.AVG_buff_state = 0; + 525 .loc 1 849 0 + 526 02c8 91E61500 B [P2+21] = R1; + 850:src/l502_user_process.c **** Proc_state.FFT_buff_I = 0; + BFIN GAS /tmp/ccG6eBVz.s page 28 - 543 02e0 50A0 R0 = [P2+4]; + 527 .loc 1 850 0 + 528 02cc 92B1 [P2+24] = R2; + 851:src/l502_user_process.c **** Proc_state.FFT_buff_state = 0; + 529 .loc 1 851 0 + 530 02ce 91E61C00 B [P2+28] = R1; + 852:src/l502_user_process.c **** Proc_state.digital_word_prev = 0; + 531 .loc 1 852 0 + 532 02d2 12B2 [P2+32] = R2; + 853:src/l502_user_process.c **** Proc_state.digital_word_curr = 0; + 533 .loc 1 853 0 + 534 02d4 52B2 [P2+36] = R2; + 854:src/l502_user_process.c **** Proc_state.AVG_buff_active = A; + 535 .loc 1 854 0 + 536 02d6 91E61600 B [P2+22] = R1; + 855:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 537 .loc 1 855 0 + 538 02da 4AE10000 P2.H = _TX_buff_state; + 539 02de 1860 R0 = 3 (X); + 540 02e0 0AE13000 P2.L = _TX_buff_state; + 541 02e4 109B B [P2] = R0; + 542 02e6 4DE10000 P5.H = _TX_buff; + 543 02ea 0068 P0 = 0 (X); 544 .LVL58: - 545 02e2 0864 R0 += 1; - 546 02e4 50B0 [P2+4] = R0; - 520:src/l502_user_process.c **** stream_out_buf_free(size); - 547 .loc 1 520 0 - 548 02e6 0130 R0 = R1; - 521:src/l502_user_process.c **** } - 549 .loc 1 521 0 - 550 02e8 01E80000 UNLINK; - 520:src/l502_user_process.c **** stream_out_buf_free(size); - 551 .loc 1 520 0 - 552 02ec FFE28AFE jump.l _stream_out_buf_free; - 553 .LVL59: - 554 .LFE5: - 555 .size _sport_tx_done, .-_sport_tx_done - 556 .align 4 - 557 .global _hdma_send_done; - 558 .type _hdma_send_done, STT_FUNC; - 559 _hdma_send_done: - 560 .LFB4: - 499:src/l502_user_process.c **** void hdma_send_done(uint32_t* addr, uint32_t size) { - 561 .loc 1 499 0 - 562 .LVL60: - 500:src/l502_user_process.c **** ++streams_cnt[3]; - 563 .loc 1 500 0 - 564 02f0 4AE10000 P2.H = _streams_cnt; - 499:src/l502_user_process.c **** void hdma_send_done(uint32_t* addr, uint32_t size) { - 565 .loc 1 499 0 - 566 02f4 00E80000 LINK 0; - 567 .LCFI6: - 500:src/l502_user_process.c **** ++streams_cnt[3]; - 568 .loc 1 500 0 - 569 02f8 0AE10000 P2.L = _streams_cnt; - 570 02fc D0A0 R0 = [P2+12]; - 571 .LVL61: - 572 02fe 0864 R0 += 1; - 573 0300 D0B0 [P2+12] = R0; - 502:src/l502_user_process.c **** stream_in_buf_free(size); - 574 .loc 1 502 0 - 575 0302 0130 R0 = R1; - 503:src/l502_user_process.c **** } - 576 .loc 1 503 0 - 577 0304 01E80000 UNLINK; - 502:src/l502_user_process.c **** stream_in_buf_free(size); - 578 .loc 1 502 0 - 579 0308 FFE27CFE jump.l _stream_in_buf_free; - 580 .LVL62: - 581 .LFE4: - 582 .size _hdma_send_done, .-_hdma_send_done - 583 .align 4 - 584 .global _usr_out_proc_data; - 585 .type _usr_out_proc_data, STT_FUNC; - 586 _usr_out_proc_data: - 587 .LFB3: - 463:src/l502_user_process.c **** uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { - 588 .loc 1 463 0 - BFIN GAS /tmp/ccPntIEp.s page 26 + 545 02ec 0DE10000 P5.L = _TX_buff; + 546 .LBB16: + 858:src/l502_user_process.c **** TX_buff[i] = 0; + 547 .loc 1 858 0 + 548 02f0 0060 R0 = 0 (X); + 549 02f2 29E11027 P1 = 10000 (X); + 550 02f6 B2E00410 LSETUP (.L44, .L52) LC1 = P1; + 551 .L44: + 552 02fa 855E P2 = P5 + (P0 << 2); + 553 02fc 1093 [P2] = R0; + 554 .L52: + 857:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 555 .loc 1 857 0 + 556 02fe 086C P0 += 1; + 557 0300 BF2F jump.s .L49; + 558 .LVL59: + 559 .L11: + 560 .LBE16: + 867:src/l502_user_process.c **** l502_cmd_done(TX_buff_I_shadow, NULL, 0); + 561 .loc 1 867 0 + 562 0302 4AE10000 P2.H = _TX_buff_I_shadow; + 563 0306 0AE12C00 P2.L = _TX_buff_I_shadow; + 564 030a 1091 R0 = [P2]; + 565 030c 0160 R1 = 0 (X); + 566 030e 0260 R2 = 0 (X); + 567 0310 FFE378FE call _l502_cmd_done; + 568 .LVL60: + 569 0314 882E jump.s .L45; + 570 .LVL61: + 571 .L12: + 871:src/l502_user_process.c **** l502_cmd_done(dbg_receive_value, NULL, 0); + 572 .loc 1 871 0 + 573 0316 4AE10000 P2.H = _dbg_receive_value; + 574 031a 0AE10000 P2.L = _dbg_receive_value; + BFIN GAS /tmp/ccG6eBVz.s page 29 + 575 031e 1091 R0 = [P2]; + 576 0320 0160 R1 = 0 (X); + 577 0322 0260 R2 = 0 (X); + 578 0324 FFE36EFE call _l502_cmd_done; + 579 .LVL62: + 580 0328 7E2E jump.s .L45; + 581 .LFE6: + 582 .size _usr_cmd_process, .-_usr_cmd_process + 583 032a 0000 .align 4 + 584 .global _sport_tx_done; + 585 .type _sport_tx_done, STT_FUNC; + 586 _sport_tx_done: + 587 .LFB5: + 679:src/l502_user_process.c **** void sport_tx_done(uint32_t* addr, uint32_t size) { + 588 .loc 1 679 0 589 .LVL63: - 590 030c 7005 [--sp] = ( r7:6 ); - 591 - 592 .LCFI7: - 468:src/l502_user_process.c **** ++streams_cnt[2]; - 593 .loc 1 468 0 - 594 030e 4AE10000 P2.H = _streams_cnt; - 463:src/l502_user_process.c **** uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { - 595 .loc 1 463 0 - 596 0312 00E80300 LINK 12; - 597 .LCFI8: - 468:src/l502_user_process.c **** ++streams_cnt[2]; - 598 .loc 1 468 0 - 599 0316 0AE10000 P2.L = _streams_cnt; - 463:src/l502_user_process.c **** uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { - 600 .loc 1 463 0 - 601 031a 3030 R6 = R0; - 468:src/l502_user_process.c **** ++streams_cnt[2]; - 602 .loc 1 468 0 - 603 031c 90A0 R0 = [P2+8]; - 604 .LVL64: - 605 031e 0864 R0 += 1; - 463:src/l502_user_process.c **** uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { - 606 .loc 1 463 0 - 607 0320 82CE01CE R7 = ROT R1 BY 0 || - 607 90B00000 - 608 [P2+8] = R0 || - 609 nop; - 610 .LVL65: - 470:src/l502_user_process.c **** if (sport_tx_req_rdy()) { - 611 .loc 1 470 0 - 612 0328 FFE36CFE call _sport_tx_req_rdy; - 613 032c 000C cc =R0==0; - 614 032e 0E18 if cc jump .L57; - 615 0330 20E10040 R0 = 16384 (X); - 616 0334 070A cc =R7<=R0 (iu); - 617 0336 3806 if !cc R7 = R0; - 618 .LVL66: - 477:src/l502_user_process.c **** sport_tx_start_req(data, size); - 619 .loc 1 477 0 - 620 0338 0630 R0 = R6; - 621 033a 0F30 R1 = R7; - 622 033c FFE362FE call _sport_tx_start_req; - 482:src/l502_user_process.c **** } - 623 .loc 1 482 0 - 624 0340 0730 R0 = R7; - 625 0342 01E80000 UNLINK; - 626 0346 3005 ( r7:6 ) = [sp++]; - 627 - 628 .LCFI9: - 629 .LVL67: - 630 0348 1000 rts; - 631 .LVL68: - 632 .L57: - 470:src/l502_user_process.c **** if (sport_tx_req_rdy()) { - 633 .loc 1 470 0 - 634 034a 0760 R7 = 0 (X); - BFIN GAS /tmp/ccPntIEp.s page 27 - - - 635 .LVL69: - 482:src/l502_user_process.c **** } - 636 .loc 1 482 0 - 637 034c 0730 R0 = R7; - 638 034e 01E80000 UNLINK; - 639 0352 3005 ( r7:6 ) = [sp++]; - 640 - 641 .LCFI10: - 642 .LVL70: - 643 0354 1000 rts; - 644 .LFE3: - 645 .size _usr_out_proc_data, .-_usr_out_proc_data - 646 0356 0000 .align 4 - 647 .global _usr_in_proc_data; - 648 .type _usr_in_proc_data, STT_FUNC; - 649 _usr_in_proc_data: - 650 .LFB2: - 151:src/l502_user_process.c **** uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { - 651 .loc 1 151 0 - 652 .LVL71: - 653 0358 FB05 [--sp] = ( r7:7, p5:3 ); - 654 - 655 .LCFI11: - 155:src/l502_user_process.c **** ++streams_cnt[0]; - 656 .loc 1 155 0 - 657 035a 4AE10000 P2.H = _streams_cnt; - 151:src/l502_user_process.c **** uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { - 658 .loc 1 151 0 - 659 035e 00E80300 LINK 12; - 660 .LCFI12: - 155:src/l502_user_process.c **** ++streams_cnt[0]; - 661 .loc 1 155 0 - 662 0362 0AE10000 P2.L = _streams_cnt; - 151:src/l502_user_process.c **** uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { - 663 .loc 1 151 0 - 664 0366 0034 I0 = R0; - 155:src/l502_user_process.c **** ++streams_cnt[0]; - 665 .loc 1 155 0 - 666 0368 1091 R0 = [P2]; - 667 .LVL72: - 668 036a 0864 R0 += 1; - 170:src/l502_user_process.c **** if (Proc_state.mode == TRANSPARENT){ - 669 .loc 1 170 0 - 670 036c 4BE10000 P3.H = _Proc_state; - 155:src/l502_user_process.c **** ++streams_cnt[0]; - 671 .loc 1 155 0 - 672 0370 1093 [P2] = R0; - 170:src/l502_user_process.c **** if (Proc_state.mode == TRANSPARENT){ - 673 .loc 1 170 0 - 674 0372 0BE12C00 P3.L = _Proc_state; - 675 0376 5899 R0 = B [P3] (X); - 676 0378 4043 R0 = R0.B (Z); - 677 037a 080C cc =R0==1; - 678 037c 5518 if cc jump .L69; - 679 .L59: - 177:src/l502_user_process.c **** if (Proc_state.mode == AVG){ - 680 .loc 1 177 0 - BFIN GAS /tmp/ccPntIEp.s page 28 - - - 681 037e 4AE10000 P2.H = _Proc_state; - 682 0382 0AE12C00 P2.L = _Proc_state; - 683 0386 5899 R0 = B [P3] (X); - 684 0388 4043 R0 = R0.B (Z); - 685 038a 100C cc =R0==2; - 686 038c 2218 if cc jump .L70; - 687 .L61: - 395:src/l502_user_process.c **** if (hdma_send_req_rdy()) { - 688 .loc 1 395 0 - 689 038e FFE339FE call _hdma_send_req_rdy; - 690 .LVL73: - 691 0392 000C cc =R0==0; - 692 0394 1A18 if cc jump .L64; - 420:src/l502_user_process.c **** if (Proc_state.mode == AVG){ - 693 .loc 1 420 0 - 694 0396 5899 R0 = B [P3] (X); - 695 0398 4043 R0 = R0.B (Z); - 696 039a 100C cc =R0==2; - 697 039c 7318 if cc jump .L71; - 427:src/l502_user_process.c **** hdma_send_req_start(TX_buff, TX_buff_I, 0); - 698 .loc 1 427 0 - 699 039e 4DE10000 P5.H = _TX_buff_I; - 700 03a2 0DE11400 P5.L = _TX_buff_I; - 701 03a6 40E10000 R0.H = _TX_buff; - 702 03aa 2991 R1 = [P5]; - 703 03ac 00E10000 R0.L = _TX_buff; - 704 03b0 0260 R2 = 0 (X); - 705 03b2 FFE327FE call _hdma_send_req_start; - 428:src/l502_user_process.c **** TX_buff_I_shadow = TX_buff_I; - 706 .loc 1 428 0 - 707 03b6 4AE10000 P2.H = _TX_buff_I_shadow; - 708 03ba 2891 R0 = [P5]; - 709 03bc 0AE10000 P2.L = _TX_buff_I_shadow; - 710 03c0 1093 [P2] = R0; - 429:src/l502_user_process.c **** TX_buff_I = 0; - 711 .loc 1 429 0 - 712 03c2 0060 R0 = 0 (X); - 713 03c4 2893 [P5] = R0; - 430:src/l502_user_process.c **** return TX_buff_I_shadow; - 714 .loc 1 430 0 - 715 03c6 1091 R0 = [P2]; - 716 .L64: - 437:src/l502_user_process.c **** } - 717 .loc 1 437 0 - 718 03c8 01E80000 UNLINK; - 719 03cc BB05 ( r7:7, p5:3 ) = [sp++]; - 720 - 721 .LCFI13: - 722 03ce 1000 rts; - 723 .LVL74: - 724 .L70: - 178:src/l502_user_process.c **** data_I = 0; - 725 .loc 1 178 0 - 726 03d0 4DE10000 P5.H = _data_I; - 727 03d4 0060 R0 = 0 (X); - 728 03d6 0DE11800 P5.L = _data_I; - 729 03da 2893 [P5] = R0; - BFIN GAS /tmp/ccPntIEp.s page 29 - - - 180:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; - 730 .loc 1 180 0 - 731 03dc 10B1 [P2+16] = R0; - 181:src/l502_user_process.c **** while((data_I < size )&& (Proc_state.AVG_buff_I < AVG_BUFF_SIZE)){ - 732 .loc 1 181 0 - 733 03de 2891 R0 = [P5]; - 734 03e0 010A cc =R1<=R0 (iu); - 735 03e2 D61B if cc jump .L61; - 736 03e4 22E1E703 R2 = 999 (X); - 737 03e8 10A1 R0 = [P2+16]; - 738 03ea 100A cc =R0<=R2 (iu); - 739 03ec D113 if !cc jump .L61; - 740 03ee 42E10000 R2.H = _AVG_buff; - 741 03f2 02E10000 R2.L = _AVG_buff; - 186:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; - 742 .loc 1 186 0 - 743 03f6 4A34 I1 = P2; - 744 03f8 23E1E703 R3 = 999 (X); - 745 03fc 0520 jump.s .L62; - 746 .L72: - 181:src/l502_user_process.c **** while((data_I < size )&& (Proc_state.AVG_buff_I < AVG_BUFF_SIZE)){ - 747 .loc 1 181 0 - 748 03fe 9132 P2 = I1; - 749 0400 10A1 R0 = [P2+16]; - 750 0402 180A cc =R0<=R3 (iu); - 751 0404 C513 if !cc jump .L61; - 752 .L62: - 186:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; - 753 .loc 1 186 0 - 754 0406 A032 P4 = I0; - 755 0408 19AD P1 = [P3+16]; - 756 040a 6891 P0 = [P5]; - 757 040c 845E P2 = P4 + (P0 << 2); - 758 040e 2232 P4 = R2; - 759 0410 1091 R0 = [P2]; - 760 0412 086C P0 += 1; - 761 0414 8C5E P2 = P4 + (P1 << 2); - 762 0416 1093 [P2] = R0; - 763 0418 096C P1 += 1; - 764 041a 19BD [P3+16] = P1; - 765 041c 6893 [P5] = P0; - 181:src/l502_user_process.c **** while((data_I < size )&& (Proc_state.AVG_buff_I < AVG_BUFF_SIZE)){ - 766 .loc 1 181 0 - 767 041e 2891 R0 = [P5]; - 768 0420 010A cc =R1<=R0 (iu); - 769 0422 EE17 if !cc jump .L72 (bp); - 770 0424 B52F jump.s .L61; - 771 .L69: - 171:src/l502_user_process.c **** data_I = 0; - 772 .loc 1 171 0 - 773 0426 4DE10000 P5.H = _data_I; - 774 042a 0DE11800 P5.L = _data_I; - 775 042e 0060 R0 = 0 (X); - 776 0430 2893 [P5] = R0; - 172:src/l502_user_process.c **** while((data_I < size )&& (TX_buff_I < TX_BUFF_SIZE)){ - 777 .loc 1 172 0 - 778 0432 2891 R0 = [P5]; - BFIN GAS /tmp/ccPntIEp.s page 30 - - - 779 0434 010A cc =R1<=R0 (iu); - 780 0436 A41B if cc jump .L59; - 781 0438 4CE10000 P4.H = _TX_buff_I; - 782 043c 0CE11400 P4.L = _TX_buff_I; - 783 0440 22E1E703 R2 = 999 (X); - 784 0444 2091 R0 = [P4]; - 785 0446 100A cc =R0<=R2 (iu); - 786 0448 9B13 if !cc jump .L59; - 787 044a 43E10000 R3.H = _TX_buff; - 788 044e 03E10000 R3.L = _TX_buff; - 173:src/l502_user_process.c **** TX_buff[TX_buff_I++] = data[data_I++]; - 789 .loc 1 173 0 - 790 0452 5430 R2 = P4; - 791 0454 27E1E703 R7 = 999 (X); - 792 0458 0520 jump.s .L60; - 793 .L73: - 172:src/l502_user_process.c **** while((data_I < size )&& (TX_buff_I < TX_BUFF_SIZE)){ - 794 .loc 1 172 0 - 795 045a 1232 P2 = R2; - 796 045c 1091 R0 = [P2]; - 797 045e 380A cc =R0<=R7 (iu); - 798 0460 8F13 if !cc jump .L59; - 799 .L60: - 173:src/l502_user_process.c **** TX_buff[TX_buff_I++] = data[data_I++]; - 800 .loc 1 173 0 - 801 0462 9032 P2 = I0; - 802 0464 6191 P1 = [P4]; - 803 0466 6891 P0 = [P5]; - 804 0468 825E P2 = P2 + (P0 << 2); - 805 046a 1091 R0 = [P2]; - 806 046c 1332 P2 = R3; - 807 046e 086C P0 += 1; - 808 0470 8A5E P2 = P2 + (P1 << 2); - 809 0472 1093 [P2] = R0; - 810 0474 096C P1 += 1; - 811 0476 6193 [P4] = P1; - 812 0478 6893 [P5] = P0; - 172:src/l502_user_process.c **** while((data_I < size )&& (TX_buff_I < TX_BUFF_SIZE)){ - 813 .loc 1 172 0 - 814 047a 2891 R0 = [P5]; - 815 047c 8809 cc =R0> 24; + 837 .LVL92: + 838 0478 000C cc =R0==0; + 839 047a 8014 if !cc jump .L71 (bp); + 215:src/l502_user_process.c **** DY_SYN_2_value_prev = DY_SYN_2_value; + 840 .loc 1 215 0 + 841 047c 49E10000 P1.H = _DY_SYN_2_value; + 842 0480 09E12500 P1.L = _DY_SYN_2_value; + 843 0484 4AE10000 P2.H = _DY_SYN_2_value_prev; + 844 0488 4899 R0 = B [P1] (X); + 845 .LVL93: + 846 048a 0AE12600 P2.L = _DY_SYN_2_value_prev; + 847 048e 109B B [P2] = R0; + 216:src/l502_user_process.c **** if (word & 0b1 << 17){ + 848 .loc 1 216 0 + 849 0490 8948 cc = !BITTST (R1,17); + 850 0492 951C if cc jump .L72 (bp); + 217:src/l502_user_process.c **** DY_SYN_2_value = 1; + 851 .loc 1 217 0 + 852 0494 0A60 R2 = 1 (X); + 222:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ //new cycle started + 853 .loc 1 222 0 + 854 0496 4043 R0 = R0.B (Z); + 217:src/l502_user_process.c **** DY_SYN_2_value = 1; + 855 .loc 1 217 0 + 856 0498 0A9B B [P1] = R2; + 222:src/l502_user_process.c **** if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ //new cycle started + 857 .loc 1 222 0 + 858 049a 000C cc =R0==0; + 859 049c DD17 if !cc jump .L93 (bp); + BFIN GAS /tmp/ccG6eBVz.s page 35 + + + 224:src/l502_user_process.c **** Proc_state.average_N ++; + 860 .loc 1 224 0 + 861 049e 48E10000 P0.H = _Proc_state; + 862 04a2 08E12C00 P0.L = _Proc_state; + 863 04a6 C0A8 R0 = W [P0+6] (X); + 864 04a8 0864 R0 += 1; + 231:src/l502_user_process.c **** TX_buff_I = 0; + 865 .loc 1 231 0 + 866 04aa 0E32 P1 = R6; + 224:src/l502_user_process.c **** Proc_state.average_N ++; + 867 .loc 1 224 0 + 868 04ac C0B4 W [P0+6] = R0; + 225:src/l502_user_process.c **** Proc_state.AVG_buff_I = 0; + 869 .loc 1 225 0 + 870 04ae 0160 R1 = 0 (X); + 871 .LVL94: + 872 04b0 01B1 [P0+16] = R1; + 226:src/l502_user_process.c **** Proc_state.LFSM_state = CYCLE_STARTED; + 873 .loc 1 226 0 + 874 04b2 82E60300 B [P0+3] = R2; + 229:src/l502_user_process.c **** Proc_state.AVG_state = FULLY_COMPLETED; + 875 .loc 1 229 0 + 876 04b6 1860 R0 = 3 (X); + 877 04b8 80E61400 B [P0+20] = R0; + 231:src/l502_user_process.c **** TX_buff_I = 0; + 878 .loc 1 231 0 + 879 04bc 0993 [P1] = R1; + 880 .LBB20: + 232:src/l502_user_process.c **** for (uint32_t i = 0; ((TX_buff_I < TX_BUFF_SIZE) && (i < AVG_BUFF_SIZE)); i++){ + 881 .loc 1 232 0 + 882 04be 0891 R0 = [P1]; + 883 04c0 21E10F27 R1 = 9999 (X); + 884 04c4 080A cc =R0<=R1 (iu); + 885 04c6 1911 if !cc jump .L100; + 886 04c8 4DE10000 P5.H = _TX_buff; + 887 04cc 4BE10000 P3.H = _AVG_buff; + 888 04d0 0468 P4 = 0 (X); + 889 04d2 0DE10000 P5.L = _TX_buff; + 890 04d6 0BE10000 P3.L = _AVG_buff; + 891 04da 28E1E803 P0 = 1000 (X); + 892 04de 21E10F27 R1 = 9999 (X); + 893 04e2 B2E01600 LSETUP (.L75, .L106) LC1 = P0; + 894 .L75: + 235:src/l502_user_process.c **** TX_buff[TX_buff_I++] = AVG_buff[i]; + 895 .loc 1 235 0 + 896 04e6 1632 P2 = R6; + 897 04e8 5191 P1 = [P2]; + 898 04ea 4AE10000 P2.H = _AVG_buff; + 899 04ee 0AE10000 P2.L = _AVG_buff; + 900 04f2 A25E P2 = P2 + (P4 << 2); + 901 04f4 1091 R0 = [P2]; + 902 04f6 4AE10000 P2.H = _TX_buff; + 903 04fa 0AE10000 P2.L = _TX_buff; + 904 04fe 8A5E P2 = P2 + (P1 << 2); + 905 0500 1093 [P2] = R0; + 906 0502 1632 P2 = R6; + 907 0504 096C P1 += 1; + BFIN GAS /tmp/ccG6eBVz.s page 36 + + + 908 0506 5193 [P2] = P1; + 232:src/l502_user_process.c **** for (uint32_t i = 0; ((TX_buff_I < TX_BUFF_SIZE) && (i < AVG_BUFF_SIZE)); i++){ + 909 .loc 1 232 0 + 910 0508 1091 R0 = [P2]; + 911 050a 080A cc =R0<=R1 (iu); + 912 050c 0210 if !cc jump .L74; + 913 .L106: + 914 050e 0C6C P4 += 1; + 915 .L74: + 916 0510 0068 P0 = 0 (X); + 917 .LVL95: + 918 .LBE20: + 919 .LBB21: + 242:src/l502_user_process.c **** AVG_buff[i] = 0xC2321123; + 920 .loc 1 242 0 + 921 0512 29E1E803 P1 = 1000 (X); + 922 0516 B2E00410 LSETUP (.L76, .L105) LC1 = P1; + 923 .L76: + 924 051a 835E P2 = P3 + (P0 << 2); + 925 051c 1593 [P2] = R5; + 926 .L105: + 241:src/l502_user_process.c **** for (uint32_t i = 0; i < AVG_BUFF_SIZE; i++ ){ + 927 .loc 1 241 0 + 928 051e 086C P0 += 1; + 929 .LBE21: + 245:src/l502_user_process.c **** TX_buff_state = TODO_TX; + 930 .loc 1 245 0 + 931 0520 48E10000 P0.H = _TX_buff_state; + 932 .LVL96: + 933 0524 08E13000 P0.L = _TX_buff_state; + 934 0528 0860 R0 = 1 (X); + 935 052a 009B B [P0] = R0; + 936 052c 0160 R1 = 0 (X); + 937 .LVL97: + 938 052e 28E11027 P0 = 10000 (X); + 939 0532 B2E00900 LSETUP (.L77, .L104) LC1 = P0; + 940 .L77: + 941 .LBB22: + 248:src/l502_user_process.c **** TX_buff_shadow[i] = TX_buff[i]; + 942 .loc 1 248 0 + 943 0536 0932 P1 = R1; + 944 0538 1C32 P3 = R4; + 247:src/l502_user_process.c **** for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + 945 .loc 1 247 0 + 946 053a 0964 R1 += 1; + 248:src/l502_user_process.c **** TX_buff_shadow[i] = TX_buff[i]; + 947 .loc 1 248 0 + 948 053c 4A44 P2 = P1 << 2; + 949 053e 555A P1 = P5 + P2; + 950 0540 0891 R0 = [P1]; + 951 0542 935A P2 = P3 + P2; + 952 .L104: + 953 0544 1093 [P2] = R0; + 954 .LBE22: + 250:src/l502_user_process.c **** hdma_send_req_start(TX_buff_shadow, TX_buff_I, 0); + 955 .loc 1 250 0 + 956 0546 0632 P0 = R6; + BFIN GAS /tmp/ccG6eBVz.s page 37 + + + 957 0548 40E10000 R0.H = _TX_buff_shadow; + 958 054c F3BB [FP+-4] = R3; + 959 .LVL98: + 960 054e 0260 R2 = 0 (X); + 961 0550 00E10000 R0.L = _TX_buff_shadow; + 962 0554 0191 R1 = [P0]; + 963 .LVL99: + 964 0556 FFE355FD call _hdma_send_req_start; + 251:src/l502_user_process.c **** hdma_send_req_start(TX_marker, 10, 0); + 965 .loc 1 251 0 + 966 055a 40E10000 R0.H = _TX_marker; + 967 055e 00E10400 R0.L = _TX_marker; + 968 0562 5160 R1 = 10 (X); + 969 0564 0260 R2 = 0 (X); + 970 0566 FFE34DFD call _hdma_send_req_start; + 256:src/l502_user_process.c **** TX_buff_state = TX_DONE; + 971 .loc 1 256 0 + 972 056a 49E10000 P1.H = _TX_buff_state; + 973 056e 1860 R0 = 3 (X); + 974 0570 09E13000 P1.L = _TX_buff_state; + 975 0574 089B B [P1] = R0; + 976 0576 F3B9 R3 = [FP+-4]; + 977 0578 6F2F jump.s .L93; + 978 .LVL100: + 979 .L71: + 266:src/l502_user_process.c **** }else if(header == 0xD0){ //first phy channel + 980 .loc 1 266 0 + 981 057a 22E1D000 R2 = 208 (X); + 982 057e 1008 cc =R0==R2; + 983 0580 6B17 if !cc jump .L93 (bp); + 272:src/l502_user_process.c **** AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000 | val; + 984 .loc 1 272 0 + 985 0582 48E10000 P0.H = _Proc_state; + 986 0586 08E12C00 P0.L = _Proc_state; + 987 058a F863 R0 = -1 (X); + 988 .LVL101: + 989 058c 01AD P1 = [P0+16]; + 990 058e 40E1FF00 R0.H = 255; + 991 0592 0154 R0 = R1 & R0; + 992 0594 F963 R1 = -1 (X); + 993 .LVL102: + 994 0596 4BE10000 P3.H = _AVG_buff; + 995 059a F14F R1 <<= 30; + 996 059c 0BE10000 P3.L = _AVG_buff; + 997 05a0 0856 R0 = R0 | R1; + 998 05a2 8B5E P2 = P3 + (P1 << 2); + 999 05a4 1093 [P2] = R0; + 1000 05a6 096C P1 += 1; + 1001 05a8 01BD [P0+16] = P1; + 274:src/l502_user_process.c **** if (Proc_state.AVG_buff_I >= AVG_BUFF_SIZE){ + 1002 .loc 1 274 0 + 1003 05aa 00A1 R0 = [P0+16]; + 1004 05ac 21E1E703 R1 = 999 (X); + 1005 05b0 080A cc =R0<=R1 (iu); + 1006 05b2 521F if cc jump .L93 (bp); + 275:src/l502_user_process.c **** Proc_state.AVG_state = STEP_COMPLETED; + 1007 .loc 1 275 0 + BFIN GAS /tmp/ccG6eBVz.s page 38 + + + 1008 05b4 1060 R0 = 2 (X); + 1009 05b6 80E61400 B [P0+20] = R0; + 1010 05ba 4E2F jump.s .L93; + 1011 .LVL103: + 1012 .L72: + 219:src/l502_user_process.c **** DY_SYN_2_value = 0; + 1013 .loc 1 219 0 + 1014 05bc 4BE10000 P3.H = _DY_SYN_2_value; + 1015 05c0 0060 R0 = 0 (X); + 1016 05c2 0BE12500 P3.L = _DY_SYN_2_value; + 1017 05c6 189B B [P3] = R0; + 1018 05c8 472F jump.s .L93; + 1019 .LVL104: + 1020 .L96: + 1021 .LBE23: + 193:src/l502_user_process.c **** if (TX_buff_state == FILLING){ + 1022 .loc 1 193 0 + 1023 05ca 4BE10000 P3.H = _TX_buff_state; + 1024 05ce 0BE13000 P3.L = _TX_buff_state; + 1025 05d2 5899 R0 = B [P3] (X); + 1026 05d4 4043 R0 = R0.B (Z); + 1027 05d6 000C cc =R0==0; + 1028 05d8 0E17 if !cc jump .L66 (bp); + 194:src/l502_user_process.c **** data_I = 0; + 1029 .loc 1 194 0 + 1030 05da 47E10000 R7.H = _data_I; + 1031 05de 07E11800 R7.L = _data_I; + 1032 05e2 0732 P0 = R7; + 1033 .LVL105: + 195:src/l502_user_process.c **** TX_buff_I = 0; + 1034 .loc 1 195 0 + 1035 05e4 4CE10000 P4.H = _TX_buff_I; + 1036 05e8 0CE11400 P4.L = _TX_buff_I; + 194:src/l502_user_process.c **** data_I = 0; + 1037 .loc 1 194 0 + 1038 05ec 0093 [P0] = R0; + 195:src/l502_user_process.c **** TX_buff_I = 0; + 1039 .loc 1 195 0 + 1040 05ee 2093 [P4] = R0; + 196:src/l502_user_process.c **** while((++data_I < size )&& (++TX_buff_I < TX_BUFF_SIZE)){ + 1041 .loc 1 196 0 + 1042 05f0 0091 R0 = [P0]; + 1043 05f2 0864 R0 += 1; + 1044 05f4 0093 [P0] = R0; + 1045 05f6 0091 R0 = [P0]; + 1046 05f8 030A cc =R3<=R0 (iu); + 1047 05fa 2618 if cc jump .L67; + 1048 05fc 21E10F27 R1 = 9999 (X); + 1049 0600 2091 R0 = [P4]; + 1050 0602 0864 R0 += 1; + 1051 0604 2093 [P4] = R0; + 1052 0606 2091 R0 = [P4]; + 1053 0608 080A cc =R0<=R1 (iu); + 1054 060a 1E10 if !cc jump .L67; + 1055 060c 4DE10000 P5.H = _TX_buff; + 1056 0610 0DE10000 P5.L = _TX_buff; + 198:src/l502_user_process.c **** TX_buff[TX_buff_I] = data[data_I]; + BFIN GAS /tmp/ccG6eBVz.s page 39 + + + 1057 .loc 1 198 0 + 1058 0614 4432 P0 = P4; + 1059 0616 21E10F27 R1 = 9999 (X); + 1060 061a 0720 jump.s .L68; + 1061 .L101: + 196:src/l502_user_process.c **** while((++data_I < size )&& (++TX_buff_I < TX_BUFF_SIZE)){ + 1062 .loc 1 196 0 + 1063 061c 0091 R0 = [P0]; + 1064 061e 0864 R0 += 1; + 1065 0620 0093 [P0] = R0; + 1066 0622 0091 R0 = [P0]; + 1067 0624 080A cc =R0<=R1 (iu); + 1068 0626 1010 if !cc jump .L67; + 1069 .L68: + 198:src/l502_user_process.c **** TX_buff[TX_buff_I] = data[data_I]; + 1070 .loc 1 198 0 + 1071 0628 1F32 P3 = R7; + 1072 062a 6191 P1 = [P4]; + 1073 062c 5A91 P2 = [P3]; + 1074 062e 7BAE P3 = [FP+36]; + 1075 0630 4D5E P1 = P5 + (P1 << 2); + 1076 0632 935E P2 = P3 + (P2 << 2); + 1077 0634 1091 R0 = [P2]; + 1078 0636 0893 [P1] = R0; + 196:src/l502_user_process.c **** while((++data_I < size )&& (++TX_buff_I < TX_BUFF_SIZE)){ + 1079 .loc 1 196 0 + 1080 0638 0F32 P1 = R7; + 1081 063a 0891 R0 = [P1]; + 1082 063c 0864 R0 += 1; + 1083 063e 0893 [P1] = R0; + 1084 0640 0891 R0 = [P1]; + 1085 0642 9809 cc =R0!5Hm@@K)_@mfI&b4MuA*_1S4pLTnHg(5FtRoK*B`@ z6)7^YyJ|!N1+-MrKppR%u?w{psJ#I%ReN`-bs$K8+dNsXkSkzZzp*BvBQod?mr!NS$I=IX4gc#?>Z#! z_HQKP2RCmQuC_-I=%XvJW)zdPXE3m~JL&S-|0Xus9)KORYw#Uqzd@#DpT_!1<`I`t zE=g|@sO%L|$v%qVx05g|W#tndm)0ef3C`Fk!Rgdi_Pg#lSxBFqk7L=naU?41FOm|h zB{Ke;%wmw%`jSbQx=HJPx`RRVR!z53Bjv$Mrqe%HLbmGpw6h`M2oHUS+wK~NR{ivT z>gjH+C2yWbB3>-F+l^g`Kfuj>z-{Yl67iHiq_rfihOKaeByNz3hqUNkyjY<_ZsKv; z35QA5k9E1m>liB0FB44Cf8(hm+U;0_mWqFeWW7(;aZ>B)wC;dEfuAzRWjuG0C*7T#o828hL-SLarZKpo|cj}`KA1;a5A2vz{uICslY2!KPdax7yH(c`#H>`?_Uth z?+fovNz=!|hf}gbr`$M+kzc-EVs@a1EnU4@=|9TupTrt9md8jb``7R{Dft!exvL#c z!ewyr`}M7@)CJJq_irbCyQH7*n<_X@Ej_7?XTTc5v)~*x^^|aPYTnWld}w;cpBXrS zQmXJMvLH*`va_z6Ag=6H!Fox%R%E~$DTezMpA`#B7Gow4T^@^I-&Da7+1|?VxztO$ zo{^8b`g&$5BW+fN=r~)z6za}D%s;?$ECWX3X{;Gd&CaTcI_gow8!(^{JM+z%r!Jk zb|G(7EPr!JR29xSmNICF_HD7kqX(B>eQ)PhzqY>DXTTFbuNb zQpkoNmq9*^gi%lcqhSnO4uwzzAs7qepcux(1egd{KnYBOD`7HBfvIp6 zOoLLG4m03tD1&R@T9^s5U^bLP1yn*6%z?Qu52~RC=EHSR3)jN}SO_=3jqo$L2^PU( zsDpZFfJRsXO|TT2VHvc*a=008fmT=nx57%e4OYQwXoEGd7S=&KtcMM7J9NNC*aV%> z1)E_DY=v!b2iysF!FJdIcf&n!FYJW-U>E!xcEkO!2g1+|55OC7UVsoX%GZ%=eq#rHqX-@5y+Mzu#Or#biO>LTxzI*nGsPwmK@GUtG0O3IvIWrG1}ZR5*Ehs+myXZ0a- zqO4ZJe-u&K7&ZBoF%s-k1VKlYUA~5=7~j4QJ35biulD%y_91u zdZMT0elXS3a!HusX}K%R^|V|SuJg3q7#ch+7lsy3%dJ69u2TO_Vm5jDAbPt}bKDNO zI&^y-a&vgd({g|4^|V|f9`m#up^kc5t`pCAy39Pj*eRMSmx@n4OD+^&dRnd(=R7T! ziyu5KHw%mP${ah*;5sKSLoOA=JWFmCxt>04s_UHeF1b)#N8F#j5R(#kDXmDogeWtd-DHsqQ2K=Z-cW~_n03VoNc<;Y-yzQVRO3CDaw%3^m8mLmGuNE{jzA1cA2atPC8K& zmN1>OW~scrY93hPOx6+ej4b^$~`S7$_1XTG0T^d z@nGbWrOsTf&zZ5ySltPRe2ZO6mBSdX4@FZY%QVof*P9K?SmY5Cm0(#^4QHKL@Md+B zXo8c>*F=qw!%(kh$uZ~&(ab=OL4BV8g;~@>r4XTSi&fx`s!n^|eda#8b(%TY;uKve nN0~wnBB|43Q6-`oPtG#eh@KJi>pfqNE-OS|9r?D!*{lBx5Bpte delta 3856 zcma);YjjlA701t+JChqAArDAG2#|yX10f_66a+DlfQaE0ARuDprGP|1g*>n%ApulE z2#_$e2Vc}Q1!+Y?3K;R#xywZ>55?Bn!iR!TEp0!zq}UeL0_<gd%lEm|p`l8;|6$;i5&V5@Apg!u#Wsb%dKdDbFVvHJ&bLZMxu)Xy`CZqSUC8Y&k)Uoh&GM;?xH#_16A1{b~29XE``Rz3AW>ghJE zC2y8TZ?s5mn;ZKydaRqf%N^_4B%&$Zp|vEfg-x(P5;sf54lQ;&TBJ~in|OqAOc$wo zUu0FkLr}f_vcNcfo~u5h-N-6zsrWU->o(cP39U;QJqLdPKV^={eC{SsxLE~g39GAD zDSc8`5~C7zKvv`TY5iM_K7CYQ$@!yFq20aH(t7xkwvfVOQ~v_p(?`aBInBR>PWB!( z{GxXKONeWTE(_hUX2yOzd36`WlB4vP zh=a3B&0yk~Ju>GES4<~5l0DNMFJj#PUNTq0^&cwCzg;1zdZpgtg{xk|?{XCC|&HD1?n)xAQQ@dJuu+;bkmROxb950Rw%M0Q?9 ze2uKtJ2|nRl`$vBQCyZH{X+He0~`ALM#4A$lw39kTyPl5x!4O$N0$ z!S@90M;_uP9ScoJNFMiY&Ulp6LlhWVid6)B(s+rvotP%<0n68}Rr-{izI=&?$(Mhqlsy;vE+J>y=k9K^Nw@=UzhD2c zmAVGnd;ePS?GV4bJGob>rAJqC4OsoS=3bzt9vfPbn6>;24^2<_oQVTiO67NA=H`f6 z@()*y5mnAAw?fh;i5aklir~KDlOtjAB23|;r$iz+HpPWK!G7N@83rDX6p7d=W$FEvjJ zXAn@h5#zF@f;Xi~`bar(sUBAOaoEA2Y%a6Zm2K;_IMEM}?b}cLZuvsxNyU?PY}n-2 z)-^r#?0aXeX)6k+%<%iHqptX=&j0h3%?!IXtRRMAQ*>r@&EwJ4(+Wxp(D!ZFi~eQk zPf4%ZUY*eTMArD4CJ`_L@ z3SlJN33tIL7!7yB7#Iupz&N-UieNlUfMO_ti7*N7gUN6|Oo0cW6sE#7m<}^wCX~S} zm<@BF9OlA2co62pL$ClIh9AKrun-o(Vpsx8;Zb-DmcepZ0guBEc zA#t9b5mrI-0nVr!v%_kIWp33t$=x?+AuarF&mkTBOP(!#e7k2aq0j-(mX5yDv!$(n+p}ky ze{XRLii&Yx@+4{O|L)n+-hboS(&XRtZ0YbV_A6^_GE1ABtW-I<0iGls{$S6(U|wx< zQevgCAAj3z9HdnFZ(rm|($FvS?DOUd?jq^vYdlH%`g+fnzM#porMutd+0EQv@$Bc# z_&uU8 z;4}Yhb{6UVrgWRLS!bJ1wmId5X0{M>)y!^TJJOS$;1Hy)G^L-4P2DcDF%s1!x6|fg zi!)9iFax(UsxdRRJL~jib9}pVN>`Y+9UPT3W%JpjBu_F&cM#CgJz}R*ru79=-^x_d zww&Qe5~ZKvb53lcbIhB#sdK!QEgUtmZ3Kr|%N*K;NN}TiL~MeUDQa`3#7aNW?n$>y zn`B7;@S#X7MEZx1Joi1u5x2AsmqZ#abJGHN?hJFKjXm8onY)~np7QTMng9O8iQNzH Ia`x)~0b6}(9smFU diff --git a/build/release/objs/l502_user_process.o b/build/release/objs/l502_user_process.o index a439112045d343dcc934545d0a498dfeb21f0e1b..89d101db58d7ef145214062a46f2b60b347de007 100644 GIT binary patch literal 16672 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 literal 12892 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 diff --git a/src/l502_stream.c b/src/l502_stream.c index 8feef2e..419e6b9 100644 --- a/src/l502_stream.c +++ b/src/l502_stream.c @@ -29,8 +29,11 @@ #include "l502_user_process.h" volatile uint32_t TX_buff[TX_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); +volatile uint32_t TX_buff_shadow[TX_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); + //volatile uint32_t RAW_data_buff[RAW_DATA_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); volatile uint32_t AVG_buff[AVG_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); +//volatile uint32_t AVG_buff_B[AVG_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); //volatile uint32_t FFT_buff[FFT_BUFF_SIZE] __attribute__((section(".sdram_noinit"))); diff --git a/src/l502_user_process.c b/src/l502_user_process.c index d264014..525941d 100644 --- a/src/l502_user_process.c +++ b/src/l502_user_process.c @@ -44,7 +44,7 @@ uint32_t streams_cnt[4] = {0,}; //#define LFSM_DATALEN 1024 - +volatile uint32_t dbg_receive_value = 1234321; //#pragma section("sdram_noinit", NO_INIT) @@ -83,10 +83,15 @@ struct dataprocess_typedef { extern volatile uint32_t TX_buff[]; //size: TX_BUFF_SIZE +extern volatile uint32_t TX_buff_shadow[]; //size: TX_BUFF_SIZE //extern volatile uint32_t RAW_data_buff[]; //size: RAW_DATA_BUFF_SIZE extern volatile uint32_t AVG_buff[]; //size: AVG_BUFF_SIZE +//extern volatile uint32_t AVG_buff_B[]; //size: AVG_BUFF_SIZE //extern volatile uint32_t FFT_buff[]; //size: FFT_BUFF_SIZE + +volatile uint32_t TX_marker[10] = {0xFE00000F,0xFE0000F0, 0xFE000F00, 0xFE00F000, 0xFE0F0000,0xFEF00000, 0xFE0F0000,0xFE00F000, 0xFE000F00, 0xFE0000F0}; + volatile struct dataprocessor_dypedef{ uint8_t mode; uint8_t mode_next; @@ -97,7 +102,9 @@ volatile struct dataprocessor_dypedef{ uint32_t TX_buff_I; uint8_t TX_buff_state; //0 --blocked, 1 -- filling, 2 -- ready to send uint32_t AVG_buff_I; + uint8_t AVG_state; uint8_t AVG_buff_state; + uint8_t AVG_buff_active; uint32_t FFT_buff_I; uint8_t FFT_buff_state; uint32_t digital_word_prev; @@ -112,7 +119,8 @@ volatile uint32_t TX_buff_I_shadow = 123321; volatile uint32_t data_I = 0; volatile uint32_t send_size = 0; - +volatile uint8_t TX_buff_state = TX_DONE; //FILLING, TODO_TX, TRANSMITTING, TX_DONE, BUFF_READY, +volatile uint32_t tx_val = 0; //int f_sport_test(void); void l502_stream_init(void); @@ -153,6 +161,18 @@ uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { передачу. Иначе возвращаем 0, чтобы на обработку этих данных функцию вызвали бы позже */ ++streams_cnt[0]; + + + + //clear TX_buff + if (TX_buff_state == TX_DONE){ + for (int i = 0; i < TX_BUFF_SIZE; ++i){ + //TX_buff[i] = 0x00000123; + TX_buff[i] = tx_val++ | 0xEE000000; + //TX_buff[i] = size; + } + TX_buff_state = FILLING; + } /* for (int i = 0; i < TX_BUFF_SIZE; ++i){ TX_buff[i] = 0x00000000; @@ -168,30 +188,141 @@ uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { //* //simple transparent mode if (Proc_state.mode == TRANSPARENT){ - data_I = 0; - while((data_I < size )&& (TX_buff_I < TX_BUFF_SIZE)){ - TX_buff[TX_buff_I++] = data[data_I++]; + //++Proc_state.average_N; + + if (TX_buff_state == FILLING){ + data_I = 0; + TX_buff_I = 0; + while((++data_I < size )&& (++TX_buff_I < TX_BUFF_SIZE)){ + //; + TX_buff[TX_buff_I] = data[data_I]; + } + + TX_buff_state = TODO_TX; + //tx_val = 0; + } + //TX_buff_state = DUMMY; + + } + //TX_buff_I = TX_BUFF_SIZE; + + if (Proc_state.mode == AVG){ + while(++data_I < size ){ + uint32_t word = data[data_I]; + uint32_t val = word & 0x00FFFFFF; + uint8_t header = (uint8_t)(word >> 24); + if (header == 0x00){ //digital_channel. switches LFSM state machine + DY_SYN_2_value_prev = DY_SYN_2_value; + if (word & 0b1 << 17){ + DY_SYN_2_value = 1; + }else{ + DY_SYN_2_value = 0; + } + + if ((DY_SYN_2_value == 1)&& (DY_SYN_2_value_prev == 0)){ //new cycle started + //data[data_I] = 0xB00000000; + Proc_state.average_N ++; + Proc_state.AVG_buff_I = 0; + Proc_state.LFSM_state = CYCLE_STARTED; + //if (Proc_state.average_N >= Proc_state.average_N_max){ //whole average ended + if (1){ + Proc_state.AVG_state = FULLY_COMPLETED; + //averaging completed => copy average results to TX_buff and start avg again + TX_buff_I = 0; + for (uint32_t i = 0; ((TX_buff_I < TX_BUFF_SIZE) && (i < AVG_BUFF_SIZE)); i++){ +// uint32_t i = 0; +// while ((TX_buff_I < TX_BUFF_SIZE) && (i < AVG_BUFF_SIZE)){ + TX_buff[TX_buff_I++] = AVG_buff[i]; + //TX_buff[TX_buff_I++] = 0xB0000000 + Proc_state.average_N; + //TX_buff[TX_buff_I++] = 0xC1000000; + } + + //clear AVG_buff: + for (uint32_t i = 0; i < AVG_BUFF_SIZE; i++ ){ + AVG_buff[i] = 0xC2321123; + } + + TX_buff_state = TODO_TX; + + for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + TX_buff_shadow[i] = TX_buff[i]; + } + hdma_send_req_start(TX_buff_shadow, TX_buff_I, 0); + hdma_send_req_start(TX_marker, 10, 0); + + + // hdma_send_req_start(TX_buff, TX_BUFF_SIZE, 0); + //TX_buff_state = TRANSMITTING; + TX_buff_state = TX_DONE; + + + }else{ // + Proc_state.AVG_state = STEP_RUNNING; + Proc_state.AVG_buff_I = 0; + + } + } + + }else if(header == 0xD0){ //first phy channel +// if (Proc_state.AVG_state == STEP_RUNNING){ +// if (Proc_state.LFSM_state == CYCLE_STARTED){ + if (1){ + if (1){ + // AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000 | (0x00FFFFFF & (AVG_buff[Proc_state.AVG_buff_I] + val)); + AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000 | val; + //AVG_buff[Proc_state.AVG_buff_I++] = 0xC0000000; + if (Proc_state.AVG_buff_I >= AVG_BUFF_SIZE){ + Proc_state.AVG_state = STEP_COMPLETED; + } + } + } + } } } + + + +/* if (Proc_state.mode == AVG){ data_I = 0; //TX_buff_I = 0; Proc_state.AVG_buff_I = 0; - while((data_I < size )&& (Proc_state.AVG_buff_I < AVG_BUFF_SIZE)){ - //uint32_t word = data[data_I]; - //uint32_t avg_word = AVG_buff[Proc_state.AVG_buff_I++]; - //AVG_buff[Proc_state.AVG_buff_I] = (avg_word & 0x00FFFFFF) + (word & 0x00FFFFFF); - //AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; - AVG_buff[Proc_state.AVG_buff_I] = data[data_I]; - Proc_state.AVG_buff_I++; - data_I++; + if (Proc_state.AVG_buff_active == A){ + while((data_I < size )&& (Proc_state.AVG_buff_I < (AVG_BUFF_SIZE - 10))){ + uint32_t word = data[data_I]; + //uint32_t avg_word = AVG_buff_A[Proc_state.AVG_buff_I++]; + //AVG_buff_A[Proc_state.AVG_buff_I] = (avg_word & 0x007FFFFF) + (word & 0x007FFFFF); + //AVG_buff_A[Proc_state.AVG_buff_I] = 0xDD000000 | (word & 0x00FFFFFF); + AVG_buff_A[Proc_state.AVG_buff_I] = word; + //AVG_buff[Proc_state.AVG_buff_I++] = data[data_I++]; + //AVG_buff[Proc_state.AVG_buff_I] = data[data_I]; + //uint32_t word = data[data_I]; + //AVG_buff[Proc_state.AVG_buff_I] = word; + //AVG_buff_A[Proc_state.AVG_buff_I] = 0xDD000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + + Proc_state.AVG_buff_I++; + data_I++; + } + //Proc_state.AVG_buff_I++; + //AVG_buff_A[Proc_state.AVG_buff_I] = 0xDD000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + //data_I++; + //Proc_state.AVG_buff_I = 0; + }else{ + while((data_I < size )&& (Proc_state.AVG_buff_I < (AVG_BUFF_SIZE - 10))){ + //uint32_t word = data[data_I]; + AVG_buff_B[Proc_state.AVG_buff_I] = 0xDE000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + Proc_state.AVG_buff_I++; + data_I++; + } + // Proc_state.AVG_buff_I++; + // AVG_buff_B[Proc_state.AVG_buff_I] = 0xDD000000 | (Proc_state.AVG_buff_I & 0x00FFFFFF); + } - //Proc_state.AVG_buff_I = 0; + } - - +*/ /*/ @@ -417,22 +548,51 @@ uint32_t usr_in_proc_data(uint32_t* data, uint32_t size) { return send_size; } //*/ + /* if (Proc_state.mode == AVG){ send_size = Proc_state.AVG_buff_I; //send_size = TX_buff_I; - //uint32_t send_size = AVG_BUFF_SIZE; - hdma_send_req_start(AVG_buff, send_size, 0); + //send_size = AVG_BUFF_SIZE - 500; + dbg_receive_value = send_size; + if (Proc_state.AVG_buff_active == A){ + hdma_send_req_start(AVG_buff_A, send_size, 0); + Proc_state.AVG_buff_active == B; + }else{ + hdma_send_req_start(AVG_buff_B, send_size, 0); + Proc_state.AVG_buff_active = A; + } return send_size; }else{ hdma_send_req_start(TX_buff, TX_buff_I, 0); TX_buff_I_shadow = TX_buff_I; + dbg_receive_value = TX_buff_I; TX_buff_I = 0; return TX_buff_I_shadow; } + */ + + if (TX_buff_state == TODO_TX){ + for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ + TX_buff_shadow[i] = TX_buff[i]; + } + hdma_send_req_start(TX_buff_shadow, TX_buff_I, 0); + hdma_send_req_start(TX_marker, 10, 0); + + +// hdma_send_req_start(TX_buff, TX_BUFF_SIZE, 0); + //TX_buff_state = TRANSMITTING; + TX_buff_state = TX_DONE; + //}else{ + // hdma_send_req_start(data, size, 0); + } + //hdma_send_req_start(data, size, 0); //streams_cnt[0] = hdma_send_req_start(LFSM_data, LFSM_DATALEN, 0); - //return size; + return size; + //return data_I; //number of really processed words } + //return data_I; //number of really processed words + return 0; } @@ -497,6 +657,8 @@ uint32_t usr_out_proc_data(uint32_t* data, uint32_t size) { @param[in] size Размер переданных данных в 32-битных словах ****************************************************************************/ void hdma_send_done(uint32_t* addr, uint32_t size) { + + TX_buff_state = TX_DONE; ++streams_cnt[3]; stream_in_buf_free(size); @@ -646,18 +808,21 @@ void usr_cmd_process(t_l502_bf_cmd *cmd) { Proc_state.mode = TRANSPARENT; Proc_state.mode_next = TRANSPARENT; - Proc_state.LFSM_state = 0; + Proc_state.LFSM_state = CYCLE_UNKNOWN; Proc_state.average_N_max = 10; // Proc_state.average_N_max = cmd->param; Proc_state.average_N = 1; Proc_state.TX_buff_I = 0; Proc_state.TX_buff_state = 0; + Proc_state.AVG_state = 0; Proc_state.AVG_buff_I = 0; Proc_state.AVG_buff_state = 0; Proc_state.FFT_buff_I = 0; Proc_state.FFT_buff_state = 0; Proc_state.digital_word_prev = 0; Proc_state.digital_word_curr = 0; + Proc_state.AVG_buff_active = A; + TX_buff_state = TX_DONE; for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ @@ -668,24 +833,26 @@ void usr_cmd_process(t_l502_bf_cmd *cmd) { l502_cmd_done(TX_buff_I, NULL, 0); break; } - case 0x8008:{ //get data from SPORT_RX copied arr + case 0x8008:{ //AVG mode TX_buff_I = 0; Proc_state.mode = AVG; Proc_state.mode_next = AVG; - Proc_state.LFSM_state = 0; - Proc_state.average_N_max = 10; + Proc_state.LFSM_state = CYCLE_UNKNOWN; + Proc_state.average_N_max = 3; // Proc_state.average_N_max = cmd->param; - Proc_state.average_N = 1; + Proc_state.average_N = 0; Proc_state.TX_buff_I = 0; Proc_state.TX_buff_state = 0; + Proc_state.AVG_state = 0; Proc_state.AVG_buff_I = 0; Proc_state.AVG_buff_state = 0; Proc_state.FFT_buff_I = 0; Proc_state.FFT_buff_state = 0; Proc_state.digital_word_prev = 0; Proc_state.digital_word_curr = 0; - + Proc_state.AVG_buff_active = A; + TX_buff_state = TX_DONE; for (uint32_t i = 0; i < TX_BUFF_SIZE; ++i){ TX_buff[i] = 0; @@ -700,8 +867,8 @@ void usr_cmd_process(t_l502_bf_cmd *cmd) { l502_cmd_done(TX_buff_I_shadow, NULL, 0); break; } - case 0x800A:{ //get data from SPORT_RX copied arr - l502_cmd_done(cmd-> param, NULL, 0); + case 0x800A:{ //return uint32_t value stored in dbg_receive_value + l502_cmd_done(dbg_receive_value, NULL, 0); break; } @@ -709,8 +876,30 @@ void usr_cmd_process(t_l502_bf_cmd *cmd) { - case 0x8010:{ //L502_BF_USR_CMD_CODE_ECHO - //uint32_t test_res = f_sport_test(); + case 0x8010:{ //flush HDMA TX buffer + int number_of_free_tx_descriptors = hdma_send_req_rdy(); + hdma_send_stop(); + hdma_send_start(); + l502_cmd_done(number_of_free_tx_descriptors, NULL, 0); + break; + } + case 0x8011:{ //L502_BF_USR_CMD_CODE_ECHO + l502_cmd_done(cmd-> param, NULL, 0); + break; + } + case 0x8012:{ //L502_BF_USR_CMD_CODE_ECHO + l502_cmd_done(cmd-> param, NULL, 0); + break; + } + case 0x8013:{ //L502_BF_USR_CMD_CODE_ECHO + l502_cmd_done(cmd-> param, NULL, 0); + break; + } + case 0x8014:{ //L502_BF_USR_CMD_CODE_ECHO + l502_cmd_done(cmd-> param, NULL, 0); + break; + } + case 0x8015:{ //L502_BF_USR_CMD_CODE_ECHO l502_cmd_done(cmd-> param, NULL, 0); break; } diff --git a/src/l502_user_process.h b/src/l502_user_process.h index b80fc62..deee24f 100644 --- a/src/l502_user_process.h +++ b/src/l502_user_process.h @@ -17,13 +17,41 @@ //#define L502_SPORT_IN_BUF_SIZE (2048*1024) //#define TX_BUFF_SIZE (RAW_DATA_BUFF_SIZE + AVG_BUFF_SIZE + FFT_BUFF_SIZE + L502_SPORT_IN_BUF_SIZE) //should be large enough to fit all other buffers and raw data -#define TX_BUFF_SIZE 1000 +#define TX_BUFF_SIZE 10000 #ifndef L502_USER_PROCESS_H_ #define L502_USER_PROCESS_H_ +enum buff_switch{ + A = 0, + B = 1, +}; + +enum avg_state { + STOPPED, + STEP_RUNNING, + STEP_COMPLETED, + FULLY_COMPLETED, + ENDED, +}; + +enum cycle_state { + CYCLE_UNKNOWN, + CYCLE_STARTED, + CYCLE_RUNNING, +}; + + +enum hdma_TX_state { + FILLING, + TODO_TX, + TRANSMITTING, + TX_DONE, + BUFF_READY, + DUMMY, +}; enum dataprocessor_state { OFF,