[llvm] r315044 - Roll forward r314928

Xinliang David Li via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 6 21:30:56 PDT 2017


that will be greatly helpful -- eyeballing >1200 differences won't be
effective.

David

On Fri, Oct 6, 2017 at 5:57 PM, Reid Kleckner <rnk at google.com> wrote:

> No, but next week maybe I can try bisecting the file with #pragma clang
> optnone.
>
> On Fri, Oct 6, 2017 at 5:26 PM, Xinliang David Li <davidxl at google.com>
> wrote:
>
>> Do you know the function name that is affected?
>>
>> David
>>
>> On Fri, Oct 6, 2017 at 5:14 PM, Reid Kleckner <rnk at google.com> wrote:
>>
>>> Here is a zip file with 3 files: before.ll, after.ll, and
>>> passes-disabled.ll.
>>> https://drive.google.com/open?id=0B5-KodWdXF4YLVA5UUFkWnBvRWM
>>>
>>> Hopefully `opt -O2 passes-disabled.ll` shows the interesting transform.
>>>
>>> On Fri, Oct 6, 2017 at 5:06 PM, Xinliang David Li <davidxl at google.com>
>>> wrote:
>>>
>>>> that will be great.   InstCombine is iterative, so it usually creates
>>>> huge text diff. To minimize the diff, the DEBUG_COUNTER  (which is used by
>>>> instcombine) can be used to pin-point one combining that triggers the
>>>> mis-behavior.
>>>>
>>>> David
>>>>
>>>> On Fri, Oct 6, 2017 at 5:00 PM, Reid Kleckner <rnk at google.com> wrote:
>>>>
>>>>> It's a normal release build. I'm pretty sure I know which TU is
>>>>> miscompiled (SemaExpr.cpp), so I'll get the textual IR before and after
>>>>> this change. Hopefully it'll be obvious that they aren't equivalent.
>>>>>
>>>>> On Fri, Oct 6, 2017 at 4:23 PM, Xinliang David Li <davidxl at google.com>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Oct 6, 2017 at 4:08 PM, Reid Kleckner <rnk at google.com> wrote:
>>>>>>
>>>>>>> On Fri, Oct 6, 2017 at 2:50 PM, Xinliang David Li <
>>>>>>> davidxl at google.com> wrote:
>>>>>>>
>>>>>>>> On Fri, Oct 6, 2017 at 2:20 PM, Reid Kleckner <rnk at google.com>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> This appears to have caused a bootstrap failure on Windows:
>>>>>>>>> http://lab.llvm.org:8011/builders/clang-x64-ninja-win7/builds/6884
>>>>>>>>> http://lab.llvm.org:8011/builders/clang-x86-windows-msvc2015
>>>>>>>>> /builds/7611
>>>>>>>>>
>>>>>>>>> I am going to revert and try to reproduce. It looks like clang
>>>>>>>>> ends up emitting an error on valid code.
>>>>>>>>>
>>>>>>>>
>>>>>>>> Please help with the reproducible -- it will be hard for me to get
>>>>>>>> a repro on windows.
>>>>>>>>
>>>>>>>
>>>>>>> Can you build clang with your patch and try to compile this code?
>>>>>>>
>>>>>>> char *f(char *p, int i) {
>>>>>>>   return p + i;
>>>>>>> }
>>>>>>>
>>>>>>> If clang says:
>>>>>>> t.c:2:12: error: invalid operands to binary expression ('char *' and
>>>>>>> 'int')
>>>>>>>   return p + i;
>>>>>>>          ~ ^ ~
>>>>>>> 1 error generated.
>>>>>>>
>>>>>>> Then you have the miscompile locally and it doesn't require Windows.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> How is the self build compiler built? I have one built with
>>>>>> RelWithDebInfo, and that compiler compiles this case fine without an error.
>>>>>>
>>>>>> David
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171006/7de7de5f/attachment.html>


More information about the llvm-commits mailing list