dblaikie (David Blaikie)
User

Projects

User Details

User Since
Oct 8 2012, 9:19 AM (280 w, 2 d)

Recent Activity

Yesterday

dblaikie added a comment to D43505: [docs] Use literalinclude for most code in the Kaleidoscope tutorial to ensure the code always compiles and is up to date.

Another note/thought: It'd be great if, when including the whole file, there was some way to omit the snippet marker comments - but, on looking around at the Sphinx docs I don't see anything immediately obvious & figure there's nothing specifically to support that (I guess if someone cared a lot they could add new build rules that would strip the comments & produce some temporary files that could then be included when the whole source listing was desired).

Wed, Feb 21, 12:43 PM
dblaikie added a comment to D43505: [docs] Use literalinclude for most code in the Kaleidoscope tutorial to ensure the code always compiles and is up to date.

Love this!

Wed, Feb 21, 12:00 PM
dblaikie updated the summary of D41364: move UseDwarfRangesBaseAddressSpecifier to front end flag.
Wed, Feb 21, 8:19 AM
dblaikie added a comment to D41364: move UseDwarfRangesBaseAddressSpecifier to front end flag.

As for a name (& might be worth using it here for the MCOption too) - maybe just "DwarfRangesBase" (Not sure if a "Use" prefix is helpful/necessary?), with the intent of the flag being -fdwarf-ranges-base

Wed, Feb 21, 8:19 AM
dblaikie committed rC325692: Remove use of the 'gmlt' term from the -fsplit-dwarf-inlining flag description….
Remove use of the 'gmlt' term from the -fsplit-dwarf-inlining flag description…
Wed, Feb 21, 8:03 AM
dblaikie committed rL325692: Remove use of the 'gmlt' term from the -fsplit-dwarf-inlining flag description….
Remove use of the 'gmlt' term from the -fsplit-dwarf-inlining flag description…
Wed, Feb 21, 8:03 AM

Tue, Feb 20

dblaikie committed rL325612: [llvm-objdump] Use unique_ptr to simplify memory ownership.
[llvm-objdump] Use unique_ptr to simplify memory ownership
Tue, Feb 20, 10:53 AM
dblaikie added inline comments to D43324: WIP: [Utils] Salvage debug info of DCE'ed extractvalue instructions.
Tue, Feb 20, 10:42 AM · debug-info
dblaikie added a comment to D43390: [DEBUGINFO] Add support for emission of the inlined strings..

What's the motivation for this change? Do you have a platform that doesn't support debug_string?

Tue, Feb 20, 10:05 AM
dblaikie accepted D43152: [DWARFv5] Turn an assert into a diagnostic. .

Given the abundance of callers that know the call won't fail, perhaps it'd be appropriate to keep the original function name without Expected, then have a version of the function ('tryBlah') that returns Expected (& implement blah in terms of cantFail(tryBlah))

Tue, Feb 20, 8:46 AM · debug-info
dblaikie committed rL325594: PR36442: Correct description of -fsplit-dwarf-inlining.
PR36442: Correct description of -fsplit-dwarf-inlining
Tue, Feb 20, 8:38 AM
dblaikie committed rC325594: PR36442: Correct description of -fsplit-dwarf-inlining.
PR36442: Correct description of -fsplit-dwarf-inlining
Tue, Feb 20, 8:38 AM

Thu, Feb 15

dblaikie added a comment to D43366: [DWARF v5] Supporting verbose dumping of .dbg_rnglist entries.

Seems awkward/not ideal to compute the start/end, then reverse those computations to compute the values appropriate to print in verbose mode - probably better to keep the original values & compute the final values when needed/printing?

Thu, Feb 15, 6:22 PM
dblaikie added a comment to D42937: [DWARF] Make llvm-dwp handle DWARF v5 string offsets tables and indexed strings..

I'm still producing the dwo files from IR, I could turn those into assembly files as well, if that's preferable.

Thu, Feb 15, 2:10 PM

Wed, Feb 14

dblaikie added a comment to D42813: [Debug] Annotate compiler generated range-for loop variables..

Thanks @dblaikie! I renamed the test, and cleaned up per your suggestion. I originally regex'd the debug-info lines so that the test would verify that the names were artificial; however, being that we already match them as metadata earlier, it's not really that necessary; we are only testing name strings anyways. Thanks again for the suggestion.

Wed, Feb 14, 11:39 AM · debug-info
dblaikie accepted D42813: [Debug] Annotate compiler generated range-for loop variables..

Seems good, thanks :)

