Page MenuHomePhabricator

jmorse (Jeremy Morse)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 19 2018, 2:57 AM (95 w, 5 d)

Recent Activity

Thu, Jan 16

jmorse requested changes to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.
Thu, Jan 16, 6:10 AM · Restricted Project
jmorse reopened D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

Hi Chris,

Thu, Jan 16, 6:10 AM · Restricted Project
jmorse committed rGc969335abdb2: Revert "[PHIEliminate] Move dbg values after phi and label" (authored by jmorse).
Revert "[PHIEliminate] Move dbg values after phi and label"
Thu, Jan 16, 6:05 AM
jmorse added a reverting change for rG75188b01e9af: [PHIEliminate] Move dbg values after phi and label: rGc969335abdb2: Revert "[PHIEliminate] Move dbg values after phi and label".
Thu, Jan 16, 6:04 AM
jmorse committed rG75188b01e9af: [PHIEliminate] Move dbg values after phi and label (authored by yechunliang).
[PHIEliminate] Move dbg values after phi and label
Thu, Jan 16, 3:59 AM
jmorse closed D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.
Thu, Jan 16, 3:59 AM · Restricted Project
jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

Hi, I'm now getting around to committing this. The developer policy [0] now says I should edit your details into the "Author" field of the commit, I'm using your phabricator-registered email address and "Chris Ye" from your phab profile. If there are buildbot failures when the commit goes up (possibly unrelated to this change), you might get messages to that email address.

Thu, Jan 16, 3:59 AM · Restricted Project

Wed, Jan 8

jmorse added inline comments to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.
Wed, Jan 8, 8:46 AM · Restricted Project
jmorse updated the diff for D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

Address review comments; will drop an explanation inline.

Wed, Jan 8, 8:46 AM · Restricted Project
jmorse accepted D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

LGTM, thanks for working through this. Do you still need patches to be committed for you?

Wed, Jan 8, 7:59 AM · Restricted Project

Tue, Jan 7

jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

I wrote inline:

Wouldn't a block that has no PHIs or labels end up returning MBB2.begin()? Applying std::prev to that would break.

Tue, Jan 7, 5:50 AM · Restricted Project
jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

Looking good, this is almost there (see inline),

Tue, Jan 7, 5:41 AM · Restricted Project
jmorse added a comment to D67500: [DebugInfo] LiveDebugValues: don't create transfer records for potentially invalid locations.

I think I can narrow the conceptual difference between our interpretations down to this:

Tue, Jan 7, 4:46 AM · Restricted Project

Dec 17 2019

jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

Look like adding one more method for SkipPHIsAndLabels with const_iterator would be more easier. I thought will be more duplicate code to implement SkipPHIsAndLabels and SkipPHIsLabelsAndDebug in MachineVerifier.

Dec 17 2019, 4:54 AM · Restricted Project

Dec 16 2019

jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

I try to add below reference code to MachineVerifier::checkPHIOps, but meet a build error. In the function the type of MBB.begin() is const_iterator, but type of SkipPHIsAndLabels argument is (iterator I). How to convert const_iterator to iterator and pass to SkipPHIsAndLabels? Could I write the MachineVerifier as below code?

Dec 16 2019, 7:48 AM · Restricted Project
jmorse added a comment to D71450: Modification of bad code in Reassociate.cpp to avoid potential bug..

If I understand correctly, the problem is that calling user_back() might access a container with zero elements, yes? This would appear to be an easy fix -- however IMO you should add reviewers who're familiar with the Reassociate pass better [0]. From a couple of minutes examination it would appear ShouldBreakUpSubtract is only callable from OptimizeInst, and that in turn is guarded by isInstructionTriviallyDead, which I would expect to skip such an instruction. There might be something more complicated broken that someone more familiar with reassociate might spot.

Dec 16 2019, 6:45 AM · Restricted Project

Dec 12 2019

jmorse added a comment to D70644: [DebugInfo] Support for DW_OP_implicit_pointer (llvm.dbg_derefval).

Thanks for the patch, comments inline. A couple of things in general:

