Page MenuHomePhabricator

wolfgangp (Wolfgang Pieb)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 17 2014, 5:52 PM (252 w, 4 d)

Recent Activity

Jun 10 2019

wolfgangp committed rG54cbae1e8d5b: [ELF][llvm-objdump] Treat dynamic tag values as virtual addresses instead of… (authored by wolfgangp).
[ELF][llvm-objdump] Treat dynamic tag values as virtual addresses instead of…
Jun 10 2019, 10:48 AM
wolfgangp committed rL362969: [ELF][llvm-objdump] Treat dynamic tag values as virtual addresses instead of….
[ELF][llvm-objdump] Treat dynamic tag values as virtual addresses instead of…
Jun 10 2019, 10:47 AM
wolfgangp closed D62972: [ELF] Treat dynamic tag values as virtual addresses instead of offsets.
Jun 10 2019, 10:47 AM · Restricted Project

Jun 7 2019

wolfgangp updated the diff for D62972: [ELF] Treat dynamic tag values as virtual addresses instead of offsets.

Addressed review comments as suggested.

Jun 7 2019, 11:05 AM · Restricted Project

Jun 6 2019

wolfgangp created D62972: [ELF] Treat dynamic tag values as virtual addresses instead of offsets.
Jun 6 2019, 12:12 PM · Restricted Project

May 22 2019

wolfgangp added inline comments to D62196: [LiveDebugValues] Close range for previous variable's location when deducing new variable's location.
May 22 2019, 10:05 AM · Restricted Project, debug-info

May 14 2019

wolfgangp added inline comments to D61890: [LiveDebugValues] End variable's range with multiple locations at block entry.
May 14 2019, 6:25 PM · debug-info

Apr 19 2019

wolfgangp added a comment to D60913: [GVN+LICM] Use line 0 locations for better crash attribution.

LGTM

Apr 19 2019, 3:04 PM · Restricted Project
wolfgangp added a comment to D28390: [DWARF] LICM should null out the debug loc of hoisted loop invariant instructions.

@danielcdh @wolfgangp -- Would switching to line 0 locations for hoisted instructions have an adverse effect on Sample PGO?

Apr 19 2019, 10:44 AM · Restricted Project

Apr 15 2019

wolfgangp committed rG4fe42214e242: [DEBUGINFO] Prevent Instcombine from dropping debuginfo when removing zexts (authored by wolfgangp).
[DEBUGINFO] Prevent Instcombine from dropping debuginfo when removing zexts
Apr 15 2019, 10:40 AM
wolfgangp committed rL358431: [DEBUGINFO] Prevent Instcombine from dropping debuginfo when removing zexts.
[DEBUGINFO] Prevent Instcombine from dropping debuginfo when removing zexts
Apr 15 2019, 10:40 AM
wolfgangp closed D60641: [DebugInfo@O2] Prevent Instcombine from dropping debug info when removing zexts (fixes PR41475).
Apr 15 2019, 10:40 AM · Restricted Project

Apr 12 2019

wolfgangp created D60641: [DebugInfo@O2] Prevent Instcombine from dropping debug info when removing zexts (fixes PR41475).
Apr 12 2019, 3:41 PM · Restricted Project

Feb 21 2019

wolfgangp added a comment to D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.

So this basically prevents the debugger from displaying an inconsistent program state when some of the sideeffects from a line preceding its current stopping point have not been completed yet. Makes sense to me. One minor concern: If the sunk instruction does not get sunk past the next source line, we may create some unneeded location list entries, e.g.:

Feb 21 2019, 3:39 PM · Restricted Project

Feb 11 2019

wolfgangp added inline comments to D58042: [LiveDebugValues] Emit parameter's entry value.
Feb 11 2019, 6:16 PM · Restricted Project, debug-info

Feb 4 2019

wolfgangp committed rG90d856cd5f4c: [DEBUGINFO] Reposting r352642: Handle restore instructions in LiveDebugValues (authored by wolfgangp).
[DEBUGINFO] Reposting r352642: Handle restore instructions in LiveDebugValues
Feb 4 2019, 12:46 PM
wolfgangp committed rL353089: [DEBUGINFO] Reposting r352642: Handle restore instructions in LiveDebugValues.
[DEBUGINFO] Reposting r352642: Handle restore instructions in LiveDebugValues
Feb 4 2019, 12:45 PM