Wed, Feb 14, 10:58 AM · debug-info

Mon, Feb 12

dblaikie committed rL324981: Revert "Rewrite the cached map used for locating the most precise DIE among….
Revert "Rewrite the cached map used for locating the most precise DIE among…
Mon, Feb 12, 5:54 PM
dblaikie accepted D43067: Implement equal_range for the DWARF v5 accelerator table.

Also, if possible - the Entry dtor could be made non-virtual and protected in the base class, if these objects are never owned polymorphically, which it /looks/ like they aren't, but not entirely sure.

Mon, Feb 12, 10:30 AM

Sun, Feb 11

dblaikie added a comment to D43152: [DWARFv5] Turn an assert into a diagnostic. .

Not sure what you mean by "a non-syscall diagnostic"? (there's StringError if you want to just put a string rather than an error code)

Sun, Feb 11, 4:17 PM · debug-info

Fri, Feb 9

dblaikie committed rL324787: REQUIRES: shell a couple of tests that require the shell.
REQUIRES: shell a couple of tests that require the shell
Fri, Feb 9, 4:18 PM
dblaikie added a comment to D42937: [DWARF] Make llvm-dwp handle DWARF v5 string offsets tables and indexed strings..

Curious combination of tests - some assembly, some IR. I think I made the existing test cases all checked in binaries.

Fri, Feb 9, 3:25 PM
dblaikie committed rL324740: Pre-emptively fix test case for windows path separators.
Pre-emptively fix test case for windows path separators
Fri, Feb 9, 7:43 AM
dblaikie committed rL324738: Remove some unnecessary REQUIRES: shell from a couple of llvm-symbolizer tests.
Remove some unnecessary REQUIRES: shell from a couple of llvm-symbolizer tests
Fri, Feb 9, 7:35 AM

Thu, Feb 8

dblaikie committed rL324702: DebugInfo/llvm-symbolizer: Test symbolizing Split DWARF without addresses in….
DebugInfo/llvm-symbolizer: Test symbolizing Split DWARF without addresses in…
Thu, Feb 8, 7:36 PM
dblaikie added a comment to D43092: [DebugInfo] Prevent infinite recursion for malformed DWARF.

Ideally/the original version of this, I think was non-recursive and only specifically looked for certain attributes in order and then stopped. I'd sort of rather than, because it's more constrained.

The original find() still exists, so I'd expect this variant only to be used where the recursive property is needed.

Thu, Feb 8, 4:27 PM · debug-info
dblaikie added a comment to D43092: [DebugInfo] Prevent infinite recursion for malformed DWARF.

I'm guessing this is insufficient for catching indirect recursion (DIE A refers to DIE B and B back to A)?

Thu, Feb 8, 3:44 PM · debug-info
dblaikie committed rL324643: Fix missing field initializer warning in TableGen SubtargetEmitter.
Fix missing field initializer warning in TableGen SubtargetEmitter
Thu, Feb 8, 11:59 AM
dblaikie added inline comments to D43067: Implement equal_range for the DWARF v5 accelerator table.
Thu, Feb 8, 10:10 AM

Wed, Feb 7

dblaikie added inline comments to D42937: [DWARF] Make llvm-dwp handle DWARF v5 string offsets tables and indexed strings..
Wed, Feb 7, 6:45 PM
dblaikie added a comment to D43002: Emit S_OBJNAME symbol in CodeView.

Adrian - what do you think about Reid's point regarding not changing the C API unless needed? I'm fairly OK with that, but not sure. Seems like it could be a surprising "gotcha" where someone thinks they're doing the right things to produce CodeView but they're missing this because the API isn't exposed/suggesting that usage.

Wed, Feb 7, 10:18 AM
dblaikie added a comment to D43002: Emit S_OBJNAME symbol in CodeView.

Does this need to be the name of an actual object file? Any idea how this should work in the case of LTO?

Wed, Feb 7, 9:05 AM

Mon, Feb 5

dblaikie accepted D42707: [DWARFv5] Emit .debug_line_str (in a non-DWO file).
Mon, Feb 5, 7:21 PM · debug-info
dblaikie added a comment to D42813: [Debug] Annotate compiler generated range-for loop variables..

Seems plausible - maybe walking the scopes to count the range-for loops would produce a better number, but would be slower. :/ Dunno.

Mon, Feb 5, 10:12 AM · debug-info

Fri, Feb 2

dblaikie accepted D42736: [DebugInfo] Improvements to representation of enumeration types (PR36168).

Few things that could tidy up the tests a bit, but otherwise looks good :)

