pike.git / src / code / amd64.c

version» Context lines:

pike.git/src/code/amd64.c:2261:       LABEL_C; /* Branch or not? */    test_reg( P_REG_RAX );    return jnz_imm_rel32(0);       case F_BRANCH_WHEN_EQ: /* sp[-2] != sp[-1] */    case F_BRANCH_WHEN_NE: /* sp[-2] != sp[-1] */   /* START_JUMP();*/    ins_debug_instr_prologue(op, 0, 0);    amd64_load_sp_reg(); -  mov_mem16_reg( sp_reg, -sizeof(struct svalue), P_REG_RCX ); -  mov_mem16_reg( sp_reg, -sizeof(struct svalue)*2,P_REG_RBX ); +  mov_mem8_reg( sp_reg, -sizeof(struct svalue), P_REG_RCX ); +  mov_mem8_reg( sp_reg, -sizeof(struct svalue)*2,P_REG_RBX );    cmp_reg_reg( P_REG_RCX, P_REG_RBX );    jnz( &label_A ); /* Types differ */       /* Fallback to C for functions, objects and floats. */    mov_imm_reg(1, P_REG_RBX);    shl_reg32_reg(P_REG_RBX, P_REG_RCX);    and_reg_imm(P_REG_RBX, (BIT_FUNCTION|BIT_OBJECT|BIT_FLOAT));    jnz( &label_A );       mov_mem_reg( sp_reg, -sizeof(struct svalue)+8, P_REG_RBX );