Page MenuHomePhabricator

aprantl (Adrian Prantl)
User

Projects

User Details

User Since
Mar 2 2013, 8:12 AM (411 w, 2 d)

Recent Activity

Tue, Jan 12

aprantl added a comment to D94391: CGDebugInfo: Drop Loc.isInvalid() special case from getLineNumber.

I like that this makes getLineNumber behave less "magic". I'm slightly worried that this isn't quite as NFC as think (and the other cases are just not caught by the testsuite). Perhaps you could compile Clang (and a sample of Clang's ObjC(xx) tests) with the patch and diff the dwarfdump output?

Tue, Jan 12, 3:35 PM · Restricted Project
aprantl accepted D94536: [dsymutil] Warn on timestmap mismatch between object file and debug map.
Tue, Jan 12, 3:28 PM · Restricted Project
aprantl added a comment to D93497: Salvage debug info for function arguments in coro-split funclets..

It sounds like the bug @dongAxis1944 has found is unrelated to this patch. Should we move forward with this one, or are there any other problems you see?

Tue, Jan 12, 1:52 PM · Restricted Project
aprantl added a comment to D94388: [Coroutine][DebugInfo] Enhance the ability of coroutine to debug parameters under O2.

Do we understand *why* the frontend is emitting the variables twice? If that just a bug in the clang frontend (which would be my first guess) then we should aim at fixing the frontend instead. If the frontend is trying to do something different, I would love to understand what that is.

Tue, Jan 12, 1:50 PM · Restricted Project
aprantl added inline comments to D94388: [Coroutine][DebugInfo] Enhance the ability of coroutine to debug parameters under O2.
Tue, Jan 12, 1:27 PM · Restricted Project
aprantl added inline comments to D94536: [dsymutil] Warn on timestmap mismatch between object file and debug map.
Tue, Jan 12, 11:37 AM · Restricted Project

Mon, Jan 11

aprantl added a comment to D93497: Salvage debug info for function arguments in coro-split funclets..

Thanks, I can reproduce the the issue! However, it looks like it reproduces even without my patch. The frontend (or perhaps CoroSplit?) apparently insert both a "t" function argument and a "t" local variable in the same scope:

Mon, Jan 11, 5:35 PM · Restricted Project
aprantl added a comment to D94460: [dsymutil] Copy eh_frame content into the dSYM companion file..

I think this looks reasonable!

Mon, Jan 11, 5:01 PM · Restricted Project
aprantl added a comment to D78978: [LLDB] Add support for WebAssembly debugging.

Thanks for the explanation!

Mon, Jan 11, 1:56 PM · Restricted Project
aprantl accepted D94224: [clang][AST] Get rid of an alignment hack in DeclObjC.h [NFCI].

That's even better!

Mon, Jan 11, 1:36 PM · Restricted Project

Fri, Jan 8

aprantl accepted D94231: [clang][Sema] Compare SourceLocations directly [NFCI].

Based on your explanation, this seems good. Thanks!

Fri, Jan 8, 4:11 PM · Restricted Project
aprantl added inline comments to D94224: [clang][AST] Get rid of an alignment hack in DeclObjC.h [NFCI].
Fri, Jan 8, 4:10 PM · Restricted Project
aprantl added a comment to D78978: [LLDB] Add support for WebAssembly debugging.

What's the testing story for WASM going to be?

Fri, Jan 8, 4:00 PM · Restricted Project
aprantl added a comment to D93497: Salvage debug info for function arguments in coro-split funclets..

Do you have any plan to salvage debug info under O2 when most of the dbg.declare are changed to dbg.value?

Fri, Jan 8, 3:51 PM · Restricted Project
aprantl added a comment to D93497: Salvage debug info for function arguments in coro-split funclets..

I think the patch might occur an error when compilling the following code (commit id of clang is 9d70dbdc2bf294abffd4b2c9ae524055f72d017a).

Fri, Jan 8, 3:43 PM · Restricted Project
aprantl committed rGaa1943a2d167: Don't take the address of a temporary (authored by aprantl).
Don't take the address of a temporary
Fri, Jan 8, 1:25 PM

Wed, Jan 6

aprantl accepted D88175: [DebugInfo] Add new metadata, DIArgList, for referencing a list of SSA values inside a debug variable intrinsic.
Wed, Jan 6, 2:37 PM · Restricted Project, debug-info
aprantl added a comment to D94140: [WebAssembly] Fixed byval args missing DWARF DW_AT_LOCATION.

Mechanically this LGTM.

Wed, Jan 6, 2:32 PM · Restricted Project

Tue, Jan 5

aprantl added a comment to D91806: [InstCombine] Update valueCoversEntireFragment to use TypeSize.

this lgtm with all other reviewer's concerns addressed.

Tue, Jan 5, 5:08 PM · Restricted Project, Restricted Project
aprantl added a comment to D92013: [DebugInfo] Don't use DW_OP_implicit_value for fragments.

the fragmenting code would need to take the pointer size into account (one of the bugs I want to solve is that we're always assuming a 64-bit stack, whereas dwarf says it's address-sized). Knowing the address size at some point is unavoidable, so this might not be a big issue.

Tue, Jan 5, 4:59 PM · debug-info, Restricted Project

Dec 18 2020

aprantl accepted D92013: [DebugInfo] Don't use DW_OP_implicit_value for fragments.

Thanks, Pavel! My aspiration for DwarfExpression.cpp was to eventually add some backtracking capability to it to choose the optimal (=shortest) sequence of instructions for each expression. So far we haven't done this, because local decisions were usually sufficient, and more importantly, streaming the output limited our flexibility. If we give DwarfExpression a one-step look-ahead buffer, we could implement addConstantFP() as pushing two alternatives to the buffer:

Dec 18 2020, 9:52 AM · debug-info, Restricted Project
aprantl added inline comments to D93451: [Cloning] Copy metadata of global declarations.
Dec 18 2020, 9:11 AM · Restricted Project
aprantl accepted D93462: [DebugInfo] Support Fortran 'use <external module>' statement..

Thank you, this makes sense!

Dec 18 2020, 8:49 AM · debug-info, Restricted Project

Dec 17 2020

aprantl updated the diff for D93497: Salvage debug info for function arguments in coro-split funclets..

Fix a potential cast error.

Dec 17 2020, 6:06 PM · Restricted Project
aprantl requested review of D93497: Salvage debug info for function arguments in coro-split funclets..
Dec 17 2020, 3:54 PM · Restricted Project

Dec 14 2020

aprantl accepted D84113: [Debuginfo] (1/7) [DW_OP_implicit_pointer/second strategy] Support for DW_OP_LLVM_implicit_pointer.

This is needed because representation and specification (types of operands) of

it a bit different than actual dwarf expression DW_OP_implicit_pointer.

Dec 14 2020, 3:31 PM · Restricted Project, debug-info
aprantl added a comment to D92013: [DebugInfo] Don't use DW_OP_implicit_value for fragments.

I'd like to also fix this in a more fundamental way, but I think I'd need some guidance from someone more familiar with this code (who would that be?).

One idea I had is to add something like isPureFragment() to the DIExpression class, which would return true if the expression consistent solely of a single DW_OP_LLVM_fragment operand.

Dec 14 2020, 3:28 PM · debug-info, Restricted Project
aprantl added a comment to D90418: [debuginfo] Vectorizing a loop doesn't terminate all vectorized variable locations.

Can replaceDbgUsesWithUndef from Local.cpp be used here?

Dec 14 2020, 3:14 PM · debug-info, Restricted Project
aprantl added a comment to D90418: [debuginfo] Vectorizing a loop doesn't terminate all vectorized variable locations.

I think you accidentally deleted your patch :-)

