wolfgangp (Wolfgang Pieb)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 17 2014, 5:52 PM (174 w, 37 m)

Recent Activity

Fri, Jan 12

wolfgangp created D42021: [DWARF] v5 implementation of string offsets tables - producer side.
Fri, Jan 12, 5:01 PM
wolfgangp accepted D41226: [LiveDebugValues] recognize spilled register that is killed in instruction after the spill.
Fri, Jan 12, 12:00 PM

Wed, Jan 10

wolfgangp committed rL322250: [DWARF][NFC] Overload AsmPrinter::emitDwarfStringOffsets() to take a….
[DWARF][NFC] Overload AsmPrinter::emitDwarfStringOffsets() to take a…
Wed, Jan 10, 6:36 PM
wolfgangp closed D41920: [DWARF][NFC] Prep for upcoming DWARF v5 string offsets table producer patch..
Wed, Jan 10, 6:36 PM
wolfgangp added a comment to D41920: [DWARF][NFC] Prep for upcoming DWARF v5 string offsets table producer patch..

Could you please upload patches with more context in the future? git diff -U9999 is good :-)

Wed, Jan 10, 5:43 PM
wolfgangp created D41920: [DWARF][NFC] Prep for upcoming DWARF v5 string offsets table producer patch..
Wed, Jan 10, 2:57 PM

Mon, Jan 8

wolfgangp added inline comments to D41226: [LiveDebugValues] recognize spilled register that is killed in instruction after the spill.
Mon, Jan 8, 5:33 PM
wolfgangp added a comment to D41226: [LiveDebugValues] recognize spilled register that is killed in instruction after the spill.

I agree that this is a solution to a specific case. I would be OK with it going in for now (after addressing the remaining review comments) with a FIXME comment added to provide a more comprehensive solution later, i.e. one that addresses bundles and kills in instructions further down the chain, as Bjorn suggested.

Mon, Jan 8, 9:58 AM

Thu, Dec 21

wolfgangp committed rL321330: [DWARF] Fix formatting bug with r321295. This fixes a MIPS buildbot failure..
[DWARF] Fix formatting bug with r321295. This fixes a MIPS buildbot failure.
Thu, Dec 21, 5:13 PM
wolfgangp committed rL321295: [DWARF v5] Rework of string offsets table reader.
[DWARF v5] Rework of string offsets table reader
Thu, Dec 21, 11:39 AM
wolfgangp closed D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Thu, Dec 21, 11:39 AM

Wed, Dec 20

wolfgangp added inline comments to D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Wed, Dec 20, 5:38 PM
wolfgangp added inline comments to D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Wed, Dec 20, 3:29 PM
wolfgangp updated the diff for D41146: [DWARF] DWARF v5: Rework of string offsets table reader.

Addressed more review comments: Made the logic on how to sort and unique string offsets table contributions a bit more readable when getting ready for dumping.

Wed, Dec 20, 3:29 PM
wolfgangp added inline comments to D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Wed, Dec 20, 11:15 AM
wolfgangp updated the diff for D41146: [DWARF] DWARF v5: Rework of string offsets table reader.

Refactored the string offsets contribution descriptor using Optional<>, which removes the need for a "valid" bit. Addressed some other review comments.

Wed, Dec 20, 11:15 AM

Tue, Dec 19

wolfgangp added inline comments to D41226: [LiveDebugValues] recognize spilled register that is killed in instruction after the spill.
Tue, Dec 19, 4:05 PM
wolfgangp closed D40914: [NFC] Change the DWARF v5 string offsets table tests to generate the test object as part of the test..
Tue, Dec 19, 8:56 AM

Dec 15 2017

wolfgangp updated the diff for D41146: [DWARF] DWARF v5: Rework of string offsets table reader.

Forgot to use std::move() on return of a vector.

Dec 15 2017, 11:42 AM

Dec 14 2017

wolfgangp added inline comments to D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Dec 14 2017, 5:33 PM
wolfgangp updated the diff for D41146: [DWARF] DWARF v5: Rework of string offsets table reader.

Addressed review comments. Streamlined the parseDWARF??StringOffsetsTableHeader() functions a bit and implemented a couple of other suggested changes.

Dec 14 2017, 5:33 PM

Dec 13 2017

wolfgangp added inline comments to D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Dec 13 2017, 10:41 AM

Dec 12 2017

