Page MenuHomePhabricator

volkan (Volkan Keles)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 30 2015, 12:54 PM (237 w, 4 d)

Recent Activity

Dec 18 2019

volkan accepted D69152: [gicombiner] Add GIMatchTree and use it for the code generation.

LGTM.

Dec 18 2019, 3:07 PM · Restricted Project

Dec 5 2019

volkan committed rGbfa3d260b823: [GlobalISel] Localizer: Allow targets not to run the pass conditionally (authored by volkan).
[GlobalISel] Localizer: Allow targets not to run the pass conditionally
Dec 5 2019, 11:11 AM
volkan closed D71038: [GlobalISel] Localizer: Allow targets not to run the pass conditionally.
Dec 5 2019, 11:11 AM · Restricted Project

Dec 4 2019

volkan created D71038: [GlobalISel] Localizer: Allow targets not to run the pass conditionally.
Dec 4 2019, 4:04 PM · Restricted Project

Dec 3 2019

volkan accepted D70922: [GlobalISel]: Allow targets to override how to widen constants during legalization.

LGTM with a nit.

Dec 3 2019, 9:56 AM · Restricted Project

Dec 2 2019

volkan updated the diff for D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
  • Removed XFAILs.
Dec 2 2019, 12:53 PM · Restricted Project
volkan added inline comments to D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
Dec 2 2019, 12:37 PM · Restricted Project
volkan committed rG3d02fa6da7d2: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy (authored by volkan).
[GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy
Dec 2 2019, 12:25 PM
volkan closed D70616: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy.
Dec 2 2019, 12:25 PM · Restricted Project

Nov 22 2019

volkan added inline comments to D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
Nov 22 2019, 3:20 PM · Restricted Project
volkan updated the diff for D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
  • Notify the observer when replacing registers.
Nov 22 2019, 3:20 PM · Restricted Project
volkan added a child revision for D70616: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy: D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
Nov 22 2019, 2:43 PM · Restricted Project
volkan added a parent revision for D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges: D70616: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy.
Nov 22 2019, 2:43 PM · Restricted Project
volkan updated the diff for D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
  • Added a function called canReplaceReg to share the code.
  • Added a function called replaceRegOrBuildCopy that tries to replace the registers if the constraints match, and builds a COPY otherwise.
Nov 22 2019, 2:35 PM · Restricted Project
volkan added inline comments to D70616: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy.
Nov 22 2019, 2:25 PM · Restricted Project
volkan updated the diff for D70616: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy.
  • Handle the cases where the registers don't have LLT.
Nov 22 2019, 2:16 PM · Restricted Project
volkan created D70616: [GlobalISel] CombinerHelper: Fix a bug in matchCombineCopy.
Nov 22 2019, 1:29 PM · Restricted Project
volkan added inline comments to D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
Nov 22 2019, 1:29 PM · Restricted Project
volkan added a comment to D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.

RegbankSelect doesn't track newly created instruction and I had to set reg bank manually. Here is the patch that sets regbank for newly created COPY instructions

.

Thanks, I'll update the patch.

Nov 22 2019, 11:02 AM · Restricted Project
volkan added a comment to D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.

RegbankSelect doesn't track newly created instruction and I had to set reg bank manually. Here is the patch that sets regbank for newly created COPY instructions

.

Nov 22 2019, 10:07 AM · Restricted Project

Nov 21 2019

volkan added a comment to D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.

@Petar.Avramovic Could you take a look at the failing Mips tests?

Nov 21 2019, 1:35 PM · Restricted Project
volkan created D70564: [GlobalISel] LegalizationArtifactCombiner: Fix a bug in tryCombineMerges.
Nov 21 2019, 1:35 PM · Restricted Project

Nov 15 2019

volkan accepted D69147: [gicombiner] Add support for arbitrary match data being passed from match to apply.

LGTM.

Nov 15 2019, 10:50 AM · Restricted Project
volkan accepted D69117: [gicombiner] Process the MatchDag such that every node is reachable from the roots.

LGTM with a couple of nits.

Nov 15 2019, 10:41 AM · Restricted Project
volkan accepted D69077: [gicombiner] Add the MatchDag structure and parse instruction DAG's from the input.

LGTM with a few nits.

Nov 15 2019, 10:23 AM · Restricted Project

Nov 5 2019

volkan accepted D69151: [gicombiner] Import tryCombineIndexedLoadStore().

LGTM.

Nov 5 2019, 8:44 PM · Restricted Project
volkan accepted D69645: [globalisel][docs] Add a section about debugging with the block extractor.

Thanks Daniel, LGTM.

Nov 5 2019, 11:52 AM · Restricted Project

Oct 28 2019

volkan accepted D69456: [globalisel][docs] Rewrite the pipeline overview.

LGTM with a nit.

Oct 28 2019, 2:37 PM · Restricted Project

Oct 16 2019

volkan accepted D68426: [gicombiner] Hoist pure C++ combine into the tablegen definition.

Thanks for explaining, LGTM.

Oct 16 2019, 4:04 PM · Restricted Project
volkan added inline comments to D68426: [gicombiner] Hoist pure C++ combine into the tablegen definition.
Oct 16 2019, 1:27 PM · Restricted Project
volkan accepted D68628: GlobalISel: Implement lower for G_SADDO/G_SSUBO.

LGTM.

Oct 16 2019, 12:59 PM
volkan added a reviewer for D68628: GlobalISel: Implement lower for G_SADDO/G_SSUBO: volkan.
Oct 16 2019, 12:59 PM

Oct 15 2019

volkan accepted D68438: [gicombiner] Add the run-time rule disable option.

LGTM.

Oct 15 2019, 5:54 PM · Restricted Project
volkan added inline comments to D68438: [gicombiner] Add the run-time rule disable option.
Oct 15 2019, 2:14 PM · Restricted Project

Oct 8 2019

volkan added a reviewer for D68479: GlobalISel: Implement fewerElementsVector for G_BUILD_VECTOR: volkan.
Oct 8 2019, 3:02 PM
volkan accepted D68479: GlobalISel: Implement fewerElementsVector for G_BUILD_VECTOR.

LGTM.

Oct 8 2019, 3:02 PM

Oct 2 2019

volkan added inline comments to D68288: [gicombiner] Add a CodeExpander to handle C++ fragments with variable expansion.
Oct 2 2019, 12:00 PM · Restricted Project
volkan accepted D68288: [gicombiner] Add a CodeExpander to handle C++ fragments with variable expansion.

LGTM.

Oct 2 2019, 11:58 AM · Restricted Project

Oct 1 2019

volkan accepted D68286: [gicombiner] Add the boring boilerplate for the declarative combiner.

LGTM with a nit.

Oct 1 2019, 11:58 AM · Restricted Project

Sep 13 2019

volkan added a reviewer for D67570: [GlobalISel] Fix insertion point of new instructions to be after PHIs: volkan.
Sep 13 2019, 2:21 PM · Restricted Project
volkan accepted D67570: [GlobalISel] Fix insertion point of new instructions to be after PHIs.

LGTM.

Sep 13 2019, 2:21 PM · Restricted Project

Aug 30 2019

volkan committed rL370538: Request commit access for volkan.
Request commit access for volkan
Aug 30 2019, 3:00 PM

Aug 23 2019

volkan committed rG277631e3b8dd: [GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new… (authored by volkan).
[GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new…
Aug 23 2019, 1:31 PM
volkan committed rL369805: [GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new….
[GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new…
Aug 23 2019, 1:31 PM
volkan closed D65894: [GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new artifacts.
Aug 23 2019, 1:31 PM · Restricted Project
volkan added a comment to D65894: [GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new artifacts.

@arsenm Could you take a look at the AMDGPU tests?

Aug 23 2019, 11:19 AM · Restricted Project
volkan updated the diff for D65894: [GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new artifacts.

Rebased.

Aug 23 2019, 11:19 AM · Restricted Project

Aug 20 2019

volkan added a comment to D61787: [GlobalISel Legalizer] Improve artifact combiner.

Hi Petar,

Aug 20 2019, 3:28 PM · Restricted Project

Aug 15 2019

volkan committed rG0ae6006bee0e: [GlobalISel] CSEMIRBuilder: Add support for G_GEP (authored by volkan).
[GlobalISel] CSEMIRBuilder: Add support for G_GEP
Aug 15 2019, 4:46 PM
volkan committed rL369070: [GlobalISel] CSEMIRBuilder: Add support for G_GEP.
[GlobalISel] CSEMIRBuilder: Add support for G_GEP
Aug 15 2019, 4:45 PM
volkan closed D66316: [GlobalISel] CSEMIRBuilder: Add support for G_GEP.
Aug 15 2019, 4:45 PM · Restricted Project
volkan updated the summary of D66316: [GlobalISel] CSEMIRBuilder: Add support for G_GEP.
Aug 15 2019, 3:41 PM · Restricted Project
volkan created D66316: [GlobalISel] CSEMIRBuilder: Add support for G_GEP.
Aug 15 2019, 3:15 PM · Restricted Project
volkan abandoned D66315: [GlobalISel] CSEMIRBuilder: Add support for G_GEP.
Aug 15 2019, 3:11 PM · Restricted Project
volkan created D66315: [GlobalISel] CSEMIRBuilder: Add support for G_GEP.
Aug 15 2019, 3:11 PM · Restricted Project

Aug 12 2019

volkan accepted D66039: [GlobalISel]: Fix a bug in KnownBits where we should have been using SizeInBits.

LGTM.

Aug 12 2019, 1:55 PM · Restricted Project

Aug 9 2019

volkan added a comment to D61787: [GlobalISel Legalizer] Improve artifact combiner.

In this case, moving %1 to AuxiliaryArtifactList doesn't make any difference because combining %9 will remove it anyway, even if it was in InstList. Since you already check the source registers before legalizing the artifacts, this shouldn't be a problem. What do you think?

Well in this example it is not a problem, but in more complicated case:
moving %1 to AuxiliaryArtifactList means that %1 will be legalized first if %9 failed to combine it away, %9 might be able to combine away the artifact that was produced during legalization of %1.

Aug 9 2019, 11:52 AM · Restricted Project

Aug 8 2019

volkan added a comment to D61787: [GlobalISel Legalizer] Improve artifact combiner.

@volkan Regarding D65894.
Here, artifacts that failed to combine are moved to RetryList and we retry to combine them. Once all of the MachineInstrs that define use operands of our artifact are processed (are not in any of the Observer Lists) we turn artifact into an instruction. This way we have more opportunities for combines. e.g. in /test/AMDGPU/GlobalISel/legalize-unmerge-values.mir , this patch catches G_MERGE/G_UNMERGE combine that D65894 cannot catch because those two are declared legal.
As for the other test changes in D65894, all of them are essentially here.
I also tried test/CodeGen/AArch64/GlobalISel/retry-artifact-combine.mir and got similar output, but with one less copy instr.
there are differences in test/CodeGen/AMDGPU/GlobalISel/legalize-{xor|and|or}.mir
D65894 managed to combine few more G_TRUNC + G_ANYEXT but in the end both patches crash on %0:_(<4 x s8>) = G_TRUNC %29:_(<4 x s32>), because order of combine attempts is different this patch crashed before attempting to combine mentioned G_TRUNC + G_ANYEXT.
Please check if I missed something the this patch does not cover compared to D65894.

See D65199 for more tests with output from -debug option.

Aug 8 2019, 9:08 PM · Restricted Project

Aug 7 2019

volkan created D65894: [GlobalISel] Legalizer: Retry combining illegal artifacts as long as there new artifacts.
Aug 7 2019, 10:52 AM · Restricted Project

Jun 19 2019

volkan committed rG61d7e35b22bd: Fix GlobalISel MachineVerifier tests. NFC. (authored by volkan).
Fix GlobalISel MachineVerifier tests. NFC.
Jun 19 2019, 11:16 AM
volkan committed rL363854: Fix GlobalISel MachineVerifier tests. NFC..
Fix GlobalISel MachineVerifier tests. NFC.
Jun 19 2019, 11:13 AM

Jun 17 2019

volkan committed rG689509edab4d: [test][AArch64] Relax the check line for G_BRJT in legalizer-info-validation.mir (authored by volkan).
[test][AArch64] Relax the check line for G_BRJT in legalizer-info-validation.mir
Jun 17 2019, 2:23 PM
volkan committed rL363621: [test][AArch64] Relax the check line for G_BRJT in legalizer-info-validation.mir.
[test][AArch64] Relax the check line for G_BRJT in legalizer-info-validation.mir
Jun 17 2019, 2:23 PM
volkan accepted D63405: GlobalISel: Don't lose fneg flags when lowering to fsub.

I think we should preserve the existing flags and be consistent with what we do in SDAGISel. LGTM.

Jun 17 2019, 11:23 AM

Jun 7 2019

volkan committed rG97204a6788a5: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen (authored by volkan).
[GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen
Jun 7 2019, 1:17 PM
volkan committed rL362834: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen.
[GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen
Jun 7 2019, 1:17 PM
volkan closed D63022: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen.
Jun 7 2019, 1:17 PM · Restricted Project
volkan updated the diff for D63022: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen.
Jun 7 2019, 1:04 PM · Restricted Project
volkan updated the diff for D63022: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen.

Merged the switch cases.

Jun 7 2019, 12:55 PM · Restricted Project
volkan updated the summary of D63022: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen.
Jun 7 2019, 12:46 PM · Restricted Project
volkan created D63022: [GlobalISel] IRTranslator: Translate the intrinsics ignored by CodeGen.
Jun 7 2019, 12:44 PM · Restricted Project

Apr 23 2019

volkan accepted D60973: [llvm-extract] Expose the group extraction feature of the BlockExtractor.

Thanks Quentin, LGTM.

Apr 23 2019, 11:25 AM · Restricted Project
volkan accepted D60971: [BlockExtractor] Expose a constructor for the group extraction.

LGTM

Apr 23 2019, 11:24 AM · Restricted Project
volkan accepted D60970: [BlockExtractor] Change the basic block separator from ',' to ';'.

LGTM

Apr 23 2019, 11:20 AM · Restricted Project

Apr 18 2019

volkan accepted D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.

LGTM, thanks Quentin. Could you please update the summary before pushing this?

Apr 18 2019, 10:14 AM · Restricted Project

Apr 16 2019

volkan added a comment to D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.

Hi Quentin,

Apr 16 2019, 11:15 AM · Restricted Project

Mar 11 2019

volkan accepted D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

LGTM.

Mar 11 2019, 1:23 PM · Restricted Project

Feb 12 2019

volkan added inline comments to D54468: [LoadStoreVectorizer] Fix infinite loop in reorder..
Feb 12 2019, 10:53 AM · Restricted Project

Jan 29 2019

volkan accepted D57109: GlobalISel: Implement fewerElementsVector for select.

LGTM with a few nits.

Jan 29 2019, 7:50 PM
volkan added a comment to D56969: GlobalISel: Try to make legalize rules more useful for vectors.

My preference here would be to have a separate set of mutations for vector elements, @dsanders @aditya_nandakumar what do you think?

What about having 3 versions for each of these? e.g. minScalar, minElement, minScalarOrElement?

Jan 29 2019, 4:37 PM

Jan 28 2019

volkan accepted D57360: [GlobalISel] Add IRTranslator support for @llvm.sqrt -> G_FSQRT.

LGTM

Jan 28 2019, 2:42 PM
volkan accepted D57359: [GlobalISel] Introduce a G_FSQRT generic instruction.

LGTM

Jan 28 2019, 2:42 PM
volkan added a reviewer for D57360: [GlobalISel] Add IRTranslator support for @llvm.sqrt -> G_FSQRT: volkan.
Jan 28 2019, 2:42 PM
volkan added a reviewer for D57359: [GlobalISel] Introduce a G_FSQRT generic instruction: volkan.
Jan 28 2019, 2:42 PM

Jan 23 2019

volkan added a comment to D57117: GlobalISel: Add helper to LLT to get a scalar or vector.

Could you add a test to unittests/CodeGen/LowLevelTypeTest.cpp?

Jan 23 2019, 1:47 PM

Jan 19 2019

volkan accepted D56956: GlobalISel: Add isPointer legality predicates.

LGTM.

Jan 19 2019, 2:47 PM

Jan 18 2019

volkan accepted D56862: GlobalISel: Implement widenScalar for basic FP ops.

LGTM.

Jan 18 2019, 11:34 AM

Jan 17 2019

volkan added a reviewer for D56835: GlobalISel: Make buildConstant handle vectors: volkan.
Jan 17 2019, 2:22 PM
volkan added inline comments to D56863: GlobalISel: Implement fewerElementsVector for basic FP ops.
Jan 17 2019, 12:02 PM
volkan accepted D56863: GlobalISel: Implement fewerElementsVector for basic FP ops.

LGTM.

Jan 17 2019, 12:02 PM
volkan added a reviewer for D56863: GlobalISel: Implement fewerElementsVector for basic FP ops: volkan.
Jan 17 2019, 12:02 PM

Dec 14 2018

volkan committed rL349200: [GlobalISel] LegalizerHelper: Implement fewerElementsVector for G_LOAD/G_STORE.
[GlobalISel] LegalizerHelper: Implement fewerElementsVector for G_LOAD/G_STORE
Dec 14 2018, 2:14 PM
volkan closed D53728: [GlobalISel] LegalizerHelper: Implement fewerElementsVector for G_LOAD/G_STORE.
Dec 14 2018, 2:14 PM
volkan updated the diff for D53728: [GlobalISel] LegalizerHelper: Implement fewerElementsVector for G_LOAD/G_STORE.
  • Replaced buildMerge with buildBuildVector/buildConcatVectors.
  • Updated the test to avoid generating G_CONCAT_VECTORS as it's not legal for v4s32/v2s64.
Dec 14 2018, 2:05 PM

Dec 10 2018

volkan added inline comments to D55294: [GISel]: Refactor MachineIRBuilder to allow passing additional parameters to build Instrs.
Dec 10 2018, 12:48 PM
volkan accepted D53629: [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes.

Thanks Amara, LGTM.

Dec 10 2018, 9:48 AM

Dec 5 2018

volkan accepted D54980: [NFC][GISel]: Provide an standard interface to observe changes across GISel passes.

LGTM.

Dec 5 2018, 11:31 AM

Nov 29 2018

volkan added inline comments to D53629: [GlobalISel] Restrict G_MERGE_VALUES capability and replace with new opcodes.
Nov 29 2018, 3:02 PM
volkan committed rL347893: [GlobalISel] LegalizationArtifactCombiner: Combine aext([asz]ext x) -> [asz]ext….
[GlobalISel] LegalizationArtifactCombiner: Combine aext([asz]ext x) -> [asz]ext…
Nov 29 2018, 10:22 AM
volkan closed D54174: [GlobalISel] LegalizationArtifactCombiner: Combine aext([asz]ext x) -> [asz]ext x.
Nov 29 2018, 10:22 AM