bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

aarch64_logical_immediate_p


From: D.Sturm
Subject: aarch64_logical_immediate_p
Date: Sat, 24 Aug 2013 15:00:56 +0200

Since there is no official document regarding the Aarch64  instruction encoding available (at least I couldn't find any) I'm studying the binutils code instead.

I don't understand how the following code in aarch64_logical_immediate_p works:

  if (is32)
    {
      /* Allow all zeros or all ones in top 32-bits, so that
constant expressions like ~1 are permitted.  */
      if (value >> 32 != 0 && value >> 32 != 0xffffffff)
return 0xffffffff;

Why are we returning a true value here? (and why such a strange choice?) And that without even setting the aarch64_insn *encoding - this seems like a bug to me or I'm misunderstanding the code.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]