davidxl (David Li)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 13 2015, 9:48 AM (175 w, 8 h)

Recent Activity

Today

davidxl added inline comments to D50591: [PGO] Control Height Reduction.
Mon, Aug 20, 10:12 AM

Fri, Aug 17

davidxl accepted D50881: [ThinLTO] Add option for printing import failure reasons.

lgtm

Fri, Aug 17, 9:20 AM
davidxl added inline comments to D50881: [ThinLTO] Add option for printing import failure reasons.
Fri, Aug 17, 8:47 AM

Thu, Aug 16

davidxl accepted D50867: [InstrProf] Use atomic profile counter updates for TSan.

lgtm

Thu, Aug 16, 3:22 PM
davidxl added inline comments to D50591: [PGO] Control Height Reduction.
Thu, Aug 16, 10:26 AM

Wed, Aug 15

davidxl accepted D50822: [BFI] Use rounding while computing profile counts..

lgtm

Wed, Aug 15, 5:13 PM

Tue, Aug 14

davidxl added inline comments to D50591: [PGO] Control Height Reduction.
Tue, Aug 14, 12:25 PM

Mon, Aug 13

davidxl added a comment to D50591: [PGO] Control Height Reduction.

The request for test case description also applies to other new test cases.

Mon, Aug 13, 10:13 AM

Thu, Jul 26

davidxl accepted D49882: [InstrProf] Use comdats on COFF for available_externally functions.

lgtm

Thu, Jul 26, 3:53 PM

Wed, Jul 25

davidxl committed rL337940: Add an option to specify the name of.
Add an option to specify the name of
Wed, Jul 25, 10:22 AM
davidxl closed D49447: Add an option to specify function name when view/print CFG.
Wed, Jul 25, 10:22 AM

Mon, Jul 23

davidxl accepted D49664: [profile] Fix finding the first and last directory separators on Windows..

lgtm

Mon, Jul 23, 10:24 PM
davidxl added a comment to D49447: Add an option to specify function name when view/print CFG.

ping.

Mon, Jul 23, 2:05 PM
davidxl added a comment to D49664: [profile] Fix finding the first and last directory separators on Windows..

Is it possible to add a test case?

Mon, Jul 23, 8:22 AM
davidxl accepted D49666: [profile] Fix a possible memory leak in parseFilenamePattern()..

lgtm

Mon, Jul 23, 8:19 AM

Jul 19 2018

davidxl requested changes to D49460: Flush counters before forking to avoid counting the execution before fork twice.

Adding dependency on libdl is not desirable. I think you also need to change codegen (when coverage is on) to lower call to fork into call to the gcov version.

Jul 19 2018, 3:17 PM
davidxl accepted D49529: [profile] Add interface to get profile filename.

lgtm

Jul 19 2018, 10:19 AM
davidxl accepted D49460: Flush counters before forking to avoid counting the execution before fork twice.

lgtm

Jul 19 2018, 10:16 AM
davidxl added inline comments to D49529: [profile] Add interface to get profile filename.
Jul 19 2018, 9:26 AM

Jul 18 2018

davidxl added inline comments to D49529: [profile] Add interface to get profile filename.
Jul 18 2018, 11:55 PM
davidxl added a comment to D49460: Flush counters before forking to avoid counting the execution before fork twice.

One of the real issues is that func1, fork, and func2 are in the same BB and share the same profile counter. The BB ending with fork should be split so that func2 's block has its own counter.

Jul 18 2018, 11:58 AM
davidxl added inline comments to D49460: Flush counters before forking to avoid counting the execution before fork twice.
Jul 18 2018, 11:52 AM

Jul 17 2018

davidxl created D49447: Add an option to specify function name when view/print CFG.
Jul 17 2018, 1:17 PM

Jul 13 2018

davidxl accepted D48670: [ThinLTO] Ensure we always select the same function copy to import.

lgtm

