Page MenuHomePhabricator

resistor (Owen Anderson)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 10 2012, 11:19 PM (375 w, 5 d)

Recent Activity

Mon, Sep 2

resistor committed rL370687: Request commit access for resistor.
Request commit access for resistor
Mon, Sep 2, 3:08 PM

Mar 22 2019

resistor added a reviewer for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local.: mzolotukhin.
Mar 22 2019, 10:07 AM · Restricted Project

Mar 19 2019

resistor added inline comments to D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..
Mar 19 2019, 8:53 AM · Restricted Project

Mar 18 2019

resistor updated the diff for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..
Mar 18 2019, 1:53 PM · Restricted Project
resistor updated the diff for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..

Use static

Mar 18 2019, 1:52 PM · Restricted Project
resistor updated the diff for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..

Add static

Mar 18 2019, 1:52 PM · Restricted Project

Mar 16 2019

resistor updated the diff for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..

Remove unit test for ThreadLocal as well.

Mar 16 2019, 11:19 PM · Restricted Project

Mar 15 2019

resistor updated the diff for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..

Getting the repository right.

Mar 15 2019, 5:17 PM · Restricted Project
resistor changed the repository for D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local. from rG LLVM Github Monorepo to rL LLVM.
Mar 15 2019, 5:17 PM · Restricted Project
resistor created D59443: Remove the outdated ThreadLocal class in favor of C++ thread_local..
Mar 15 2019, 5:17 PM · Restricted Project

Feb 20 2019

resistor accepted D58462: Fixing NDEBUG typo in include/llvm/Support/raw_ostream.h.
Feb 20 2019, 10:14 AM · Restricted Project

May 9 2016

resistor added a comment to D20071: AMDGPU: Make some instructions convergent.

LGTM

Out of curiosity, what does making v_readlane/v_writelane convergent fix? I thought they were independent of control flow...

Now I'm not really sure about them. I was just thinking any of the instructions that do any kind of crosslane interactions would be convergent

May 9 2016, 10:54 PM

Apr 13 2016

resistor accepted D17559: AMDGPU: Implement canonicalize.

LGTM.

Apr 13 2016, 9:41 AM

Apr 8 2016

resistor added a comment to D18874: InstCombine optimization to convert floating-point sign bit XORs to fsubs from -0.0.

I'm nervous about this change. The input code is denorm preserving on architectures that flush denorms, but the output may not be.

Apr 8 2016, 10:40 AM

Apr 7 2016

resistor added a comment to D18513: Simplify isfinite/isnan/isinf in finite-math-only mode.

I agree with Steve here. Even code that is built with -ffast-math has to live in a reality where NaNs, Infs, etc. are sometimes generated by external function calls, provided as user input, etc. It's critical that this code be able to filter out these invalid values, precisely because the body of the code will be optimized on the assumption that those values did not need to be considered.

Apr 7 2016, 11:03 AM

Apr 1 2016

resistor added a comment to D18670: LoopUnroll: some small fixes/tweaks to make it more useful for partial unrolling.

It feels wrong to bloat the commandline options like this, I guess

Apr 1 2016, 3:40 PM
resistor added a comment to D18670: LoopUnroll: some small fixes/tweaks to make it more useful for partial unrolling.

But now in LLVM trunk there is no way to make FullUnrollMaxCount 6. Right?
To make FullUnrollMaxCount introduction reasonable there should be a path in LLVM trunk where FullUnrollMaxCount can become something else than UINT_MAX. That will resolve the issue with test as well.

Apr 1 2016, 3:14 PM

Mar 29 2016

resistor accepted D17223: LegalizeDAG: Don't replace vector store with integer if not legal.

LGTM

Mar 29 2016, 12:36 PM
resistor accepted D17222: LegalizeDAG: Don't replace vector load with integer unless legal.

LGTM

Mar 29 2016, 12:35 PM

Mar 21 2016

resistor added a comment to D17223: LegalizeDAG: Don't replace vector store with integer if not legal.

Needs doxygen comment.

Mar 21 2016, 11:03 AM
resistor added a comment to D17222: LegalizeDAG: Don't replace vector load with integer unless legal.