wolfgangp created D41146: [DWARF] DWARF v5: Rework of string offsets table reader.
Dec 12 2017, 5:22 PM

Dec 11 2017

wolfgangp added inline comments to D41043: Support for an intrinsic "fake.use" (and corresponding operand) representing a use of an operand to aid debugging.
Dec 11 2017, 5:41 PM

Dec 8 2017

wolfgangp added a comment to D41044: Implementation of -fextend-lifetimes and -fextend-this-ptr to aid with debugging of optimized code.

A quick note on usage: Compile your source with "clang -O2 -g -c -fextend-lifetimes foo.cpp" to see the effects (or use -fextend-this-ptr if you just want to extend the lifetime of 'this').

Dec 8 2017, 5:31 PM · debug-info
wolfgangp added a comment to D41043: Support for an intrinsic "fake.use" (and corresponding operand) representing a use of an operand to aid debugging.

The clang portion has been posted in https://reviews.llvm.org/D41044.

Dec 8 2017, 5:29 PM
wolfgangp created D41044: Implementation of -fextend-lifetimes and -fextend-this-ptr to aid with debugging of optimized code.
Dec 8 2017, 5:27 PM · debug-info
wolfgangp created D41043: Support for an intrinsic "fake.use" (and corresponding operand) representing a use of an operand to aid debugging.
Dec 8 2017, 5:19 PM
wolfgangp committed rL320227: [NFC] Change the string offsets table tests to generate the object on the fly.
[NFC] Change the string offsets table tests to generate the object on the fly
Dec 8 2017, 4:40 PM

Dec 6 2017

wolfgangp created D40914: [NFC] Change the DWARF v5 string offsets table tests to generate the test object as part of the test..
Dec 6 2017, 11:56 AM

Oct 31 2017

wolfgangp committed rL317053: Making a couple of tests a bit more flexible wrt thunk mangling. Fixes checkin….
Making a couple of tests a bit more flexible wrt thunk mangling. Fixes checkin…
Oct 31 2017, 5:01 PM
wolfgangp committed rL317047: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk..
Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk.
Oct 31 2017, 3:50 PM
wolfgangp closed D39396: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk. by committing rL317047: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk..
Oct 31 2017, 3:50 PM
wolfgangp committed rL317018: [Metadata][NFC] Make MDNode::resolve() public in preparation for the fix to….
[Metadata][NFC] Make MDNode::resolve() public in preparation for the fix to…
Oct 31 2017, 11:26 AM

Oct 30 2017

wolfgangp added a comment to D39396: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk..

This works for me, but as I said previously, perhaps we can get by with just not having any variables described in the thunk to further simplify the code.

Oct 30 2017, 6:23 PM
wolfgangp added inline comments to D39396: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk..
Oct 30 2017, 1:06 PM
wolfgangp updated the diff for D39396: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk..

Incorporated review comments.

Oct 30 2017, 1:05 PM

Oct 27 2017

wolfgangp created D39396: Fix for PR33930. Short-circuit metadata mapping when cloning a varargs thunk..
Oct 27 2017, 4:59 PM

Jul 19 2017

wolfgangp committed rL308527: Forgot to add triple to test in r308513..
Forgot to add triple to test in r308513.
Jul 19 2017, 2:46 PM
wolfgangp committed rL308513: Fixing an issue with the initialization of LexicalScopes objects when mixing….
Fixing an issue with the initialization of LexicalScopes objects when mixing…
Jul 19 2017, 12:40 PM
wolfgangp closed D35637: Fixing an issue with mixing functions from debug and non-debug CUs by committing rL308513: Fixing an issue with the initialization of LexicalScopes objects when mixing….
Jul 19 2017, 12:40 PM
wolfgangp created D35637: Fixing an issue with mixing functions from debug and non-debug CUs.
Jul 19 2017, 11:23 AM

Jul 14 2017

wolfgangp added inline comments to D35437: Don't break bundles when adding DBG_VALUE.
Jul 14 2017, 4:02 PM

Jul 12 2017

wolfgangp committed rL307872: [DWARF] Fixing a bug with processing of DWARF v5 indexed strings in Mach-O….
[DWARF] Fixing a bug with processing of DWARF v5 indexed strings in Mach-O…
Jul 12 2017, 6:04 PM
wolfgangp closed D35321: [DWARF] Fix for bug processing the debug_str_offs section on Mach-O by committing rL307872: [DWARF] Fixing a bug with processing of DWARF v5 indexed strings in Mach-O….
Jul 12 2017, 6:03 PM
wolfgangp added inline comments to D35321: [DWARF] Fix for bug processing the debug_str_offs section on Mach-O.
Jul 12 2017, 1:11 PM
wolfgangp created D35321: [DWARF] Fix for bug processing the debug_str_offs section on Mach-O.
Jul 12 2017, 12:52 PM

