Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Phabricator shutdown timeline

rcorcs (Rodrigo Caetano de Oliveira Rocha)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 23 2017, 2:06 PM (305 w, 5 d)

Recent Activity

Apr 7 2022

rcorcs updated the diff for D111912: New Pass for Merging Arbitrary Pair of Functions to Reduce Code Size.

I've fixed a bug when propagating a phi-node to both non-merged and merged users. The is stored into memory in the first valid insertion point of its parent block.
I also added a small test example to exercise this issue.

Apr 7 2022, 3:22 PM · Restricted Project, Restricted Project

Feb 17 2022

rcorcs updated rcorcs.
Feb 17 2022, 7:56 AM

Oct 25 2021

rcorcs updated the diff for D111912: New Pass for Merging Arbitrary Pair of Functions to Reduce Code Size.

Ignored clang-format changes to unrelated code.

Oct 25 2021, 9:00 AM · Restricted Project, Restricted Project

Oct 21 2021

rcorcs updated the diff for D111912: New Pass for Merging Arbitrary Pair of Functions to Reduce Code Size.

I had run clang-format on the new files. This updated diff also runs clang-format on the other files.

Oct 21 2021, 4:46 AM · Restricted Project, Restricted Project

Oct 16 2021

rcorcs updated the diff for D111912: New Pass for Merging Arbitrary Pair of Functions to Reduce Code Size.
Oct 16 2021, 10:03 AM · Restricted Project, Restricted Project
rcorcs added reviewers for D111912: New Pass for Merging Arbitrary Pair of Functions to Reduce Code Size: tobiasvk, tejohnson.
Oct 16 2021, 4:54 AM · Restricted Project, Restricted Project

Oct 15 2021

rcorcs requested review of D111912: New Pass for Merging Arbitrary Pair of Functions to Reduce Code Size.
Oct 15 2021, 3:58 PM · Restricted Project, Restricted Project

Aug 5 2020

rcorcs added a comment to D85331: [HotColdSplit] Add options for splitting cold functions in separate section.

Minor suggestions.

Aug 5 2020, 12:46 PM · Restricted Project

Jun 11 2020

rcorcs added a comment to D81223: Size LTO (1/3): Standardizing the use of OptimizationLevel .

