Page MenuHomePhabricator

pacxx (Michael Haidl)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 14 2017, 3:12 AM (119 w, 19 h)

Recent Activity

Feb 22 2018

pacxx updated the diff for D43547: [Indexing] Fixing inconsistencies between FUNCDNAME and generated code by improving ASTContext's API for MangleContext.

Refactored as suggested.

Feb 22 2018, 1:33 AM
pacxx planned changes to D43547: [Indexing] Fixing inconsistencies between FUNCDNAME and generated code by improving ASTContext's API for MangleContext.
Feb 22 2018, 12:54 AM

Feb 21 2018

pacxx created D43547: [Indexing] Fixing inconsistencies between FUNCDNAME and generated code by improving ASTContext's API for MangleContext.
Feb 21 2018, 1:12 AM

Feb 15 2018

pacxx added a comment to D43293: [SimplifyCFG] Don't remove preheaders when we need canonical loops..

Maybe we should introduce some annotation to loops that are in simple form. Passes like SimplifyCFG may honor this annotation and don't remove empty preheaders. Removing and recreating empty preheaders seems wrong.

Feb 15 2018, 10:27 PM
pacxx added a comment to D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

I enabled this opt for scalar values as sugested and have now additional 60 tests failing. The problem is, that for scalar values, this optimization does not only affect multiplication instructions but also address calculations. E.g., test/CodeGen/AArch64/machine-combiner-madd.ll fails because for the tested indexing in a load a madd instruction is expected but this optimization is not performed on the new generated instruction pattern which includes now a left shift and a subtraction.

Feb 15 2018, 5:32 AM

Feb 14 2018

pacxx added a comment to D43293: [SimplifyCFG] Don't remove preheaders when we need canonical loops..

I don't see any use of empty preheaders. Can you explain for which cases empty preheaders are important?

Feb 14 2018, 11:57 PM

Feb 2 2018

pacxx accepted D42691: [SimplifyCFG] Relax restriction for folding unconditional branches.

LGTM

Feb 2 2018, 3:16 AM

Jan 25 2018

pacxx added a comment to D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

@RKSimon sorry I hat a lot of work in the last months I hope to get back to this in the next two weeks

Jan 25 2018, 7:53 AM

Nov 6 2017

pacxx planned changes to D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

I will reevaluate enabling the patch for scalar types. At a first look with current llvm trunk the regression seemed to be gone and was possible not related to this patch.

Nov 6 2017, 9:51 PM

Oct 19 2017

pacxx updated the diff for D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

removed the reference as suggested

Oct 19 2017, 5:59 AM

Oct 1 2017

pacxx updated the diff for D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

diff with context

Oct 1 2017, 7:14 AM

Sep 29 2017

pacxx updated the diff for D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

Updated the style issues

Sep 29 2017, 6:19 AM

Sep 28 2017

pacxx added a comment to D38350: [X86][SSE] Added more tests for vector multiplications as utility for D37896.

please commit the patch, so we can go on with D37896

Sep 28 2017, 11:32 PM
pacxx updated the diff for D38350: [X86][SSE] Added more tests for vector multiplications as utility for D37896.

fixed wrong type in function names

Sep 28 2017, 7:40 AM
pacxx updated the diff for D38350: [X86][SSE] Added more tests for vector multiplications as utility for D37896.

Sorry somehow things messed up.

Sep 28 2017, 7:09 AM
pacxx planned changes to D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

I submitted the (old) code generation for vector-mul.ll in https://reviews.llvm.org/D38350

Sep 28 2017, 3:15 AM
pacxx created D38350: [X86][SSE] Added more tests for vector multiplications as utility for D37896.
Sep 28 2017, 3:12 AM

Sep 25 2017

pacxx updated the diff for D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

Updated version that transforms all proposed patterns for multiplications into shift patterns. Since the code got quite long it was moved to an own function in DAGCombiner. To avoid regressions with existing transformations, the patch currently only transforms multiplications of vector types.
To avoid problems with the Hexagon backend, the transformation is only performed iff the used vector type is a legal type for the backend.

Sep 25 2017, 5:02 AM

Sep 15 2017

pacxx planned changes to D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.

Hi Simon, I will update the patch as soon as it covers the new requirements and all tests pass.

Sep 15 2017, 8:40 AM
pacxx created D37896: [DAGCombine] Resolving PR34474 by transforming mul(x, 2^c +/- 1) -> sub/add(shl(x, c) x) for any type including vector types.
Sep 15 2017, 1:35 AM