Jul 10 2017

wolfgangp added a comment to D35193: [DWARF] - Remove unused code..

Yikes, looks like you found a bug. The original idea was to provide a generic mechanism to map platform specific debug section names to DWARF standard names, for example for Mach-O, which limits section names to 16 characters. The Mach-O section name for .debug_str_offsets is debug_str_offs, so I was trying to map this back to debug_str_offsets (all the leading '_' and '.'s are removed at this point). The call should have gone before the "if (StringRef *SectionData =" line a few lines above, otherwise the call the MapSectionToMember() would fail for Mach-O object files with a debug_str_off section. Nobody is generating one yet, so nobody will hit it, but it's there. My bad, of course, for not adding a test for Mach-O in the first place.

Jul 10 2017, 11:07 AM

Jun 29 2017

wolfgangp committed rL306771: [DWARF] Move a couple of member functions to the DWARFUnit baseclass. NFC..
[DWARF] Move a couple of member functions to the DWARFUnit baseclass. NFC.
Jun 29 2017, 5:28 PM
wolfgangp closed D34765: [DWARF] [NFC] Move a couple of member functions to DWARFUnit (baseclass) from DWARFCompileUnit (derived class) by committing rL306771: [DWARF] Move a couple of member functions to the DWARFUnit baseclass. NFC..
Jun 29 2017, 5:28 PM
wolfgangp added a comment to D34765: [DWARF] [NFC] Move a couple of member functions to DWARFUnit (baseclass) from DWARFCompileUnit (derived class).

No you're right, my bad. Units in the .dwo sections (both type and CU) don't have a str_offsets_base, which implies that the .debug_str_offsets.dwo section has to consist of a monolithic table of string offsets (without the 8 or 16-byte header that's specified in section 7.26 of the DWARF 5 standard). Section 7.26 seems to say the opposite, though. It seems I'll have to clarify this with the DWARF5 folks.

Worth clarifying on the dwarf-discuss list but I believe the idea is that the .dwo would have a single .debug_str_offsets.dwo contribution (complete with header), corresponding to the .debug_str.dwo contribution, and all units in the compilation would share it just like they would ordinarily share the single .debug_str section in a non-split compilation.

Jun 29 2017, 12:01 PM
wolfgangp added a comment to D34765: [DWARF] [NFC] Move a couple of member functions to DWARFUnit (baseclass) from DWARFCompileUnit (derived class).

This is for DW_AT_str_offsets_base in a type unit?

Yes.

Is the delta version needed? (is that modifying the existing use in split DWARF to now require a tag for str_offsets_base when none was needed before) Or only the addSectionLabel?

The delta version avoids generating relocations, which we can't have for split DWARF, so for version >=5 the plan is to generate the str_offsets_base tag using addSectionLabel() for when we can use relocations and addSectionDelta() for when we can't (such as split DWARF, or Mach-O).

Right, sorry I wasn't very clear - what I was asking is: In DWARF5 do .dwo CUs have a str_offsets_base? They didn't in the pre-standard Fission that's implemented in LLVM at the moment - because the value was effectively zero always.

Jun 29 2017, 11:36 AM

Jun 28 2017

wolfgangp added a comment to D34765: [DWARF] [NFC] Move a couple of member functions to DWARFUnit (baseclass) from DWARFCompileUnit (derived class).

This is for DW_AT_str_offsets_base in a type unit?

Yes.

Is the delta version needed? (is that modifying the existing use in split DWARF to now require a tag for str_offsets_base when none was needed before) Or only the addSectionLabel?

Jun 28 2017, 4:01 PM
wolfgangp added a comment to D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).
In D34069#794414, @zvi wrote:

Hi @wolfgangp,

I'm afraid that D34076 adds a combine which replaces the BUILD_VECTOR with a TRUNCATE, so if D34076 will be applied, the test-case in this commit will no longer be covering the bug this commit fixes.
Do you have a suggestion for an alternative test case?

