pike.git / src / code / amd64.c

version» Context lines:

pike.git/src/code/amd64.c:3586:       mov_mem_reg( fp_reg, OFFSETOF(pike_frame,locals), ARG1_REG);    add_reg_imm( ARG1_REG, b*sizeof(struct svalue));    mov_sval_type( ARG1_REG, P_REG_RAX );    mov_mem_reg( ARG1_REG, OFFSETOF(svalue, u.string ), P_REG_RBX);    /* type in RAX, svalue in ARG1 */    cmp_reg32_imm( P_REG_RAX, PIKE_T_STRING );    je( &label_B );    /* It's something else, svalue already in ARG1. */    amd64_call_c_function( pike_sizeof ); +  jmp( label_A );    LABEL_B;    mov_mem32_reg( P_REG_RBX,OFFSETOF(pike_string, len ), P_REG_RAX );    /* Store result on stack */ -  +  LABEL_A;    amd64_push_int_reg( P_REG_RAX );    }    return;       case F_PRIVATE_GLOBAL:   /*    This is a private (or final) global which is not a 'short' one.       It is guaranteed to be available as an svalue at    pike_fp->current_object->storage + pike_fp->context->storage_offset + offset