Code change is fine, but I would like to see a doxygen comment for scalarizeVectorLoad()

Mar 21 2016, 11:02 AM

Mar 1 2016

resistor added a comment to D17778: TypedError for recoverable error handling.

Hi Lang,

Mar 1 2016, 1:29 PM
resistor accepted D17205: DAGCombiner: Turn truncate of a bitcasted vector to an extract.

LGTM.

Mar 1 2016, 12:48 PM
resistor closed D17585: Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic..

r262376

Mar 1 2016, 11:41 AM
resistor committed rL262376: Fix an issue where fast math flags were dropped during scalarization..
Fix an issue where fast math flags were dropped during scalarization.
Mar 1 2016, 11:40 AM
resistor added a comment to D17585: Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic..

Ping?

Mar 1 2016, 9:58 AM

Feb 27 2016

resistor updated the diff for D17585: Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic..

Added new CreateWithCopiedFlags() on BinaryOperator.

Feb 27 2016, 10:32 PM

Feb 26 2016

resistor added inline comments to D17585: Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic..
Feb 26 2016, 11:05 AM
resistor added a reviewer for D17585: Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic.: arsenm.
Feb 26 2016, 9:43 AM

Feb 25 2016

resistor committed rL261934: More internal details of SROA pass to library visibility..
More internal details of SROA pass to library visibility.
Feb 25 2016, 3:39 PM
resistor closed D16486: Strip local symbols when using externalized debug info..
Feb 25 2016, 11:06 AM

Feb 24 2016

resistor retitled D17585: Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic. from to Fix failure of InstCombine to propagate fast math flags when scalarizing vector arithmetic..
Feb 24 2016, 4:09 PM

Feb 23 2016

resistor added inline comments to D17141: [ARM] Adding IEEE-754 SIMD detection to loop vectorizer.
Feb 23 2016, 11:54 AM

Feb 20 2016

resistor added a comment to D17430: [ifcnv] Add comment explaining why it's OK to duplicate convergent MIs in ifcnv..

Ok, I see what you're trying to get at, and I agree with your assessment that a it is removing a control dependence. Since it's specific to exactly the transform being applied, I think a little deeper explanation in the comment is merited.

Feb 20 2016, 9:01 PM

Feb 19 2016

resistor added a comment to D17430: [ifcnv] Add comment explaining why it's OK to duplicate convergent MIs in ifcnv..

I don't agree with the new comments. If conversion does not remove any dependencies. It just changes their expression from control flow to predication, but they're still control dependencies in that they gate execution.

Feb 19 2016, 4:02 PM

Feb 18 2016

resistor added a comment to D17429: Don't mark convergent instructions as trivially rematerializable..

I have convergent instructions that are essentially register->register arithmetic operations. I don't have any great dependence on them being rematerialized, but I wanted to point out that it's not inconceivable.

Feb 18 2016, 9:31 PM
resistor added a comment to D17430: [ifcnv] Add comment explaining why it's OK to duplicate convergent MIs in ifcnv..

If-conversion doesn't change the control dependencies of the MIs that it moves. It just changes the expression of the dependency from expression via branches to expression via predication. Either way, the execution of the convergent op is still gated by the same set of expressions. Hence, I don't think any change is needed here.

Feb 18 2016, 9:30 PM
resistor added a comment to D17430: [ifcnv] Add comment explaining why it's OK to duplicate convergent MIs in ifcnv..

Why is this needed?

Feb 18 2016, 9:11 PM
resistor added a comment to D17429: Don't mark convergent instructions as trivially rematerializable..

My targets have convergent instructions that are rematerializable.

Feb 18 2016, 8:20 PM

Feb 17 2016

resistor retitled D17347: Use LLVM_LIBRARY_VISIBILITY to prevent LLVM dynamic libraries from export symbols for SROA internals. from to Use LLVM_LIBRARY_VISIBILITY to prevent LLVM dynamic libraries from export symbols for SROA internals..
Feb 17 2016, 1:21 PM
resistor accepted D17340: SelectionDAG: Use correct addrspace when lowering memcpy.

LGTM.

Feb 17 2016, 10:13 AM

Feb 16 2016

resistor added a comment to D17304: Fix quadratic spill behavior?.

Do you have any suggestions on how a target might make a reasonable choice for the limit? Does the limit trend down as the size of the register file goes up?

Feb 16 2016, 1:57 PM

Feb 12 2016

resistor added a comment to D17141: [ARM] Adding IEEE-754 SIMD detection to loop vectorizer.

It *does* depend on the OS running underneath, and I'm providing an example right here. This is comparable to the fact that many implementations do not provide sNaN support.

I'm not sure I understand. Are you talking about Apple's implementation of the SIMD unit, or about the OS setting up some different flags?

AFAIK, you can't "turn on" IEEE compliance on NEON with hardware flags. So, if you accept non-IEEE-compliant code in Darwin (the OS?) becomes a platform decision, not a hardware requirement. This flag is about the hardware requirement.

Feb 12 2016, 12:16 PM
resistor added a comment to D17141: [ARM] Adding IEEE-754 SIMD detection to loop vectorizer.

That's not correct for all platforms. Darwin, for example, uses NEON for floating point even in non-fast-math mode. The platform is simply defined not to support subnormals.

Well, NEON denormal behaviour is independent of the OS running underneath, so this is the correct information. But it may not be the best decision for Darwin, and that's a separate story.

Feb 12 2016, 11:13 AM
resistor added a comment to D17141: [ARM] Adding IEEE-754 SIMD detection to loop vectorizer.

That's not correct for all platforms. Darwin, for example, uses NEON for floating point even in non-fast-math mode. The platform is simply defined not to support subnormals.

Feb 12 2016, 10:41 AM

Feb 10 2016

resistor added a comment to D17065: Defer CWD in MCContext lookup as late as possible..

That makes sense to me in principle, but I know nothing of why CWD is needed for (some form of?) DWARF generation at all.

Feb 10 2016, 10:42 AM

Feb 9 2016

resistor retitled D17065: Defer CWD in MCContext lookup as late as possible. from to Defer CWD in MCContext lookup as late as possible..
Feb 9 2016, 11:13 PM
resistor accepted D17017: SelectionDAG: Make Properties a field of SDPatternOperator.

LGTM.

Feb 9 2016, 9:49 PM
resistor accepted D17016: SelectionDAG: Make min/max commutative and associative.

LGTM.

Feb 9 2016, 9:48 PM

Feb 8 2016

resistor accepted D17012: Update document about convergent attribute..

LGTM.

Feb 8 2016, 9:04 PM

Jan 29 2016

resistor accepted D16740: [SelectionDAG] Eliminate exponential behavior in WalkChainUsers.

Functionality LGTM. I would add a comment at the use site of TokenFactorResult to point out that the walk is being memoized.

Jan 29 2016, 4:05 PM

Jan 22 2016

resistor committed rL258566: Strip local symbols when using externalized debug info..
Strip local symbols when using externalized debug info.
Jan 22 2016, 2:11 PM
resistor retitled D16486: Strip local symbols when using externalized debug info. from to Strip local symbols when using externalized debug info..
Jan 22 2016, 1:55 PM

Jan 10 2016

resistor updated subscribers of D15918: Fix ownership of FileManager in Tools.
Jan 10 2016, 11:43 PM
resistor retitled D16041: Change vfs::FileSystem to be managed with std::shared_ptr from to Change vfs::FileSystem to be managed with std::shared_ptr.
Jan 10 2016, 11:42 PM

Jan 9 2016

resistor added a comment to D15918: Fix ownership of FileManager in Tools.

I made an attempt to remove ownership from CompilerInstance, but ASTUnit has a massively complex relationship with FileManager, and foiled my attempt.

Jan 9 2016, 8:35 PM

Jan 7 2016

resistor added a comment to D15918: Fix ownership of FileManager in Tools.

I am not comfortable authoring a patch to do that, as I don't have a clear understanding of the clients involved, and have no means to verify its correctness.