Feb 1 2019

wolfgangp committed rL352889: [DWARF v5] Fix DWARF emitter and consumer to produce/expect a uleb for a….
[DWARF v5] Fix DWARF emitter and consumer to produce/expect a uleb for a…
Feb 1 2019, 9:12 AM
wolfgangp closed D57550: [DWARF v5] A location description's length is a uleb not a short (Fixing PR40525)..
Feb 1 2019, 9:11 AM · Restricted Project

Jan 31 2019

wolfgangp retitled D57550: [DWARF v5] A location description's length is a uleb not a short (Fixing PR40525). from [DWARF v5] A location descriptionlength is a uleb not a short (Fixing PR40525). to [DWARF v5] A location description's length is a uleb not a short (Fixing PR40525)..
Jan 31 2019, 3:13 PM · Restricted Project
wolfgangp created D57550: [DWARF v5] A location description's length is a uleb not a short (Fixing PR40525)..
Jan 31 2019, 3:07 PM · Restricted Project

Jan 30 2019

wolfgangp committed rL352666: Reverting r352642 - Handle restore instructions in LiveDebugValues - as it's….
Reverting r352642 - Handle restore instructions in LiveDebugValues - as it's…
Jan 30 2019, 12:37 PM
wolfgangp committed rL352651: The test comitted with r348896 needed -march=x86=64 on the llc command line..
The test comitted with r348896 needed -march=x86=64 on the llc command line.
Jan 30 2019, 11:16 AM
wolfgangp committed rL352642: [DEBUGINFO] Handle restore instructions in LiveDebugValues.
[DEBUGINFO] Handle restore instructions in LiveDebugValues
Jan 30 2019, 10:34 AM
wolfgangp closed D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.
Jan 30 2019, 10:34 AM

Jan 29 2019

wolfgangp updated the diff for D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.
  • Addressed review comments on code structure and clarifying comments.
Jan 29 2019, 3:14 PM
wolfgangp updated the diff for D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.

Changed the function names from isSpillInstruction/isRestoreInstruction to getSpillSize/getRestoreSize.

Jan 29 2019, 11:50 AM
wolfgangp added inline comments to D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.
Jan 29 2019, 10:52 AM

Jan 28 2019

wolfgangp added inline comments to D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.
Jan 28 2019, 6:42 PM
wolfgangp updated the diff for D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.
  • Added methods to MachineInstr to recognize Spills and restores and have AsmPrinter and LIvedebugValues use them
  • Unified tranferSpill and transferRestore functions.
  • Addressed other minor review comments.
Jan 28 2019, 6:42 PM
wolfgangp accepted D57050: [CodeGenPrepare] Handle all debug calls in dupRetToEnableTailCallOpts().

LGTM

Jan 28 2019, 11:10 AM

Jan 25 2019

wolfgangp created D57271: [DebugInfo] Handle restore instructions in LiveDebugValues.
Jan 25 2019, 5:17 PM

Jan 24 2019

wolfgangp added a comment to D57050: [CodeGenPrepare] Handle all debug calls in dupRetToEnableTailCallOpts().

If that's the case a brief excerpt of the original source construct (C, C++ or otherwise) that was used to produce the IR along with a couple of command lines to produce the MIR file should be sufficient. It doesn't have to be exact, but just so that the poor soul who has to regenerate the IR at some point in the future has something to go on. Check out llvm/test/CodeGen/MIR/X86/branch-folder-with-label.mir for an example.

Jan 24 2019, 9:24 AM

Jan 23 2019

wolfgangp added a comment to D57050: [CodeGenPrepare] Handle all debug calls in dupRetToEnableTailCallOpts().

The test case looks much better now, thanks.

Jan 23 2019, 10:47 AM

Jan 22 2019

wolfgangp added a comment to D57050: [CodeGenPrepare] Handle all debug calls in dupRetToEnableTailCallOpts().
Jan 22 2019, 11:47 AM

Dec 11 2018

wolfgangp committed rL348896: [Debuginfo] Prevent CodeGenPrepare from dropping debuginfo references..
[Debuginfo] Prevent CodeGenPrepare from dropping debuginfo references.
Dec 11 2018, 1:17 PM
wolfgangp closed D55396: [DebugInfo] Make sure CodeGenPrepare does not drop MD references to locals..
Dec 11 2018, 1:17 PM · debug-info

