[llvm] r180140 - Make sure the instruction right after an inlined function has a

Eric Christopher echristo at gmail.com
Wed Apr 24 11:38:50 PDT 2013


What routine should I be looking at and compile options etc?

-eric

On Wed, Apr 24, 2013 at 7:38 PM, Adrian Prantl <aprantl at apple.com> wrote:
>
> On Apr 24, 2013, at 11:35 AM, Eric Christopher <echristo at gmail.com> wrote:
>
>> On Wed, Apr 24, 2013 at 7:33 PM, Adrian Prantl <aprantl at apple.com> wrote:
>>>
>>> On Apr 24, 2013, at 11:30 AM, Manman Ren <mren at apple.com> wrote:
>>>
>>>>
>>>> On Apr 23, 2013, at 7:17 PM, Adrian Prantl wrote:
>>>>
>>>>>
>>>>> On Apr 23, 2013, at 3:44 PM, Eric Christopher <echristo at gmail.com> wrote:
>>>>>
>>>>>> On Tue, Apr 23, 2013 at 8:56 PM, Adrian Prantl <aprantl at apple.com> wrote:
>>>>>>> Author: adrian
>>>>>>> Date: Tue Apr 23 14:56:03 2013
>>>>>>> New Revision: 180140
>>>>>>>
>>>>>>> URL: http://llvm.org/viewvc/llvm-project?rev=180140&view=rev
>>>>>>> Log:
>>>>>>> Make sure the instruction right after an inlined function has a
>>>>>>> debug location. This solves a problem where range of an inlined
>>>>>>> subroutine is emitted wrongly.
>>>>>>> Patch by Manman Ren.
>>>>>>>
>>>>>>
>>>>>> Manman has commit rights. Why is she not committing this?
>>>>> I inherited the radar from her, she already had this patch, but it was depending on some other issue to be fixed first. So when that issue was fixed I went ahead and committed it, without taking credit for it, but with taking full responsibility for it :-)
>>>>
>>>> Adrian,
>>>>
>>>> Thanks for taking responsibility for it :)
>>>> The problem was reported on a larger testing case and I came up with this small testing case to verify the patch.
>>>> Can you check whether the patch has an impact on the actual testing case?
>>>> I think I checked it before, but not so sure.
>>>
>>> Yes it does, but Eric correctly pointed out that the current testcase doesn’t actually show any change in the range of the inlined_subroutine DIE. I’m currently running delta on the IR code of the original test and will commit a reduced example that actually tests for the inlined_subroutine range once that’s done.
>>>
>>
>> Is the code itself sharable at the moment? (Even a .ii, doesn't have
>> to be reduced) so I can see a bit what's going on?
>
> The testcase is tiny, it’s the generated IR that’s huge:
>
> #include <vector>
> #include <algorithm>
>
> int main() {
>   int x = 4;
>   std::vector<int> vec;
>   std::reverse(vec.begin(), vec.end());
>   return 0;
> }
>
> -- adrian




More information about the llvm-commits mailing list