public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: Tristan Gingold <gingold@adacore.com>
To: Renlin Li <renlin.li@arm.com>
Cc: "binutils@sourceware.org" <binutils@sourceware.org>,
	Nicholas Clifton <nickc@redhat.com>,
	Marcus Shawcroft <Marcus.Shawcroft@arm.com>
Subject: Re: [2.25][AARCH64][GAS]Backport "Positively emit symbols for alignment."
Date: Wed, 17 Jun 2015 10:20:00 -0000	[thread overview]
Message-ID: <FAD1F864-4E67-456B-9F7E-1003F707350A@adacore.com> (raw)
In-Reply-To: <55814031.2010000@arm.com>


> On 17 Jun 2015, at 11:38, Renlin Li <renlin.li@arm.com> wrote:
> 
> Hi all,
> 
> This is a backport patch from the discussion here:
> 
> https://sourceware.org/ml/binutils/2015-05/msg00027.html
> https://sourceware.org/ml/binutils/2015-05/msg00027.html
> 
> The expected results of testcases are modified to account the status of binutils 2.25.
> 
> Binutils, ld, gas regression test Okay. Okay to commit for branch 2.25?

Yes, this is ok for 2.25

> 
> 
> Regards,
> Renlin Li
> 
> 
> gas/ChangeLog:
> 
> 2015-06-17  Renlin Li  <renlin.li@arm.com>
> 
>        Backport from mainline.
>        2015-05-05  Renlin Li  <renlin.li@arm.com>
> 
>        * config/tc-aarch64.c (aarch64_init_frag): Always generate mapping symbols.
> 
> gas/testsuite/ChangeLog:
> 
> 2015-06-17  Renlin Li  <renlin.li@arm.com>
> 
>        Backport from mainline.
>        2015-05-05  Renlin Li  <renlin.li@arm.com>
> 
>        * gas/aarch64/mapping_5.d: New.
>        * gas/aarch64/mapping_5.s: New.
>        * gas/aarch64/mapping_6.d: New.
>        * gas/aarch64/mapping_6.s: New.
> 
> 
> On 24/04/15 13:53, Renlin Li wrote:
>> Hi all,
>> 
>> In arm_init_frag(), when ARM or THUMB are recorded,  it will simply return without doing anything. This is not correct in a few cases.
>> 
>> For the following two cases:
>> case 1:
>>        nop        ----> MAP_ARM
>>        .long   0 ---> MAP_DATA
>>        .align  4 --->
>>                      ---->(1)
>>                      ----> start new frag
>>        .word   0x12345678
>> 
>> (1) paddings here are all treated as data, because the previous state is MAP_DATA.
>> 
>> case 2:
>>        nop       ----> MAP_ARM
>>        .long   0 ---> MAP_DATA
>>        .byte   1
>>        .align  2 ---> (1)
>>                     ----> (2)
>>                     ----> start new frag
>>        .long   0x12345678 ----> (3)
>> 
>> stage 1: while parsing the input file:
>> (1) arm_init_frag early returns, No state change, no new symbol. (3)No state change, no new symbol.
>> stage 2: Later, while writing the object file:
>> (2)MAP_DATA, MAP_ARM are inserted by insert_data_mapping_symol to handle alignment. (3) interpreted as instruction because of the MAP_ARM inserted at (2)
>> 
>> 
>> This change might generate redundant symbols, some of them can be removed later. In check_mapping_symbols(), the symbols at the end of a section, and overlapping symbols will be removed.
>> 
>> gas checked without any new issues. Okay to commit?
>> 
>> By the way, Nick, aarch64 has the same issue. The same can be done to aarch64_init_frag(). Another way is to remove fragP->tc_frag_data.recorded. It's only used in a few places. But I am sure what dose it intended to do, Could you please explain a little bit for me?
>> 
>> Regards,
>> Renlin Li
>> 
>> 
>> gas/ChangeLog:
>> 
>> 2015-04-24  Renlin Li  <renlin.li@arm.com>
>> 
>>    * config/tc-arm.c (arm_init_frag): Always emit mapping symbols.
>> 
>> gas/testsuite/ChangeLog:
>> 
>> 2015-04-24  Renlin Li  <renlin.li@arm.com>
>> 
>>    * gas/arm/thumb2_vpool_be.d: Adjust the desired output.
>>    * gas/arm/vldconst_be.d: Ditto.
>> 
> 
> <aarch64-backport.diff>

      reply	other threads:[~2015-06-17 10:20 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-24 12:53 [GAS][ARM]Positively emit symbols for alignment Renlin Li
2015-04-24 16:40 ` Nicholas Clifton
2015-05-05 15:22   ` Commit: [GAS][AARCH64]Positively " Renlin Li
2015-04-28 21:07 ` [GAS][ARM]Positively " Hans-Peter Nilsson
2015-04-29  9:21   ` [GAS][ARM]Positively emit symbols for alignment. --> [PATCH][LD][ARM] Fix two test case failures Renlin Li
2015-04-29  9:23     ` Richard Earnshaw
2015-06-16  8:24 ` [2.25][ARM][GAS]Backport "Positively emit symbols for alignment." Renlin Li
2015-06-16  8:29   ` Tristan Gingold
2015-06-16  8:31   ` Renlin Li
2015-06-17  9:39 ` [2.25][AARCH64][GAS]Backport " Renlin Li
2015-06-17 10:20   ` Tristan Gingold [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=FAD1F864-4E67-456B-9F7E-1003F707350A@adacore.com \
    --to=gingold@adacore.com \
    --cc=Marcus.Shawcroft@arm.com \
    --cc=binutils@sourceware.org \
    --cc=nickc@redhat.com \
    --cc=renlin.li@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).