Lines Matching refs:op
91 unsigned op; /* code bits, operation, extra bits, or */
129 op = (unsigned)(here.bits);
130 hold >>= op;
131 bits -= op;
132 op = (unsigned)(here.op);
133 if (op == 0) { /* literal */
139 else if (op & 16) { /* length base */
141 op &= 15; /* number of extra bits */
142 if (op) {
143 if (bits < op) {
147 len += (unsigned)hold & (((unsigned)1 << op) - 1);
148 hold >>= op;
149 bits -= op;
160 op = (unsigned)(here.bits);
161 hold >>= op;
162 bits -= op;
163 op = (unsigned)(here.op);
164 if (op & 16) { /* distance base */
166 op &= 15; /* number of extra bits */
167 if (bits < op) {
170 if (bits < op) {
175 dist += (unsigned)hold & (((unsigned)1 << op) - 1);
183 hold >>= op;
184 bits -= op;
186 op = (unsigned)(out - beg); /* max distance in output */
187 if (dist > op) { /* see if copy from window */
188 op = dist - op; /* distance back in window */
189 if (op > whave) {
197 if (len <= op - whave) {
203 len -= op - whave;
206 } while (--op > whave);
207 if (op == 0) {
218 from += wsize - op;
219 if (op < len) { /* some from window */
220 len -= op;
223 } while (--op);
227 else if (wnext < op) { /* wrap around window */
228 from += wsize + wnext - op;
229 op -= wnext;
230 if (op < len) { /* some from end of window */
231 len -= op;
234 } while (--op);
237 op = wnext;
238 len -= op;
241 } while (--op);
247 from += wnext - op;
248 if (op < len) { /* some from window */
249 len -= op;
252 } while (--op);
283 else if ((op & 64) == 0) { /* 2nd level distance code */
284 here = dcode[here.val + (hold & (((unsigned)1 << op) - 1))];
293 else if ((op & 64) == 0) { /* 2nd level length code */
294 here = lcode[here.val + (hold & (((unsigned)1 << op) - 1))];
297 else if (op & 32) { /* end-of-block */
329 - Different op definition to avoid & for extra bits (do & for table bits)