This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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, i386, Pointer Bounds Checker 33/x] MPX ABI


2014-10-10 21:35 GMT+04:00 Jeff Law <law@redhat.com>:
> On 10/10/14 11:33, Uros Bizjak wrote:
>>
>> On Fri, Oct 10, 2014 at 7:29 PM, Ilya Enkovich <enkovich.gnu@gmail.com>
>> wrote:
>>>
>>> 2014-10-10 21:10 GMT+04:00 Uros Bizjak <ubizjak@gmail.com>:
>>>>
>>>> On Wed, Oct 1, 2014 at 8:57 PM, Vladimir Makarov <vmakarov@redhat.com>
>>>> wrote:
>>>>
>>>>> The problem is in code introduced by Bernd in IRA and caller-saves.c in
>>>>> 2012.  It is basically an optimization for functions returning always
>>>>> the
>>>>> same result as one argument (e.g. memcpy returning 1st argument).
>>>>>
>>>>> There are two possible solutions.  First one is to prohibit the
>>>>> optimizations when there is a parallel in SET.  Second one is to go
>>>>> deeper
>>>>> if the call result is guaranteed in the first element which is true for
>>>>> the
>>>>> patch.
>>>>
>>>>
>>>> I suspect that the first solution will regress
>>>> gcc.target/i386/retarg.c on i686 - that testcase test if referred
>>>> optimization is effective. All things equal, I think we should go with
>>>> the second solution.
>>>
>>>
>>> The first solutions is in trunk since October 3
>>> (https://gcc.gnu.org/ml/gcc-cvs/2014-10/msg00094.html) and I don't see
>>> such fail.  Patch actually just checks for a case which never occurs
>>> right now and therefore should be quite safe.
>>
>>
>> True, but after MPX patches are committed, PARALLELs will be passed as
>> call targets. I wonder if the testcase fails then.
>
> Well, before those patches can be committed, they have to survive bootstrap
> and regression testing as a whole :-)

Surely! Also PARALLEL will not be passed until you pass -mmpx flag.

Ilya

>
> jeff


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