Page MenuHomePhabricator

mattd (Matt Davis)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 16 2017, 6:22 PM (56 w, 5 d)

Recent Activity

Yesterday

mattd added a comment to D55039: [sema] Warn of mangling change if function parameters are noexcept..

Apart from the comments I think your patch LGTM, but I'll let someone else hav the final say.

Tue, Dec 18, 8:05 AM

Mon, Dec 17

mattd added a comment to D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..
  • Following some discussion of the RFC on the mailing list, this patch makes a few improvements:
  • Object files and executables are supported. This is accomplished by scanning the symbol table for mca_code_region_start and mca_code_region_end symbols.
  • This solution does not rely on target specific relocations.
  • Regions cannot be nested, so a start of region label/symbol must be followed by an end (this has always been the case).
  • Symbol names are encoded with the user's defined region number." That number is just for cosmetic purposes and is only helpful for the user, llvm-mca can make use of that number to annotate its analysis reports.
Mon, Dec 17, 8:24 PM
mattd updated the diff for D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..
  • Following some discussion of the RFC on the mailing list, this patch makes a few improvements:
  • Object files and executables are supported. This is accomplished by scanning the symbol table for mca_code_region_start and mca_code_region_end symbols.
  • This solution does not rely on target specific relocations.
  • Regions cannot be nested, so a start of region label/symbol must be followed by an end (this has always been the case).
  • Symbol names are encoded with the user's defined region number." That number is just for cosmetic purposes and is only helpful for the user, llvm-mca can make use of that number to annotate its analysis reports.
Mon, Dec 17, 8:23 PM
mattd updated the diff for D55803: [llvm-mca] Add an error handler for error from parseCodeRegions.
  • Added context
Mon, Dec 17, 8:15 PM
mattd created D55803: [llvm-mca] Add an error handler for error from parseCodeRegions.
Mon, Dec 17, 6:22 PM

Thu, Dec 13

mattd accepted D55557: [llvm-mca] Move llvm-mca library to llvm/lib/MCA..
Thu, Dec 13, 8:18 AM

Wed, Dec 12

mattd added inline comments to D55039: [sema] Warn of mangling change if function parameters are noexcept..
Wed, Dec 12, 11:24 AM
mattd added a comment to D55557: [llvm-mca] Move llvm-mca library to llvm/lib/MCA..

Thanks @courbet , these changes LGTM. I'd wait a day or two to see if anyone else has any feedback from the RFC on the mailinglist:
https://lists.llvm.org/pipermail/llvm-dev/2018-December/128435.html

Wed, Dec 12, 8:33 AM

Wed, Dec 5

mattd added a comment to D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..

Just pinging this patch and RFC to see if anyone else, aside from Andrea, has any feedback. The discussion on the RFC is here:
https://lists.llvm.org/pipermail/llvm-dev/2018-December/128218.html

Wed, Dec 5, 5:08 PM

Tue, Dec 4

mattd added inline comments to D55039: [sema] Warn of mangling change if function parameters are noexcept..
Tue, Dec 4, 9:48 AM

Mon, Dec 3

mattd updated the diff for D55039: [sema] Warn of mangling change if function parameters are noexcept..
  • Move the HasNoexcept lambda to its own static function.
  • Added an additional check in HasNoexcept to recursively check return values.
  • Modified the parameter check in Sema::CheckFunctionDeclaration to use llvm::any_of, all we need to know is if any of the parameters might have a mangling change.
  • Updated the test to include the example provided by @Rakete1111.
Mon, Dec 3, 4:51 PM
mattd accepted D53832: Make instrprof-set-dir-mode test tolerant of group ID.

@troyj, good catch! Thanks, and LGTM.

Mon, Dec 3, 10:55 AM

Thu, Nov 29

mattd added a comment to D55039: [sema] Warn of mangling change if function parameters are noexcept..

Thanks for the reviews and added example. I'll update the logic to account for the return type, and add @Rakete1111 's example to the existing test.

Thu, Nov 29, 3:07 PM

Wed, Nov 28

mattd created D55039: [sema] Warn of mangling change if function parameters are noexcept..
Wed, Nov 28, 5:08 PM
mattd accepted D54957: [llvm-mca][MC] Add the ability to declare which processor resources model load/store queues (PR36666)..

Thanks for answering my questions.

