⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bzlib_huffman.lst

📁 au1200下的boot代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
GAS LISTING /tmp/ccRSZRFA.s 			page 1   1              		.section .mdebug.abi32   2              		.previous   3              		.section	.debug_abbrev,"",@progbits   4              	$Ldebug_abbrev0:   5              		.section	.debug_info,"",@progbits   6              	$Ldebug_info0:   7              		.section	.debug_line,"",@progbits   8              	$Ldebug_line0:   9 0000 18010000 		.text   9      02006700    9      00000101    9      FB0E0A00    9      01010101   10              	$Ltext0:  11              		.align	2  12              		.globl	BZ2_hbMakeCodeLengths  13              		.ent	BZ2_hbMakeCodeLengths  14              		.type	BZ2_hbMakeCodeLengths, @function  15              	BZ2_hbMakeCodeLengths:  16              	$LFB2:  17              		.file 1 "/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c"   1:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*-------------------------------------------------------------*/   2:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*--- Huffman coding low-level stuff                        ---*/   3:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*---                                             huffman.c ---*/   4:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*-------------------------------------------------------------*/   5:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    6:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*--   7:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   This file is a part of bzip2 and/or libbzip2, a program and   8:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   library for lossless, block-sorting data compression.   9:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   10:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   Copyright (C) 1996-2002 Julian R Seward.  All rights reserved.  11:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   12:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   Redistribution and use in source and binary forms, with or without  13:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   modification, are permitted provided that the following conditions  14:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   are met:  15:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   16:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   1. Redistributions of source code must retain the above copyright  17:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      notice, this list of conditions and the following disclaimer.  18:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   19:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   2. The origin of this software must not be misrepresented; you must  20:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      not claim that you wrote the original software.  If you use this  21:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      software in a product, an acknowledgment in the product  22:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      documentation would be appreciated but is not required.  23:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   24:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   3. Altered source versions must be plainly marked as such, and must  25:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      not be misrepresented as being the original software.  26:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   27:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   4. The name of the author may not be used to endorse or promote  28:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      products derived from this software without specific prior written  29:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      permission.  30:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   31:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS  32:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED  33:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE  34:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY  35:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL  36:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTEGAS LISTING /tmp/ccRSZRFA.s 			page 2  37:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS  38:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,  39:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING  40:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS  41:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  42:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   43:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   Julian Seward, Cambridge, UK.  44:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   jseward@acm.org  45:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   bzip2/libbzip2 version 1.0 of 21 March 2000  46:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   47:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   This program is based on (at least) the work of:  48:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Mike Burrows  49:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      David Wheeler  50:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Peter Fenwick  51:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Alistair Moffat  52:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Radford Neal  53:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Ian H. Witten  54:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Robert Sedgewick  55:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****      Jon L. Bentley  56:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   57:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   For more information on these sources, see the manual.  58:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** --*/  59:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   60:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   61:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #include "bzlib_private.h"  62:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   63:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*---------------------------------------------------*/  64:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #define WEIGHTOF(zz0)  ((zz0) & 0xffffff00)  65:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #define DEPTHOF(zz1)   ((zz1) & 0x000000ff)  66:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #define MYMAX(zz2,zz3) ((zz2) > (zz3) ? (zz2) : (zz3))  67:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   68:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #define ADDWEIGHTS(zw1,zw2)                           \  69:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    (WEIGHTOF(zw1)+WEIGHTOF(zw2)) |                    \  70:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    (1 + MYMAX(DEPTHOF(zw1),DEPTHOF(zw2)))  71:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   72:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #define UPHEAP(z)                                     \  73:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** {                                                     \  74:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Int32 zz, tmp;                                     \  75:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    zz = z; tmp = heap[zz];                            \  76:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    while (weight[tmp] < weight[heap[zz >> 1]]) {      \  77:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       heap[zz] = heap[zz >> 1];                       \  78:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       zz >>= 1;                                       \  79:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    }                                                  \  80:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    heap[zz] = tmp;                                    \  81:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** }  82:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****   83:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** #define DOWNHEAP(z)                                   \  84:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** {                                                     \  85:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Int32 zz, yy, tmp;                                 \  86:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    zz = z; tmp = heap[zz];                            \  87:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    while (True) {                                     \  88:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       yy = zz << 1;                                   \  89:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       if (yy > nHeap) break;                          \  90:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       if (yy < nHeap &&                               \  91:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	  weight[heap[yy+1]] < weight[heap[yy]])      \  92:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 yy++;                                        \  93:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       if (weight[tmp] < weight[heap[yy]]) break;      \GAS LISTING /tmp/ccRSZRFA.s 			page 3  94:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       heap[zz] = heap[yy];                            \  95:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       zz = yy;                                        \  96:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    }                                                  \  97:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    heap[zz] = tmp;                                    \  98:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** }  99:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  100:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  101:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*---------------------------------------------------*/ 102:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** void BZ2_hbMakeCodeLengths ( UChar *len, 103:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 			     Int32 *freq, 104:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 			     Int32 alphaSize, 105:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 			     Int32 maxLen ) 106:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** {  18              		.loc 1 106 0  19              		.frame	$sp,5176,$31		# vars= 5168, regs= 2/0, args= 0, gp= 0  20              		.mask	0x00030000,-4  21              		.fmask	0x00000000,0  22              		.set	noreorder  23              		.set	nomacro  24              		  25 0000 C8EBBD27 		addiu	$sp,$sp,-5176  26              	$LCFI0:  27 0004 2178C000 		move	$15,$6  28 0008 3414B1AF 		sw	$17,5172($sp)  29              	$LCFI1:  30 000c 3014B0AF 		sw	$16,5168($sp)  31              	$LCFI2:  32              		.loc 1 106 0  33 0010 21C88000 		move	$25,$4  34 0014 2130A000 		move	$6,$5  35 0018 2180E000 		move	$16,$7 107:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    /*-- 108:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       Nodes and heap entries run from 1.  Entry 0 109:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       for both the heap and nodes is a sentinel. 110:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    --*/ 111:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Int32 nNodes, nHeap, n1, n2, i, j, k; 112:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Bool  tooLong; 113:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  114:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Int32 heap   [ BZ_MAX_ALPHA_SIZE + 2 ]; 115:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Int32 weight [ BZ_MAX_ALPHA_SIZE * 2 ]; 116:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    Int32 parent [ BZ_MAX_ALPHA_SIZE * 2 ]; 117:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  118:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    for (i = 0; i < alphaSize; i++)  36              		.loc 1 118 0  37 001c 21400000 		move	$8,$0  38 0020 0D00E019 		blez	$15,$L69  39 0024 0100F129 		slt	$17,$15,1  40              	  41              	$L7: 119:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       weight[i+1] = (freq[i] == 0 ? 1 : freq[i]) << 8;  42              		.loc 1 119 0  43 0028 80200800 		sll	$4,$8,2  44 002c 21108600 		addu	$2,$4,$6  45 0030 0000458C 		lw	$5,0($2)  46              		.loc 1 118 0  47 0034 01000825 		addiu	$8,$8,1  48              		.loc 1 119 0GAS LISTING /tmp/ccRSZRFA.s 			page 4  49 0038 00010324 		li	$3,256			# 0x100  50 003c 00120500 		sll	$2,$5,8  51 0040 0B184500 		movn	$3,$2,$5  52 0044 21209D00 		addu	$4,$4,$sp  53              		.loc 1 118 0  54 0048 2A100F01 		slt	$2,$8,$15  55              		.loc 1 119 0  56              		.loc 1 118 0  57 004c F6FF4014 		bne	$2,$0,$L7  58 0050 140483AC 		sw	$3,1044($4)  59              	  60 0054 0100F129 		slt	$17,$15,1  61              	$L69: 120:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  121:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****    while (True) { 122:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  123:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       nNodes = alphaSize; 124:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       nHeap = 0; 125:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  126:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       heap[0] = 0; 127:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       weight[0] = 0; 128:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       parent[0] = -2;  62              		.loc 1 128 0  63 0058 FEFF0224 		li	$2,-2			# 0xfffffffffffffffe  64              	$L75:  65 005c 200CA2AF 		sw	$2,3104($sp)  66              		.loc 1 126 0  67 0060 0000A0AF 		sw	$0,0($sp)  68              		.loc 1 127 0  69 0064 1004A0AF 		sw	$0,1040($sp)  70              		.loc 1 123 0  71 0068 2170E001 		move	$14,$15  72              		.loc 1 124 0  73 006c 21600000 		move	$12,$0 129:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  130:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       for (i = 1; i <= alphaSize; i++) {  74              		.loc 1 130 0  75 0070 C4002016 		bne	$17,$0,$L53  76 0074 01000824 		li	$8,1			# 0x1  77              	  78 0078 FFFF0D24 		li	$13,-1			# 0xffffffffffffffff  79 007c 0400AA27 		addiu	$10,$sp,4  80 0080 2158A003 		move	$11,$sp  81              	$L16: 131:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 parent[i] = -1; 132:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 nHeap++;  82              		.loc 1 132 0  83 0084 01008C25 		addiu	$12,$12,1  84              	$LBB2: 133:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 heap[nHeap] = i; 134:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 UPHEAP(nHeap);  85              		.loc 1 134 0  86 0088 43100C00 		sra	$2,$12,1  87 008c 04006B25 		addiu	$11,$11,4  88 0090 80100200 		sll	$2,$2,2  89 0094 21105D00 		addu	$2,$2,$sp  90              	$LBE2:GAS LISTING /tmp/ccRSZRFA.s 			page 5  91              		.loc 1 133 0  92 0098 000068AD 		sw	$8,0($11)  93              	$LBB3:  94              		.loc 1 134 0  95 009c 0000438C 		lw	$3,0($2)  96 00a0 1004498D 		lw	$9,1040($10)  97              	$LBE3:  98              		.loc 1 131 0  99 00a4 200C4DAD 		sw	$13,3104($10) 100              	$LBB4: 101              		.loc 1 134 0 102 00a8 80180300 		sll	$3,$3,2 103 00ac 21187D00 		addu	$3,$3,$sp 104 00b0 1004628C 		lw	$2,1040($3) 105 00b4 2A102201 		slt	$2,$9,$2 106 00b8 12004010 		beq	$2,$0,$L51 107 00bc 21388001 		move	$7,$12 108              	 109              	$L15: 110 00c0 43280700 		sra	$5,$7,1 111 00c4 80100500 		sll	$2,$5,2 112 00c8 21105D00 		addu	$2,$2,$sp 113 00cc 0000468C 		lw	$6,0($2) 114 00d0 80200700 		sll	$4,$7,2 115 00d4 43180500 		sra	$3,$5,1 116 00d8 21209D00 		addu	$4,$4,$sp 117 00dc 80180300 		sll	$3,$3,2 118 00e0 21187D00 		addu	$3,$3,$sp 119 00e4 000086AC 		sw	$6,0($4) 120 00e8 0000628C 		lw	$2,0($3) 121 00ec 80100200 		sll	$2,$2,2 122 00f0 21105D00 		addu	$2,$2,$sp 123 00f4 1004438C 		lw	$3,1040($2) 124 00f8 2A182301 		slt	$3,$9,$3 125 00fc F0FF6014 		bne	$3,$0,$L15 126 0100 2138A000 		move	$7,$5 127              	 128              	$L51: 129 0104 80100700 		sll	$2,$7,2 130 0108 21105D00 		addu	$2,$2,$sp 131 010c 000048AC 		sw	$8,0($2) 132              	$LBE4: 133              		.loc 1 130 0 134 0110 01000825 		addiu	$8,$8,1 135 0114 2A10E801 		slt	$2,$15,$8 136 0118 DAFF4010 		beq	$2,$0,$L16 137 011c 04004A25 		addiu	$10,$10,4 138              	 135:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       } 136:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  137:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       AssertH( nHeap < (BZ_MAX_ALPHA_SIZE+2), 2001 ); 138:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****  139:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c ****       while (nHeap > 1) { 140:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 n1 = heap[1]; heap[1] = heap[nHeap]; nHeap--; DOWNHEAP(1); 141:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 n2 = heap[1]; heap[1] = heap[nHeap]; nHeap--; DOWNHEAP(1); 142:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 nNodes++; 143:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 parent[n1] = parent[n2] = nNodes;GAS LISTING /tmp/ccRSZRFA.s 			page 6 144:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 weight[nNodes] = ADDWEIGHTS(weight[n1], weight[n2]); 145:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 parent[nNodes] = -1; 146:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 nHeap++; 147:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 	 heap[nHeap] = nNodes;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -