Page MenuHomePhabricator

cuviper (Josh Stone)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 30 2018, 2:40 PM (116 w, 3 d)

Recent Activity

Thu, Oct 8

cuviper added a comment to D89034: [SystemZ] Use LA instead of AGR in eliminateFrameIndex()..

I applied this all the way back to my original issue and confirmed that the coreos-installer test now passes -- thanks!
(I'll wait for the final version of this patch before I actually submit this to LLVM builds for Rust/Fedora/etc.)

Thu, Oct 8, 12:32 PM · Restricted Project

Wed, Sep 23

cuviper added a comment to D87951: Enable opt-bisect for the new pass manager.

Hmm, thanks for those pointers. To combine opt-bisect from the two pass managers, maybe there can be an explicit call to copy stateful instrumentation? I think it helps that they are not interleaved, so we could do MPM.run(), then somehow SI.copy_to(CodeGenPasses), then CodeGenPasses.run(). I still need to read that thread too...

Wed, Sep 23, 10:17 AM · Restricted Project
cuviper updated the diff for D87951: Enable opt-bisect for the new pass manager.

Dropped Region from NPM opt-bisect

Wed, Sep 23, 10:09 AM · Restricted Project

Sep 18 2020

cuviper requested review of D87951: Enable opt-bisect for the new pass manager.
Sep 18 2020, 3:08 PM · Restricted Project

Aug 22 2020

cuviper added inline comments to D80197: [DebugInfo] Upgrade DISubrange to support Fortran dynamic arrays.
Aug 22 2020, 10:55 AM · Restricted Project, Restricted Project, debug-info
cuviper added a comment to D85691: lld: link libatomic if needed for Timer.

FWIW, I also tagged bug 47123 for release-11.0.0.

Aug 22 2020, 10:44 AM · Restricted Project

Aug 21 2020

cuviper committed rGb26b32b5d3b8: lld: link libatomic if needed for Timer (authored by cuviper).
lld: link libatomic if needed for Timer
Aug 21 2020, 5:48 PM
cuviper closed D85691: lld: link libatomic if needed for Timer.
Aug 21 2020, 5:48 PM · Restricted Project

Aug 17 2020

cuviper added a comment to D85691: lld: link libatomic if needed for Timer.

Oh, when LLDB uses this flag, they have LLDBStandalone.cmake with include(CheckAtomic).

And you were observing this in an lld standalone build? Because otherwise we have llvm/CMakeLists.txt -> llvm/cmake/config-ix.cmake -> llvm/cmake/modules/CheckAtomic.cmake. So yeah, you should probably make sure this is included somehow.

Aug 17 2020, 3:38 PM · Restricted Project
cuviper updated the diff for D85691: lld: link libatomic if needed for Timer.

include(CheckAtomic) for standalone builds

Aug 17 2020, 3:33 PM · Restricted Project

Aug 11 2020

cuviper added a comment to D85691: lld: link libatomic if needed for Timer.

Oh, when LLDB uses this flag, they have LLDBStandalone.cmake with include(CheckAtomic).

Aug 11 2020, 5:46 PM · Restricted Project
cuviper added a comment to D85691: lld: link libatomic if needed for Timer.

Well, I now have evidence that this may indeed try to link a nonexistent library -- a new Rust CI run failed on MSVC:

Aug 11 2020, 5:43 PM · Restricted Project

Aug 10 2020

cuviper added inline comments to D84419: Fix interaction between stack alignment and inline-asm stack clash protection.
Aug 10 2020, 4:54 PM · Restricted Project
cuviper added inline comments to D84419: Fix interaction between stack alignment and inline-asm stack clash protection.
Aug 10 2020, 4:49 PM · Restricted Project
cuviper added a comment to D85691: lld: link libatomic if needed for Timer.

@jfb You did see that this is only for NOT HAVE_CXX_ATOMICS64_WITHOUT_LIB, right? So I'm only adding that link (and hidden locking) for targets that can't do 64-bit atomics natively, otherwise you get link errors like this Rust CI failure on arm. This kind of conditional atomic link exists in several places in the monorepo already.

Aug 10 2020, 4:11 PM · Restricted Project
cuviper updated the diff for D85691: lld: link libatomic if needed for Timer.

More whitespace cleanup

Aug 10 2020, 3:43 PM · Restricted Project
cuviper added a comment to D85691: lld: link libatomic if needed for Timer.
In D85691#2208323, @jfb wrote:

You're probably better off putting the std::chrono::nanoseconds::rep behind a lock if it's not always lock free on all platforms. Some platforms just don't have libatomic, so this patch might cause other issues.

Aug 10 2020, 3:43 PM · Restricted Project
cuviper updated the diff for D85691: lld: link libatomic if needed for Timer.

Fixed indentation

Aug 10 2020, 3:25 PM · Restricted Project
cuviper requested review of D85691: lld: link libatomic if needed for Timer.
Aug 10 2020, 3:10 PM · Restricted Project

Jul 30 2020

cuviper added a comment to D84419: Fix interaction between stack alignment and inline-asm stack clash protection.

Can you add tests that show what this is intended to look like for alignments greater than the probe step size?

Jul 30 2020, 4:33 PM · Restricted Project

Jul 2 2020

cuviper accepted D82867: Fix tail allocation for large static alloca.

LGTM, and I confirmed that it works in a full rustc bootstrap, thanks!

Jul 2 2020, 3:41 PM · Restricted Project

Jun 30 2020

cuviper added inline comments to D82867: Fix tail allocation for large static alloca.
Jun 30 2020, 1:03 PM · Restricted Project
cuviper added inline comments to D82867: Fix tail allocation for large static alloca.
Jun 30 2020, 9:12 AM · Restricted Project

May 28 2020

cuviper added a comment to D80707: [legacyPM] Do not compute preserved analysis if there's no local change.

I applied this to the Rust fork to measure it in rust#72703, and here are the perf results. It looks like a reasonable gain -- no real effect on check/debug builds, but around 1% fewer instructions executed for optimized builds.

May 28 2020, 5:05 PM · Restricted Project

Apr 15 2020

cuviper committed rG5a0d8c31a327: [NFC] correct "thier" to "their" (authored by cuviper).
[NFC] correct "thier" to "their"
Apr 15 2020, 2:56 PM

Sep 5 2019

cuviper committed rL371118: Request commit access for cuviper.
Request commit access for cuviper
Sep 5 2019, 1:35 PM

Apr 23 2019

cuviper committed rG27924c3a3c67: [Lint] Permit aliasing noalias readonly arguments (authored by cuviper).
[Lint] Permit aliasing noalias readonly arguments
Apr 23 2019, 4:42 PM
cuviper committed rL359047: [Lint] Permit aliasing noalias readonly arguments.
[Lint] Permit aliasing noalias readonly arguments
Apr 23 2019, 4:42 PM
cuviper closed D60239: [Lint] Permit aliasing noalias readonly arguments.
Apr 23 2019, 4:42 PM · Restricted Project
cuviper added a comment to D60239: [Lint] Permit aliasing noalias readonly arguments.

Ping for review, please.

Apr 23 2019, 11:29 AM · Restricted Project

Apr 3 2019

cuviper created D60239: [Lint] Permit aliasing noalias readonly arguments.
Apr 3 2019, 4:19 PM · Restricted Project

Jan 22 2019

cuviper added a comment to D57070: [CodeView] Allow empty types in member functions.

I'll have to review that discussion of this pointers wrt Rust, since self can be different things, but it hasn't caused us problems yet AFAIK.

Jan 22 2019, 4:58 PM
cuviper committed rL351910: [CodeView] Allow empty types in member functions.
[CodeView] Allow empty types in member functions
Jan 22 2019, 4:54 PM
cuviper closed D57070: [CodeView] Allow empty types in member functions.
Jan 22 2019, 4:54 PM
cuviper added a comment to D57070: [CodeView] Allow empty types in member functions.

FWIW, here's more context for how I arrived at this:
https://github.com/rust-lang/rust/pull/57675#issuecomment-456210064

Jan 22 2019, 3:41 PM
cuviper created D57070: [CodeView] Allow empty types in member functions.
Jan 22 2019, 3:41 PM

Jan 15 2019

cuviper added inline comments to D56747: [EH] Rename llvm.x86.seh.recoverfp intrinsic to llvm.eh.recoverfp.
Jan 15 2019, 5:10 PM · Restricted Project

Sep 13 2018

cuviper added a comment to D51108: [PowerPC] Fix wrong ABI for i1 stack arguments on PPC32.

@glaubitz, I was specifically wondering if the author, @LionNatsu, would like to commit this on their own. I'm even more hesitant to intrude on your other review, where I wasn't involved at all.

Sep 13 2018, 12:18 PM
cuviper added a comment to D51108: [PowerPC] Fix wrong ABI for i1 stack arguments on PPC32.

Thank you all very much. It seems all reviewers have now approved the revision. When will it be landed, just by the way? Did it miss the merge window (if there is one)? 😄

Sep 13 2018, 11:40 AM

Sep 11 2018

cuviper committed rL341969: [GlobalISel] Lower dbg.declare into indirect DBG_VALUE.
[GlobalISel] Lower dbg.declare into indirect DBG_VALUE
Sep 11 2018, 10:57 AM
cuviper closed D51749: [GlobalISel] Lower dbg.declare into indirect DBG_VALUE.
Sep 11 2018, 10:57 AM
cuviper committed rL341966: Test commit: remove trailing whitespace.
Test commit: remove trailing whitespace
Sep 11 2018, 10:31 AM
cuviper added a comment to D51108: [PowerPC] Fix wrong ABI for i1 stack arguments on PPC32.

I don't think you need approval from all reviewers, as long as nobody actively disagrees. But FWIW, it looks good to me too.

Sep 11 2018, 9:22 AM

Sep 7 2018

cuviper updated the diff for D51749: [GlobalISel] Lower dbg.declare into indirect DBG_VALUE.
  • Removed the duplicate (and incorrect) declaration in debug-insts.ll debug_declare
  • Added debug-cpp.ll which more directly targets this change.
Sep 7 2018, 12:11 PM
cuviper added a comment to D51749: [GlobalISel] Lower dbg.declare into indirect DBG_VALUE.
In D51749#1226417, @rnk wrote:

I think this change could use a more direct test, consider starting with the IR generated for a C++ object, like:

struct NTCopy {
  NTCopy();
  NTCopy(const NTCopy &);
  int x;
};
int foo(NTCopy o) {
  return o.x;
}
Sep 7 2018, 11:39 AM

Sep 6 2018

cuviper updated the summary of D51749: [GlobalISel] Lower dbg.declare into indirect DBG_VALUE.
Sep 6 2018, 1:36 PM
cuviper created D51749: [GlobalISel] Lower dbg.declare into indirect DBG_VALUE.
Sep 6 2018, 1:32 PM

Aug 1 2018

cuviper abandoned D50018: SystemZ: keep AND masks before SHL i128.

Superseded by D50096.

Aug 1 2018, 11:42 AM

Jul 31 2018

cuviper added a comment to D50096: [SystemZ, TableGen] Fix shift count handling.

D50018 was spurred by failures in the Rust testsuite, and I've confirmed this patch also resolves those failures. Thanks!

Jul 31 2018, 4:45 PM

Jul 30 2018

cuviper added a comment to D50018: SystemZ: keep AND masks before SHL i128.

To be clear, this function actually combines SHL, SRA, SRL, and ROTL, so they should all be addressed accordingly. I only called out SHL because this was the particular one that bit me.

Jul 30 2018, 3:43 PM
cuviper created D50018: SystemZ: keep AND masks before SHL i128.
Jul 30 2018, 3:00 PM