/* Store the values. */
p = fragp->fr_literal;
- bfd_h_put_16 (stdoutput, n_entries, (bfd_byte *) p + 6);
- bfd_h_put_32 (stdoutput, size, (bfd_byte *) p + 8);
+ bfd_h_put_16 (stdoutput, n_entries, p + 6);
+ bfd_h_put_32 (stdoutput, size, p + 8);
}
void
p = seg_info (sec)->stabu.p;
gas_assert (p != 0);
- bfd_h_put_16 (abfd, (bfd_vma) nsyms, (bfd_byte *) p + 6);
- bfd_h_put_32 (abfd, (bfd_vma) strsz, (bfd_byte *) p + 8);
+ bfd_h_put_16 (abfd, nsyms, p + 6);
+ bfd_h_put_32 (abfd, strsz, p + 8);
}
/* Called late in the assembly phase to adjust the special
&& AVR_SKIP_P (frag_now->tc_frag_data.prev_opcode))
as_warn (_("skipping two-word instruction"));
- bfd_putl32 ((bfd_vma) bin, frag);
+ bfd_putl32 (bin, frag);
}
else
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
frag_now->tc_frag_data.prev_opcode = bin;
*line = str;
*where = value;
break;
case BFD_RELOC_AVR_DIFF16:
- bfd_putl16 ((bfd_vma) value, where);
+ bfd_putl16 (value, where);
break;
case BFD_RELOC_AVR_DIFF32:
- bfd_putl32 ((bfd_vma) value, where);
+ bfd_putl32 (value, where);
break;
case BFD_RELOC_AVR_CALL:
break;
as_bad_where (fixP->fx_file, fixP->fx_line,
_("operand out of range: %ld"), value);
value = (value << 3) & 0x3f8;
- bfd_putl16 ((bfd_vma) (value | insn), where);
+ bfd_putl16 (value | insn, where);
break;
case BFD_RELOC_AVR_13_PCREL:
}
value &= 0xfff;
- bfd_putl16 ((bfd_vma) (value | insn), where);
+ bfd_putl16 (value | insn, where);
break;
case BFD_RELOC_32:
- bfd_putl32 ((bfd_vma) value, where);
+ bfd_putl32 (value, where);
break;
case BFD_RELOC_16:
- bfd_putl16 ((bfd_vma) value, where);
+ bfd_putl16 (value, where);
break;
case BFD_RELOC_8:
break;
case BFD_RELOC_AVR_16_PM:
- bfd_putl16 ((bfd_vma) (value >> 1), where);
+ bfd_putl16 (value >> 1, where);
break;
case BFD_RELOC_AVR_LDI:
if (value > 255)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("operand out of range: %ld"), value);
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value), where);
break;
case BFD_RELOC_AVR_LDS_STS_16:
_("operand out of range: 0x%lx"),
(unsigned long)value);
insn |= ((value & 0xF) | ((value & 0x30) << 5) | ((value & 0x40) << 2));
- bfd_putl16 ((bfd_vma) insn, where);
+ bfd_putl16 (insn, where);
break;
case BFD_RELOC_AVR_6:
if ((value > 63) || (value < 0))
as_bad_where (fixP->fx_file, fixP->fx_line,
_("operand out of range: %ld"), value);
- bfd_putl16 ((bfd_vma) insn | ((value & 7) | ((value & (3 << 3)) << 7)
- | ((value & (1 << 5)) << 8)), where);
+ bfd_putl16 (insn | ((value & 7) | ((value & (3 << 3)) << 7)
+ | ((value & (1 << 5)) << 8)), where);
break;
case BFD_RELOC_AVR_6_ADIW:
if ((value > 63) || (value < 0))
as_bad_where (fixP->fx_file, fixP->fx_line,
_("operand out of range: %ld"), value);
- bfd_putl16 ((bfd_vma) insn | (value & 0xf) | ((value & 0x30) << 2), where);
+ bfd_putl16 (insn | (value & 0xf) | ((value & 0x30) << 2), where);
break;
case BFD_RELOC_AVR_LO8_LDI:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value), where);
break;
case BFD_RELOC_AVR_HI8_LDI:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value >> 8), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value >> 8), where);
break;
case BFD_RELOC_AVR_MS8_LDI:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value >> 24), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value >> 24), where);
break;
case BFD_RELOC_AVR_HH8_LDI:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value >> 16), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value >> 16), where);
break;
case BFD_RELOC_AVR_LO8_LDI_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value), where);
break;
case BFD_RELOC_AVR_HI8_LDI_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value >> 8), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value >> 8), where);
break;
case BFD_RELOC_AVR_MS8_LDI_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value >> 24), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value >> 24), where);
break;
case BFD_RELOC_AVR_HH8_LDI_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value >> 16), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value >> 16), where);
break;
case BFD_RELOC_AVR_LO8_LDI_PM:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value >> 1), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value >> 1), where);
break;
case BFD_RELOC_AVR_HI8_LDI_PM:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value >> 9), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value >> 9), where);
break;
case BFD_RELOC_AVR_HH8_LDI_PM:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value >> 17), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (value >> 17), where);
break;
case BFD_RELOC_AVR_LO8_LDI_PM_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value >> 1), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value >> 1), where);
break;
case BFD_RELOC_AVR_HI8_LDI_PM_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value >> 9), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value >> 9), where);
break;
case BFD_RELOC_AVR_HH8_LDI_PM_NEG:
- bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (-value >> 17), where);
+ bfd_putl16 (insn | LDI_IMMEDIATE (-value >> 17), where);
break;
case BFD_RELOC_AVR_CALL:
_("odd address operand: %ld"), value);
value >>= 1;
x |= ((value & 0x10000) | ((value << 3) & 0x1f00000)) >> 16;
- bfd_putl16 ((bfd_vma) x, where);
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 2);
+ bfd_putl16 (x, where);
+ bfd_putl16 (value & 0xffff, where + 2);
}
break;
if (value > 63)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("operand out of range: %ld"), value);
- bfd_putl16 ((bfd_vma) insn | ((value & 0x30) << 5) | (value & 0x0f), where);
+ bfd_putl16 (insn | ((value & 0x30) << 5) | (value & 0x0f), where);
break;
case BFD_RELOC_AVR_PORT5:
if (value > 31)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("operand out of range: %ld"), value);
- bfd_putl16 ((bfd_vma) insn | ((value & 0x1f) << 3), where);
+ bfd_putl16 (insn | ((value & 0x1f) << 3), where);
break;
}
}
|| 0 == strcmp ("mov", op->name)
|| 0 == strcmp ("ldi", op->name));
- bfd_putl16 ((bfd_vma) bin, *pwhere);
+ bfd_putl16 (bin, *pwhere);
(*pwhere) += 2 * op->insn_size;
}
switch (fixP->fx_r_type)
{
case BFD_RELOC_CR16_NUM8:
- bfd_put_8 (stdoutput, (unsigned char) val, buf);
+ bfd_put_8 (stdoutput, val, buf);
break;
case BFD_RELOC_CR16_NUM16:
bfd_put_16 (stdoutput, val, buf);
switch (fixP->fx_r_type)
{
case BFD_RELOC_CRX_NUM8:
- bfd_put_8 (stdoutput, (unsigned char) val, buf);
+ bfd_put_8 (stdoutput, val, buf);
break;
case BFD_RELOC_CRX_NUM16:
bfd_put_16 (stdoutput, val, buf);
/* Fetch the instruction, insert the fully resolved operand
value, and stuff the instruction back again. */
where = fixP->fx_frag->fr_literal + fixP->fx_where;
- insn = bfd_getb32 ((unsigned char *) where);
+ insn = bfd_getb32 (where);
switch (fixP->fx_r_type)
{
/* Instruction addresses are always right-shifted by 2. */
value >>= AT_WORD_RIGHT_SHIFT;
if (fixP->fx_size == 2)
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
else
{
struct d10v_opcode *rep, *repi;
fixP->fx_line);
insn =
d10v_insert_operand (insn, op_type, (offsetT) value, left, fixP);
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
}
break;
case BFD_RELOC_32:
- bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb32 (value, where);
break;
case BFD_RELOC_16:
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
break;
case BFD_RELOC_8:
*where = value;
/* Fetch the instruction, insert the fully resolved operand
value, and stuff the instruction back again. */
where = fixP->fx_frag->fr_literal + fixP->fx_where;
- insn = bfd_getb32 ((unsigned char *) where);
+ insn = bfd_getb32 (where);
switch (fixP->fx_r_type)
{
case BFD_RELOC_8:
- *(unsigned char *) where = value;
+ *where = value;
break;
case BFD_RELOC_16:
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
break;
case BFD_RELOC_64:
- bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
- bfd_putb32 (0, ((unsigned char *) where) + 4);
+ bfd_putb32 (value, where);
+ bfd_putb32 (0, where + 4);
break;
case BFD_RELOC_D30V_6:
check_size (value, 6, fixP->fx_file, fixP->fx_line);
insn |= value & 0x3F;
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
break;
case BFD_RELOC_D30V_9_PCREL:
}
check_size (value, 9, fixP->fx_file, fixP->fx_line);
insn |= ((value >> 3) & 0x3F) << 12;
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
break;
case BFD_RELOC_D30V_15:
check_size (value, 15, fixP->fx_file, fixP->fx_line);
insn |= (value >> 3) & 0xFFF;
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
break;
case BFD_RELOC_D30V_15_PCREL:
}
check_size (value, 15, fixP->fx_file, fixP->fx_line);
insn |= (value >> 3) & 0xFFF;
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
break;
case BFD_RELOC_D30V_21:
check_size (value, 21, fixP->fx_file, fixP->fx_line);
insn |= (value >> 3) & 0x3FFFF;
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
break;
case BFD_RELOC_D30V_21_PCREL:
}
check_size (value, 21, fixP->fx_file, fixP->fx_line);
insn |= (value >> 3) & 0x3FFFF;
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putb32 (insn, where);
break;
case BFD_RELOC_D30V_32:
- insn2 = bfd_getb32 ((unsigned char *) where + 4);
+ insn2 = bfd_getb32 (where + 4);
insn |= (value >> 26) & 0x3F; /* Top 6 bits. */
insn2 |= ((value & 0x03FC0000) << 2); /* Next 8 bits. */
insn2 |= value & 0x0003FFFF; /* Bottom 18 bits. */
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
- bfd_putb32 ((bfd_vma) insn2, (unsigned char *) where + 4);
+ bfd_putb32 (insn, where);
+ bfd_putb32 (insn2, where + 4);
break;
case BFD_RELOC_D30V_32_PCREL:
- insn2 = bfd_getb32 ((unsigned char *) where + 4);
+ insn2 = bfd_getb32 (where + 4);
insn |= (value >> 26) & 0x3F; /* Top 6 bits. */
insn2 |= ((value & 0x03FC0000) << 2); /* Next 8 bits. */
insn2 |= value & 0x0003FFFF; /* Bottom 18 bits. */
- bfd_putb32 ((bfd_vma) insn, (unsigned char *) where);
- bfd_putb32 ((bfd_vma) insn2, (unsigned char *) where + 4);
+ bfd_putb32 (insn, where);
+ bfd_putb32 (insn2, where + 4);
break;
case BFD_RELOC_32:
- bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb32 (value, where);
break;
default:
switch (fixP->fx_r_type)
{
case BFD_RELOC_32:
- bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb32 (value, where);
break;
case BFD_RELOC_24:
case BFD_RELOC_M68HC11_24:
- bfd_putb16 ((bfd_vma) (value & 0x0ffff), (unsigned char *) where);
- ((bfd_byte*) where)[2] = ((value >> 16) & 0x0ff);
+ bfd_putb16 (value & 0x0ffff, where);
+ where[2] = (value >> 16) & 0xff;
break;
case BFD_RELOC_16:
case BFD_RELOC_16_PCREL:
case BFD_RELOC_M68HC11_LO16:
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
if (value < -65537 || value > 65535)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("Value out of 16-bit range."));
case BFD_RELOC_M68HC11_LO8:
case BFD_RELOC_8:
case BFD_RELOC_M68HC11_PAGE:
- ((bfd_byte *) where)[0] = (bfd_byte) value;
+ where[0] = value & 0xff;
break;
case BFD_RELOC_8_PCREL:
- ((bfd_byte *) where)[0] = (bfd_byte) value;
+ where[0] = value & 0xff;
if (value < -128 || value > 127)
as_bad_where (fixP->fx_file, fixP->fx_line,
/* These next two are for XGATE. */
case BFD_RELOC_M68HC12_9_PCREL:
- ((bfd_byte *) where)[0] |= (bfd_byte) ((value >>9) & 0x01);
- ((bfd_byte *) where)[1] = (bfd_byte) ((value>>1) & 0xff);
+ where[0] |= (value >> 9) & 0x01;
+ where[1] = (value >> 1) & 0xff;
if (value < -512 || value > 511)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("Value %ld too large for 9-bit PC-relative branch."),
break;
case BFD_RELOC_M68HC12_10_PCREL:
- ((bfd_byte *) where)[0] |= (bfd_byte) ((value >>9) & 0x03);
- ((bfd_byte *) where)[1] = (bfd_byte) ((value>>1) & 0xff);
+ where[0] |= (value >> 9) & 0x03;
+ where[1] = (value>> 1) & 0xff;
if (value < -1024 || value > 1023)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("Value %ld too large for 10-bit PC-relative branch."),
read_insn (char *buf)
{
if (target_big_endian)
- return bfd_getb32 ((bfd_byte *) buf);
+ return bfd_getb32 (buf);
else
- return bfd_getl32 ((bfd_byte *) buf);
+ return bfd_getl32 (buf);
}
/* Write standard MIPS instruction INSN to BUF. Return a pointer to
{
insn <<= 16;
if (target_big_endian)
- insn |= bfd_getb16 ((char *) buf);
+ insn |= bfd_getb16 (buf);
else
- insn |= bfd_getl16 ((char *) buf);
+ insn |= bfd_getl16 (buf);
buf += 2;
}
return insn;
if (op1->exp.X_op == O_constant)
{
bin |= ((op1->exp.X_add_number >> 16) & 0xf) << 8;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
bfd_putl16 (op1->exp.X_add_number & 0xffff, frag + 2);
}
else
{
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
fix_new_exp (frag_now, where, 4, &(op1->exp), false,
BFD_RELOC_MSP430X_ABS20_ADR_SRC);
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (ZEROS, frag + 2);
}
return 4;
bin |= 0x30 | (op1->reg << 8) | op2->reg;
frag = frag_more (4);
where = frag - frag_now->fr_literal;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
if (op1->exp.X_op == O_constant)
{
if (op1->exp.X_add_number > 0xffff
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (ZEROS, frag + 2);
fix_new_exp (frag_now, where + 2, 2, &(op1->exp), false,
op1->reg == 0 ?
BFD_RELOC_MSP430X_PCR16 :
bin |= 0xc0 | (op1->reg << 8) | op2->reg;
frag = frag_more (2);
where = frag - frag_now->fr_literal;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
return 2;
}
else if (op2->am == 1)
if (op2->exp.X_op == O_constant)
{
bin |= (op2->exp.X_add_number >> 16) & 0xf;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
bfd_putl16 (op2->exp.X_add_number & 0xffff, frag + 2);
}
else
{
- bfd_putl16 ((bfd_vma) bin, frag);
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (bin, frag);
+ bfd_putl16 (ZEROS, frag + 2);
fix_new_exp (frag_now, where, 4, &(op2->exp), false,
BFD_RELOC_MSP430X_ABS20_ADR_DST);
}
bin |= 0x70 | (op1->reg << 8) | op2->reg;
frag = frag_more (4);
where = frag - frag_now->fr_literal;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
if (op2->exp.X_op == O_constant)
{
if (op2->exp.X_add_number > 0xffff
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (ZEROS, frag + 2);
fix_new_exp (frag_now, where + 2, 2, &(op2->exp), false,
op2->reg == 0 ?
BFD_RELOC_MSP430X_PCR16 :
if (op1->exp.X_op == O_constant)
{
bin |= ((op1->exp.X_add_number >> 16) & 0xf) << 8;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
bfd_putl16 (op1->exp.X_add_number & 0xffff, frag + 2);
}
else
{
- bfd_putl16 ((bfd_vma) bin, frag);
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (bin, frag);
+ bfd_putl16 (ZEROS, frag + 2);
fix_new_exp (frag_now, where, 4, &(op1->exp), false,
BFD_RELOC_MSP430X_ABS20_ADR_SRC);
}
bin |= 0x10 | (op1->reg << 8) | op2->reg;
frag = frag_more (2);
where = frag - frag_now->fr_literal;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
return 2;
}
else if (op1->am == 2)
bin |= (op1->reg << 8) | op2->reg;
frag = frag_more (2);
where = frag - frag_now->fr_literal;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
return 2;
}
}
{
char *frag;
frag = frag_more (2);
- bfd_putl16 ((bfd_vma) 0x4303 /* NOP */, frag);
+ bfd_putl16 (0x4303 /* NOP */, frag);
dwarf2_emit_insn (2);
}
insn_length += 2;
frag = frag_more (2);
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
dwarf2_emit_insn (insn_length);
break;
where += 2;
}
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
frag += 2;
where += 2;
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag);
+ bfd_putl16 (ZEROS, frag);
if (!extended_op)
{
}
bin |= (op2.reg | (op1.reg << 8) | (op1.am << 4) | (op2.am << 7));
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
frag += 2;
where += 2;
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag);
+ bfd_putl16 (ZEROS, frag);
if (!extended_op)
{
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag);
+ bfd_putl16 (ZEROS, frag);
if (!extended_op)
{
op_length = 2 + 2 * op1.ol;
frag = frag_more (op_length);
where = frag - frag_now->fr_literal;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
if (op1.mode == OP_EXP)
{
{
where += 2;
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (ZEROS, frag + 2);
if (op1.reg || op1.am == 3)
fix_new_exp (frag_now, where, 2,
else if (op1.am == 3)
bin |= 0x70 | op1.reg;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
if (op1.mode == OP_EXP)
{
break;
}
- bfd_putl16 ((bfd_vma) ZEROS, frag + 2);
+ bfd_putl16 (ZEROS, frag + 2);
if (! fix_emitted)
fix_new_exp (frag_now, where + 2, 2,
bin |= (reg - n + 1);
}
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
dwarf2_emit_insn (op_length);
break;
}
bin |= (n - 1) << 10;
bin |= reg;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
dwarf2_emit_insn (op_length);
break;
}
fix_new_exp (frag_now, where, 4, &(op1.exp), false,
BFD_RELOC_MSP430X_ABS20_ADR_SRC);
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
if (op_length == 4)
- bfd_putl16 ((bfd_vma) (n & 0xffff), frag + 2);
+ bfd_putl16 (n & 0xffff, frag + 2);
dwarf2_emit_insn (op_length);
break;
}
frag += 2;
}
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
where += 2;
frag += 2;
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag);
+ bfd_putl16 (ZEROS, frag);
if (!extended_op)
{
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag);
+ bfd_putl16 (ZEROS, frag);
if (!extended_op)
{
/* reti instruction. */
insn_length += 2;
frag = frag_more (2);
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
dwarf2_emit_insn (insn_length);
break;
}
}
bin |= op1.reg | (op1.am << 4);
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
frag += 2;
where += 2;
}
else
{
- bfd_putl16 ((bfd_vma) ZEROS, frag);
+ bfd_putl16 (ZEROS, frag);
if (!extended_op)
{
frag = frag_more (2); /* Instr size is 1 word. */
bin |= x & 0x3ff;
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
}
else if (exp.X_op == O_symbol && *l1 != '$')
{
fix_new_exp (frag_now, where, 2,
&exp, true, BFD_RELOC_MSP430_10_PCREL);
- bfd_putl16 ((bfd_vma) bin, frag);
+ bfd_putl16 (bin, frag);
}
else if (*l1 == '$')
{
insn_length += 8;
frag = frag_more (8);
dwarf2_emit_insn (0);
- bfd_putl16 ((bfd_vma) rc.sop, frag);
+ bfd_putl16 (rc.sop, frag);
frag = frag_variant (rs_machine_dependent, 8, 2,
/* Wild guess. */
ENCODE_RELAX (rc.lpos, STATE_BITS10),
insn_length += 8;
frag = frag_more (8);
dwarf2_emit_insn (0);
- bfd_putl16 ((bfd_vma) hc.op0, frag);
- bfd_putl16 ((bfd_vma) hc.op1, frag+2);
+ bfd_putl16 (hc.op0, frag);
+ bfd_putl16 (hc.op1, frag + 2);
frag = frag_variant (rs_machine_dependent, 8, 2,
ENCODE_RELAX (STATE_EMUL_BRANCH, STATE_BITS10), /* Wild guess. */
_("operand out of range: %ld"), value);
value &= 0x3ff; /* get rid of extended sign */
- bfd_putl16 ((bfd_vma) (value | insn), where);
+ bfd_putl16 (value | insn, where);
break;
case BFD_RELOC_MSP430X_PCR16:
case BFD_RELOC_16:
case BFD_RELOC_MSP430_16_BYTE:
value &= 0xffff; /* Get rid of extended sign. */
- bfd_putl16 ((bfd_vma) value, where);
+ bfd_putl16 (value, where);
break;
case BFD_RELOC_MSP430_ABS_HI16:
value >>= 16;
value &= 0xffff; /* Get rid of extended sign. */
- bfd_putl16 ((bfd_vma) value, where);
+ bfd_putl16 (value, where);
break;
case BFD_RELOC_32:
- bfd_putl32 ((bfd_vma) value, where);
+ bfd_putl32 (value, where);
break;
case BFD_RELOC_MSP430_ABS8:
case BFD_RELOC_8:
- bfd_put_8 (NULL, (bfd_vma) value, where);
+ bfd_put_8 (NULL, value, where);
break;
case BFD_RELOC_MSP430X_ABS20_EXT_SRC:
case BFD_RELOC_MSP430X_PCR20_EXT_SRC:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 4);
+ bfd_putl16 (value & 0xffff, where + 4);
value >>= 16;
- bfd_putl16 ((bfd_vma) (((value & 0xf) << 7) | insn), where);
+ bfd_putl16 (((value & 0xf) << 7) | insn, where);
break;
case BFD_RELOC_MSP430X_ABS20_ADR_SRC:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 2);
+ bfd_putl16 (value & 0xffff, where + 2);
value >>= 16;
- bfd_putl16 ((bfd_vma) (((value & 0xf) << 8) | insn), where);
+ bfd_putl16 (((value & 0xf) << 8) | insn, where);
break;
case BFD_RELOC_MSP430X_ABS20_EXT_ODST:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 6);
+ bfd_putl16 (value & 0xffff, where + 6);
value >>= 16;
- bfd_putl16 ((bfd_vma) ((value & 0xf) | insn), where);
+ bfd_putl16 ((value & 0xf) | insn, where);
break;
case BFD_RELOC_MSP430X_PCR20_CALL:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 2);
+ bfd_putl16 (value & 0xffff, where + 2);
value >>= 16;
- bfd_putl16 ((bfd_vma) ((value & 0xf) | insn), where);
+ bfd_putl16 ((value & 0xf) | insn, where);
break;
case BFD_RELOC_MSP430X_ABS20_EXT_DST:
case BFD_RELOC_MSP430X_PCR20_EXT_DST:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 4);
+ bfd_putl16 (value & 0xffff, where + 4);
value >>= 16;
- bfd_putl16 ((bfd_vma) ((value & 0xf) | insn), where);
+ bfd_putl16 ((value & 0xf) | insn, where);
break;
case BFD_RELOC_MSP430X_PCR20_EXT_ODST:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 6);
+ bfd_putl16 (value & 0xffff, where + 6);
value >>= 16;
- bfd_putl16 ((bfd_vma) ((value & 0xf) | insn), where);
+ bfd_putl16 ((value & 0xf) | insn, where);
break;
case BFD_RELOC_MSP430X_ABS20_ADR_DST:
- bfd_putl16 ((bfd_vma) (value & 0xffff), where + 2);
+ bfd_putl16 (value & 0xffff, where + 2);
value >>= 16;
- bfd_putl16 ((bfd_vma) ((value & 0xf) | insn), where);
+ bfd_putl16 ((value & 0xf) | insn, where);
break;
default:
break;
case BFD_RELOC_PRU_GNU_DIFF16:
case BFD_RELOC_PRU_GNU_DIFF16_PMEM:
- bfd_putl16 ((bfd_vma) value, where);
+ bfd_putl16 (value, where);
break;
case BFD_RELOC_PRU_GNU_DIFF32:
case BFD_RELOC_PRU_GNU_DIFF32_PMEM:
- bfd_putl32 ((bfd_vma) value, where);
+ bfd_putl32 (value, where);
break;
default:
break;
switch (fixP->fx_r_type)
{
case BFD_RELOC_8:
- ((bfd_byte *) where)[0] = (bfd_byte) value;
+ where[0] = value;
break;
case BFD_RELOC_16:
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
break;
case BFD_RELOC_24:
- bfd_putb24 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb24 (value, where);
break;
case BFD_RELOC_S12Z_OPR:
{
switch (fixP->fx_size)
{
case 3:
- bfd_putb24 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb24 (value, where);
break;
case 2:
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
break;
default:
abort ();
}
break;
case BFD_RELOC_32:
- bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb32 (value, where);
break;
case BFD_RELOC_16_PCREL:
if (value < -0x4000 || value > 0x3FFF)
as_bad_where (fixP->fx_file, fixP->fx_line,
_("Value out of 16-bit range."));
- bfd_putb16 ((bfd_vma) value | 0x8000, (unsigned char *) where);
+ bfd_putb16 (value | 0x8000, where);
break;
default:
if (fixP->fx_pcrel)
value >>= 1;
- mop = bfd_getb16 ((unsigned char *) where);
- mop |= (unsigned short) (value & 0xfff);
- bfd_putb16 ((bfd_vma) mop, (unsigned char *) where);
+ mop = bfd_getb16 (where);
+ mop |= value & 0xfff;
+ bfd_putb16 (mop, where);
}
break;
if (fixP->fx_done)
{
unsigned int mop;
- mop = bfd_getb32 ((unsigned char *) where);
- mop |= (unsigned int) ((value & 0xfff) << 8 |
- (value & 0xff000) >> 12);
- bfd_putb32 ((bfd_vma) mop, (unsigned char *) where);
+ mop = bfd_getb32 (where);
+ mop |= ((value & 0xfff) << 8
+ | (value & 0xff000) >> 12);
+ bfd_putb32 (mop, where);
}
break;
unsigned int mop;
value >>= 1;
- mop = bfd_getb32 ((unsigned char *) where - 1);
- mop |= (unsigned int) (value & 0xffffff);
- bfd_putb32 ((bfd_vma) mop, (unsigned char *) where - 1);
+ mop = bfd_getb32 (where - 1);
+ mop |= value & 0xffffff;
+ bfd_putb32 (mop, where - 1);
}
break;
/* It's a relocation against an instruction. */
if (INSN_BIG_ENDIAN)
- insn = bfd_getb32 ((unsigned char *) buf);
+ insn = bfd_getb32 (buf);
else
- insn = bfd_getl32 ((unsigned char *) buf);
+ insn = bfd_getl32 (buf);
switch (fixP->fx_r_type)
{
then we can optimize if the call destination is near
by changing the call into a branch always. */
if (INSN_BIG_ENDIAN)
- delay = bfd_getb32 ((unsigned char *) buf + 4);
+ delay = bfd_getb32 (buf + 4);
else
- delay = bfd_getl32 ((unsigned char *) buf + 4);
+ delay = bfd_getl32 (buf + 4);
if ((insn & OP (~0)) != OP (1) || (delay & OP (~0)) != OP (2))
break;
if ((delay & OP3 (~0)) != OP3 (0x3d) /* Restore. */
int reg;
if (INSN_BIG_ENDIAN)
- setter = bfd_getb32 ((unsigned char *) buf - 4);
+ setter = bfd_getb32 (buf - 4);
else
- setter = bfd_getl32 ((unsigned char *) buf - 4);
+ setter = bfd_getl32 (buf - 4);
if ((setter & (0xffffffff ^ RD (~0)))
!= (INSN_OR | RS1 (O7) | RS2 (G0)))
break;
break;
if (INSN_BIG_ENDIAN)
- bfd_putb32 (INSN_NOP, (unsigned char *) buf + 4);
+ bfd_putb32 (INSN_NOP, buf + 4);
else
- bfd_putl32 (INSN_NOP, (unsigned char *) buf + 4);
+ bfd_putl32 (INSN_NOP, buf + 4);
}
}
break;
}
if (INSN_BIG_ENDIAN)
- bfd_putb32 (insn, (unsigned char *) buf);
+ bfd_putb32 (insn, buf);
else
- bfd_putl32 (insn, (unsigned char *) buf);
+ bfd_putl32 (insn, buf);
}
/* Are we finished with this relocation now? */
where = fixP->fx_frag->fr_literal + fixP->fx_where;
if (fixP->fx_size > 2)
- insn = bfd_getl32 ((unsigned char *) where);
+ insn = bfd_getl32 (where);
else
- insn = bfd_getl16 ((unsigned char *) where);
+ insn = bfd_getl16 (where);
/* When inserting loop offsets a backwards displacement
is encoded as a positive value. */
as_warn_where (fixP->fx_file, fixP->fx_line, "%s", errmsg);
if (fixP->fx_size > 2)
- bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putl32 (insn, where);
else
- bfd_putl16 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putl16 (insn, where);
if (fixP->fx_done)
/* Nothing else to do here. */
else if (fixP->fx_size == 1)
where -= 3;
- insn = bfd_getl32 ((unsigned char *) where);
+ insn = bfd_getl32 (where);
/* Use the operand's insertion procedure, if present, in order to
make sure that the value is correctly stored in the insn. */
insn = operand->insert (insn, (offsetT) value, & message);
/* Ignore message even if it is set. */
- bfd_putl32 ((bfd_vma) insn, (unsigned char *) where);
+ bfd_putl32 (insn, where);
}
else
{
{
case BFD_RELOC_V850_32_ABS:
case BFD_RELOC_V850_32_PCREL:
- bfd_putl32 (value & 0xfffffffe, (unsigned char *) where);
+ bfd_putl32 (value & 0xfffffffe, where);
break;
case BFD_RELOC_32:
- bfd_putl32 (value, (unsigned char *) where);
+ bfd_putl32 (value, where);
break;
case BFD_RELOC_V850_23:
bfd_putl32 (((value & 0x7f) << 4) | ((value & 0x7fff80) << (16-7))
| (bfd_getl32 (where) & ~((0x7f << 4) | (0xffff << 16))),
- (unsigned char *) where);
+ where);
break;
case BFD_RELOC_16:
case BFD_RELOC_V850_SDA_16_16_OFFSET:
case BFD_RELOC_V850_TDA_16_16_OFFSET:
case BFD_RELOC_V850_CALLT_16_16_OFFSET:
- bfd_putl16 (value & 0xffff, (unsigned char *) where);
+ bfd_putl16 (value & 0xffff, where);
break;
case BFD_RELOC_8:
case BFD_RELOC_V850_16_PCREL:
bfd_putl16 ((-value & 0xfffe) | (bfd_getl16 (where + 2) & 0x0001),
- (unsigned char *) (where + 2));
+ where + 2);
break;
case BFD_RELOC_V850_22_PCREL:
case BFD_RELOC_V850_LO16_S1:
case BFD_RELOC_V850_ZDA_15_16_OFFSET:
case BFD_RELOC_V850_SDA_15_16_OFFSET:
- bfd_putl16 (value & 0xfffe, (unsigned char *) where);
+ bfd_putl16 (value & 0xfffe, where);
break;
case BFD_RELOC_V850_16_SPLIT_OFFSET:
break;
default:
/* It's a relocation against an instruction. */
- insn = bfd_getb32 ((unsigned char *) buf);
+ insn = bfd_getb32 (buf);
switch (fixP->fx_r_type)
{
break;
}
- bfd_putb32 (insn, (unsigned char *) buf);
+ bfd_putb32 (insn, buf);
visium_update_parity_bit (buf);
break;
}
_("Value out of 16-bit range."));
value >>= 8;
value &= 0x00ff;
- bfd_putb16 ((bfd_vma) value | opcode, (void *) where);
+ bfd_putb16 (value | opcode, where);
break;
case BFD_RELOC_XGATE_24:
case BFD_RELOC_XGATE_IMM8_LO:
as_bad_where (fixP->fx_file, fixP->fx_line,
_("Value out of 16-bit range."));
value &= 0x00ff;
- bfd_putb16 ((bfd_vma) value | opcode, (void *) where);
+ bfd_putb16 (value | opcode, where);
break;
case BFD_RELOC_XGATE_IMM3:
if (value < 0 || value > 7)
number_to_chars_bigendian (where, (opcode | value), 2);
break;
case BFD_RELOC_8:
- ((bfd_byte *) where)[0] = (bfd_byte) value;
+ *where = value & 0xff;
break;
case BFD_RELOC_32:
- bfd_putb32 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb32 (value, where);
break;
case BFD_RELOC_16:
- bfd_putb16 ((bfd_vma) value, (unsigned char *) where);
+ bfd_putb16 (value, where);
break;
default:
as_fatal (_("Line %d: unknown relocation type: 0x%x."), fixP->fx_line,