[llvm] r235050 - DebugInfo: Remove 'inlinedAt:' field from MDLocalVariable
Duncan P. N. Exon Smith
dexonsmith at apple.com
Thu Apr 16 15:37:24 PDT 2015
> On 2015-Apr-16, at 14:21, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote:
>
>>
>> On 2015-Apr-16, at 11:41, David Blaikie <dblaikie at gmail.com> wrote:
>>
>> (from IRC discussion)
>>
>> Looks like this might've caused the GDB buildbot regression seen here: http://lab.llvm.org:8011/builders/clang-x86_64-ubuntu-gdb-75/builds/21390
>>
>> Specifically, in the below program
>>
>> int *g;
>>
>> static __attribute__((always_inline)) int f(int a) {
>> int l;
>> g = &l;
>> return a;
>> }
>>
>> int main(void) {
>> f(0);
>> f(0);
>> return 0;
>> }
>>
>> The inlined_subroutine for 'f' in 'main' has no DW_TAG_formal_parameter (for 'a')
>
> I've tracked this down -- UserValue::match() needed to be updated.
r235140
>
> I fixed what might be an unrelated bug in DebugLocEntry. I'll have
> to separate out the two changes to see if this testcase provides any
> coverage for `DebugLocEntry`; if not I'll maybe need some help from
> you or Adrian coming up with a good testcase for that one.
This turned out to be unrelated.
Looking at the code, I'm not even sure what the variables are doing in
`DebugLocEntry` -- they're only used to prevent adjacent locations from
coalescing. I guess the main problem is I don't know what this table is
for (well, `.debug_loc`, but I don't know what that is either).
By inspection, r235050 caused a behaviour change here (and the attached
patch would revert the behaviour change), but I honestly have no idea
what to test.
Adrian, you seem to have touched this code most recently. Any ideas?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: debug-loc-entry-inlined-variables.patch
Type: application/octet-stream
Size: 204 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150416/55fd8ffc/attachment.obj>
More information about the llvm-commits
mailing list