Re: [PATCH] cris: arch-v10: kernel: kgdb: let is_dyn_brkp as extern variable

From: gchen gchen
Date: Wed Jul 08 2015 - 21:27:09 EST


On 07/07/2015 06:28 AM, Chen Gang wrote:
> On 7/6/15 18:31, Valdis.Kletnieks@xxxxxx wrote:
>> On Mon, 06 Jul 2015 15:49:20 +0800, Chen Gang said:
>>> On 07/06/2015 02:25 AM, Valdis.Kletnieks@xxxxxx wrote:
>>>> On Sun, 05 Jul 2015 06:07:54 +0800, Chen Gang said:
>>>>> For upstream cris toolchain (gcc is 6.0
>>>>
>>>> typo?
>>>>
>>>
>>> Do you mean "toolchain" -> "tool chain"?
>>
>> No, I was wondering where a gcc 6.0 managed to escape when 5.1 just got
>> released about 2 weeks ago....
>>
>

Oh, sorry, gcc 5.1 is the same, and at present, for me:

- The new gcc have additional optimization for the static variables. It
should notice about the related c code when optimizing, but gcc has
no idea about assembly code (it should passes them to gas, directly).

- If one want gcc skip the related optimization, it can use 'volatile'
for it (the static variable which may be used by both c code and
assembly code in one file).

- So I guess, we need add 'volatile' to the related static variable, we
do not want to disable this optimization only because of this issue.

Welcome any additional ideas, suggestions and completions.

> OK, thanks. At present, gcc 6.0 is the latest in master branch.
>
> After check fedora released toolchain (gcc 4.9.1, binutils 2.25), it has
> no issue (support static variable in our case). So this patch can be
> dropped, and I shall try:
>
> - Use the same configuration parameters of fedora released toolchain to
> build the upstream latest cross toolchain again, and try.
>
> - If it still has issue (not support static variable), I shall try to
> fix it.
>
>
> Thanks.
>

--
Chen Gang

Open, share, and attitude like air, water, and life which God blessed