Dec 12 2019, 11:00 AM · Restricted Project, debug-info, Restricted Project
jmorse added a comment to D71416: [LiveDebugValues] Omit entry values for DBG_VALUEs with pre-existing expressions.

LGTM (I'm not very familiar with entry values, so best to see what other reviewers thing too).

Dec 12 2019, 8:42 AM · Restricted Project, debug-info
jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

Great to hear that this is fixing the issue. I agree with Björn, there should be a MachineVerifier check too that DBG_VALUEs are not mixed with labels. That'll make it very easy to detect this issue reoccurring.

Dec 12 2019, 8:04 AM · Restricted Project
jmorse requested review of D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.
Dec 12 2019, 4:24 AM · Restricted Project
jmorse reopened D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

Too lazy on the earlier explanation there sorry. To elaborate: I thought I'd accounted for nondeterminism in the two loops in reinsertSunkDebugDefs, but both were a bit broken:

Dec 12 2019, 4:24 AM · Restricted Project
jmorse updated the diff for D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

Remove some now needless variables, switch another DenseMap to MapVector. Having fluffed the explanation before, I'll reopen this momentarily with a fuller explanation,

Dec 12 2019, 4:06 AM · Restricted Project

Dec 11 2019

jmorse added a comment to D71175: [DebugInfo][SelectionDAG] Change order while transferring SDDbgValue to another node.

I found a couple of dozens of cases building clang where this patch causes SelectionDAG::transferDbgValues() to move processed debug value past another debug value of the same variable and I'm going to investigate them in details but it can take some time.

For now, I think we could conservatively let such debug values be on their places not changing their order (although it doesn't seem necessarily correct) and add corresponding TODO or FIXME note for further investigation.

Dec 11 2019, 9:28 AM · debug-info, Restricted Project
jmorse updated the diff for D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

Here's a revised patch using SetVector, although it's not at the location I was expecting. As it turns out, the llvm::sort of DebugVariables I was using was actively harmful -- the operator< method of DebugVariable compares pointers, which is fine for DenseMaps, but not for ensuring a consistent order.

Dec 11 2019, 9:08 AM · Restricted Project
jmorse added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

I tried out D71279 and D71283 individually and they both seem to fix the problem I saw. I haven't done very wide testing, but the mir-reproducer I had passes. Nice!

Dec 11 2019, 6:36 AM · Restricted Project

Dec 10 2019

jmorse added a comment to D71175: [DebugInfo][SelectionDAG] Change order while transferring SDDbgValue to another node.

This risks changing the order in which variable assignments appear to occur, as there's no consideration of whether the new IROrder goes past a dbg.value intrinsic of the same variable.

Dec 10 2019, 9:50 AM · debug-info, Restricted Project
jmorse added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

D71283 Should (TM) fix it, but, the x86 test that I wrote and which seemed to replicate the issue, now no longer replicates the issue. Which is unfortunate.

Dec 10 2019, 9:13 AM · Restricted Project
jmorse added a parent revision for D71283: [WIP][DebugInfo][MachineSink] Preserve DBG_VALUE subregisters when sinking: D71279: [DebugInfo][MachineSink] Don't stop copy-propagating DBG_VALUEs that will have a sunk copy created.
Dec 10 2019, 9:13 AM · Restricted Project
jmorse added a child revision for D71279: [DebugInfo][MachineSink] Don't stop copy-propagating DBG_VALUEs that will have a sunk copy created: D71283: [WIP][DebugInfo][MachineSink] Preserve DBG_VALUE subregisters when sinking.
Dec 10 2019, 9:13 AM · Restricted Project
jmorse created D71283: [WIP][DebugInfo][MachineSink] Preserve DBG_VALUE subregisters when sinking.
Dec 10 2019, 9:13 AM · Restricted Project
jmorse added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

(D71279 is a precursor, just getting the second patch up, but I continue to be stuck in the tar pit...)

Dec 10 2019, 8:53 AM · Restricted Project
jmorse created D71279: [DebugInfo][MachineSink] Don't stop copy-propagating DBG_VALUEs that will have a sunk copy created.
Dec 10 2019, 8:53 AM · Restricted Project

Dec 9 2019

jmorse added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

Misery, not today, but I still think there should be an easy fix. Please do revert this patch though if it's causing difficulties.

Dec 9 2019, 11:39 AM · Restricted Project
jmorse added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

Ouch, yeah, I can see exactly why that is: the sunk DBG_VALUE is copied from the old / "original" DBG_VALUE, which in the meantime has been copy-propagated. And through the copy propagation, it grows an extra piece of subregister information.

Dec 9 2019, 5:28 AM · Restricted Project
jmorse committed rG00e238896cd8: [DebugInfo] Nerf placeDbgValues, with prejudice (authored by jmorse).
[DebugInfo] Nerf placeDbgValues, with prejudice
Dec 9 2019, 4:55 AM
jmorse closed D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Dec 9 2019, 4:55 AM · Restricted Project

Dec 6 2019

jmorse committed rG4650b2f36949: Attempt to fix a debuginfo test that wasn't as generic as I thought (authored by jmorse).
Attempt to fix a debuginfo test that wasn't as generic as I thought
Dec 6 2019, 4:58 AM
jmorse committed rGc93a9b15ce88: [DebugInfo][CGP] Update dbg.values when sinking address computations (authored by jmorse).
[DebugInfo][CGP] Update dbg.values when sinking address computations
Dec 6 2019, 3:34 AM
jmorse closed D58403: [DebugInfo][CGP] Update dbg.values when updating memory address computations.
Dec 6 2019, 3:34 AM · Restricted Project

Dec 5 2019

jmorse added inline comments to D69178: [DebugInfo] Use DBG_VALUEs IsIndirect field for describing stack spills.
Dec 5 2019, 9:14 AM · Restricted Project
jmorse added inline comments to D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Dec 5 2019, 9:06 AM · Restricted Project
jmorse updated the diff for D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.

Reshuffle the loop structure, early continue rather than an indented block. I've also moved the PHI/EHpad test ahead of the domination check for efficiency.

Dec 5 2019, 8:55 AM · Restricted Project
jmorse added inline comments to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.
Dec 5 2019, 8:09 AM · Restricted Project
jmorse committed rG30e8f80fd5a4: [DebugInfo] Don't create multiple DBG_VALUEs when sinking (authored by jmorse).
[DebugInfo] Don't create multiple DBG_VALUEs when sinking
Dec 5 2019, 8:00 AM
jmorse closed D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.
Dec 5 2019, 8:00 AM · Restricted Project
jmorse committed rGe4cdd6263175: [DebugInfo] Don't reorder DBG_VALUEs when sunk (authored by jmorse).
[DebugInfo] Don't reorder DBG_VALUEs when sunk
Dec 5 2019, 7:59 AM
jmorse closed D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location.
Dec 5 2019, 7:59 AM · Restricted Project
jmorse committed rGfca41001963c: [DebugInfo] Re-apply two patches to MachineSink (authored by jmorse).
[DebugInfo] Re-apply two patches to MachineSink
Dec 5 2019, 7:59 AM

Dec 4 2019

jmorse added a comment to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

Another idea is to add one more helper like getFirstNonPHIsAndLabels(), replace getFirstNonPHI in ScheduleDAGSDNodes.cpp#L935.
Insert dbg_values after PHIs and Labels, so that there will be no dbg_values barrier between PHI and LABELS.

Dec 4 2019, 9:04 AM · Restricted Project
jmorse added inline comments to D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location.
Dec 4 2019, 7:49 AM · Restricted Project
jmorse updated the diff for D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location.

Insert an example into a field comment, to explain the kind of code / DBG_VALUE sequences we want to avoid re-ordering.

Dec 4 2019, 7:49 AM · Restricted Project
jmorse updated the diff for D69178: [DebugInfo] Use DBG_VALUEs IsIndirect field for describing stack spills.
Dec 4 2019, 7:12 AM · Restricted Project
jmorse added inline comments to D69178: [DebugInfo] Use DBG_VALUEs IsIndirect field for describing stack spills.
Dec 4 2019, 7:12 AM · Restricted Project
jmorse updated the diff for D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.

This revision splits out the WebAssembly work... however it turns out that that code might not be necessary at all. I tried to put together a test demonstrating what would go wrong without placeDbgValues, but can't replicate any problem. For example, in the following block of wasm mir:

Dec 4 2019, 6:25 AM · Restricted Project

Dec 3 2019

jmorse added inline comments to D70643: [DebugInfo] Support for DW_OP_implicit_pointer (DW_OP_LLVM_implicit_pointer).
Dec 3 2019, 7:55 AM · debug-info, Restricted Project
jmorse updated the diff for D69178: [DebugInfo] Use DBG_VALUEs IsIndirect field for describing stack spills.

Address review comments -- the "hash" fields were for comparing the contents of the Loc union, as it's now too big to be a value type. I've used memset and memcmp in its place now, which should be a bit clearer.

Dec 3 2019, 5:45 AM · Restricted Project
jmorse added a comment to D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.

Bjorn wrote:

Is it possible to do the WebAssembly updates in a separate patch, or is those changes dependent on also changing how CodeGenPrepare works?

Dec 3 2019, 2:59 AM · Restricted Project

Nov 29 2019

jmorse added a comment to D67500: [DebugInfo] LiveDebugValues: don't create transfer records for potentially invalid locations.

NB: I haven't forgotten about this, in particular the concern that the implementation on master right now might not complete. This is next on my list of things to mangle.

Nov 29 2019, 3:42 AM · Restricted Project

Nov 28 2019

jmorse requested changes to D70597: [PHIEliminate] skip dbg instruction when LowerPHINode.

(Responding to inline comments) I agree with @bjope, this would have a large effect on bunches of PHIs immediately followed by bunches of DBG_VALUEs that refer to them. This is a common case in most of the IR that I look at, mem2reg puts them there, and we'd lose quite a lot of variable coverage.

Nov 28 2019, 3:53 AM · Restricted Project

Nov 27 2019

jmorse accepted D68209: [LiveDebugValues] Introduce entry values of unmodified params.

This looks ready to go in, although I've no familiarity with the LLDB tests modified in the latest changed. As far as I can see, this is weakening some of the tests (and expecting more unavailable values) because the mechanism for identifying when a value is unchanged is now more conservative, and we drop more entry values?

Nov 27 2019, 5:30 AM · Restricted Project, Restricted Project, debug-info

Nov 25 2019

jmorse updated the diff for D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.

Great news everyone, it's placeDbgValues time again!

Nov 25 2019, 12:00 PM · Restricted Project
jmorse abandoned D59027: [WIP][DebugInfo] When sinking DBG_VALUEs, only insert undef DBG_VALUEs if sinking would re-order assignments.

(This is now reborn as D70672)

Nov 25 2019, 9:38 AM · Restricted Project
jmorse added a parent revision for D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking: D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location.
Nov 25 2019, 9:23 AM · Restricted Project
jmorse added a child revision for D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location: D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.
Nov 25 2019, 9:23 AM · Restricted Project
jmorse created D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.
Nov 25 2019, 9:23 AM · Restricted Project
jmorse added a parent revision for D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location: D70486: Make DebugVariable class available in DebugInfoMetadata.
Nov 25 2019, 8:46 AM · Restricted Project
jmorse added a child revision for D70486: Make DebugVariable class available in DebugInfoMetadata: D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location.
Nov 25 2019, 8:46 AM · Restricted Project, debug-info
jmorse created D70672: [DebugInfo] Don't sink DBG_VALUEs past other DBG_VALUEs of the same variable location.
Nov 25 2019, 8:24 AM · Restricted Project
jmorse committed rGd9c9a4e48d28: [DebugInfo] Avoid register coalesing unsoundly changing DBG_VALUE locations (authored by jmorse).
[DebugInfo] Avoid register coalesing unsoundly changing DBG_VALUE locations
Nov 25 2019, 5:54 AM
jmorse closed D64630: [DebugInfo] Address performance regression with r364515.
Nov 25 2019, 5:54 AM · Restricted Project
jmorse added a comment to D64630: [DebugInfo] Address performance regression with r364515.

Thanks for sticking with this through many revisions; hopefully this time it sticks.

Nov 25 2019, 5:53 AM · Restricted Project

Nov 22 2019

jmorse added inline comments to D64630: [DebugInfo] Address performance regression with r364515.
Nov 22 2019, 10:25 AM · Restricted Project
jmorse updated the diff for D64630: [DebugInfo] Address performance regression with r364515.

Revision addressing some comments and cutting down on datastructure sizes. Note that I've deleted two tests here: with the additional conflict resolution information, there are some non-live DBG_VALUEs that can be fixed. Specifically, CR_Erase indicating "this was a redundant and dead copy of the other vreg that we're erasing" is something that can be safely resolved.

Nov 22 2019, 10:16 AM · Restricted Project

Nov 21 2019

jmorse accepted D70091: [BranchFolding] Fix PR43964 about branch folder not being debug invariant.

LGTM!

Nov 21 2019, 8:47 AM · Restricted Project

Nov 20 2019

jmorse added inline comments to D70121: [DebugInfo][LDV] Teach LDV how to identify source variables and handle fragments.
Nov 20 2019, 7:28 AM · Restricted Project, debug-info
jmorse added a comment to D70318: Recover debug intrinsics when killing duplicate or empty basic blocks.

NB, you'll also want to remove the DebugVariable portions of this patch and assign it as a child revision of D70486, and the tests went missing in the latest revision :o)

Nov 20 2019, 6:57 AM · Restricted Project, debug-info
jmorse added a comment to D70091: [BranchFolding] Fix PR43964 about branch folder not being debug invariant.

This looks good to me and great refactor. To make sure I understand what's going on: by keeping a temporary iterator in ComputeCommonTailLength, and only "committing" the advance to I1/I2 when we're sure we've found some additional identical tail, this avoids all the concerns about I1/I2 ending up pointing at pseudo instructions?

Nov 20 2019, 4:25 AM · Restricted Project

Nov 19 2019

jmorse added inline comments to D70318: Recover debug intrinsics when killing duplicate or empty basic blocks.
Nov 19 2019, 3:52 AM · Restricted Project, debug-info

Nov 18 2019

jmorse updated the diff for D64630: [DebugInfo] Address performance regression with r364515.

Hokay, here's another take on this problem. To recap, all my previous implementations were broken because of

a) performance problems looking up slot indexes for DBG_VALUEs, and
b) I wasn't aware that the coalescer will merge overlapping live ranges.