Wed, Nov 28, 11:17 AM
mattd accepted D55000: [llvm-mca] Return the total number of cycles from method Pipeline::run()..

LGTM!

Wed, Nov 28, 8:14 AM

Tue, Nov 27

mattd added inline comments to D54957: [llvm-mca][MC] Add the ability to declare which processor resources model load/store queues (PR36666)..
Tue, Nov 27, 10:50 AM
mattd added inline comments to D54957: [llvm-mca][MC] Add the ability to declare which processor resources model load/store queues (PR36666)..
Tue, Nov 27, 10:48 AM
mattd added a comment to D54957: [llvm-mca][MC] Add the ability to declare which processor resources model load/store queues (PR36666)..

LGTM, I'll let others weigh in. For the most part I think this patch is fine, as long as my questions do not point out any bugs.

Tue, Nov 27, 10:34 AM
mattd added inline comments to D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..
Tue, Nov 27, 8:38 AM

Mon, Nov 26

mattd updated the diff for D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..
  • Rebased this patch.
  • Added an additional IRVerifier check to generate a compiler error if a llvm-mca code region belongs to more than one basic-block (this was discussed in the llvm-dev mailing list thread).
Mon, Nov 26, 3:47 PM

Wed, Nov 21

mattd updated the summary of D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..
Wed, Nov 21, 8:49 AM

Nov 15 2018

mattd created D54603: [llvm-mca][RFC] Adding binary support to llvm-mca..
Nov 15 2018, 2:40 PM

Nov 8 2018

mattd committed rL346424: [llvm-mca] Partially revert r346417..
[llvm-mca] Partially revert r346417.
Nov 8 2018, 10:11 AM
mattd committed rL346417: [llvm-mca] Remove unneeded namespace qualifier. NFC..
[llvm-mca] Remove unneeded namespace qualifier. NFC.
Nov 8 2018, 9:36 AM
mattd accepted D54268: [llvm-mca] PR39261: Rename FetchStage to EntryStage..

LGTM.

Nov 8 2018, 9:30 AM

Nov 7 2018

mattd committed rL346344: [llvm-mca] Move the AssembleInput logic into its own class..
[llvm-mca] Move the AssembleInput logic into its own class.
Nov 7 2018, 11:24 AM
mattd closed D54179: [llvm-mca] Move the AssembleInput logic into its own class..
Nov 7 2018, 11:24 AM
mattd updated the diff for D54179: [llvm-mca] Move the AssembleInput logic into its own class..

Thanks for the reviews. I've updated the patch per the feedback given.

Nov 7 2018, 10:13 AM

Nov 6 2018

mattd added a comment to D54179: [llvm-mca] Move the AssembleInput logic into its own class..

I started thinking about another way of organizing this patch, to reduce all of the potential extra files. I can only really see two CodeRegion generators: one for ASM input, and the other for object file input... once we add the binary support. Perhaps, we just have a CodeRegionGenerator.{h,cpp} and put the generators for ASM and object files in those instead of having separate header/implementations for ASM and Object files. Just a thought.

Nov 6 2018, 10:03 PM
mattd created D54179: [llvm-mca] Move the AssembleInput logic into its own class..
Nov 6 2018, 1:12 PM

Nov 5 2018

mattd committed rL346146: [AST] Get aliased type info from an aliased TemplateSpecialization..
[AST] Get aliased type info from an aliased TemplateSpecialization.
Nov 5 2018, 9:28 AM
mattd committed rC346146: [AST] Get aliased type info from an aliased TemplateSpecialization..
[AST] Get aliased type info from an aliased TemplateSpecialization.
Nov 5 2018, 9:28 AM
mattd closed D54048: [AST] Get aliased type info from an aliased TemplateSpecialization..
Nov 5 2018, 9:27 AM

Nov 4 2018

mattd added a comment to D54048: [AST] Get aliased type info from an aliased TemplateSpecialization..

That looks a lot better, thanks. Did you check whether any other tests needed adjustment? That's not uncommon from this kind of desugaring change.

If not, LGTM.

Nov 4 2018, 10:20 AM

Nov 3 2018

mattd updated the diff for D54048: [AST] Get aliased type info from an aliased TemplateSpecialization..

Thanks for the review @rjmccall. I have moved the type-alias check into TemplateSpecializationType's desugar method. I like this solution better.