Jun 28 2017, 3:03 PM
wolfgangp created D34765: [DWARF] [NFC] Move a couple of member functions to DWARFUnit (baseclass) from DWARFCompileUnit (derived class).
Jun 28 2017, 10:27 AM

Jun 26 2017

wolfgangp committed rL306345: DAGCombine: Make sure we only eliminate trunc/extend when the scales of….
DAGCombine: Make sure we only eliminate trunc/extend when the scales of…
Jun 26 2017, 4:06 PM
wolfgangp closed D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization) by committing rL306345: DAGCombine: Make sure we only eliminate trunc/extend when the scales of….
Jun 26 2017, 4:06 PM
wolfgangp added a comment to D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).

Ping...

Jun 26 2017, 12:35 PM

Jun 21 2017

wolfgangp committed rL305944: [DWARF] Support for DW_FORM_strx3 and complete support for DW_FORM_strx{1,2,4}.
[DWARF] Support for DW_FORM_strx3 and complete support for DW_FORM_strx{1,2,4}
Jun 21 2017, 12:38 PM
wolfgangp closed D34418: [DWARF] Support for DW_FORM_strx3 and completed support for DW_FORM_strx{1,2,4}/consumer by committing rL305944: [DWARF] Support for DW_FORM_strx3 and complete support for DW_FORM_strx{1,2,4}.
Jun 21 2017, 12:38 PM

Jun 20 2017

wolfgangp added inline comments to D34418: [DWARF] Support for DW_FORM_strx3 and completed support for DW_FORM_strx{1,2,4}/consumer.
Jun 20 2017, 5:51 PM
wolfgangp updated the diff for D34418: [DWARF] Support for DW_FORM_strx3 and completed support for DW_FORM_strx{1,2,4}/consumer.

Addressed review comments: added a method getAsUint32 to the uint24_t struct.

Jun 20 2017, 5:50 PM
wolfgangp created D34418: [DWARF] Support for DW_FORM_strx3 and completed support for DW_FORM_strx{1,2,4}/consumer.
Jun 20 2017, 2:03 PM

Jun 19 2017

wolfgangp updated the diff for D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).

Addressed review comment: added check to ensure that the extension size is a multiple of the source's size.

Jun 19 2017, 3:56 PM
wolfgangp added a comment to D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).

The test is now a .ll test, do you think this is sufficient? It's relatively tricky to isolate the condition under which this occurs. The original test case was a randomized test.

Jun 19 2017, 9:09 AM

Jun 14 2017

wolfgangp committed rL305431: Removal of accidental duplication in test assembly file. NFC..
Removal of accidental duplication in test assembly file. NFC.
Jun 14 2017, 4:56 PM

Jun 12 2017

wolfgangp committed rL305261: Adding one test that I forgot to include with the commit for https://reviews..
Adding one test that I forgot to include with the commit for https://reviews.
Jun 12 2017, 5:42 PM
wolfgangp updated the diff for D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).

Replaced .mir test with a .ll test, although the test is substantially the same.

Jun 12 2017, 11:39 AM
wolfgangp added a comment to D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).

If possible I'd like to see a regular llc test as well as the mir test.

Jun 12 2017, 11:11 AM

Jun 9 2017

wolfgangp created D34069: [DAGCombiner] Fix PR33368 (vector extend/truncate optimization).
Jun 9 2017, 3:58 PM

Jun 5 2017

