Fix uninitialised CRIS insn
gas/ * config/tc-cris.c (md_create_long_jump): Follow "short" jump with a nop rather than leaving uninitialised. gas/testsuite/ * gas/cris/rd-bkw4v32.d: Update.
This commit is contained in:
parent
cc0c4d535e
commit
44ed9ef26f
@ -1,3 +1,8 @@
|
||||
2014-06-16 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* config/tc-cris.c (md_create_long_jump): Follow "short" jump
|
||||
with a nop rather than leaving uninitialised.
|
||||
|
||||
2014-06-13 Chen Gang <gang.chen.5i5j@gmail.com>
|
||||
|
||||
* config/tc-score7.c: Replace sprintf with strcpy where
|
||||
|
@ -1124,9 +1124,15 @@ md_create_long_jump (char *storep, addressT from_addr, addressT to_addr,
|
||||
|
||||
if (max_short_minus_distance <= distance
|
||||
&& distance <= max_short_plus_distance)
|
||||
/* Then make it a "short" long jump. */
|
||||
md_create_short_jump (storep, from_addr, to_addr, fragP,
|
||||
{
|
||||
/* Then make it a "short" long jump. */
|
||||
md_create_short_jump (storep, from_addr, to_addr, fragP,
|
||||
to_symbol);
|
||||
if (cris_arch == arch_crisv32)
|
||||
md_number_to_chars (storep + 6, NOP_OPCODE_V32, 2);
|
||||
else
|
||||
md_number_to_chars (storep + 6, NOP_OPCODE, 2);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* We have a "long" long jump: "JUMP [PC+]". If CRISv32, always
|
||||
|
@ -1,3 +1,7 @@
|
||||
2014-06-16 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* gas/cris/rd-bkw4v32.d: Update.
|
||||
|
||||
2014-06-10 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* gas/i386/prefix.s: Add another fwait test.
|
||||
|
@ -43,7 +43,7 @@ Disassembly of section \.text:
|
||||
4acc: b005 nop
|
||||
4ace: ffed 4635 ba 8014 <x\+0x8014>
|
||||
4ad2: b005 nop
|
||||
4ad4: 0000 bcc \.
|
||||
4ad4: b005 nop
|
||||
4ad6: 6f9e 0000 0000 move.d 0 <x>,r9
|
||||
4ad8: R_CRIS_32 x336
|
||||
4adc: bfbd 0000 0000 jsr 0 <x>
|
||||
|
Loading…
Reference in New Issue
Block a user