Nov 3 2018, 2:03 PM

Nov 2 2018

mattd created D54048: [AST] Get aliased type info from an aliased TemplateSpecialization..
Nov 2 2018, 2:11 PM

Nov 1 2018

mattd added inline comments to D53992: [DebugInfo] Correctly sink DBG_VALUEs in postra-machine-sink.
Nov 1 2018, 2:07 PM
mattd accepted D53976: [llvm-mca] Add extra counters for move elimination in view RegisterFileStatistics..

LGTM.

Nov 1 2018, 10:20 AM

Oct 31 2018

mattd committed rL345750: [llvm-mca] Remove the verb 'assemble' from a few options in help. NFC..
[llvm-mca] Remove the verb 'assemble' from a few options in help. NFC.
Oct 31 2018, 10:50 AM

Oct 30 2018

mattd accepted D53880: [tblgen][PredicateExpander] Add the ability to describe more complex constraints on instruction operands..

LGTM! Nice change!

Oct 30 2018, 12:45 PM

Oct 24 2018

mattd committed rL345190: [llvm-mca] Replace InstRef::isValid with operator bool. NFC..
[llvm-mca] Replace InstRef::isValid with operator bool. NFC.
Oct 24 2018, 1:30 PM

Oct 23 2018

mattd accepted D53585: [llvm-mca] Improved error handling and error reporting from class InstrBuilder..
Oct 23 2018, 2:23 PM
mattd added a comment to D53585: [llvm-mca] Improved error handling and error reporting from class InstrBuilder..

LGTM. I have a few comments inline, but the code looks nice.

Oct 23 2018, 2:23 PM

Oct 12 2018

mattd added inline comments to D53130: [DebugInfo][LCSSA] Rewrite pre-existing debug values outside loop.
Oct 12 2018, 9:08 AM

Oct 11 2018

mattd added a comment to D53134: [tblgen][llvm-mca] Add the ability to describe move elimination candidates via tablegen..

I've accepted the patch, but it would be good to get others feedback before landing this.

Oct 11 2018, 9:35 AM
mattd accepted D53134: [tblgen][llvm-mca] Add the ability to describe move elimination candidates via tablegen..

This LGTM! I didn't have much to say, your descriptions were clear, and from what I can tell the changes look good.

Oct 11 2018, 9:34 AM
mattd accepted D53130: [DebugInfo][LCSSA] Rewrite pre-existing debug values outside loop.
Oct 11 2018, 8:49 AM
mattd added a comment to D53130: [DebugInfo][LCSSA] Rewrite pre-existing debug values outside loop.

This LGTM.

Oct 11 2018, 8:46 AM

Oct 9 2018

mattd committed rL344073: [compiler-rt] Remove unused formal parameters from allocateOneNode. NFC..
[compiler-rt] Remove unused formal parameters from allocateOneNode. NFC.
Oct 9 2018, 1:12 PM
mattd committed rCRT344073: [compiler-rt] Remove unused formal parameters from allocateOneNode. NFC..
[compiler-rt] Remove unused formal parameters from allocateOneNode. NFC.
Oct 9 2018, 1:12 PM
mattd closed D52509: [compiler-rt] Remove unused formal parameters from allocateOneNode. NFC..
Oct 9 2018, 1:12 PM
mattd added a comment to D52509: [compiler-rt] Remove unused formal parameters from allocateOneNode. NFC..

Ping. I know it's a NFC, but I don't frequently contribute code in this area, so I just wanted another pair of eyes on this just to ensure that it's a good change.

Oct 9 2018, 12:00 PM

Oct 4 2018

mattd committed rL343823: [llvm-mca] Remove unused/stale forward decl. NFC..
[llvm-mca] Remove unused/stale forward decl. NFC.
Oct 4 2018, 3:19 PM

Oct 2 2018

mattd committed rL343621: [llvm-mca] Remove unecessary forward decls. NFC..
[llvm-mca] Remove unecessary forward decls. NFC.
Oct 2 2018, 12:44 PM
mattd committed rL343615: [llvm-mca] Constify the 'notify' routines. NFC..
[llvm-mca] Constify the 'notify' routines. NFC.
Oct 2 2018, 11:28 AM

Oct 1 2018

mattd added a comment to rL343549: [llvm-mca] Rename the 'Subtract' method to 'subtract'.