Jan 7 2016, 9:50 AM

Jan 6 2016

resistor added a comment to D15918: Fix ownership of FileManager in Tools.

! In D15918#320308, @klimek wrote:

I understand - my question is, why not instead take away ownership from CompilerInstance?

Jan 6 2016, 10:19 AM
resistor added a comment to D15918: Fix ownership of FileManager in Tools.

Thx for fixing. What's the reason that the CompilerInstance wants ownership?

Jan 6 2016, 12:55 AM
resistor added reviewers for D15918: Fix ownership of FileManager in Tools: klimek, bkramer.
Jan 6 2016, 12:51 AM
resistor updated D15918: Fix ownership of FileManager in Tools.
Jan 6 2016, 12:50 AM
resistor added a reviewer for D15918: Fix ownership of FileManager in Tools: chandlerc.
Jan 6 2016, 12:48 AM
resistor retitled D15918: Fix ownership of FileManager in Tools from to Fix ownership of FileManager in Tools.
Jan 6 2016, 12:48 AM

Dec 10 2015

resistor added a comment to D15348: [DAGCombiner] Handle pre/post-inc stores in replaceStoreChain.

Your proposed fix seems conservatively correct to me. I'd recommend getting a review from one of the ARM maintainers, perhaps tnorthover?

Dec 10 2015, 1:01 PM

Nov 20 2015

resistor committed rL253723: Fix another infinite loop in Reassociate caused by Constant::isZero()..
Fix another infinite loop in Reassociate caused by Constant::isZero().
Nov 20 2015, 2:37 PM
resistor committed rL253655: Fix a pair of issues that caused an infinite loop in reassociate..
Fix a pair of issues that caused an infinite loop in reassociate.
Nov 20 2015, 12:18 AM

Nov 16 2015

resistor committed rL253240: Add intermediate subtract instructions to reassociation worklist..
Add intermediate subtract instructions to reassociation worklist.
Nov 16 2015, 10:10 AM

Nov 12 2015

resistor added a comment to D12345: [Reassociate]: Add intermediate subtract instructions created while negating to be redone later for more reassociate opportunities.

The last status i saw was: "I'll try seeing what little needs to be done to
converge in the couple cases that I have (one above) and a superficial look
at why the second reassociate improves codegen."

I saw no update on that ;-)

Nov 12 2015, 11:55 PM
resistor added a comment to D12345: [Reassociate]: Add intermediate subtract instructions created while negating to be redone later for more reassociate opportunities.

Ping? Was there any further feedback on this? We're seeing pretty horrible regressions caused by this.

Nov 12 2015, 2:48 PM

Nov 10 2015

resistor accepted D14248: LegalizeDAG: Implement promote for scalar_to_vector.
Nov 10 2015, 10:19 AM
resistor added a comment to D14248: LegalizeDAG: Implement promote for scalar_to_vector.

Patch LGTM. Testcase?

Nov 10 2015, 10:18 AM
resistor accepted D14247: LegalizeDAG: Implement promote for insert_vector_elt.

Patch LGTM. Testcase?

Nov 10 2015, 10:18 AM
resistor accepted D14246: LegalizeDAG: Implement promote for extract_vector_elt.

Patch looks LGTM. Is it possible to provide a test case, maybe for AMDGPU?

Nov 10 2015, 10:18 AM

Oct 19 2015

resistor committed rL250726: Restore the original behavior of SelectionDAG::getTargetIndex()..
Restore the original behavior of SelectionDAG::getTargetIndex().
Oct 19 2015, 12:29 PM

Oct 9 2015

resistor committed rL249892: Generalize convergent check to handle invokes as well as calls..
Generalize convergent check to handle invokes as well as calls.
Oct 9 2015, 1:19 PM
resistor committed rL249873: Add iterator ranges for blocks in a Loop..
Add iterator ranges for blocks in a Loop.
Oct 9 2015, 11:42 AM
resistor committed rL249874: Teach LoopUnswitch not to perform non-trivial unswitching on loops containing….
Teach LoopUnswitch not to perform non-trivial unswitching on loops containing…
Oct 9 2015, 11:42 AM
resistor committed rL249865: Refine the definition of convergent to only disallow the addition of new….
Refine the definition of convergent to only disallow the addition of new…
Oct 9 2015, 11:08 AM