The way I see it, with size level for LTO, we could have a different LTO optimization pipeline for size or runtime performance. For example, we could have a different tuning for inlining, vectorization, etc. We could also use the size level to automatically enable optimizations such as HotColdSplitting, MergeFunctions, etc., instead of relying on specific enabling flags. We could also have other size-specific optimizations in the future, such as MergeSimilarFunctions (https://reviews.llvm.org/D52896).

Jun 11 2020, 8:14 AM · Restricted Project, Restricted Project, lld, Restricted Project

Jun 5 2020

rcorcs added a comment to D81223: Size LTO (1/3): Standardizing the use of OptimizationLevel .

If reviewers think that this patch is touching in too many files, I could try to focus it only on the LTO related files, converting OptimizationLevel back to two separate values when necessary.

Jun 5 2020, 8:18 AM · Restricted Project, Restricted Project, lld, Restricted Project
rcorcs added a comment to D81223: Size LTO (1/3): Standardizing the use of OptimizationLevel .

LLVM already has the class PassBuilder::OptimizationLevel that encapsulates the logic of both speed and size optimization levels. This class already checks which values for SpeedLevel and SizeLevel are valid.

Jun 5 2020, 8:18 AM · Restricted Project, Restricted Project, lld, Restricted Project

Jun 4 2020

rcorcs created D81223: Size LTO (1/3): Standardizing the use of OptimizationLevel .
Jun 4 2020, 11:06 PM · Restricted Project, Restricted Project, lld, Restricted Project

Dec 7 2019

rcorcs updated the diff for D69963: Handling null AssumptionCache in simplifyCFG.

Addressed comments.

Dec 7 2019, 7:25 AM · Restricted Project

Nov 24 2019

rcorcs added a reviewer for D69963: Handling null AssumptionCache in simplifyCFG: fhahn.
Nov 24 2019, 11:50 AM · Restricted Project

Nov 7 2019

rcorcs updated the diff for D69963: Handling null AssumptionCache in simplifyCFG.

Simplified test case.

Nov 7 2019, 5:33 PM · Restricted Project
rcorcs updated the diff for D69963: Handling null AssumptionCache in simplifyCFG.

Added test case that exercises this issue.

Nov 7 2019, 4:55 PM · Restricted Project
rcorcs created D69963: Handling null AssumptionCache in simplifyCFG.
Nov 7 2019, 1:00 PM · Restricted Project

Oct 1 2019

rcorcs added a comment to D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..

Thanks everyone for your comments.

Oct 1 2019, 9:16 AM · Restricted Project
rcorcs updated the diff for D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..

Addressed @fhahn 's comment.
Indeed. That's much better.

Oct 1 2019, 6:17 AM · Restricted Project
rcorcs updated the diff for D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..

Addressed @fhahn 's comments.

Oct 1 2019, 4:37 AM · Restricted Project

Sep 30 2019

rcorcs updated the diff for D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..

This the same patch after running clang-format specifically to the llvm::removeUnreachableBlocks() function.

Sep 30 2019, 3:26 PM · Restricted Project
rcorcs added inline comments to D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..
Sep 30 2019, 10:13 AM · Restricted Project
rcorcs updated the diff for D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..

I have fused two loops. Now, for any execution path, only two loops over DeadBlockSet will be performed, instead of the previous worst-case of three loops.

Sep 30 2019, 10:10 AM · Restricted Project

Sep 29 2019

rcorcs created D68191: Simplify function llvm::removeUnreachableBlocks() to avoid (re-)computation..
Sep 29 2019, 4:06 AM · Restricted Project

Jun 28 2019

rcorcs added a comment to D63948: [SLP] Limit compilation time of look-ahead operand reordering heuristic..

Just a very minor thing.

Jun 28 2019, 4:57 PM · Restricted Project

Mar 19 2019

rcorcs added a comment to D59442: Enable Operand Reordering for Commutative Instructions in the FunctionComparator/MergeFunctions.

I understand your point of having a light-weight function merging (FM) to leave always on to reduce code-size/compilation-time.
I agree that perhaps we could have a parametrized merger that enables/disables more powerful comparisons.
That's why I also suggested that a more powerful merger (like my FM by Sequence Alignment) could be only enabled for heavier code-size optimizations (like -Oz) and have a light-weight FM always enabled (or enabled for most of the optimization settings).

Mar 19 2019, 12:04 PM · Restricted Project

Mar 15 2019

rcorcs added a comment to D59442: Enable Operand Reordering for Commutative Instructions in the FunctionComparator/MergeFunctions.

This example that I gave in my comment is a simplistic one that gets canonicalized.
However, this patch would handle more interesting examples as well. Such as the following one:

Mar 15 2019, 7:45 PM · Restricted Project
rcorcs created D59442: Enable Operand Reordering for Commutative Instructions in the FunctionComparator/MergeFunctions.
Mar 15 2019, 5:11 PM · Restricted Project

Nov 18 2018

rcorcs added a comment to D54669: [ProfileSummary] Standardize methods and fix comment..

Can someone please commit this patch for me because I believe I don't have commit access.
Thanks!

Nov 18 2018, 10:08 AM

Nov 17 2018

rcorcs created D54669: [ProfileSummary] Standardize methods and fix comment..
Nov 17 2018, 12:54 PM

Sep 24 2018

rcorcs updated the diff for D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

I've rebased to the patch and changed the name of the unit-test UnrollLoop.cpp to UnrollLoopTest.cpp, similar to the other files in the same folder.

Sep 24 2018, 11:48 AM

Sep 12 2018

rcorcs added a comment to D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

I'd like to confirm that someone can commit this patch for me because I believe I don't have commit access.

Sep 12 2018, 5:52 AM

Sep 5 2018

rcorcs updated the diff for D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

I've added the test requirement, as suggested.

Sep 5 2018, 5:15 PM
rcorcs updated the diff for D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

I've added the unit-test.

Sep 5 2018, 11:05 AM
rcorcs added a comment to D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

Thanks for the suggestion and the unit-test code. I'll add it to the patch.

Sep 5 2018, 5:40 AM

Sep 4 2018

rcorcs updated the diff for D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

I think that this patch is mainly important because these functions are externally visible in the library's API.
In fact, I experienced this problem when using the function llvm::UnrollRuntimeLoopRemainder in one of my own passes and then running it on SPEC2006.
This patch avoids unnecessarily making an implicit contract with the API's user.

Sep 4 2018, 7:58 PM

Aug 30 2018

rcorcs updated the diff for D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

I completely agree with your assessment.

Aug 30 2018, 5:35 PM
rcorcs added a comment to D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.

Sorry, I'll make sure to upload with a full context in the next time.

Aug 30 2018, 8:11 AM
rcorcs created D51486: Add check to Latch's terminator in UnrollRuntimeLoopRemainder.
Aug 30 2018, 6:17 AM

Aug 2 2018

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Fix of the sanitizer failure as suggested by @sfertile:
https://reviews.llvm.org/rL336000

Aug 2 2018, 6:35 AM · Restricted Project

Jul 31 2018

rcorcs added a comment to D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

I have fixed the bug that this patch was producing on Polly.
https://reviews.llvm.org/D49154

Jul 31 2018, 1:05 PM · Restricted Project

Jul 12 2018

rcorcs added a comment to D49154: Extend CFGPrinter and CallPrinter with Heat Colors: Polly changes.

It will need to be synchronised with the merge of the other patch.
Otherwise, the other patch would break Polly.

Jul 12 2018, 8:48 AM
rcorcs updated subscribers of D49154: Extend CFGPrinter and CallPrinter with Heat Colors: Polly changes.
Jul 12 2018, 8:45 AM

Jul 10 2018

rcorcs created D49154: Extend CFGPrinter and CallPrinter with Heat Colors: Polly changes.
Jul 10 2018, 2:32 PM
rcorcs added a comment to rL336000: Revert "Extend CFGPrinter and CallPrinter with Heat Colors".

I've fixed the graph printing in Polly.

Jul 10 2018, 5:50 AM

Jun 29 2018

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

I've just noticed that last time I uploaded the wrong diff.

Jun 29 2018, 7:32 AM · Restricted Project

Jun 26 2018

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Minor update to avoid conflict with the latest LLVM release.

Jun 26 2018, 9:24 AM · Restricted Project

Jan 19 2018

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

I kept the print functions as they were already present in the code and this change is not related to the heat colors.

Jan 19 2018, 6:47 AM · Restricted Project

Dec 4 2017

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Fix remaining code-style standards and option descriptions.

Dec 4 2017, 3:41 PM · Restricted Project
rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Fix small code-style standards.

Dec 4 2017, 3:33 PM · Restricted Project

Dec 2 2017

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Fixed function getNumOfCalls for both full and simplified visualization of the call-graph.

Dec 2 2017, 11:57 AM · Restricted Project

Dec 1 2017

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Updates the CFGPrinters to work on a per-module basis.

Dec 1 2017, 6:22 AM · Restricted Project

Nov 28 2017

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Changes regarding @davidxl comments.

Nov 28 2017, 7:36 AM · Restricted Project

Nov 24 2017

rcorcs updated the diff for D40425: Extending CFGPrinter and CallPrinter with Heat Colors.

Some code refactoring was performed, for example, replacing data structures from the C++ STL to equivalent one in LLVM ADT.

Nov 24 2017, 9:59 AM · Restricted Project
rcorcs created D40425: Extending CFGPrinter and CallPrinter with Heat Colors.
Nov 24 2017, 4:35 AM · Restricted Project
rcorcs abandoned D40403: Extending CFGPrinter and CallPrinter with Heat Colors.

Closed due to incorrect configuration.
Another revision will be opened with the correct configuration.

Nov 24 2017, 4:31 AM

Nov 23 2017

rcorcs created D40403: Extending CFGPrinter and CallPrinter with Heat Colors.
Nov 23 2017, 2:25 PM