diff options
-rw-r--r-- | cpu/ChangeLog | 4 | ||||
-rw-r--r-- | cpu/fr30.cpu | 2 | ||||
-rw-r--r-- | opcodes/ChangeLog | 4 | ||||
-rw-r--r-- | opcodes/fr30-ibld.c | 2 |
4 files changed, 10 insertions, 2 deletions
diff --git a/cpu/ChangeLog b/cpu/ChangeLog index 3d39b91..6882c45 100644 --- a/cpu/ChangeLog +++ b/cpu/ChangeLog @@ -1,3 +1,7 @@ +2016-03-02 Alan Modra <amodra@gmail.com> + + * fr30.cpu (f-m4): Replace -1 << 4 with -16. + 2016-02-02 Andrew Burgess <andrew.burgess@embecosm.com> * epiphany.opc (epiphany_print_insn): Set info->bytes_per_line to diff --git a/cpu/fr30.cpu b/cpu/fr30.cpu index 6c8e8ce..0124647 100644 --- a/cpu/fr30.cpu +++ b/cpu/fr30.cpu @@ -163,7 +163,7 @@ ; ??? On a 64 bit host this doesn't get completely sign extended ; if the value is recorded in a long, as it is during extraction. ; Various fixes exist, pick one. - ((value pc) (or WI value (sll WI (const -1) (const 4)))) + ((value pc) (or WI value (const -16))) ) (dnf f-u8 "8 bit unsigned" () 8 8) (dnf f-i8 "8 bit unsigned" () 4 8) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 0a78719..63361e4 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2016-03-02 Alan Modra <amodra@gmail.com> + + * fr30-ibld.c: Regenerate. + 2016-03-01 Nick Clifton <nickc@redhat.com> PR target/19747 diff --git a/opcodes/fr30-ibld.c b/opcodes/fr30-ibld.c index 1293e73..3ebecf9 100644 --- a/opcodes/fr30-ibld.c +++ b/opcodes/fr30-ibld.c @@ -881,7 +881,7 @@ fr30_cgen_extract_operand (CGEN_CPU_DESC cd, { long value; length = extract_normal (cd, ex_info, insn_value, 0, 0, 8, 4, 16, total_length, pc, & value); - value = ((value) | (((-1UL) << (4)))); + value = ((value) | (-16)); fields->f_m4 = value; } break; |