Page MenuHomePhabricator
Feed Advanced Search

Today

jmorse added inline comments to D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.
Thu, Feb 21, 5:18 AM · Restricted Project
jmorse updated the diff for D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.

Use isCopyInstr to detect copy instructions, which will catch more opportunities that just isCopy().

Thu, Feb 21, 5:18 AM · Restricted Project
jmorse abandoned D54715: [WIP][DebugInfo] Distinguish reads/writes of VRegs when creating debug SDNodes.
Thu, Feb 21, 3:10 AM · Restricted Project
Herald added a project to D54715: [WIP][DebugInfo] Distinguish reads/writes of VRegs when creating debug SDNodes: Restricted Project.

This problem had PR40427 hiding at the bottom of it, so this WIP isn't required.

Thu, Feb 21, 3:10 AM · Restricted Project

Yesterday

jmorse planned changes to D58403: [DebugInfo][CGP] Update dbg.values when updating memory address computations.

It turns out the validity of this change relies on placeDbgValues reordering (curses), a small amount of extra juggling will be required.

Wed, Feb 20, 9:08 AM · Restricted Project
jmorse added a child revision for D56151: [DebugInfo] PR40010: Avoid register coalesing altering DBG_VALUE valuations: D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Wed, Feb 20, 8:24 AM
jmorse added parent revisions for D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics: D58450: [DebugInfo][MachineCSE] Don't try to copy-propagate debuginfo for every COPY seen, D58403: [DebugInfo][CGP] Update dbg.values when updating memory address computations, D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies, D58386: [DebugInfo] Pre-RA MachineSink: sink DBG_VALUEs that don't immediately follow the sunk instruction too, D56151: [DebugInfo] PR40010: Avoid register coalesing altering DBG_VALUE valuations.
Wed, Feb 20, 8:24 AM · Restricted Project
jmorse added a child revision for D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies: D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Wed, Feb 20, 8:24 AM · Restricted Project
jmorse added a child revision for D58403: [DebugInfo][CGP] Update dbg.values when updating memory address computations: D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Wed, Feb 20, 8:24 AM · Restricted Project
jmorse added a child revision for D58386: [DebugInfo] Pre-RA MachineSink: sink DBG_VALUEs that don't immediately follow the sunk instruction too: D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Wed, Feb 20, 8:24 AM · Restricted Project
jmorse added a child revision for D58450: [DebugInfo][MachineCSE] Don't try to copy-propagate debuginfo for every COPY seen: D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Wed, Feb 20, 8:24 AM · Restricted Project
jmorse created D58453: [DebugInfo][CGP] Limit placeDbgValues movement of dbg.value intrinsics.
Wed, Feb 20, 8:23 AM · Restricted Project
jmorse added a child revision for D56265: [DebugInfo] MCP: collect and update DBG_VALUEs encountered in local block: D58450: [DebugInfo][MachineCSE] Don't try to copy-propagate debuginfo for every COPY seen.
Wed, Feb 20, 7:33 AM
jmorse added a parent revision for D58450: [DebugInfo][MachineCSE] Don't try to copy-propagate debuginfo for every COPY seen: D56265: [DebugInfo] MCP: collect and update DBG_VALUEs encountered in local block.
Wed, Feb 20, 7:33 AM · Restricted Project
jmorse created D58450: [DebugInfo][MachineCSE] Don't try to copy-propagate debuginfo for every COPY seen.
Wed, Feb 20, 7:31 AM · Restricted Project

Tue, Feb 19

jmorse created D58403: [DebugInfo][CGP] Update dbg.values when updating memory address computations.
Tue, Feb 19, 1:15 PM · Restricted Project
jmorse added a parent revision for D58386: [DebugInfo] Pre-RA MachineSink: sink DBG_VALUEs that don't immediately follow the sunk instruction too: D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.
Tue, Feb 19, 7:35 AM · Restricted Project
jmorse added a child revision for D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies: D58386: [DebugInfo] Pre-RA MachineSink: sink DBG_VALUEs that don't immediately follow the sunk instruction too.
Tue, Feb 19, 7:35 AM · Restricted Project
jmorse created D58386: [DebugInfo] Pre-RA MachineSink: sink DBG_VALUEs that don't immediately follow the sunk instruction too.
Tue, Feb 19, 7:35 AM · Restricted Project

