[llvm] r315044 - Roll forward r314928

Xinliang David Li via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 6 17:06:13 PDT 2017


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/9df42478/attachment.html>


More information about the llvm-commits mailing list