Page MenuHomePhabricator

aschwaighofer (Arnold Schwaighofer)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 4 2013, 8:33 AM (302 w, 2 d)

Recent Activity

Dec 17 2018

aschwaighofer added a comment to D55421: FastISel: take care to update iterators when removing instructions..

LGTM

Dec 17 2018, 8:29 AM

May 17 2018

aschwaighofer accepted D46550: Support Swift calling convention for PPC64 targets.

Looks good.

May 17 2018, 9:30 AM

Aug 30 2017

aschwaighofer accepted D35835: [ARM] Use Swift error registers on non-Darwin targets.

LGTM.

Aug 30 2017, 12:01 PM

Jul 25 2017

aschwaighofer requested changes to D35835: [ARM] Use Swift error registers on non-Darwin targets.

The change looks good but can you add a test case to test/CodeGen/ARM/swifterror.ll that r8 is not spilled say for a target triple of 'armv7-linux-androideabi'. For example, the function params_and_return_in_reg should not spill r8 as part of CSR spilling.

Jul 25 2017, 8:15 AM

Jun 21 2017

aschwaighofer updated the diff for D34454: SwiftCC: Perform physical layout when computing coercion types.

Same patch bug with added diff context.

Jun 21 2017, 1:50 PM
aschwaighofer updated the diff for D34454: SwiftCC: Perform physical layout when computing coercion types.

Based on email conversation with John. He pointed out we purposely don't want to use the allocation size for the algorithm and that we can just use LLVM's layout when we compute the coercion types.

Jun 21 2017, 1:44 PM
aschwaighofer created D34454: SwiftCC: Perform physical layout when computing coercion types.
Jun 21 2017, 8:32 AM

May 20 2016

aschwaighofer added a comment to D20462: Functions with differing phis should not be merged..

LGTM

May 20 2016, 4:48 AM

Apr 14 2016

aschwaighofer added a comment to D19080: allow SSAUpdater to be used for Swift.

I don't see a reasonable way to write a unit test without either creating a stub IR or making the typedef typename Traits::PhiItT public and then just testing the presence.

Apr 14 2016, 11:48 AM
aschwaighofer added inline comments to D19080: allow SSAUpdater to be used for Swift.
Apr 14 2016, 10:01 AM

Nov 21 2015

aschwaighofer added a comment to D4583: don't transform splats of vector FP (PR20358).

This might penalize programs that don't traffic in denormals (most programs as I understand it). Did you measure the performance impact?

Nov 21 2015, 11:54 AM
aschwaighofer added a reviewer for D4583: don't transform splats of vector FP (PR20358): scanon.
Nov 21 2015, 11:53 AM

Nov 1 2015

aschwaighofer added inline comments to D14185: Extend SLP Vectorizer to deal with aggregates.
Nov 1 2015, 9:34 AM
aschwaighofer added a reviewer for D14185: Extend SLP Vectorizer to deal with aggregates: mzolotukhin.
Nov 1 2015, 9:34 AM

Sep 29 2015

aschwaighofer added a comment to D13278: [SLP] Add -slp-min-reg-size command line option..

Makes sense.

Sep 29 2015, 7:17 PM
aschwaighofer added a comment to D13277: [SLP] Don't vectorize loads of non-packed types (like i1, i2)..

Thank you.

Sep 29 2015, 7:14 PM

Aug 18 2015

aschwaighofer added a comment to D12107: Replace overflow check in loop vectorization with minimum loop iterations check.

This make sense to me.

Aug 18 2015, 11:01 AM
aschwaighofer added reviewers for D12107: Replace overflow check in loop vectorization with minimum loop iterations check: anemet, mzolotukhin.
Aug 18 2015, 11:01 AM

Jul 16 2015

aschwaighofer added a comment to D10161: [SCEV][LoopVectorize] Allow ScalarEvolution to make assumptions about overflows.

I think this change is orthogonal to improving SCEV for cases where we can prove no wrapping by looking at the IR. At the high level this change looks good to me (I have always wanted to have the ability for SCEV to gather assumptions needed to prove no wrapping) - and the examples demonstrate that there is a need. Silviu has addressed the issue of only generating the checks when needed.

Jul 16 2015, 10:17 AM

May 22 2015

aschwaighofer added a comment to D9923: Adjust the cost of vectorized SHL/SRL/SRA.

I share Simon's concerns. Please make sure that we still get a good estimate for kernels like (these are from the rdar mentioned in the commit).

May 22 2015, 7:13 AM

May 13 2015

aschwaighofer added a comment to D8831: New Loop Distribution pass.

This LGTM. Nice work!

May 13 2015, 3:26 PM

May 5 2015

aschwaighofer added inline comments to D9368: [LoopVectorize]Teach Loop Vectorizer about interleaved memory access.
May 5 2015, 2:48 PM

Apr 30 2015

aschwaighofer added a comment to D9382: llvm.noalias - don't prevent loop vectorization.

LGTM.

Apr 30 2015, 9:13 AM

Apr 22 2015

aschwaighofer added a comment to D9031: [getUnderlyingOjbects] Analyze loop PHIs further to remove false positives.

This LGTM though I think we should add an example to the documentation in the header similar to what is in the implementation.

Apr 22 2015, 3:16 PM

Feb 3 2015

aschwaighofer added a comment to D7385: [LV] Split off memcheck block really at the first check.

LGTM

Feb 3 2015, 12:06 PM

Jan 27 2015

aschwaighofer added inline comments to D7193: [LoopVectorize] Induction variables: support arbitrary constant step.
Jan 27 2015, 8:03 AM

Jan 21 2015

aschwaighofer added a comment to D7097: SLPVectorizer: add a second limit for the number of alias checks. .

