]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
* config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
authorJeff Law <law@redhat.com>
Fri, 19 May 2000 00:21:12 +0000 (00:21 +0000)
committerJeff Law <law@redhat.com>
Fri, 19 May 2000 00:21:12 +0000 (00:21 +0000)
        instruction to reflect change in re_assemble_*.

gas/ChangeLog
gas/config/tc-hppa.c

index b38066bac14e663be07db615d1de86dfcbd5d408..fc9d9f8da8eefdf8dd85f7950b1653c4dcdbffc0 100644 (file)
@@ -1,3 +1,8 @@
+2000-05-18  Alan Modra  <alan@linuxcare.com.au>
+
+       * config/tc-hppa.c (md_apply_fix): Mask out immediate bits of
+       instruction to reflect change in re_assemble_*.
+
 Thu May 18 10:52:14 2000  Jeffrey A Law  (law@cygnus.com)
 
        * configure.in (hppa-*-hpux11*): If the cpu is hppa*64*, then
index 3876842873bf3a754960d6a1de62b4f38d1b1bb5..c57fd61ccff3e7efef2c90b4753d8d079b6a14c2 100644 (file)
@@ -4422,7 +4422,7 @@ md_apply_fix (fixP, valp)
          CHECK_FIELD (new_val, 1048576, -1048576, 0);
          val = new_val;
 
-         insn = re_assemble_21 (insn, val);
+         insn = re_assemble_21 (insn & ~ 0x1fffff, val);
          break;
 
        /* Handle all the opcodes with the 'i' operand type.  */
@@ -4438,7 +4438,7 @@ md_apply_fix (fixP, valp)
          CHECK_FIELD (new_val, 8199, -8184, 0);
          val = new_val;
 
-         insn = re_assemble_12 (insn, (val - 8) >> 2);
+         insn = re_assemble_12 (insn & ~ 0x1ffd, (val - 8) >> 2);
          break;
 
        /* Handle some of the opcodes with the 'W' operand type.  */
@@ -4455,7 +4455,7 @@ md_apply_fix (fixP, valp)
            CHECK_FIELD (new_val, 262143, -262144, 0);
            val = new_val;
 
-           insn = re_assemble_17 (insn, (val - 8) >> 2);
+           insn = re_assemble_17 (insn & ~ 0x1f1ffd, (val - 8) >> 2);
            break;
          }
 
@@ -4472,7 +4472,7 @@ md_apply_fix (fixP, valp)
            CHECK_FIELD (new_val, 8388607, -8388608, 0);
            val = new_val;
 
-           insn = re_assemble_22 (insn, (val - 8) >> 2);
+           insn = re_assemble_22 (insn & ~ 0x3ff1ffd, (val - 8) >> 2);
            break;
          }