which I'll address in order below.

Nov 18 2019, 1:35 PM · Restricted Project
jmorse added inline comments to D64630: [DebugInfo] Address performance regression with r364515.
Nov 18 2019, 12:57 PM · Restricted Project

Nov 15 2019

jmorse planned changes to D64630: [DebugInfo] Address performance regression with r364515.

Sitrep on this -- Vedants question about early-exits led to me digging further into the pass, and discovering even more bad assumptions I'd made. I've prototyped something based on Vedants proposal of the other way of doing this; it'll have to wait until next week though.

Nov 15 2019, 9:29 AM · Restricted Project
jmorse accepted D68209: [LiveDebugValues] Introduce entry values of unmodified params.

IMO, this LGTM, with the rider that I think the "empty" method needs to be made safer (see inline).

Nov 15 2019, 6:58 AM · Restricted Project, Restricted Project, debug-info

Nov 11 2019

jmorse accepted D70040: Clang-trunk Generates Wrong Debug values with -O1.

LGTM, best to leave this 24h in case other debug-info people spot something.

Nov 11 2019, 6:23 AM · Restricted Project, debug-info
jmorse added a comment to D70040: Clang-trunk Generates Wrong Debug values with -O1.

Looks good, with a couple of nits inline. Thanks for tracking this down!