Fri, Feb 15

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

I have some doubt about this. Mainly the part about inserting undefs. Although, some of my doubts are partially based on the big-black-hole regarding how debug info is supposed to work for heavily optimized code (and more specifically how this is supposed to work in LLVM based on what we got today).

Fri, Feb 15, 4:25 AM · Restricted Project
jmorse added inline comments to D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.
Fri, Feb 15, 2:38 AM · Restricted Project
jmorse updated the diff for D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.

Explicitly test for whether we're pre or post regalloc when deciding whether a copy can be propagated, refactor test logic.

Fri, Feb 15, 2:30 AM · Restricted Project

Thu, Feb 14

jmorse added a child revision for D58191: [DebugInfo] Make postra sinking of DBG_VALUEs safe in the presence of subregisters: D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.
Thu, Feb 14, 7:56 AM · Restricted Project
jmorse added a parent revision for D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies: D58191: [DebugInfo] Make postra sinking of DBG_VALUEs safe in the presence of subregisters.
Thu, Feb 14, 7:56 AM · Restricted Project
jmorse created D58238: [DebugInfo] MachineSink: Insert undef DBG_VALUEs when sinking instructions, try to forward copies.
Thu, Feb 14, 7:56 AM · Restricted Project
jmorse added inline comments to D58191: [DebugInfo] Make postra sinking of DBG_VALUEs safe in the presence of subregisters.
Thu, Feb 14, 7:04 AM · Restricted Project
jmorse updated the diff for D58191: [DebugInfo] Make postra sinking of DBG_VALUEs safe in the presence of subregisters.

Sort dbg-values to be sunk to ensure determinism, sprinkle -NEXT on some CHECKS to strengthen test.

Thu, Feb 14, 7:04 AM · Restricted Project
jmorse added inline comments to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.
Thu, Feb 14, 3:26 AM · Restricted Project
jmorse committed rG897a9f8d008c: Fix an accidentally flipped pair of arguments, NFCI (authored by jmorse).
Fix an accidentally flipped pair of arguments, NFCI
Thu, Feb 14, 3:10 AM
jmorse committed rL354019: Fix an accidentally flipped pair of arguments, NFCI.
Fix an accidentally flipped pair of arguments, NFCI
Thu, Feb 14, 3:10 AM

Wed, Feb 13