Dec 10 2018

wolfgangp updated the diff for D55396: [DebugInfo] Make sure CodeGenPrepare does not drop MD references to locals..

Revised to explicitly keep track of uses in dbg value intrinsics . This is more straightforward and does not miss any edge cases as in the previous implementation. Thanks to Vedant for the suggestion.

Dec 10 2018, 5:04 PM · debug-info

Dec 6 2018

wolfgangp added inline comments to D55396: [DebugInfo] Make sure CodeGenPrepare does not drop MD references to locals..
Dec 6 2018, 5:53 PM · debug-info
wolfgangp created D55396: [DebugInfo] Make sure CodeGenPrepare does not drop MD references to locals..
Dec 6 2018, 3:58 PM · debug-info

Nov 26 2018

wolfgangp updated the diff for D41044: Implementation of -fextend-lifetimes and -fextend-this-ptr to aid with debugging of optimized code.

Rebased on r347577 with some test cases.

Nov 26 2018, 11:39 AM · debug-info
wolfgangp updated the diff for D41043: Support for an intrinsic "fake.use" (and corresponding operand) representing a use of an operand to aid debugging.

Rebased on r347573 with some test cases and bugfixes.

Nov 26 2018, 11:37 AM

Nov 15 2018

wolfgangp added inline comments to D54465: [CodeGen] Fix bugs in LiveDebugVariables when debug labels are generated..
Nov 15 2018, 2:07 PM · debug-info

Nov 2 2018

wolfgangp committed rL346061: [DWARF v5] Verifier: Add checks for DW_FORM_strx* forms..
[DWARF v5] Verifier: Add checks for DW_FORM_strx* forms.
Nov 2 2018, 5:30 PM
wolfgangp closed D54049: [DWARF v5] Verifier: Add checks for DW_FORM_strx* forms..
Nov 2 2018, 5:30 PM
wolfgangp added inline comments to D54049: [DWARF v5] Verifier: Add checks for DW_FORM_strx* forms..
Nov 2 2018, 3:07 PM
wolfgangp added inline comments to D54049: [DWARF v5] Verifier: Add checks for DW_FORM_strx* forms..
Nov 2 2018, 2:37 PM
wolfgangp created D54049: [DWARF v5] Verifier: Add checks for DW_FORM_strx* forms..
Nov 2 2018, 2:34 PM

Oct 31 2018

wolfgangp committed rL345776: [DWARF][NFC] Refactor a function to return Optional<> instead of bool.
[DWARF][NFC] Refactor a function to return Optional<> instead of bool
Oct 31 2018, 2:08 PM
wolfgangp closed D53948: [DWARF][NFC] Refactor a function to return Optional<> instead of bool.
Oct 31 2018, 2:08 PM
wolfgangp created D53948: [DWARF][NFC] Refactor a function to return Optional<> instead of bool.
Oct 31 2018, 12:00 PM

Oct 30 2018

wolfgangp committed rL345687: [DWARF] Revert r345546: Refactor range list extraction and dumping.
[DWARF] Revert r345546: Refactor range list extraction and dumping
Oct 30 2018, 6:16 PM

Oct 29 2018

wolfgangp added inline comments to D53545: [DWARF][NFC] NFC patch for reverted r342218 (refactoring rangelist handling).
Oct 29 2018, 4:50 PM
wolfgangp added inline comments to D53545: [DWARF][NFC] NFC patch for reverted r342218 (refactoring rangelist handling).
Oct 29 2018, 4:08 PM
wolfgangp committed rL345546: [DWARF][NFC] Refactor range list extraction and dumping.
[DWARF][NFC] Refactor range list extraction and dumping
Oct 29 2018, 3:19 PM
wolfgangp closed D53545: [DWARF][NFC] NFC patch for reverted r342218 (refactoring rangelist handling).
Oct 29 2018, 3:19 PM

Oct 26 2018