Nov 11 2019, 3:40 AM · Restricted Project, debug-info

Nov 8 2019

jmorse added a comment to D64630: [DebugInfo] Address performance regression with r364515.

Vedant wrote:

I guess there are a few alternatives to consider that call for changing data structures. Perhaps it makes more sense to start with the approach taken here to address the performance issue and to keep an eye out for any more problems.

Nov 8 2019, 11:21 AM · Restricted Project
jmorse updated the diff for D64630: [DebugInfo] Address performance regression with r364515.

Correctly base patch on prior implementation

Nov 8 2019, 11:21 AM · Restricted Project
jmorse committed rG6b45e1bc11e9: Revert "[clang] Report sanitizer blacklist as a dependency in cc1" (authored by jmorse).
Revert "[clang] Report sanitizer blacklist as a dependency in cc1"
Nov 8 2019, 4:13 AM
jmorse added a reverting change for rG03b84e4f6d0e: [clang] Report sanitizer blacklist as a dependency in cc1: rG6b45e1bc11e9: Revert "[clang] Report sanitizer blacklist as a dependency in cc1".
Nov 8 2019, 4:13 AM
jmorse committed rGd6be9273c603: Revert "[compiler-rt] Fix tests after 03b84e4f6d0" (authored by jmorse).
Revert "[compiler-rt] Fix tests after 03b84e4f6d0"
Nov 8 2019, 4:13 AM
jmorse added a reverting change for rGbdeb2724f0aa: [compiler-rt] Fix tests after 03b84e4f6d0: rGd6be9273c603: Revert "[compiler-rt] Fix tests after 03b84e4f6d0".
Nov 8 2019, 4:13 AM
jmorse added a comment to D69684: [debuginfo-tests] Don't look for Python 3 if we already have it.