Fri, Feb 2, 5:17 PM
dblaikie accepted D42734: [DebugInfo] Improvements to representation of enumeration types (PR36168).

Looks good - thanks!

Fri, Feb 2, 5:12 PM

Thu, Feb 1

dblaikie committed rL324044: Remove non-modular header containing static utility functions.
Remove non-modular header containing static utility functions
Thu, Feb 1, 4:36 PM
dblaikie committed rL324040: Add missing includes.
Add missing includes
Thu, Feb 1, 4:13 PM
dblaikie committed rL324004: Coding Standards: Document library layering requirements & header isolation..
Coding Standards: Document library layering requirements & header isolation.
Thu, Feb 1, 1:05 PM
dblaikie closed D42771: Coding Standards: Document library layering requirements & header isolation..
Thu, Feb 1, 1:05 PM
dblaikie accepted D42481: [DebugInfo] Add basic support for DWARF 5 .debug_rnglists dumping.

Looks good to me

Thu, Feb 1, 11:40 AM
dblaikie added inline comments to D42802: [DWARF] Regularize dumping strings from line tables..
Thu, Feb 1, 11:17 AM · debug-info
dblaikie added inline comments to D42736: [DebugInfo] Improvements to representation of enumeration types (PR36168).
Thu, Feb 1, 10:05 AM

Wed, Jan 31

dblaikie updated subscribers of D42771: Coding Standards: Document library layering requirements & header isolation..
Wed, Jan 31, 4:44 PM
dblaikie created D42771: Coding Standards: Document library layering requirements & header isolation..
Wed, Jan 31, 4:43 PM
dblaikie added inline comments to D42707: [DWARFv5] Emit .debug_line_str (in a non-DWO file).
Wed, Jan 31, 2:32 PM · debug-info
dblaikie added inline comments to D42736: [DebugInfo] Improvements to representation of enumeration types (PR36168).
Wed, Jan 31, 11:07 AM
dblaikie added inline comments to D42734: [DebugInfo] Improvements to representation of enumeration types (PR36168).
Wed, Jan 31, 10:56 AM
dblaikie added inline comments to D42740: Implement a case-folding version of DJB hash.
Wed, Jan 31, 10:47 AM
dblaikie added inline comments to D42481: [DebugInfo] Add basic support for DWARF 5 .debug_rnglists dumping.
Wed, Jan 31, 10:46 AM

Tue, Jan 30

dblaikie added inline comments to D42707: [DWARFv5] Emit .debug_line_str (in a non-DWO file).
Tue, Jan 30, 2:27 PM · debug-info

Mon, Jan 29

dblaikie added inline comments to D40199: [dwarfdump] Fix spurious verification errors for DW_AT_location attributes.
Mon, Jan 29, 11:22 AM · debug-info

Thu, Jan 25

dblaikie accepted D42021: [DWARF] v5 implementation of string offsets tables - producer side.

