Lines Matching refs:code

9  * 1. Redistributions of source code must retain the above copyright
112 coff_unwind_code *code;
119 code = SLIST_FIRST(&info->codes);
121 yasm_value_delete(&code->off);
122 yasm_xfree(code);
132 coff_unwind_code *code;
151 SLIST_FOREACH(code, &info->codes, link) {
152 codebc = yasm_bc_create_common(&win64_uwcode_bc_callback, code,
153 yasm_symrec_get_def_line(code->loc));
157 /* Avoid double-free (by code destroy and uwinfo destroy). */
160 /* Number of codes = (Last code - end of info) >> 1 */
332 coff_unwind_code *code = (coff_unwind_code *)contents;
333 yasm_value_delete(&code->off);
346 coff_unwind_code *code = (coff_unwind_code *)bc->contents;
347 if (yasm_value_finalize(&code->off, prev_bc))
355 coff_unwind_code *code = (coff_unwind_code *)bc->contents;
361 bc->len += 2; /* Prolog offset, code, and info */
363 switch (code->opcode) {
372 code->opcode = UWOP_ALLOC_SMALL;
373 code->info = 0;
379 code->opcode = UWOP_SAVE_NONVOL;
389 code->opcode = UWOP_SAVE_XMM128;
402 intn = yasm_value_get_intnum(&code->off, bc, 0);
408 add_span(add_span_data, bc, span, &code->off, low, high);
418 add_span(add_span_data, bc, span, &code->off, low, high);
426 coff_unwind_code *code = (coff_unwind_code *)bc->contents;
435 if (code->opcode == UWOP_ALLOC_LARGE && code->info == 1)
438 if (code->opcode == UWOP_ALLOC_SMALL && new_val > 128) {
440 code->opcode = UWOP_ALLOC_LARGE;
449 code->info = 1;
451 } else if (code->opcode == UWOP_SAVE_NONVOL && span == 2) {
452 code->opcode = UWOP_SAVE_NONVOL_FAR;
454 } else if (code->opcode == UWOP_SAVE_XMM128 && span == 3) {
455 code->opcode = UWOP_SAVE_XMM128_FAR;
467 coff_unwind_code *code = (coff_unwind_code *)bc->contents;
477 yasm_expr_create(YASM_EXPR_SUB, yasm_expr_sym(code->loc),
478 yasm_expr_sym(code->proc), bc->line),
485 switch (code->opcode) {
490 YASM_WRITE_8(buf, (code->info << 4) | (code->opcode & 0xF));
498 if (code->info == 0) {
524 intn = yasm_value_get_intnum(&code->off, bc, 1);
543 /* Stored value in info instead of extra code space */
545 code->info = (yasm_intnum_get_uint(intn) >> shift)-1;
548 YASM_WRITE_8(buf, (code->info << 4) | (code->opcode & 0xF));