I would very much prefer a hard error over anything automagic. I just wanted to make sure no-one else ( @jmorse ) relies on this functionality.

Nov 8 2019, 3:25 AM · Restricted Project

Nov 7 2019

jmorse added a comment to D68209: [LiveDebugValues] Introduce entry values of unmodified params.

This looks good -- some minor nits inline. Keeping the backup-locations in the live-out sets as special records seems like a good solution for avoiding unwanted control flow effects, as shown with the diamond pattern.

Nov 7 2019, 8:46 AM · Restricted Project, Restricted Project, debug-info
jmorse added a comment to D64630: [DebugInfo] Address performance regression with r364515.

Bjorn wrote inline:

Not sure if the old code cared much about it either, but I always wonder if we forget to consider sub registers when I see code that only looks at getReg() but not getSubReg()

Nov 7 2019, 5:33 AM · Restricted Project
jmorse updated the diff for D64630: [DebugInfo] Address performance regression with r364515.

Fold two helpers into one; review comments and formatting

Nov 7 2019, 5:14 AM · Restricted Project

Nov 6 2019

jmorse added a comment to D69886: [DebugInfo] Support for DW_OP_implicit_pointer (CodeGen phase).

Hi Alok,

Nov 6 2019, 9:04 AM · debug-info, Restricted Project
jmorse accepted D69809: Wrong debug info generated at -O2 (-O0 is correct).

LGTM, although it's worth leaving this 24h in case other reviewers have an opinion.

Nov 6 2019, 6:45 AM · Restricted Project, debug-info
jmorse added a comment to D69809: Wrong debug info generated at -O2 (-O0 is correct).

A few nits inline, otherwise great!

Nov 6 2019, 4:14 AM · Restricted Project, debug-info

Nov 4 2019

jmorse abandoned D68708: [RFC] Adopt Dexter and use it to run debuginfo-tests.

Ah well, in that case I think this counts as merged, thanks all!

Nov 4 2019, 1:36 AM · Restricted Project
jmorse accepted D69725: [dexter] Fix feature tests on Windows.

LGTM

Nov 4 2019, 1:27 AM · Restricted Project
jmorse accepted D69724: [dexter] Remove lit check for python 3.

LGTM

Nov 4 2019, 1:09 AM · Restricted Project