Jul 13 2018, 1:54 PM
davidxl added inline comments to D48307: [Inliner] Try to inline if some blocks in the callee have address taken, but not used in a meaningful..
Jul 13 2018, 11:43 AM

Jul 12 2018

davidxl added a reviewer for D39339: [CallGraph] Refine call graph for indirect calls with !callees metadata: eraman.
Jul 12 2018, 3:09 PM
davidxl added inline comments to D48670: [ThinLTO] Ensure we always select the same function copy to import.
Jul 12 2018, 11:46 AM

Jul 3 2018

davidxl accepted D48538: Make __gcov_flush flush counters for all shared libraries.

LGTM ( watch out any potential breakages)

Jul 3 2018, 8:54 PM
davidxl added inline comments to D48538: Make __gcov_flush flush counters for all shared libraries.
Jul 3 2018, 10:14 AM

Jul 2 2018

davidxl accepted D48698: [ThinLTO] Fix printing of module paths for distributed backend indexes.

lgtm

Jul 2 2018, 1:53 PM
davidxl added inline comments to D48538: Make __gcov_flush flush counters for all shared libraries.
Jul 2 2018, 12:30 PM
davidxl added inline comments to D48670: [ThinLTO] Ensure we always select the same function copy to import.
Jul 2 2018, 10:56 AM
davidxl added inline comments to D48698: [ThinLTO] Fix printing of module paths for distributed backend indexes.
Jul 2 2018, 10:55 AM
davidxl added inline comments to D48670: [ThinLTO] Ensure we always select the same function copy to import.
Jul 2 2018, 10:08 AM
davidxl added inline comments to D48670: [ThinLTO] Ensure we always select the same function copy to import.
Jul 2 2018, 9:44 AM
davidxl accepted D48699: [ThinLTO] Fix printing of aliases for distributed backend indexes.

lgtm

Jul 2 2018, 9:37 AM

Jun 29 2018

davidxl accepted D45454: Add llvm_gcov_flush to be called outside a shared library.

lgtm

Jun 29 2018, 2:33 PM
davidxl added inline comments to D45454: Add llvm_gcov_flush to be called outside a shared library.
Jun 29 2018, 2:25 PM
davidxl added a comment to D45454: Add llvm_gcov_flush to be called outside a shared library.

With the current gcov_flush implementation in LLVM, making gcov_flush's visibility to be default will simply lead to wrong behavior. GCC libgcov's implementation is more elaborate -- it allows gcov_flush to dump gcda data for all dynamic objects while making sure gcov_exit only dumps the gcda files from the same dynamic module (otherwise, there will be wrong profile merging). This is done via two levels of linked list.

Jun 29 2018, 11:34 AM

Jun 27 2018

davidxl accepted D48612: [ThinLTO] Print names in function import debug messages when available.

lgtm

Jun 27 2018, 10:36 AM

Jun 26 2018

davidxl added a comment to D48105: [llvm][Instrumentation] Add Call Graph Profile pass.

LGTM.

Jun 26 2018, 3:54 PM
davidxl added inline comments to D48105: [llvm][Instrumentation] Add Call Graph Profile pass.
Jun 26 2018, 3:36 PM
davidxl added a comment to D48612: [ThinLTO] Print names in function import debug messages when available.

Perhaps define a little helper function:

Jun 26 2018, 3:17 PM
davidxl added a comment to D45454: Add llvm_gcov_flush to be called outside a shared library.

GCC's behavior is not documented and it also has changed over the years.

Jun 26 2018, 2:42 PM

Jun 25 2018

davidxl added a comment to D48105: [llvm][Instrumentation] Add Call Graph Profile pass.

The interface to get indirect call target value profile is bool getValueProfDataFromInst. See how it is used in ICallPromotionAnalysis::getPromotionCandidatesForInstruction(..) method.

Jun 25 2018, 10:08 PM
davidxl added a comment to D48538: Make __gcov_flush flush counters for all shared libraries.

This change will cause each dynamic library to dump modules (gcda files) from other dynamic objects as well -- leading to wrong profile count merged.

