This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug build/22188] gdb/arm-tdep.c:6449: (rn & 0xe) == 0x1 - tautology


https://sourceware.org/bugzilla/show_bug.cgi?id=22188

dilyan.palauzov at aegee dot org <dilyan.palauzov at aegee dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from dilyan.palauzov at aegee dot org <dilyan.palauzov at aegee dot org> ---
Fixed on master with

commit 72dd27306224497c8ba97f391d30b774d4d973fb
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Mon Feb 5 20:19:49 2018 +0100

    ppc64: Fix stwux encoding

    With gcc-8.0.1-0.9.fc28.x86_64 I get:

    ../../gdb/rs6000-tdep.c: In function 'CORE_ADDR skip_prologue(gdbarch*,
CORE_ADDR, CORE_ADDR, rs6000_frameda
    ../../gdb/rs6000-tdep.c:1911:34: error: bitwise comparison always evaluates
to false [-Werror=tautological-c
           else if ((op & 0xfc1f016a) == 0x7c01016e)
                    ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~

   
https://www.ibm.com/support/knowledgecenter/en/ssw_aix_72/com.ibm.aix.alangref/idalangref_stwux_stux_instrs.
    says
            bit 21 - 30 = 183
            Those are bits 1..10 in normal bit order: 183<<1 = 0x16e

    gdb/ChangeLog
    2018-02-04  Jan Kratochvil  <jan.kratochvil@redhat.com>

            * rs6000-tdep.c (skip_prologue): Fix stwux encoding.

diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index 794605f..70dc55f 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -1857,7 +1857,7 @@ skip_prologue (struct gdbarch *gdbarch, CORE_ADDR pc,
CORE_ADDR lim_pc,
          offset = fdata->offset;
          continue;
        }
-      else if ((op & 0xfc1f016a) == 0x7c01016e)
+      else if ((op & 0xfc1f016e) == 0x7c01016e)
        {                       /* stwux rX,r1,rY */
          /* No way to figure out what r1 is going to be.  */
          fdata->frameless = 0;

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]