Dec 14 2020, 3:11 PM · debug-info, Restricted Project
aprantl accepted D92578: [DebugInfo] Handle DBG_VALUES with multiple variable location operands in MIR.

Mechanically LGTM to me (one question inline).

Dec 14 2020, 3:06 PM · Restricted Project, debug-info

Dec 11 2020

aprantl added a comment to D88175: [DebugInfo] Add new metadata, DIArgList, for referencing a list of SSA values inside a debug variable intrinsic.

Although — no that I read the reply — it looks like the MDTuple question hasn't actually been answered ;-)

Dec 11 2020, 6:48 PM · Restricted Project, debug-info
aprantl added a comment to D88175: [DebugInfo] Add new metadata, DIArgList, for referencing a list of SSA values inside a debug variable intrinsic.

I'm sorry, I just accidentally replied to an old mail without realizing that this question was already answered weeks ago.

Dec 11 2020, 6:46 PM · Restricted Project, debug-info
aprantl added a comment to D88175: [DebugInfo] Add new metadata, DIArgList, for referencing a list of SSA values inside a debug variable intrinsic.

I think this would work. Could you base it on MDTuple and would that simplify the implementation?

Dec 11 2020, 6:45 PM · Restricted Project, debug-info
aprantl accepted D88232: [DebugInfo] Handle multiple variable location operands in IR.
Dec 11 2020, 6:42 PM · debug-info, Restricted Project
aprantl added inline comments to D88592: [DebugInfo] Emit DBG_VALUE_LIST from ISel.
Dec 11 2020, 6:37 PM · Restricted Project, debug-info