wolfgangp committed rL345404: [DWARF][NFC] cleanup (mostly leftovers from the implementation of string….
[DWARF][NFC] cleanup (mostly leftovers from the implementation of string…
Oct 26 2018, 10:17 AM
wolfgangp closed D53741: [DWARF][NFC] cleanup (mostly leftovers from the implementation of string offsets tables).
Oct 26 2018, 10:16 AM

Oct 25 2018

wolfgangp created D53741: [DWARF][NFC] cleanup (mostly leftovers from the implementation of string offsets tables).
Oct 25 2018, 6:19 PM

Oct 23 2018

wolfgangp added a comment to D53545: [DWARF][NFC] NFC patch for reverted r342218 (refactoring rangelist handling).

I only did a quick scan as it was reviewed before. Is there a particular area I should pay extra attention too? If not this LGTM.

Oct 23 2018, 2:29 PM

Oct 22 2018

wolfgangp created D53545: [DWARF][NFC] NFC patch for reverted r342218 (refactoring rangelist handling).
Oct 22 2018, 6:10 PM
wolfgangp added a comment to D53364: [llvm-dwarfdump] - Add the support of parsing .debug_loclists..

I just wanted to let you know that I am currently working on a patch to refactor some of the rangelists code (see: https://reviews.llvm.org/D51081) with the objective to

  1. fold the pre-v5 functionality (.debug_ranges) into DWARF5 so we can get rid of DebugRangelists.{cpp,.h}
  2. templatize more of the DWARFListTable usage so it could be also used for location lists
Oct 22 2018, 3:42 PM

Oct 19 2018

wolfgangp committed rL344807: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly..
[DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly.
Oct 19 2018, 12:25 PM
wolfgangp closed D53155: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly. Fixes PR38990..
Oct 19 2018, 12:25 PM

Oct 12 2018

wolfgangp added inline comments to D53155: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly. Fixes PR38990..
Oct 12 2018, 9:44 AM
wolfgangp updated the diff for D53155: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly. Fixes PR38990..

Made the location list section pointer and the stringref that describes its data a union rather than a pair.

Oct 12 2018, 9:44 AM

Oct 11 2018

wolfgangp added inline comments to D53155: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly. Fixes PR38990..
Oct 11 2018, 5:04 PM
wolfgangp updated the diff for D53155: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly. Fixes PR38990..

Addressed review comments:

  • Keeping track of locsection data separately so we can adjust it when handling dwp files.
  • removing a cleanup that can be applied later.
Oct 11 2018, 5:04 PM
wolfgangp created D53155: [DWARF] Make llvm-dwarfdump display location lists in a .dwp file correctly. Fixes PR38990..
Oct 11 2018, 11:18 AM

Oct 9 2018

wolfgangp committed rL344068: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section. Fixes PR38991..
[DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section. Fixes PR38991.
Oct 9 2018, 11:41 AM
wolfgangp closed D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).
Oct 9 2018, 11:41 AM
wolfgangp added inline comments to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).
Oct 9 2018, 10:59 AM
wolfgangp updated the diff for D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

Eliminated one of the test cases due to redundancy and adjusted a comment in the other one.

Oct 9 2018, 10:59 AM

Oct 4 2018

wolfgangp added inline comments to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).
Oct 4 2018, 12:07 PM

Oct 3 2018

wolfgangp updated the diff for D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).
  • Removed the condition on the existence of compile units.
  • Added a test to check that llvm-dwarfdump can dump the .debug_loc.dwo section even without compile units present.
Oct 3 2018, 3:29 PM

Sep 25 2018

wolfgangp updated the diff for D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

Hardcoding address size to 4 as a workaround with a FIXME comment. DWARFExpression is unaware of DWO and requires it at the moment.

Sep 25 2018, 4:53 PM
wolfgangp added a comment to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

If it's hard-coded to anything other than 4 or 8 the constructor for DWARFExpression would assert. If it's hard-coded to 4 it would work just fine (except for the DW_OP_call_ref example with an 8-byte operand mentioned above, and that would probably just report an obscure error and move on to the next list).

Sep 25 2018, 3:28 PM
wolfgangp added a comment to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

Should the address size be required/used for parsing the debug_loc.dwo
section? I would think there shouldn't be any addresses, or otherwise
address-size-dependent there?

Yes, but currently DWARFExpression is oblivious to DWO and insists on having a valid Address Size. This would have to be fixed before we can omit the address size.

Is that sufficiently expensive to be worth doing this workaround in the interim?

The question is whether to bring it up to DWARF5 level right away or to just have it deal with DWO with what's currently supported. The former would certainly be more expensive.

Not sure I follow what you mean by that - what it has to do with DWARF5 or not. The pre-DWARF5 version of split-DWARF wouldn't've used addresses in the .dwo file - the addresses aren't known at that time, I think?

Sep 25 2018, 3:22 PM
wolfgangp added a comment to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

One reason why we may still want addrsize is so we can skip the correct amount of bytes during parsing if we do find a DW_OP_addr in a DWO (and report an error).

Sep 25 2018, 2:47 PM
wolfgangp added a comment to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

Should the address size be required/used for parsing the debug_loc.dwo
section? I would think there shouldn't be any addresses, or otherwise
address-size-dependent there?

Yes, but currently DWARFExpression is oblivious to DWO and insists on having a valid Address Size. This would have to be fixed before we can omit the address size.

Is that sufficiently expensive to be worth doing this workaround in the interim?

The question is whether to bring it up to DWARF5 level right away or to just have it deal with DWO with what's currently supported. The former would certainly be more expensive.

Sep 25 2018, 2:37 PM
wolfgangp added a comment to D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).

