@@ -232,7 +232,7 @@ void asm_x86_mov_i32_to_r32(asm_x86_t *as, int32_t src_i32, int dest_r32) {
232232// src_i32 is stored as a full word in the code, and aligned to machine-word boundary
233233void asm_x86_mov_i32_to_r32_aligned (asm_x86_t * as , int32_t src_i32 , int dest_r32 ) {
234234 // mov instruction uses 1 byte for the instruction, before the i32
235- while (((as -> code_offset + 1 ) & (WORD_SIZE - 1 )) != 0 ) {
235+ while (((as -> base . code_offset + 1 ) & (WORD_SIZE - 1 )) != 0 ) {
236236 asm_x86_nop (as );
237237 }
238238 asm_x86_mov_i32_to_r32 (as , src_i32 , dest_r32 );
@@ -339,13 +339,13 @@ void asm_x86_setcc_r8(asm_x86_t *as, mp_uint_t jcc_type, int dest_r8) {
339339}
340340
341341STATIC mp_uint_t get_label_dest (asm_x86_t * as , mp_uint_t label ) {
342- assert (label < as -> max_num_labels );
343- return as -> label_offsets [label ];
342+ assert (label < as -> base . max_num_labels );
343+ return as -> base . label_offsets [label ];
344344}
345345
346346void asm_x86_jmp_label (asm_x86_t * as , mp_uint_t label ) {
347347 mp_uint_t dest = get_label_dest (as , label );
348- mp_int_t rel = dest - as -> code_offset ;
348+ mp_int_t rel = dest - as -> base . code_offset ;
349349 if (dest != (mp_uint_t )- 1 && rel < 0 ) {
350350 // is a backwards jump, so we know the size of the jump on the first pass
351351 // calculate rel assuming 8 bit relative jump
@@ -367,7 +367,7 @@ void asm_x86_jmp_label(asm_x86_t *as, mp_uint_t label) {
367367
368368void asm_x86_jcc_label (asm_x86_t * as , mp_uint_t jcc_type , mp_uint_t label ) {
369369 mp_uint_t dest = get_label_dest (as , label );
370- mp_int_t rel = dest - as -> code_offset ;
370+ mp_int_t rel = dest - as -> base . code_offset ;
371371 if (dest != (mp_uint_t )- 1 && rel < 0 ) {
372372 // is a backwards jump, so we know the size of the jump on the first pass
373373 // calculate rel assuming 8 bit relative jump
@@ -499,7 +499,7 @@ void asm_x86_call_ind(asm_x86_t *as, void *ptr, mp_uint_t n_args, int temp_r32)
499499 // this reduces code size by 2 bytes per call, but doesn't seem to speed it up at all
500500 /*
501501 asm_x86_write_byte_1(as, OPCODE_CALL_REL32);
502- asm_x86_write_word32(as, ptr - (void*)(as->code_base + as->code_offset + 4));
502+ asm_x86_write_word32(as, ptr - (void*)(as->code_base + as->base. code_offset + 4));
503503 */
504504
505505 // the caller must clean up the stack
0 commit comments