Lines Matching refs:src
1433 emit_ldxhl (char prefix, char opcode, expressionS *src, expressionS *d) in emit_ldxhl() argument
1437 if (src->X_md) in emit_ldxhl()
1441 if (src->X_op == O_register) in emit_ldxhl()
1443 if (src->X_add_number>7) in emit_ldxhl()
1452 *q = opcode + src->X_add_number; in emit_ldxhl()
1468 emit_byte (src, BFD_RELOC_8); in emit_ldxhl()
1474 emit_ldreg (int dest, expressionS * src) in emit_ldreg() argument
1484 if (src->X_md == 0 && src->X_op == O_register && src->X_add_number == REG_A) in emit_ldreg()
1495 if ((src->X_md) && src->X_op != O_register && src->X_op != O_md1) in emit_ldreg()
1499 emit_word (src); in emit_ldreg()
1503 if ((src->X_md) in emit_ldreg()
1504 && src->X_op == O_register in emit_ldreg()
1505 && (src->X_add_number == REG_BC || src->X_add_number == REG_DE)) in emit_ldreg()
1508 *q = 0x0A + ((src->X_add_number & 1) << 4); in emit_ldreg()
1512 if ((!src->X_md) in emit_ldreg()
1513 && src->X_op == O_register in emit_ldreg()
1514 && (src->X_add_number == REG_R || src->X_add_number == REG_I)) in emit_ldreg()
1518 *q = (src->X_add_number == REG_I) ? 0x57 : 0x5F; in emit_ldreg()
1526 emit_sx (0, 0x40 + (dest << 3), src); in emit_ldreg()
1531 if ((src->X_md == 0) in emit_ldreg()
1532 && (src->X_op == O_register) in emit_ldreg()
1533 && (src->X_add_number & R_INDEX)) in emit_ldreg()
1536 emit_sx (0, 0x40 + (dest << 3), src); in emit_ldreg()
1543 if (src->X_md) in emit_ldreg()
1549 if (src-> X_op == O_register) in emit_ldreg()
1551 rnum = src->X_add_number; in emit_ldreg()
1569 emit_byte (src, BFD_RELOC_8); in emit_ldreg()
1575 if (src->X_md == 0 in emit_ldreg()
1576 && src->X_op == O_register in emit_ldreg()
1577 && REG_HL == (src->X_add_number &~ R_INDEX)) in emit_ldreg()
1579 q = frag_more ((src->X_add_number & R_INDEX) ? 2 : 1); in emit_ldreg()
1580 if (src->X_add_number & R_INDEX) in emit_ldreg()
1581 *q++ = (src->X_add_number & R_IX) ? 0xDD : 0xFD; in emit_ldreg()
1588 if (src->X_op == O_register || src->X_op == O_md1) in emit_ldreg()
1590 q = frag_more (src->X_md ? 2 : 1); in emit_ldreg()
1591 if (src->X_md) in emit_ldreg()
1598 emit_word (src); in emit_ldreg()
1604 if (src->X_op == O_register || src->X_op == O_md1) in emit_ldreg()
1609 *q = (src->X_md) ? 0x2A : 0x21; in emit_ldreg()
1610 emit_word (src); in emit_ldreg()
1627 expressionS dst, src; in emit_ld() local
1635 p = parse_exp (p, &src); in emit_ld()
1645 &src, &dst_offset); in emit_ld()
1656 if (src.X_md == 0 && src.X_op == O_register && src.X_add_number == REG_A) in emit_ld()
1665 emit_ldxhl (0, 0x70, &src, NULL); in emit_ld()
1672 emit_ldreg (dst.X_add_number, &src); in emit_ld()
1676 if (src.X_md != 0 || src.X_op != O_register) in emit_ld()
1679 switch (src.X_add_number) in emit_ld()
1684 prefix = 0xED; opcode = 0x43 + ((src.X_add_number&3)<<4); break; in emit_ld()