Sep 25 2015

resistor added a comment to D12567: SelectionDAGDumper: Print simple operands inline..

Fine with me.

Sep 25 2015, 3:04 PM

Sep 18 2015

resistor accepted D12569: SelectionDAGDumper: Leave out the <multiple use> markers.

LGTM.

Sep 18 2015, 10:49 AM
resistor accepted D12568: SelectionDAGDumper: Avoid unnecessary newlines.

LGTM.

Sep 18 2015, 10:49 AM
resistor accepted D12567: SelectionDAGDumper: Print simple operands inline..
Sep 18 2015, 10:48 AM
resistor accepted D12566: SelectionDAGDumper: Hide [ID=X], [ORD=X] and source locations by default..
Sep 18 2015, 10:48 AM
resistor added a comment to D12566: SelectionDAGDumper: Hide [ID=X], [ORD=X] and source locations by default..

LGTM.

Sep 18 2015, 10:48 AM
resistor added a comment to D12567: SelectionDAGDumper: Print simple operands inline..

LGTM.

Sep 18 2015, 10:47 AM

Sep 15 2015

resistor accepted D12564: SelectionDAG: Introduce PersistentID to SDNode for assert builds..

LGTM

Sep 15 2015, 2:15 PM

Sep 14 2015

resistor added a reviewer for D12863: [NaryReassociate] Add support for Mul instructions: jingyue.
Sep 14 2015, 8:24 PM

Sep 2 2015

resistor added a comment to D12565: SelectionDAGDumper: print datatypes behind node names.

Why?

Sep 2 2015, 11:05 AM

Aug 28 2015

resistor added a comment to D12246: [NVPTX] change threading intrinsics from noduplicate to convergent.

I don’t think the example code here is legal under any SPMD models I am aware of. It’s generally not legal to have barrier operations under divergent control flow, such as divergent trip-count loops.

Aug 28 2015, 3:41 PM

Aug 27 2015

resistor added a comment to D12246: [NVPTX] change threading intrinsics from noduplicate to convergent.

Would it be possible to split the JumpThreading change from the NVPTX change?

Aug 27 2015, 1:40 PM

Jul 11 2015

resistor committed rL241977: Define a new intrinsic @llvm.canonicalize..
Define a new intrinsic @llvm.canonicalize.
Jul 11 2015, 12:01 AM

Jul 10 2015

resistor accepted D10512: ComputeKnownBits: be a bit smarter about ADDs.

Patch LGTM. Can you file a PR for X86?

Jul 10 2015, 11:08 AM

Jun 30 2015

resistor added a reviewer for D10851: [TwoAddressInstructionPass] Try 3 Addr Conversion After Commuting: grosbach.
Jun 30 2015, 8:34 PM

Jun 27 2015

resistor added a comment to D10512: ComputeKnownBits: be a bit smarter about ADDs.

Is there any hope of fixing the regression on test/CodeGen/X86/win64_frame.ll?

Jun 27 2015, 9:25 PM

Jun 3 2015

resistor added a comment to D10173: Move the name pointer off of Value.

+llvm-commits as well

Jun 3 2015, 7:52 PM

Jun 1 2015

resistor closed D10173: Move the name pointer off of Value.

r238791

Jun 1 2015, 3:28 PM
resistor committed rL238791: Move the name pointer out of Value into a map that lives on the.
Move the name pointer out of Value into a map that lives on the
Jun 1 2015, 3:28 PM
resistor updated D10173: Move the name pointer off of Value.
Jun 1 2015, 3:00 PM
resistor retitled D10173: Move the name pointer off of Value from to Move the name pointer off of Value.
Jun 1 2015, 2:59 PM
resistor committed rL238763: Disable MachineSink on convergent operations, similar to how IR Sink is.
Disable MachineSink on convergent operations, similar to how IR Sink is
Jun 1 2015, 10:30 AM