LGTM

Jan 21 2015, 11:20 AM

Jan 15 2015

aschwaighofer added a comment to D6999: SLPVectorizer: limit the number of alias checks to reduce the runtime..

I think that this should be a global at the top of the file so that it is more visible to folks would want to experiment with thresholds.

Jan 15 2015, 8:00 AM

Jan 13 2015

aschwaighofer added a comment to D6951: SLPVectorizer: Cache results from memory alias checking..

I think the discussion about how and whether we should use a caching mechanism in AliasAnalysis should be separate. Some clients already have their own caching strategy (MemoryDependence has its own, for example) and might not want/need the overhead of a caching implementation ...

Jan 13 2015, 8:39 AM

Jan 7 2015

aschwaighofer added inline comments to D6677: [SLPVectorizer] Reorder operands of shufflevector if it can result in a vectorized code..
Jan 7 2015, 9:51 AM

Dec 4 2014

aschwaighofer added a comment to D6527: Using Masked Load / Store intrinsics in Loop Vectorizer.

Very nice! I only see minor fixes.

Dec 4 2014, 8:35 AM

Nov 18 2014

aschwaighofer added a comment to D6227: [SLPVectorization] Vectorize Reduction Chain feeding into a 'return' statement.

I don't think this should go behind a flag.

Nov 18 2014, 8:31 AM

Nov 12 2014

aschwaighofer added a comment to D6227: [SLPVectorization] Vectorize Reduction Chain feeding into a 'return' statement.

The code looks fine to me.

Nov 12 2014, 8:28 AM

Oct 30 2014

aschwaighofer added a comment to D6002: [SCEV] Improve Scalar Evolution's use of no {un,}signed wrap flags.

LGTM.

Oct 30 2014, 12:48 PM

Oct 21 2014

aschwaighofer added a comment to D5884: LTO: respect command-line options that disable vectorization..

LGTM.

Oct 21 2014, 11:55 AM

Sep 1 2014

aschwaighofer added a comment to D5138: add a convenience method to copy wrapping, exact, and fast-math flags (NFC).

LGTM.

Sep 1 2014, 9:26 AM

Aug 26 2014

aschwaighofer added a comment to D5066: Rename getMaximumUnrollFactor()..

I also thing it makes sense to rename this to interleave factor to point out the difference between interleaved unrolling vs concatenating unrolling. Interleaving is not necessarily tied to vectorization. The fact that we interleave in the vectorizer is just an artifact of our implementation. I think it should be getMaxInterleaveFactor(). We are not necessarily interleaving vector instructions.

Aug 26 2014, 12:00 PM

Aug 17 2014

aschwaighofer added a comment to D4913: Small refactor on VectorizerHint for deduplication.

Hi Renato,

Aug 17 2014, 10:58 AM · deleted

Jul 20 2014

aschwaighofer added a comment to D4599: Use AA in LoopVectorize.

Thanks Hal!

Jul 20 2014, 10:12 AM

Jul 9 2014

aschwaighofer added a comment to D4424: Fix for PR20059 (instcombine reorders shufflevector after instruction that may trap).

Your patch LGTM.

Jul 9 2014, 9:19 AM
aschwaighofer added a comment to D4424: Fix for PR20059 (instcombine reorders shufflevector after instruction that may trap).

We probably get NaN or some infinity - forget what I said.

Jul 9 2014, 9:14 AM
aschwaighofer added a comment to D4424: Fix for PR20059 (instcombine reorders shufflevector after instruction that may trap).

Actually, now I am not sure myself - does an floating point div trap on zero? :D

Jul 9 2014, 9:12 AM
aschwaighofer added a comment to D4424: Fix for PR20059 (instcombine reorders shufflevector after instruction that may trap).

I believe the optimization is safe for floating values that cannot trap.

Jul 9 2014, 9:10 AM

Jul 8 2014

aschwaighofer added a comment to D4342: Improve BasicAA CS-CS queries.

LGTM. Sorry for the delay.

Jul 8 2014, 8:34 AM

Jun 18 2014

aschwaighofer added inline comments to D4015: Add support to recognize non SIMD kind of parallelism in SLPVectorizer.
Jun 18 2014, 9:12 AM

Jun 17 2014

aschwaighofer added inline comments to D4015: Add support to recognize non SIMD kind of parallelism in SLPVectorizer.
Jun 17 2014, 8:59 AM

Jun 5 2014

aschwaighofer added a comment to D4015: Add support to recognize non SIMD kind of parallelism in SLPVectorizer.

Hi Karthik,

Jun 5 2014, 8:58 AM

May 29 2014

aschwaighofer added inline comments to D3937: Add support to vectorize ctlz,cttz and powi intrinsics in LoopVectorizer.

With those changes this LGTM.

May 29 2014, 1:06 PM

May 28 2014

aschwaighofer added inline comments to D3851: Add support to vectorize ctlz,cttz and powi intrinsics in SLPVectorizer.

With those little nitpicks fixed. LGTM.

May 28 2014, 12:20 PM

May 22 2014

aschwaighofer added inline comments to D3851: Add support to vectorize ctlz,cttz and powi intrinsics in SLPVectorizer.
May 22 2014, 9:39 AM

May 21 2014

aschwaighofer added a comment to D3800: Fix PR19657 : SLP vectorization doesn't combine scalar load to vector loads.

It is the relative depth of common uses.

May 21 2014, 4:51 PM

May 2 2014

aschwaighofer added a comment to D3580: Add Load Combine Pass.

There are four parts to the problem of widening chains when viewed from the SLP vectorizers perspective (staying in vector types):

May 2 2014, 9:31 AM