Jun 25 2018, 11:51 AM

Jun 21 2018

davidxl added a comment to D48105: [llvm][Instrumentation] Add Call Graph Profile pass.

I am with Chandler here. Adding this pass to the legacy PM only will slow down the eventual migration to the new PM. It is better to do the new PM or both.

Jun 21 2018, 7:48 PM
davidxl added a comment to D48105: [llvm][Instrumentation] Add Call Graph Profile pass.

This patch totally fell out of my radar. I will take a closer look at it.

Jun 21 2018, 7:05 PM

May 30 2018

davidxl added inline comments to D47208: [profile] Support profiling runtime on Fuchsia.
May 30 2018, 11:00 PM

May 29 2018

davidxl removed a reviewer for D46662: [X86] condition branches folding for three-way conditional codes: davidxl.
May 29 2018, 1:56 PM

May 23 2018

davidxl accepted D47212: [profile] Rename InstrProfilingPlatform(Linux|Darwin).

lgtm

May 23 2018, 8:36 AM
davidxl accepted D47208: [profile] Support profiling runtime on Fuchsia.

lgtm

May 23 2018, 8:32 AM

May 22 2018

davidxl added inline comments to D47208: [profile] Support profiling runtime on Fuchsia.
May 22 2018, 11:34 AM

May 21 2018

davidxl updated subscribers of D47023: Limit the number of phis in intptr/ptrint folding .

This might work and existing test cases should be able to make sure the
behavior is not regressed.

May 21 2018, 8:42 AM

May 17 2018

davidxl added a comment to D47023: Limit the number of phis in intptr/ptrint folding .

My profile shows that with the 20000 phi case, the cycles are cut in half
with the limit.

May 17 2018, 1:13 PM
davidxl committed rL332653: Add a limit for phi folding instcombine.
Add a limit for phi folding instcombine
May 17 2018, 12:27 PM
davidxl closed D47023: Limit the number of phis in intptr/ptrint folding .
May 17 2018, 12:27 PM
davidxl added a comment to D47023: Limit the number of phis in intptr/ptrint folding .

Done. Added comment.

May 17 2018, 12:21 PM
davidxl created D47023: Limit the number of phis in intptr/ptrint folding .
May 17 2018, 12:06 PM

May 2 2018

davidxl added a comment to D46357: [GCOV] Emit the writeout function as nested loops of global data..

Can you add a new test case testing the new emitted code patterns?

May 2 2018, 8:36 AM

Apr 30 2018

davidxl accepted D46275: [JumpThreading] ComputeValueKnownInPredecessors only handles the case when phi is on lhs of a comparison op.

lgtm

Apr 30 2018, 11:12 AM

Apr 11 2018

davidxl added inline comments to D45377: [SampleFDO] Don't let inliner treat warm callsite with inline instance in the profile as cold.
Apr 11 2018, 9:35 AM
davidxl added a comment to D45454: Add llvm_gcov_flush to be called outside a shared library.

The behavior will change if the shared libraries are not 'dlopen'ed but loaded at program startup time.

Apr 11 2018, 9:09 AM

Apr 10 2018

davidxl added a comment to D45454: Add llvm_gcov_flush to be called outside a shared library.

With this change, gcov_flush will resolve to the copy in the main executable for each shared library -- this is not the desired the behavior.

Apr 10 2018, 8:52 AM

Mar 30 2018

davidxl accepted D44847: [profile] Fix value profile runtime merging issues.

lgtm

Mar 30 2018, 10:11 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 30 2018, 5:48 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 30 2018, 3:42 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 30 2018, 2:28 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 30 2018, 2:17 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 30 2018, 1:43 PM

Mar 27 2018

davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 27 2018, 2:45 PM

Mar 26 2018

davidxl accepted D44809: [PGO] Fix branch probability remarks assert.

lgtm

Mar 26 2018, 12:44 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 26 2018, 12:21 PM

Mar 24 2018

davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 24 2018, 9:39 AM

Mar 23 2018

davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 23 2018, 3:19 PM
davidxl added inline comments to D44847: [profile] Fix value profile runtime merging issues.
Mar 23 2018, 2:56 PM

Mar 21 2018

davidxl accepted D44717: [InstrProf] Support for external functions in text format..

lgtm

Mar 21 2018, 12:02 PM

Mar 20 2018

davidxl added inline comments to D44717: [InstrProf] Support for external functions in text format..
Mar 20 2018, 11:04 PM
davidxl added inline comments to D44717: [InstrProf] Support for external functions in text format..
Mar 20 2018, 10:03 PM
davidxl added inline comments to D44717: [InstrProf] Support for external functions in text format..
Mar 20 2018, 4:42 PM

Mar 19 2018

davidxl added a comment to D39869: [Inliner] Inline through indirect call sites having !callees metadata.

I added Easwaran to get a closer look at the change.

Mar 19 2018, 12:14 PM
davidxl added a reviewer for D39869: [Inliner] Inline through indirect call sites having !callees metadata: eraman.
Mar 19 2018, 12:13 PM

Mar 15 2018

davidxl added inline comments to D34796: upporting -f(no)-reorder-functions flag, clang side change.
Mar 15 2018, 9:54 AM

Mar 13 2018

davidxl accepted D43835: Simplify more cases of logical ops of masked icmps..

lgtm

Mar 13 2018, 1:11 PM
davidxl accepted D44127: DeadArgumentElim] Clone function level metadatas.

lgtm

Mar 13 2018, 12:12 PM
davidxl added inline comments to D43835: Simplify more cases of logical ops of masked icmps..
Mar 13 2018, 11:31 AM

Mar 12 2018

davidxl added inline comments to D43835: Simplify more cases of logical ops of masked icmps..
Mar 12 2018, 11:18 AM

Mar 9 2018

davidxl added inline comments to D43835: Simplify more cases of logical ops of masked icmps..
Mar 9 2018, 4:10 PM

Mar 8 2018

davidxl added inline comments to D43835: Simplify more cases of logical ops of masked icmps..
Mar 8 2018, 9:02 AM

Mar 5 2018

davidxl added a comment to D44127: DeadArgumentElim] Clone function level metadatas.

Also add an dead vararg elimination test case for better coverage.

Mar 5 2018, 4:55 PM

Mar 1 2018

davidxl added inline comments to D43835: Simplify more cases of logical ops of masked icmps..
Mar 1 2018, 11:08 AM

Feb 28 2018

davidxl accepted D43794: [InstrProfiling] Emit the runtime hook when no counters are lowered.

lgtm

Feb 28 2018, 8:33 AM

Feb 26 2018

davidxl added a comment to D43794: [InstrProfiling] Emit the runtime hook when no counters are lowered.

Can this be done under an option?

Feb 26 2018, 7:03 PM
davidxl added inline comments to D43256: [MBP] Move a latch block with conditional exit and multi predecessors to top of loop.
Feb 26 2018, 9:22 AM

Feb 23 2018

davidxl accepted D35804: [BPI] Detect branches in loops that make themselves not taken.

LGTM

Feb 23 2018, 9:08 AM

Feb 21 2018

davidxl accepted D43605: [SampleProf] NFC. Expose reusable functionality in SampleProfile..

lgtm

Feb 21 2018, 9:30 PM
davidxl accepted D43520: [ThinLTO] Represent relative BF using a scaled representation ..

LGTM

Feb 21 2018, 12:45 PM

Feb 20 2018

davidxl added inline comments to D43520: [ThinLTO] Represent relative BF using a scaled representation ..
Feb 20 2018, 9:30 PM
davidxl added inline comments to D43520: [ThinLTO] Represent relative BF using a scaled representation ..
Feb 20 2018, 1:20 PM

Feb 15 2018

davidxl added inline comments to D43256: [MBP] Move a latch block with conditional exit and multi predecessors to top of loop.
Feb 15 2018, 9:52 AM