I forgot to mark this NFC.

Oct 1 2018, 4:07 PM
mattd committed rL343549: [llvm-mca] Rename the 'Subtract' method to 'subtract'.
[llvm-mca] Rename the 'Subtract' method to 'subtract'
Oct 1 2018, 4:05 PM

Sep 28 2018

mattd added inline comments to D52663: [X86][BtVer2] Teach how to identify zero-idio VPERM2F128rr instructions..
Sep 28 2018, 12:50 PM

Sep 25 2018

mattd created D52509: [compiler-rt] Remove unused formal parameters from allocateOneNode. NFC..
Sep 25 2018, 10:34 AM

Sep 17 2018

mattd added a comment to D52174: [TableGen][SubtargetEmitter] Add the ability for processor models to describe dependency breaking instructions..

I like this change. I have a few nits in the comments, but this looks good to me, caveat: I am not a tablegen expert.

Sep 17 2018, 10:46 AM

Sep 13 2018

mattd abandoned D49431: [llvm-mca][docs][WIP] Initial work on an internals/views mca doc. NFC.

Abandoning this change, it has gone stale.

Sep 13 2018, 9:23 AM

Sep 12 2018

mattd committed rL342068: [Diagnostic] Fix a warning typo. NFC..
[Diagnostic] Fix a warning typo. NFC.
Sep 12 2018, 11:28 AM
mattd committed rC342068: [Diagnostic] Fix a warning typo. NFC..
[Diagnostic] Fix a warning typo. NFC.
Sep 12 2018, 11:28 AM

Sep 11 2018

