This is the mail archive of the binutils@sourceware.org mailing list for the binutils 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]

Re: [PATCH] gas/arm: Misses deprecated IT instruction warning for ARMv8



On 16/06/14 15:41, Richard Earnshaw wrote:
On 13/06/14 16:55, Nicholas Clifton wrote:
Hi Jiong,

given code:

.thumb
.syntax unified

it eq
addeq sp, sp, #12

assembled with -march=armv8-a -mthumb, gas fails to warn
that this is a deprecated form.
Where is this deprecation specified ?   Please can you give a reference
so that I can check it ?

Cheers
    Nick


It's in section F6.2 of the v8 ARM ARM:

Registered users can get a copy from here:

http://arminfo.emea.arm.com/help/topic/com.arm.doc.ddi0487a.b/DDI0487A_b_armv8_arm.pdf

But this doesn't look right, since the instructions you need to match
don't follow this pattern:

+  { 0x00dd, 0x7fff, N_("ADD/SUB sp, sp #imm") },

Specifically SUB SP is 0b101100001xxxxxxx
and ADD SP is 0b101100000xxxxxxx.

Iff your mask is right, it needs a comment to explain why.

yes, the mask confuse people at the first glance.

the reason to put "0x00dd" there is because arm assembler is using the
pseudo "tvalue" which is from the table "T16_32_TAB", instead of the
original encoding when that checking happen.

the real encoding will be converted back at later stage in "md_apply_fix".

OK for trunk?

Thanks


R.





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