Should the address size be required/used for parsing the debug_loc.dwo
section? I would think there shouldn't be any addresses, or otherwise
address-size-dependent there?

Sep 25 2018, 10:44 AM

Sep 24 2018

wolfgangp created D52444: [DWARF] Make llvm-dwarfdump display the .debug_loc.dwo section (fixes PR38991).
Sep 24 2018, 4:21 PM

Sep 14 2018

wolfgangp committed rL342218: [DWARF] reposting r342048, which was reverted in r342056 due to buildbot .
[DWARF] reposting r342048, which was reverted in r342056 due to buildbot
Sep 14 2018, 2:15 AM

Sep 12 2018

wolfgangp committed rL342056: Reverting r342048, which caused UBSan failures in dsymutil..
Reverting r342048, which caused UBSan failures in dsymutil.
Sep 12 2018, 7:41 AM
wolfgangp committed rL342048: [DWARF] Refactoring range list dumping to fold DWARF v4 functionality into v5….
[DWARF] Refactoring range list dumping to fold DWARF v4 functionality into v5…
Sep 12 2018, 5:02 AM
wolfgangp closed D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Sep 12 2018, 5:02 AM
wolfgangp added a comment to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..

@wolfgangp do you need any help with this revision before you commit it?

Sep 12 2018, 2:52 AM

Sep 7 2018

wolfgangp added inline comments to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Sep 7 2018, 5:55 PM
wolfgangp updated the diff for D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..

Added some checks to cu-ranges.ll to capture the intent of the test better.

Sep 7 2018, 5:55 PM

Aug 30 2018

wolfgangp added inline comments to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Aug 30 2018, 4:59 PM
wolfgangp updated the diff for D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..

When we find an error during table extraction, ListTableBase::extract is expected to set Offset to either 0 if the error is not recoverable, or to past the end of the table if it is. This removes the need to access the extracted length in the caller in the error case and simplifies recovery.

Aug 30 2018, 4:53 PM

Aug 29 2018

wolfgangp added inline comments to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Aug 29 2018, 6:09 PM

Aug 28 2018

wolfgangp added inline comments to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Aug 28 2018, 5:45 PM
wolfgangp updated the diff for D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..

Addressed review comments:

  • refactored getMaxVersion() in DWARFUnit.h to take an optional default argument.
  • Removed some code that is a noop for this patch
  • Extracting the initial length field of a list table to a local instead of straight into the header data. This aids error recovery when we find an unsupported DWARF64 length field.
  • added a missing comment
  • corrected one coding guides violation.
Aug 28 2018, 5:44 PM

Aug 27 2018

wolfgangp added inline comments to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Aug 27 2018, 10:13 AM

Aug 23 2018

wolfgangp added inline comments to D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Aug 23 2018, 5:46 PM
wolfgangp updated the diff for D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..

Addressed David's review comments:

Aug 23 2018, 5:46 PM

Aug 21 2018

wolfgangp created D51081: [DWARF v5] Refactoring range list dumping to fold DWARF v4 functionality into v5 handling (almost NFC)..
Aug 21 2018, 6:17 PM

Jul 31 2018

wolfgangp committed rL338437: [DWARF] Do not create a .debug_ranges section when no ranges are needed..
[DWARF] Do not create a .debug_ranges section when no ranges are needed.
Jul 31 2018, 1:57 PM
wolfgangp closed D50089: [DWARF v4] Suppressing the __debug_ranges section when there are no ranges.
Jul 31 2018, 1:57 PM