mattd committed rL341980: [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and….
[llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and…
Sep 11 2018, 11:49 AM
mattd closed D51903: [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and resource quantities..
Sep 11 2018, 11:49 AM
mattd updated the diff for D51903: [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and resource quantities..
  • Updated the ResourceCycles class description.
  • Moved that class into Support.h.
  • Removed an unused + operator.
Sep 11 2018, 9:47 AM

Sep 10 2018

mattd created D51903: [llvm-mca] Delay calculation of Cycles per Resources, separate the cycles and resource quantities..
Sep 10 2018, 6:12 PM

Sep 1 2018

mattd committed rL341281: [llvm-mca] Fix typo in debug output. NFC..
[llvm-mca] Fix typo in debug output. NFC.
Sep 1 2018, 11:35 AM

Aug 29 2018

mattd accepted D51430: [llvm-mca] Report the number of dispatched micro opcodes in the DispatchStatistics view..

LGTM.

Aug 29 2018, 10:39 AM
mattd abandoned D50745: [llvm-mca] Update the comments for the mca:::Stage class. NFC..

Abandoning this change, it is outdated.

Aug 29 2018, 7:50 AM

Aug 28 2018

mattd committed rL340888: [llvm-mca] Remove unused formal. NFC..
[llvm-mca] Remove unused formal. NFC.
Aug 28 2018, 5:42 PM
mattd committed rL340887: [llvm-mca] Move the initialization of Pipeline. NFC..
[llvm-mca] Move the initialization of Pipeline. NFC.
Aug 28 2018, 5:35 PM

Aug 27 2018

mattd committed rL340755: [llvm-mca] Introduce the llvm-mca library and organize the directory….
[llvm-mca] Introduce the llvm-mca library and organize the directory…
Aug 27 2018, 10:19 AM
mattd closed D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
Aug 27 2018, 10:19 AM
mattd committed rL340754: [llvm-mca] Remove unused method. NFC..
[llvm-mca] Remove unused method. NFC.
Aug 27 2018, 9:54 AM

Aug 24 2018

mattd updated the summary of D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
Aug 24 2018, 5:16 PM
mattd updated the diff for D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..

Rebased this diff after reorganizing the llvm-mca directory some.

Aug 24 2018, 5:07 PM
mattd committed rL340668: [llvm-mca] Move ResourceManager from Scheduler into its own file. NFC..
[llvm-mca] Move ResourceManager from Scheduler into its own file. NFC.
Aug 24 2018, 4:00 PM
mattd committed rL340661: [llvm-mca] Revert r340659. NFC..
[llvm-mca] Revert r340659. NFC.
Aug 24 2018, 3:06 PM
mattd committed rL340659: [llvm-mca] Move the ResourceManger from the Scheduler into its own file. NFC..
[llvm-mca] Move the ResourceManger from the Scheduler into its own file. NFC.
Aug 24 2018, 2:54 PM
mattd committed rL340645: [llvm-mca] Move views and stats into a Views subdir. NFC..
[llvm-mca] Move views and stats into a Views subdir. NFC.
Aug 24 2018, 1:26 PM
mattd updated the diff for D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
  • Move the Resource classes into their own file.
Aug 24 2018, 11:00 AM

Aug 23 2018

mattd committed rL340566: [llvm-mca] Set the Selection strategy to Default if nullptr is passed..
[llvm-mca] Set the Selection strategy to Default if nullptr is passed.
Aug 23 2018, 11:43 AM
mattd updated the diff for D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
  • Updated per comments from the last spin:
    • Moved CodeRegion out of the library.
    • Added Views and Stats directories to cleanup the layout (Views and Stats are not part of the library).
Aug 23 2018, 9:59 AM

Aug 22 2018

mattd committed rL340431: [llvm-mca] Clean up a comment about the Context class. NFC..
[llvm-mca] Clean up a comment about the Context class. NFC.
Aug 22 2018, 11:04 AM
mattd committed rL340422: [llvm-mca] Remove unused decl. NFC..
[llvm-mca] Remove unused decl. NFC.
Aug 22 2018, 10:16 AM

Aug 21 2018

mattd committed rL340316: [llvm-mca] Remove unused decl. NFC..
[llvm-mca] Remove unused decl. NFC.
Aug 21 2018, 11:40 AM
mattd accepted D51051: [llvm-mca] Add the ability to customize the instruction selection strategy in the Scheduler..

LGTM, we chatted about the index calculation offline. I am okay with that instruction age calculation.

Aug 21 2018, 11:09 AM

Aug 20 2018

mattd committed rL340227: [llvm-mca] Remove unused formal parameter. NFC..
[llvm-mca] Remove unused formal parameter. NFC.
Aug 20 2018, 3:42 PM
mattd added a comment to D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..

My opinion is that CodeRegion.h and CodeRegion.cpp should not be part of the library. Those files implement a class which is meant to be used by the llvm-mca driver only to mark regions of code. A different utility class/approach should be used when llvm-mca is used as a library.

Aug 20 2018, 9:44 AM

Aug 18 2018

mattd updated the diff for D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
  • Tossed in an LLVMBuild.txt for the library.
  • Added library dependencies to the cmake.
Aug 18 2018, 12:18 PM

Aug 17 2018

mattd added inline comments to D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
Aug 17 2018, 3:41 PM
mattd created D50929: [llvm-mca] Introduce the llvm-mca library and organize the directory accordingly. NFC..
Aug 17 2018, 3:38 PM
mattd committed rL340065: [llvm-mca] Reformat a few lines (fix spacing). NFC..
[llvm-mca] Reformat a few lines (fix spacing). NFC.
Aug 17 2018, 11:06 AM

Aug 16 2018

mattd added a comment to D50639: Change how finalizeBundle selects debug location for the BUNDLE instruction.

I like this change! Is there ever the case where there would be two different DILocations within a bundle? Perhaps that questions doesn't matter since bundles are treated as a single item.

Aug 16 2018, 3:35 PM
mattd accepted D50849: [llvm-mca] Refactor how execution is orchestrated by the Pipeline. NFCI.

Thanks!
LGTM (again)

Aug 16 2018, 11:13 AM
mattd added a comment to D50849: [llvm-mca] Refactor how execution is orchestrated by the Pipeline. NFCI.

I made a few comments, all just nits. This is a pretty substantial change in design, but better. LGTM. Thanks for this!

Aug 16 2018, 10:42 AM
mattd added a comment to D50410: Removing -debug-info-macros from option suggestions test.

@mattd thanks for confirming. I tried clang -cc1as -target x86_64-scei-ps4 -debug-info-macros and got suggestions.

@modocache @mattd Should we try to first land https://reviews.llvm.org/D50515 to see if it fails again?

Aug 16 2018, 9:48 AM
mattd added a comment to D50410: Removing -debug-info-macros from option suggestions test.

@mattd @Sunil_Srivastava if you have access to the PS4 SDK, could you tell if the -debug-info-macro command line clang option is available? Thank you

Aug 16 2018, 8:33 AM