jmorse created D58191: [DebugInfo] Make postra sinking of DBG_VALUEs safe in the presence of subregisters.
Wed, Feb 13, 9:20 AM · Restricted Project
jmorse committed rG291713a596fb: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs (authored by jmorse).
[DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs
Wed, Feb 13, 8:33 AM
jmorse committed rL353954: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.
[DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs
Wed, Feb 13, 8:33 AM
jmorse closed D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.
Wed, Feb 13, 8:33 AM · Restricted Project
jmorse committed rG6d3cd3b4ec72: [DebugInfo][DAG] Refactor dbg.value lowering into its own method (authored by jmorse).
[DebugInfo][DAG] Refactor dbg.value lowering into its own method
Wed, Feb 13, 7:53 AM
jmorse committed rL353950: [DebugInfo][DAG] Refactor dbg.value lowering into its own method.
[DebugInfo][DAG] Refactor dbg.value lowering into its own method
Wed, Feb 13, 7:53 AM
jmorse closed D57697: [DebugInfo][DAG] Refactor dbg.value intrinsic lowering in SelectionDAGBuilder to method.
Wed, Feb 13, 7:53 AM · Restricted Project
jmorse committed rGa9a11aac0f94: [DebugInfo][DAG] Limit special-casing of dbg.values for Arguments (authored by jmorse).
[DebugInfo][DAG] Limit special-casing of dbg.values for Arguments
Wed, Feb 13, 5:38 AM
jmorse committed rL353948: [DebugInfo][DAG] Limit special-casing of dbg.values for Arguments.
[DebugInfo][DAG] Limit special-casing of dbg.values for Arguments
Wed, Feb 13, 5:37 AM
jmorse closed D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.
Wed, Feb 13, 5:37 AM · Restricted Project
jmorse added a comment to D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.

The filtering from r353735 happily makes the sparc test change un-necessary.

Wed, Feb 13, 3:11 AM · Restricted Project
jmorse updated the diff for D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.

Rebase onto Bjorns changes, remove now un-necessary test change.

Wed, Feb 13, 3:08 AM · Restricted Project
jmorse committed rGf10af3f134f2: [DebugInfo][InstCombine] Prefer to salvage debuginfo over sinking it (authored by jmorse).
[DebugInfo][InstCombine] Prefer to salvage debuginfo over sinking it
Wed, Feb 13, 2:55 AM
jmorse committed rL353936: [DebugInfo][InstCombine] Prefer to salvage debuginfo over sinking it.
[DebugInfo][InstCombine] Prefer to salvage debuginfo over sinking it
Wed, Feb 13, 2:54 AM
jmorse closed D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.
Wed, Feb 13, 2:54 AM · Restricted Project
jmorse added inline comments to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.
Wed, Feb 13, 2:34 AM · Restricted Project
jmorse added a comment to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.

Also, thanks for reviews!

Wed, Feb 13, 2:34 AM · Restricted Project

Tue, Feb 12

jmorse added a comment to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.

(Plus I added a new test to cover this behaviour, and removed some plumbing for salvageDebugUsersForDbgValues that was folded into an earlier commit).

Tue, Feb 12, 8:33 AM · Restricted Project
jmorse updated the diff for D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.

The issue with generating new DW_OP_derefs has been resolved by r353824, as a result we no longer change existing tests with this patch.

Tue, Feb 12, 8:32 AM · Restricted Project
jmorse added a comment to D56265: [DebugInfo] MCP: collect and update DBG_VALUEs encountered in local block.

Ping, @CarlosAlbertoEnciso how's the utility function?

Tue, Feb 12, 3:52 AM
jmorse added a comment to D57962: [DebugInfo] PR40628: Don't salvage load operations.

Folded last comments into commit, but phab doesn't show those comments inline because of path differences it seems:

  • Added comment warning against salvaging loads in salvageDebugInfoImpl
  • Removed TBBA metadata and un-necessary DILocations
  • New test case positively checks for an undef dbg.value corresponding to the optimised-out load.
Tue, Feb 12, 2:58 AM · Restricted Project
jmorse committed rGb33a5c7347fc: [DebugInfo] Don't salvage load operations (PR40628). (authored by jmorse).
[DebugInfo] Don't salvage load operations (PR40628).
Tue, Feb 12, 2:55 AM
jmorse committed rL353824: [DebugInfo] Don't salvage load operations (PR40628)..
[DebugInfo] Don't salvage load operations (PR40628).
Tue, Feb 12, 2:55 AM
jmorse closed D57962: [DebugInfo] PR40628: Don't salvage load operations.
Tue, Feb 12, 2:55 AM · Restricted Project

Mon, Feb 11

jmorse added a comment to D57702: [SelectionDAGBuilder] Add restrictions to EmitFuncArgumentDbgValue.
plus it'd be good to hear Adrians view on the fragment scenario.

Do you have any specific questions in mind?

Mon, Feb 11, 4:12 AM · Restricted Project
jmorse added a comment to D57962: [DebugInfo] PR40628: Don't salvage load operations.

Would it be feasible to inject a dbg_value(undef) at the end of the basic block or before the next store, whichever is earlier, instead?

Mon, Feb 11, 4:08 AM · Restricted Project

Fri, Feb 8

jmorse created D57962: [DebugInfo] PR40628: Don't salvage load operations.
Fri, Feb 8, 10:03 AM · Restricted Project
jmorse abandoned D54712: [WIP][DebugInfo] Fix SelectionDAGs placement of phi-reading dbg.values.

This turned out to have PR40427 burried at the bottom of it, and was fixed in r352350.

Fri, Feb 8, 6:53 AM · Restricted Project
jmorse added a comment to D57702: [SelectionDAGBuilder] Add restrictions to EmitFuncArgumentDbgValue.

LGTM although I'll wait for someone else to approve, plus it'd be good to hear Adrians view on the fragment scenario.

Fri, Feb 8, 4:48 AM · Restricted Project

Thu, Feb 7

jmorse added a comment to D57702: [SelectionDAGBuilder] Add restrictions to EmitFuncArgumentDbgValue.

Looks great,

Thu, Feb 7, 4:31 AM · Restricted Project

Wed, Feb 6

jmorse added a comment to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.

I suspect this change now blocks on https://bugs.llvm.org/show_bug.cgi?id=40628 (see inline comments), or at least until there's more understanding of how to resolve problems with new DW_OP_derefs being introduced.

Wed, Feb 6, 7:31 AM · Restricted Project

Tue, Feb 5

jmorse added a comment to D57696: [DebugInfo] Separate DbgValueInst and DIExpression logic in salvageDebugInfo for reusability..

NB, I folded a tiny NFC bit of D56788 that was necessary into the closing commit here -- the remaining discussion in the other review doesn't relate to it, and it's a no-op anyway. (Figured I'd record this for history).

Tue, Feb 5, 3:15 AM · Restricted Project
jmorse committed rG84ca706be1db: [DebugInfo][NFCI] Split salvageDebugInfo into helper functions (authored by jmorse).
[DebugInfo][NFCI] Split salvageDebugInfo into helper functions
Tue, Feb 5, 3:13 AM
jmorse committed rL353156: [DebugInfo][NFCI] Split salvageDebugInfo into helper functions.
[DebugInfo][NFCI] Split salvageDebugInfo into helper functions
Tue, Feb 5, 3:12 AM
jmorse closed D57696: [DebugInfo] Separate DbgValueInst and DIExpression logic in salvageDebugInfo for reusability..
Tue, Feb 5, 3:12 AM · Restricted Project
jmorse abandoned D57572: [WIP][DebugInfo] Refactor salvageDebugInfo into more helpful functions.

This became D57696

Tue, Feb 5, 2:00 AM

Mon, Feb 4

jmorse added inline comments to D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.
Mon, Feb 4, 10:58 AM · Restricted Project
jmorse updated the diff for D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.

Address comments (revise filtering of inlined parameters).

Mon, Feb 4, 10:58 AM · Restricted Project
jmorse updated the diff for D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.

Address comments; also re-instate and revise the 'TODO' comment I was deleting. After reading it again, I think it's not referring to the problem that this patch solves.

Mon, Feb 4, 10:39 AM · Restricted Project
jmorse added a child revision for D57696: [DebugInfo] Separate DbgValueInst and DIExpression logic in salvageDebugInfo for reusability.: D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.
Mon, Feb 4, 9:39 AM · Restricted Project
jmorse added parent revisions for D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs: D57697: [DebugInfo][DAG] Refactor dbg.value intrinsic lowering in SelectionDAGBuilder to method, D57696: [DebugInfo] Separate DbgValueInst and DIExpression logic in salvageDebugInfo for reusability..
Mon, Feb 4, 9:39 AM · Restricted Project
jmorse added a child revision for D57697: [DebugInfo][DAG] Refactor dbg.value intrinsic lowering in SelectionDAGBuilder to method: D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.
Mon, Feb 4, 9:39 AM · Restricted Project
jmorse created D57697: [DebugInfo][DAG] Refactor dbg.value intrinsic lowering in SelectionDAGBuilder to method.
Mon, Feb 4, 9:33 AM · Restricted Project
jmorse added a child revision for D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments: D57697: [DebugInfo][DAG] Refactor dbg.value intrinsic lowering in SelectionDAGBuilder to method.
Mon, Feb 4, 9:33 AM · Restricted Project
jmorse created D57696: [DebugInfo] Separate DbgValueInst and DIExpression logic in salvageDebugInfo for reusability..
Mon, Feb 4, 9:27 AM · Restricted Project
jmorse created D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.
Mon, Feb 4, 9:23 AM · Restricted Project
jmorse updated the summary of D57694: [DebugInfo][DAG] Either salvage dangling debug info or emit Undef DBG_VALUEs.
Mon, Feb 4, 9:23 AM · Restricted Project
jmorse added a comment to D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.

Nice! Me and @dstenb actually discussed this kind of problem earlier today. So quite fun (and surprising) to see a solution pop up in the inbox.

Mon, Feb 4, 3:40 AM · Restricted Project
jmorse updated the diff for D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.

Strip useless stuff from test, attempt to catch more inlined params.

Mon, Feb 4, 3:32 AM · Restricted Project

Fri, Feb 1

jmorse created D57584: [DebugInfo][DAG] Reduce SelectionDAGs reordering of variables referring to Arguments.
Fri, Feb 1, 6:48 AM · Restricted Project
jmorse created D57572: [WIP][DebugInfo] Refactor salvageDebugInfo into more helpful functions.
Fri, Feb 1, 2:14 AM

Thu, Jan 31

jmorse added a comment to D57511: [DebugInfo] Stop changing labels for register-described parameter DBG_VALUEs.

LGTM, although I'll wait for someone else to approve.

Thu, Jan 31, 9:13 AM · Restricted Project, debug-info
jmorse added a comment to D57510: [DebugInfo] Keep parameter DBG_VALUEs before prologue code.

LGTM, although I'll wait for someone else to approve.

Thu, Jan 31, 8:34 AM · Restricted Project, debug-info
jmorse added inline comments to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.
Thu, Jan 31, 7:35 AM · Restricted Project
jmorse committed rCRT352747: Revert r352732: [libFuzzer] replace slow std::mt19937 with a much faster std….
Revert r352732: [libFuzzer] replace slow std::mt19937 with a much faster std…
Thu, Jan 31, 4:44 AM
jmorse committed rL352747: Revert r352732: [libFuzzer] replace slow std::mt19937 with a much faster std….
Revert r352732: [libFuzzer] replace slow std::mt19937 with a much faster std…
Thu, Jan 31, 4:44 AM

Wed, Jan 30

jmorse added a comment to D56788: [DebugInfo][InstCombine] Prefer salvaging dbg.values over sinking them.

Ping

Wed, Jan 30, 7:08 AM · Restricted Project

Tue, Jan 29

jmorse committed rCRT352487: Add 'REQUIRES: zlib' to a fuzzer test.
Add 'REQUIRES: zlib' to a fuzzer test
Tue, Jan 29, 5:06 AM
jmorse committed rL352487: Add 'REQUIRES: zlib' to a fuzzer test.
Add 'REQUIRES: zlib' to a fuzzer test
Tue, Jan 29, 5:06 AM
jmorse committed rCRT352483: Add zlib feature test to lit configuration.
Add zlib feature test to lit configuration
Tue, Jan 29, 4:01 AM
jmorse committed rL352483: Add zlib feature test to lit configuration.
Add zlib feature test to lit configuration
Tue, Jan 29, 4:01 AM
jmorse closed D57366: Add zlib feature to compiler-rt lit config.
Tue, Jan 29, 4:01 AM
jmorse added a comment to D57328: [DebugInfo][DAG] Always emit DBG_VALUEs of FrameIndexes regardless of their SDNodes.

Step change in the LNT debuginfo tracking, marked up as a "regression" though:

Tue, Jan 29, 3:52 AM
jmorse added a comment to D57328: [DebugInfo][DAG] Always emit DBG_VALUEs of FrameIndexes regardless of their SDNodes.

After hitting the buildbots, a bunch of PowerPC builders started reporting XPASS for test/DebugInfo/Generic/incorrect-variable-debugloc1.ll. That XFAIL has an associated bug report:

Tue, Jan 29, 2:41 AM
jmorse committed rL352471: Remove 'XFAIL: powerpc64' from a debuginfo test.
Remove 'XFAIL: powerpc64' from a debuginfo test
Tue, Jan 29, 2:24 AM
jmorse committed rL352467: [DebugInfo][DAG] Process FrameIndex dbg.values unconditionally.
[DebugInfo][DAG] Process FrameIndex dbg.values unconditionally
Tue, Jan 29, 1:40 AM
jmorse closed D57328: [DebugInfo][DAG] Always emit DBG_VALUEs of FrameIndexes regardless of their SDNodes.
Tue, Jan 29, 1:39 AM
jmorse added a comment to D57163: [DebugInfo][DAG] PR40427: Avoid accidentally re-ordering DBG_VALUEs due to assumptions about inst creation.

Hi Roger

Tue, Jan 29, 12:43 AM
jmorse committed rL352460: Fix an incorrectly configured test..
Fix an incorrectly configured test.
Tue, Jan 29, 12:42 AM

Mon, Jan 28

jmorse updated the diff for D57328: [DebugInfo][DAG] Always emit DBG_VALUEs of FrameIndexes regardless of their SDNodes.

Make use of auto, add constant-value dbg.value's to test for their correct ordering with FrameIndex dbg.values.

Mon, Jan 28, 9:10 AM