Lines Matching refs:out_insnp
1081 cris_process_instruction (insn_text, out_insnp, prefixp) in cris_process_instruction() argument
1083 struct cris_instruction *out_insnp;
1100 out_insnp->insn_type = CRIS_INSN_NORMAL;
1101 out_insnp->imm_oprnd_size = 0;
1161 memset (out_insnp, 0, sizeof (*out_insnp));
1162 out_insnp->opcode = instruction->match;
1163 out_insnp->reloc = BFD_RELOC_NONE;
1164 out_insnp->insn_type = CRIS_INSN_NORMAL;
1165 out_insnp->imm_oprnd_size = 0;
1210 if (! cris_get_expression (&s, &out_insnp->expr))
1214 if (out_insnp->expr.X_op == O_constant
1215 && (out_insnp->expr.X_add_number < 0
1216 || out_insnp->expr.X_add_number > 31))
1218 out_insnp->expr.X_add_number);
1220 out_insnp->reloc = BFD_RELOC_CRIS_UNSIGNED_5;
1226 if (! cris_get_expression (&s, &out_insnp->expr))
1230 if (out_insnp->expr.X_op == O_constant
1231 && (out_insnp->expr.X_add_number < 0
1232 || out_insnp->expr.X_add_number > 15))
1234 out_insnp->expr.X_add_number);
1236 out_insnp->reloc = BFD_RELOC_CRIS_UNSIGNED_4;
1246 out_insnp->opcode |= regno /* << 0 */;
1247 out_insnp->opcode |= regno << 12;
1259 out_insnp->opcode |= ((flags & 0xf0) << 8) | (flags & 0xf);
1265 if (! cris_get_expression (&s, &out_insnp->expr))
1269 if (out_insnp->expr.X_op == O_constant
1270 && (out_insnp->expr.X_add_number < -32
1271 || out_insnp->expr.X_add_number > 31))
1273 out_insnp->expr.X_add_number);
1274 out_insnp->reloc = BFD_RELOC_CRIS_SIGNED_6;
1280 if (! cris_get_expression (&s, &out_insnp->expr))
1284 if (out_insnp->expr.X_op == O_constant
1285 && (out_insnp->expr.X_add_number < 0
1286 || out_insnp->expr.X_add_number > 63))
1288 out_insnp->expr.X_add_number);
1289 out_insnp->reloc = BFD_RELOC_CRIS_UNSIGNED_6;
1304 out_insnp->opcode |= 0 << 12;
1308 out_insnp->opcode |= 4 << 12;
1312 out_insnp->opcode |= 8 << 12;
1324 out_insnp->opcode |= size_bits << 4;
1330 if (! cris_get_expression (&s, &out_insnp->expr))
1334 out_insnp->insn_type = CRIS_INSN_BRANCH;
1358 out_insnp->insn_type = CRIS_INSN_NONE;
1364 if (! get_spec_reg (&s, &out_insnp->spec_reg))
1372 if (out_insnp->spec_reg->warning)
1373 as_warn (out_insnp->spec_reg->warning);
1374 else if (out_insnp->spec_reg->applicable_version
1378 out_insnp->spec_reg->name);
1380 out_insnp->opcode
1381 |= out_insnp->spec_reg->number << 12;
1398 out_insnp->opcode |= regno << 12;
1408 out_insnp->opcode |= regno /* << 0 */;
1427 &out_insnp->expr))
1435 out_insnp->opcode |= (AUTOINCR_BIT << 8);
1441 out_insnp->opcode |= (mode << 10);
1448 out_insnp->reloc = prefixp->reloc;
1451 out_insnp->opcode |= regno /* << 0 */ ;
1462 out_insnp->opcode |= (regno << 12) | (size_bits << 4);
1476 &out_insnp->expr)
1485 out_insnp->opcode |= (AUTOINCR_BIT << 8);
1492 out_insnp->opcode |= (mode << 10);
1495 out_insnp->opcode |= regno /* << 0 */;
1505 out_insnp->opcode |= size_bits << 4;
1557 out_insnp->imm_oprnd_size = 4;
1561 switch (out_insnp->spec_reg->reg_size)
1564 if (out_insnp->expr.X_op == O_constant
1565 && (out_insnp->expr.X_add_number < -128
1566 || out_insnp->expr.X_add_number > 255))
1568 out_insnp->expr.X_add_number);
1574 if (out_insnp->expr.X_op == O_constant
1575 && (out_insnp->expr.X_add_number < -32768
1576 || out_insnp->expr.X_add_number > 65535))
1578 out_insnp->expr.X_add_number);
1579 out_insnp->imm_oprnd_size = 2;
1583 out_insnp->imm_oprnd_size = 4;
1587 BAD_CASE (out_insnp->spec_reg->reg_size);
1595 if (out_insnp->expr.X_op == O_constant
1596 && (out_insnp->expr.X_add_number < -128
1597 || out_insnp->expr.X_add_number > 255))
1599 out_insnp->expr.X_add_number);
1602 if (out_insnp->expr.X_op == O_constant
1603 && (out_insnp->expr.X_add_number < -32768
1604 || out_insnp->expr.X_add_number > 65535))
1606 out_insnp->expr.X_add_number);
1607 out_insnp->imm_oprnd_size = 2;
1611 out_insnp->imm_oprnd_size = 4;
1615 BAD_CASE (out_insnp->spec_reg->reg_size);
1623 if (out_insnp->reloc != BFD_RELOC_NONE
1624 && (cris_get_pic_reloc_size (out_insnp->reloc)
1625 != (unsigned int) out_insnp->imm_oprnd_size))
1630 out_insnp->insn_type = CRIS_INSN_MUL;