Sounds alright - thanks (:

Thu, Jan 25, 4:07 PM
dblaikie added a comment to D42481: [DebugInfo] Add basic support for DWARF 5 .debug_rnglists dumping.

I'm guessing several of these invalid tests could be in one file - only the "length too long" should need to be last in the list, right? ("length too short" is undetectable, isn't it? it'd just appear as though the remaining bytes outside the length were the next entry and that entry would be incorrect in some way (its length, version, etc))

The "length too short" test is not undetectable in this instance, because it leaves the .debug_rnglists without an end of list marker, which is invalid.

Thu, Jan 25, 3:06 PM
dblaikie added inline comments to D42082: Add DWARF for discriminated unions.
Thu, Jan 25, 2:51 PM · debug-info

Wed, Jan 24

dblaikie added a comment to D42481: [DebugInfo] Add basic support for DWARF 5 .debug_rnglists dumping.

I'm guessing several of these invalid tests could be in one file - only the "length too long" should need to be last in the list, right? ("length too short" is undetectable, isn't it? it'd just appear as though the remaining bytes outside the length were the next entry and that entry would be incorrect in some way (its length, version, etc))

Wed, Jan 24, 11:57 AM

Tue, Jan 23

dblaikie added inline comments to D42027: [Support][NFC] Improve isa implementation.
Tue, Jan 23, 1:46 PM
dblaikie updated subscribers of D42027: [Support][NFC] Improve isa implementation.
Tue, Jan 23, 1:46 PM

Jan 22 2018

dblaikie committed rL323167: NewPM: Improve/fix GCOV - which needs to run early in the pass pipeline..
NewPM: Improve/fix GCOV - which needs to run early in the pass pipeline.
Jan 22 2018, 5:27 PM
dblaikie committed rC323167: NewPM: Improve/fix GCOV - which needs to run early in the pass pipeline..
NewPM: Improve/fix GCOV - which needs to run early in the pass pipeline.
Jan 22 2018, 5:27 PM
dblaikie committed rL323166: NewPM: Add an extension point for the start of the pipeline..
NewPM: Add an extension point for the start of the pipeline.
Jan 22 2018, 5:27 PM

Jan 18 2018

dblaikie added inline comments to D42254: Add optional DICompileUnit to DIBuilder and make outlined debug info use that CU.
Jan 18 2018, 11:34 AM

Jan 16 2018

dblaikie added a comment to D42082: Add DWARF for discriminated unions.

So, to summarize the changes for myself/others, focusing on the changes to the metadata syntax/semantics (rather than the DIBuilder API changes - though they're equivalent):

Jan 16 2018, 10:09 AM · debug-info
dblaikie added a reviewer for D42082: Add DWARF for discriminated unions: dblaikie.
Jan 16 2018, 10:03 AM · debug-info

Jan 15 2018

dblaikie accepted D41666: Add a value_type to ArrayRef..

Test case? (maybe just a static_assert with std::is_same type trait or something in the unit test file)

Jan 15 2018, 12:03 PM
dblaikie added inline comments to D42021: [DWARF] v5 implementation of string offsets tables - producer side.
Jan 15 2018, 11:41 AM
dblaikie accepted D42056: [DebugInfo] Unify dumping of address ranges.

Looks good to me

Jan 15 2018, 10:51 AM · debug-info

Jan 10 2018

dblaikie accepted D41916: SmallVector: fix use-after-poison MSAN error in destructor.

Thanks for CCing me Matt - but yeah, this seems reasonable/makes sense to me!

Jan 10 2018, 2:55 PM

Jan 9 2018

dblaikie committed rL322127: ADT: Add a range-based version of std::copy.
ADT: Add a range-based version of std::copy
Jan 9 2018, 2:15 PM
dblaikie committed rC322126: Wire up GCOV to the new pass manager.
Wire up GCOV to the new pass manager
Jan 9 2018, 2:05 PM
dblaikie committed rL322126: Wire up GCOV to the new pass manager.
Wire up GCOV to the new pass manager
Jan 9 2018, 2:05 PM

Jan 8 2018

dblaikie requested changes to D41824: Remove use of private header in LLDB.

This looks like it's depending on implementation details of LLVM's libSupport (by redeclaring them locally). Best not to do that - can this code be changed to use the public interface of libSupport (the stuff in include/llvm/Support/Regex.h)? Or, if necessary, expand that interface to provide the necessary functionality explicitly in the header.

Jan 8 2018, 9:00 AM

Jan 5 2018

dblaikie added a reviewer for D41698: [DebugInfo] Enable debug information for C99 VLA types: dblaikie.
Jan 5 2018, 1:22 PM
dblaikie added a reviewer for D41697: [DebugInfo][Metadata] Add support for a DIExpression as 'count' field of DISubrange.: dblaikie.
Jan 5 2018, 1:21 PM
dblaikie added a reviewer for D41696: [DebugInfo] Emit DWARF reference for DIVariable 'count' in DISubrange: dblaikie.
Jan 5 2018, 1:21 PM
dblaikie added a reviewer for D41695: [Metadata] Extend 'count' field of DISubrange to take a metadata node: dblaikie.
Jan 5 2018, 1:21 PM

Jan 4 2018

dblaikie accepted D41739: Debug Info: Support DW_AT_calling_convention on composite types.

Fine by me - this'll also be necessary/useful for the upcoming trivial_abi attribute that's being proposed in clang, I think.

Jan 4 2018, 1:26 PM · debug-info
dblaikie accepted D40684: Use size_t, instead of unsigned, to represnt StringMapEntry length and alignment..

Sure, seems plausible

Jan 4 2018, 10:22 AM

Dec 22 2017

dblaikie accepted D41540: [Support] Add WritableMemoryBuffer::getNewMemBuffer.

Seems good to me

Dec 22 2017, 2:50 PM

Dec 20 2017

dblaikie committed rL321214: PR35705: Fix Chapter 9 example code for API changes to DIBuilder.
PR35705: Fix Chapter 9 example code for API changes to DIBuilder
Dec 20 2017, 11:37 AM

Dec 19 2017

dblaikie accepted D41387: Remove llvm::MemoryBuffer const_casts.

Seems good

Dec 19 2017, 10:53 AM
dblaikie added a comment to rL321064: [dwarfdump] Lookup needs to be an unsigned long long parameter..

Test case?

Dec 19 2017, 10:51 AM

Dec 18 2017

dblaikie accepted D40291: [Support] Add WritableMemoryBuffer class.

Good for me - addressing/removing the base class & type traits test before committing.

Dec 18 2017, 7:05 PM
dblaikie created D41357: WIP: Fix Diagnostic layering, moving diagnostics out of Basic.
Dec 18 2017, 9:00 AM

Dec 15 2017

dblaikie committed rL320893: Fix WebAssembly backend for some LLVM API changes.
Fix WebAssembly backend for some LLVM API changes
Dec 15 2017, 3:52 PM

Dec 14 2017

dblaikie committed rL320768: Remove a non-modular header (& inline it into its one use).
Remove a non-modular header (& inline it into its one use)
Dec 14 2017, 3:46 PM
dblaikie updated subscribers of D40894: [XRay][compiler-rt+llvm] Update XRay register stashing semantics.

Yeah, can't say I know much of anything about this. @echristo might, or might be able to point to someone who would be suitable.

Dec 14 2017, 1:07 PM
dblaikie accepted D40987: Rewrite the cached map used for locating the most precise DIE among inlined subroutines for a given address..

I'm pretty OK with this - haven't thought /deeeply/ about the algorithm from the code (more from the discussions we've had), mostly glossed over, looked at the code style, etc, seems plausible.

Dec 14 2017, 11:58 AM

Dec 7 2017

dblaikie added a comment to D40987: Rewrite the cached map used for locating the most precise DIE among inlined subroutines for a given address..

Code mostly looks plausible. Haven't quite understood the "ParentIntervals*" variables/processing.

Dec 7 2017, 3:57 PM

Dec 4 2017

dblaikie added a comment to D40747: [ThinLTO] Enable importing of aliases as copy of aliasee.

Just a quick note:

Dec 4 2017, 10:39 AM

Nov 29 2017

dblaikie accepted D40601: [XRay][clang] Introduce -fxray-always-emit-customevents.

Not totally clear to me why this feature is desirable, but assume you've got use cases/reasons :)

Nov 29 2017, 11:53 AM

Nov 27 2017

dblaikie committed rL319086: Rename MCTargetOptionsCommandFlags.h to .def as it is not a normal/modular….
Rename MCTargetOptionsCommandFlags.h to .def as it is not a normal/modular…
Nov 27 2017, 11:55 AM
dblaikie committed rL319084: Fix for file renaming in LLVM (CommandFlags.h -> CommandFlags.def).
Fix for file renaming in LLVM (CommandFlags.h -> CommandFlags.def)
Nov 27 2017, 11:54 AM
dblaikie committed rL319082: Rename CommandFlags.h -> CommandFlags.def.
Rename CommandFlags.h -> CommandFlags.def
Nov 27 2017, 11:44 AM
dblaikie committed rL319081: Fix -Werror build for signed/unsigned comparison with use of explicit unsigned….
Fix -Werror build for signed/unsigned comparison with use of explicit unsigned…
Nov 27 2017, 11:44 AM

Nov 25 2017

dblaikie added a comment to D40317: [llvm-dwarfdump] Display DW_AT_high_pc as absolute value.

Happy to hear from Adrian and Paul if this doesn't seem like the right direction - but can be handled post-commit too.

Just the change from getHighAndLow to getHigh, I think.

Nov 25 2017, 12:14 PM · debug-info
dblaikie accepted D40317: [llvm-dwarfdump] Display DW_AT_high_pc as absolute value.

Happy to hear from Adrian and Paul if this doesn't seem like the right direction - but can be handled post-commit too.

Nov 25 2017, 12:14 PM · debug-info
dblaikie committed rL318987: Remove dead code.
Remove dead code
Nov 25 2017, 12:06 PM

Nov 22 2017

dblaikie committed rL318887: Instrumentation.h: Remove dead/untested code for DFSan JIT support.
Instrumentation.h: Remove dead/untested code for DFSan JIT support
Nov 22 2017, 4:09 PM
dblaikie committed rL318880: MachONormalizedFile.h: Remove unimplemented function.
MachONormalizedFile.h: Remove unimplemented function
Nov 22 2017, 1:12 PM
dblaikie committed rL318879: wasm/OutputSegment.h: Include missing header.
wasm/OutputSegment.h: Include missing header
Nov 22 2017, 1:12 PM