wolfgangp committed rL304759: [DWARF] Adding support for the DWARF v5 string offsets table (consumer/reader….
[DWARF] Adding support for the DWARF v5 string offsets table (consumer/reader…
Jun 5 2017, 6:23 PM
wolfgangp closed D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer by committing rL304759: [DWARF] Adding support for the DWARF v5 string offsets table (consumer/reader….
Jun 5 2017, 6:23 PM

Jun 2 2017

wolfgangp added inline comments to D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .
Jun 2 2017, 11:16 AM
wolfgangp updated the diff for D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .

The patch has been accepted but in order to address the last review comments some non-trivial changes were necessary, so it probably needs another look.

Jun 2 2017, 11:14 AM

May 24 2017

wolfgangp added inline comments to D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .
May 24 2017, 12:45 PM
wolfgangp updated the diff for D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .
  1. Added tests for invalid formatting of the string offsets section (hand-constructed DWARF).
  2. Fixed a bug found with handling of dwp files and added a hand-constructed test for it.
  3. Addressed review comments: a) rewrote validation of string offset table contribution headers b) moved mapping of debug section names to after stripping of leading _ or .
  4. Using the word 'contribution' instead of 'segment' when displaying the string offsets table.
May 24 2017, 12:41 PM

May 9 2017

wolfgangp committed rL302574: [DWARF] Fix a parsing issue with type unit headers..
[DWARF] Fix a parsing issue with type unit headers.
May 9 2017, 12:52 PM
wolfgangp closed D32987: DWARF: When parsing type unit headers take the length field into account. by committing rL302574: [DWARF] Fix a parsing issue with type unit headers..
May 9 2017, 12:51 PM
wolfgangp added inline comments to D32987: DWARF: When parsing type unit headers take the length field into account..
May 9 2017, 10:20 AM

May 8 2017

wolfgangp added inline comments to D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .
May 8 2017, 5:59 PM
wolfgangp created D32987: DWARF: When parsing type unit headers take the length field into account..
May 8 2017, 5:57 PM

May 4 2017

wolfgangp added inline comments to D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .
May 4 2017, 1:14 PM

May 3 2017

wolfgangp abandoned D32618: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section).
May 3 2017, 10:20 AM

May 2 2017

wolfgangp created D32779: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section)/consumer .
May 2 2017, 5:55 PM

May 1 2017

wolfgangp added a comment to D32618: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section).

Also, Dave would prefer to split the patch in 2, in producer/consumer. Any objections?

May 1 2017, 12:22 PM
wolfgangp added inline comments to D32618: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section).
May 1 2017, 11:36 AM
wolfgangp updated the diff for D32618: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section).

Added support for Mach-O and COFF and addressed review comments.

May 1 2017, 11:32 AM

Apr 27 2017

wolfgangp added a comment to D32618: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section).

Also, apologies for not handling Mach-O.

Typically we try to do a best effort on all supported containers (ELF, Mach-O, COFF) when adding new features.
Could you outline what is necessary there? Is it just coming up with a short-enough section name or is there more to it?

Apr 27 2017, 4:44 PM
wolfgangp created D32618: DWARF: Implementation of v5 string offsets table (.debug_str_offsets[.dwo] section).
Apr 27 2017, 3:00 PM

Feb 14 2017

wolfgangp committed rL295093: Reapply r294532, reverted in r294787..
Reapply r294532, reverted in r294787.
Feb 14 2017, 11:20 AM

Feb 8 2017

wolfgangp committed rL294532: Reapply r294356 ("Keep track of spilled variables in LiveDebugValues")..
Reapply r294356 ("Keep track of spilled variables in LiveDebugValues").
Feb 8 2017, 3:58 PM

Feb 7 2017

wolfgangp committed rL294356: DebugInfo: Track spilled variables in LiveDebugValues.
DebugInfo: Track spilled variables in LiveDebugValues
Feb 7 2017, 1:34 PM
wolfgangp closed D29500: [DWARF][PATCH] Keep track of spilled variables in LiveDebugValues by committing rL294356: DebugInfo: Track spilled variables in LiveDebugValues.
Feb 7 2017, 1:34 PM

Feb 3 2017

wolfgangp updated the diff for D29500: [DWARF][PATCH] Keep track of spilled variables in LiveDebugValues.

Addressed Adrian's review comments.

Feb 3 2017, 5:26 PM
wolfgangp added inline comments to D29500: [DWARF][PATCH] Keep track of spilled variables in LiveDebugValues.
Feb 3 2017, 2:08 PM
wolfgangp added a comment to D29500: [DWARF][PATCH] Keep track of spilled variables in LiveDebugValues.

Very interesting! Have you measured the performance impact of this? Is there any?

Feb 3 2017, 2:06 PM
wolfgangp created D29500: [DWARF][PATCH] Keep track of spilled variables in LiveDebugValues.
Feb 3 2017, 11:18 AM

Feb 2 2017

wolfgangp abandoned D16427: FastISel should flush local value map.
Feb 2 2017, 4:46 PM

Jan 31 2017

wolfgangp added a comment to D29254: Do not propagate DebugLoc across basic blocks.

This looks good to me, but I'd like Andrea to take a look as well.

Jan 31 2017, 11:30 AM

Jan 6 2017

wolfgangp committed rL291258: [DWARF] Null out the debug locs of (loop invariant) instructions hoisted by….
[DWARF] Null out the debug locs of (loop invariant) instructions hoisted by…
Jan 6 2017, 10:49 AM