Dec 10 2020

aprantl accepted D88589: [DebugInfo] Handle dbg.values with multiple variable location operands in ISel.

Mechanically this looks fine.

Dec 10 2020, 8:52 AM · debug-info, Restricted Project
aprantl accepted D88592: [DebugInfo] Emit DBG_VALUE_LIST from ISel.
Dec 10 2020, 8:49 AM · Restricted Project, debug-info
aprantl added inline comments to D91722: [DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands.
Dec 10 2020, 8:48 AM · debug-info, Restricted Project
aprantl accepted D92851: [DebugInfo][NFC] Refactor BinOp and GEP salvaging in salvageDebugInfoImpl out to separate functions.
Dec 10 2020, 8:42 AM · Restricted Project, debug-info
aprantl accepted D92759: [lldb] Introduce separate scratch ASTs for debug info types and types imported from C++ modules..

LGTM once all outstanding comments are addressed.

Dec 10 2020, 8:40 AM · Restricted Project

Dec 7 2020

aprantl accepted D92784: [lldb] Allow LLDB to automatically retry a failed expression with an import std C++ module.

Nice!

Dec 7 2020, 2:20 PM · Restricted Project

Dec 4 2020

aprantl accepted D90345: [DebugInfo] Fix ICE in DwarfCompileUnit::constructSubprogramScopeDIE.

I think this looks reasonable.

Dec 4 2020, 6:31 PM · Restricted Project
aprantl accepted D87147: PR-47391 : Two DIFile entries are describing the same file two different ways.
Dec 4 2020, 6:12 PM · Restricted Project, debug-info
aprantl accepted D90599: Fix a leak in `ASTUnit::LoadFromCommandLine()` wehn compiler invocation fails.
Dec 4 2020, 6:04 PM · Restricted Project, Restricted Project
aprantl accepted D92412: [DebugInfo] Add handling of stringLengthExp operand of DIStringType.

lgtm

Dec 4 2020, 11:41 AM · debug-info, Restricted Project

Dec 2 2020

aprantl added inline comments to D92412: [DebugInfo] Add handling of stringLengthExp operand of DIStringType.
Dec 2 2020, 5:57 PM · debug-info, Restricted Project
aprantl accepted D92452: [lldb] Treat remote macOS debugging like any other remote darwin platform.
Dec 2 2020, 4:05 PM · Restricted Project
aprantl added inline comments to D92452: [lldb] Treat remote macOS debugging like any other remote darwin platform.
Dec 2 2020, 3:20 PM · Restricted Project

Nov 20 2020

aprantl added a comment to D91423: [NFC][DebugInfo] Factor LowerDbgDeclare into two functions [1/3].

This is fine apart from some nitpicks inside.

Nov 20 2020, 5:22 PM · debug-info, Restricted Project
aprantl added a comment to D91722: [DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands.

This is nice!

Nov 20 2020, 5:13 PM · debug-info, Restricted Project
aprantl added a comment to D91742: [lldb] Add examples and reword source-map help string.

Thanks!

Nov 20 2020, 5:08 PM · Restricted Project

Nov 19 2020

aprantl added inline comments to D91647: [lldb][gmodules] Enable ExternalVisibleStorage for Decls from modules.
Nov 19 2020, 10:39 AM
aprantl accepted D91647: [lldb][gmodules] Enable ExternalVisibleStorage for Decls from modules.
Nov 19 2020, 10:39 AM

Nov 17 2020

aprantl added inline comments to D90020: [AArch64][SVE] Emit DWARF location expression for SVE stack objects..
Nov 17 2020, 6:09 PM · Restricted Project

Oct 30 2020

aprantl added a comment to D90433: [dwarfdump] Recognize __apple sections as debug info sections.

Should we add __swift_ast, too?

Oct 30 2020, 9:09 AM · Restricted Project
aprantl added a comment to D90433: [dwarfdump] Recognize __apple sections as debug info sections.

Nice!

Oct 30 2020, 9:09 AM · Restricted Project
aprantl accepted D90414: [lldb] Ignore binary data in crashlog.

Just FYI, we do have unit tests for the crashlog parser now, but I don't know how well this fits in there.

Oct 30 2020, 9:00 AM · Restricted Project

Oct 28 2020

aprantl closed D90323: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..

Landed in 0b2b50a5d2893af47466f191771d20c9993a1624

Oct 28 2020, 2:02 PM · Restricted Project
aprantl accepted D90323: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..

0b2b50a5d2893af47466f191771d20c9993a1624

Oct 28 2020, 2:02 PM · Restricted Project
aprantl committed rG0b2b50a5d289: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder. (authored by aprantl).
[DebugInfo] Expose Fortran array debug info attributes through DIBuilder.
Oct 28 2020, 1:13 PM
aprantl updated subscribers of D90323: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..

Duncan, did you intentionally add yourself as a blocking reviewer or is this perhaps a misconfigured Herald rule?

Oct 28 2020, 12:25 PM · Restricted Project
aprantl accepted D89218: [DebugInfo] Support for DW_TAG_generic_subrange.
Oct 28 2020, 9:24 AM · debug-info, Restricted Project

Oct 27 2020

aprantl accepted D88894: [DebugInfo][InstrRef][2/4] Interpret subregister substitutions during LiveDebugValues.
Oct 27 2020, 7:03 PM · Restricted Project
aprantl accepted D89462: [debuginfo-tests] [dexter] Add tests to check debug experience.
Oct 27 2020, 7:01 PM · Restricted Project, debug-info
aprantl added inline comments to D84113: [Debuginfo] (1/7) [DW_OP_implicit_pointer/second strategy] Support for DW_OP_LLVM_implicit_pointer.
Oct 27 2020, 7:00 PM · Restricted Project, debug-info
aprantl added a comment to D89218: [DebugInfo] Support for DW_TAG_generic_subrange.

Also, I'm sorry for being so slow at reviewing these days...

Oct 27 2020, 6:48 PM · debug-info, Restricted Project
aprantl added inline comments to D89218: [DebugInfo] Support for DW_TAG_generic_subrange.
Oct 27 2020, 6:47 PM · debug-info, Restricted Project
aprantl accepted D89838: [DebugInfo] Fix legacy ZExt emission when FromBits >= 64 (PR47927).
Oct 27 2020, 6:45 PM · Restricted Project
aprantl added a comment to D89845: Add the ability to extract the unwind rows from DWARF Call Frame Information..

Not an expert either, but at a high level this seems reasonable.

Oct 27 2020, 6:44 PM · Restricted Project

Oct 26 2020

aprantl committed rG5b3bf8b453b8: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder. (authored by aprantl).
[DebugInfo] Expose Fortran array debug info attributes through DIBuilder.
Oct 26 2020, 4:24 PM
aprantl closed D89817: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..
Oct 26 2020, 4:23 PM · Restricted Project
aprantl accepted D89817: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..
Oct 26 2020, 2:35 PM · Restricted Project
aprantl accepted D90079: Avoid unnecessary uses of `MDNode::getTemporary`, NFC.

The push_back(nullptr) reads weird to me, but it is an accurate reflection of what the IR will look like.

Oct 26 2020, 9:40 AM · Restricted Project, Restricted Project
aprantl accepted D90083: IR: Clarify ownership of ConstantDataSequentials, NFC.

This looks like a good simplification.

Oct 26 2020, 9:37 AM · Restricted Project
aprantl added inline comments to D89817: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..
Oct 26 2020, 9:31 AM · Restricted Project
aprantl added a comment to D89817: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..

We can do that, but then the debugger would need to work a bit harder in order to get a constant, doesn't it? I don't feel strongly either way. If you do want it done the way you prefer, please let me know and I will make the change.

Oct 26 2020, 9:28 AM · Restricted Project

Oct 23 2020

aprantl accepted D90001: [llvm/DebugInfo] Emit DW_OP_implicit_value when tuning for LLDB.
Oct 23 2020, 5:27 PM · debug-info, Restricted Project
aprantl added a comment to D90001: [llvm/DebugInfo] Emit DW_OP_implicit_value when tuning for LLDB.

Anyway, this LGTM with the tests fixed.

Oct 23 2020, 5:07 PM · debug-info, Restricted Project
aprantl added inline comments to D90001: [llvm/DebugInfo] Emit DW_OP_implicit_value when tuning for LLDB.
Oct 23 2020, 4:36 PM · debug-info, Restricted Project

Oct 22 2020

aprantl added a comment to D89817: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..

These can be DIExpression, ConstantAsMetadata, etc, so Metadata looks to be the right specificity (and the underlying 'get' function it calls types them as Metadata too).

Oct 22 2020, 10:38 AM · Restricted Project

Oct 21 2020

aprantl added a comment to D89842: [lldb/DWARF] Add support for DW_OP_implicit_value.

Perhaps the test fits in here https://github.com/llvm/llvm-project/blob/master/lldb/unittests/Expression/DWARFExpressionTest.cpp ?

Oct 21 2020, 4:31 PM · debug-info, Restricted Project

Oct 20 2020

aprantl added a comment to D89818: [Compile Time] Make it possible to skip redundant debuginst removal.

Is this an NFC patch? If not, can you please add a test case?

Oct 20 2020, 1:26 PM · Restricted Project
aprantl added a comment to D89817: [DebugInfo] Expose Fortran array debug info attributes through DIBuilder..

Can you also add a unit test for this?

Oct 20 2020, 1:23 PM · Restricted Project

Oct 16 2020

aprantl accepted D89208: [DebugInfo] Support for DWARF operator DW_OP_over.

Thanks!

Oct 16 2020, 1:36 PM · Restricted Project, debug-info
aprantl added a comment to D89218: [DebugInfo] Support for DW_TAG_generic_subrange.

Cab you remind me why we are allowing ConstantAsMetadata nodes at all instead of allowing only DIExpressions?

Oct 16 2020, 1:35 PM · debug-info, Restricted Project
aprantl added a comment to D89337: [DebugInfo][Docs] Document MIR language debug-info constructs.

Thanks!

Oct 16 2020, 1:32 PM · Restricted Project
aprantl added inline comments to D89444: [dsymutil] Fix handling of aliases to private external symbols.
Oct 16 2020, 1:29 PM · Restricted Project
aprantl added a comment to D44285: Fix computeSymbolSizes SEGFAULT on invalid file.

I'm not sure if I specifically can help here: The only change I committed (on behalf of the author) was this one, which tests the echo "0x1" > %t.input case.

Oct 16 2020, 1:26 PM · Restricted Project
aprantl closed D89351: Move initialization of Variable::m_loc_is_const_data into constructor (NFC).

landed in 9b1c06c0e84a9cc763e12b289becb5fc3c9d01ea

Oct 16 2020, 1:21 PM
aprantl added a comment to D89462: [debuginfo-tests] [dexter] Add tests to check debug experience.

This looks like a good start. What would you think about clang-formatting the tests using the LLVM style?

Oct 16 2020, 1:18 PM · Restricted Project, debug-info
aprantl committed rGcf245086518e: Add support for more OS types to AddClangModuleCompilationOptionsForSDKType() (authored by aprantl).
Add support for more OS types to AddClangModuleCompilationOptionsForSDKType()
Oct 16 2020, 11:44 AM
aprantl closed D89428: Add support for more OS types to AddClangModuleCompilationOptionsForSDKType().
Oct 16 2020, 11:43 AM · Restricted Project

Oct 15 2020

aprantl added inline comments to D89428: Add support for more OS types to AddClangModuleCompilationOptionsForSDKType().
Oct 15 2020, 3:28 PM · Restricted Project
aprantl updated the diff for D89428: Add support for more OS types to AddClangModuleCompilationOptionsForSDKType().

Address review feedback

Oct 15 2020, 1:28 PM · Restricted Project

Oct 14 2020

aprantl requested review of D89428: Add support for more OS types to AddClangModuleCompilationOptionsForSDKType().
Oct 14 2020, 2:33 PM · Restricted Project
aprantl committed rG0ff9116b3678: Register TargetCXXABI.def as a textual header (authored by aprantl).
Register TargetCXXABI.def as a textual header
Oct 14 2020, 2:21 PM

Oct 13 2020

aprantl committed rGf9586a3b3c28: Replace bool constants with named constants for improved readibility (NFC) (authored by aprantl).
Replace bool constants with named constants for improved readibility (NFC)
Oct 13 2020, 5:42 PM
aprantl added inline comments to D89351: Move initialization of Variable::m_loc_is_const_data into constructor (NFC).
Oct 13 2020, 5:41 PM
aprantl committed rG9b1c06c0e84a: Move initialization of Variable::m_loc_is_const_data into constructor (NFC) (authored by aprantl).
Move initialization of Variable::m_loc_is_const_data into constructor (NFC)
Oct 13 2020, 5:01 PM
aprantl requested review of D89351: Move initialization of Variable::m_loc_is_const_data into constructor (NFC).
Oct 13 2020, 4:58 PM