Page MenuHomePhabricator

dfukalov (Daniil Fukalov)
Compiler Engineer at AMD

Projects

User does not belong to any projects.

User Details

User Since
Mar 27 2014, 8:40 AM (426 w, 1 d)

Recent Activity

Apr 8 2022

dfukalov accepted D122850: [AMDGPU] Fix regression with vectorization limiting.
Apr 8 2022, 5:00 PM · Restricted Project, Restricted Project

Apr 5 2022

dfukalov added a comment to D122850: [AMDGPU] Fix regression with vectorization limiting.

It seems to me Cost::RateFormula() form LSR is the only user that can be affected by the change. Would you please double-look the use case?

Apr 5 2022, 10:12 AM · Restricted Project, Restricted Project

Jan 19 2022

dfukalov published D117723: [NFCI] Move cost estimation from TargetLowering to TargetTransformInfo. for review.
Jan 19 2022, 2:10 PM · Restricted Project

Dec 22 2021

dfukalov committed rGa2120f6b4491: [NFC][AMDGPU][CostModel] Add tests for AMDGPU cost model, part 2. (authored by dfukalov).
[NFC][AMDGPU][CostModel] Add tests for AMDGPU cost model, part 2.
Dec 22 2021, 11:35 AM
dfukalov committed rGdeaedab14a2f: [NFC][AMDGPU][CostModel] Add tests for AMDGPU cost model. (authored by dfukalov).
[NFC][AMDGPU][CostModel] Add tests for AMDGPU cost model.
Dec 22 2021, 11:33 AM

Dec 17 2021

dfukalov added inline comments to D115927: [AA] Correctly maintain the sign of PartiaAlias offset.
Dec 17 2021, 6:59 AM · Restricted Project
dfukalov added inline comments to D115927: [AA] Correctly maintain the sign of PartiaAlias offset.
Dec 17 2021, 6:49 AM · Restricted Project

Dec 13 2021

dfukalov committed rGe5c64b45be39: [CostModel][AMDGPU] Fix intrinsics costs estimations. (authored by dfukalov).
[CostModel][AMDGPU] Fix intrinsics costs estimations.
Dec 13 2021, 6:18 AM
dfukalov closed D115385: [CostModel][AMDGPU] Fix intrinsics costs estimations..
Dec 13 2021, 6:17 AM · Restricted Project

Dec 10 2021

dfukalov updated the diff for D115385: [CostModel][AMDGPU] Fix intrinsics costs estimations..

Fixed SLOW/FAST misplacement in test

Dec 10 2021, 1:17 PM · Restricted Project
dfukalov updated the diff for D115385: [CostModel][AMDGPU] Fix intrinsics costs estimations..

Updated test as requested.

Dec 10 2021, 2:27 AM · Restricted Project

Dec 9 2021

dfukalov added inline comments to D115385: [CostModel][AMDGPU] Fix intrinsics costs estimations..
Dec 9 2021, 12:01 PM · Restricted Project
dfukalov added inline comments to D115283: [AMDGPU] Set "amdgpu_hostcall" module flag if an AMDGPU function has calls to device lib functions that use hostcalls..
Dec 9 2021, 11:56 AM · Restricted Project, Restricted Project

Dec 8 2021

dfukalov added inline comments to D115385: [CostModel][AMDGPU] Fix intrinsics costs estimations..
Dec 8 2021, 2:15 PM · Restricted Project
dfukalov requested review of D115385: [CostModel][AMDGPU] Fix intrinsics costs estimations..
Dec 8 2021, 12:57 PM · Restricted Project
dfukalov added inline comments to D115283: [AMDGPU] Set "amdgpu_hostcall" module flag if an AMDGPU function has calls to device lib functions that use hostcalls..
Dec 8 2021, 1:37 AM · Restricted Project, Restricted Project

Dec 7 2021

dfukalov added a comment to D115283: [AMDGPU] Set "amdgpu_hostcall" module flag if an AMDGPU function has calls to device lib functions that use hostcalls..

Needs a test.

Dec 7 2021, 1:56 PM · Restricted Project, Restricted Project

Dec 2 2021

dfukalov committed rGab05ab59a7bd: [CostModel][AMDGPU] Fix instructions costs estimation for vector types. (authored by dfukalov).
[CostModel][AMDGPU] Fix instructions costs estimation for vector types.
Dec 2 2021, 4:08 PM
dfukalov closed D114893: [CostModel][AMDGPU] Fix instructions costs estimation for vector types..
Dec 2 2021, 4:08 PM · Restricted Project

Dec 1 2021

dfukalov added inline comments to D114893: [CostModel][AMDGPU] Fix instructions costs estimation for vector types..
Dec 1 2021, 4:11 PM · Restricted Project
dfukalov requested review of D114893: [CostModel][AMDGPU] Fix instructions costs estimation for vector types..
Dec 1 2021, 11:06 AM · Restricted Project

Oct 1 2021

dfukalov committed rG47d6274d4c31: [NFC][AMDGPU] Reduce includes dependencies, part 2 (authored by dfukalov).
[NFC][AMDGPU] Reduce includes dependencies, part 2
Oct 1 2021, 7:50 AM
dfukalov closed D109351: [NFC][AMDGPU] Reduce includes dependencies, part 2.
Oct 1 2021, 7:50 AM · Restricted Project

Sep 30 2021

dfukalov added a reviewer for D109351: [NFC][AMDGPU] Reduce includes dependencies, part 2: rampitec.

Ping...

Sep 30 2021, 10:47 AM · Restricted Project
dfukalov committed rGcf362ff4cab3: [NFC][AMDGPU] Improve cost model tests coverage. (authored by dfukalov).
[NFC][AMDGPU] Improve cost model tests coverage.
Sep 30 2021, 8:15 AM

Sep 29 2021

dfukalov committed rG6a187f9a5755: [NFC][AMDGPU] Add missing gfx90a test cases to fsub.ll. (authored by dfukalov).
[NFC][AMDGPU] Add missing gfx90a test cases to fsub.ll.
Sep 29 2021, 11:57 AM

Sep 27 2021

dfukalov committed rG1f73f0c19d87: [NFC][AMDGPU] Update cost model tests: (authored by dfukalov).
[NFC][AMDGPU] Update cost model tests:
Sep 27 2021, 9:26 AM

Sep 23 2021

dfukalov committed rG4f28a2eb037d: [NFC] Refactor tests to improve readability. (authored by dfukalov).
[NFC] Refactor tests to improve readability.
Sep 23 2021, 3:58 PM

Sep 22 2021

dfukalov added inline comments to D110100: [NFCI][CodeGen, AArch64] Fix inconsistent TargetCostKind types..
Sep 22 2021, 10:17 AM · Restricted Project
dfukalov committed rG1a7b7d7ba232: [NFCI][CodeGen, AArch64] Fix inconsistent TargetCostKind types. (authored by dfukalov).
[NFCI][CodeGen, AArch64] Fix inconsistent TargetCostKind types.
Sep 22 2021, 10:17 AM
dfukalov closed D110100: [NFCI][CodeGen, AArch64] Fix inconsistent TargetCostKind types..
Sep 22 2021, 10:16 AM · Restricted Project
dfukalov added a comment to D110242: [Target][CodeGen] Remove default CostKind arguments on inner/impl TTI overrides.

Thanks!

Sep 22 2021, 7:50 AM · Restricted Project
dfukalov added a comment to D110100: [NFCI][CodeGen, AArch64] Fix inconsistent TargetCostKind types..

Do you think we should stop using default cost kinds entirely?

I think this would be for the best, and I thought I already changed most of the calls to be explicit.

@dfukalov Is this something you'd be willing to do in this patch? At least for getInstructionCost + getInterleavedMemoryOpCost (TTI + Impl)?

Sep 22 2021, 4:11 AM · Restricted Project

Sep 20 2021

dfukalov requested review of D110100: [NFCI][CodeGen, AArch64] Fix inconsistent TargetCostKind types..
Sep 20 2021, 12:47 PM · Restricted Project

Sep 16 2021

dfukalov added inline comments to D109351: [NFC][AMDGPU] Reduce includes dependencies, part 2.
Sep 16 2021, 3:42 PM · Restricted Project
dfukalov updated the diff for D109351: [NFC][AMDGPU] Reduce includes dependencies, part 2.

Fixed all clang-tidy warnings except "invalid case style".

Sep 16 2021, 3:41 PM · Restricted Project

Sep 8 2021

dfukalov updated the diff for D109351: [NFC][AMDGPU] Reduce includes dependencies, part 2.

Addressed comment.

Sep 8 2021, 1:18 AM · Restricted Project

Sep 7 2021

dfukalov requested review of D109351: [NFC][AMDGPU] Reduce includes dependencies, part 2.
Sep 7 2021, 3:26 AM · Restricted Project

Aug 30 2021

dfukalov committed rG5b3fad496615: [AMDGPU][CostModel] Update shuffle instruction tests. NFC. (authored by dfukalov).
[AMDGPU][CostModel] Update shuffle instruction tests. NFC.
Aug 30 2021, 9:19 AM

Aug 25 2021

dfukalov planned changes to D108285: [NFC][AMDGPU] Cleanup attributor' util functions and table..
Aug 25 2021, 3:02 AM · Restricted Project
dfukalov committed rG48958d02d294: [NFC][AMDGPU] Reduce includes dependencies. (authored by dfukalov).
[NFC][AMDGPU] Reduce includes dependencies.
Aug 25 2021, 2:02 AM
dfukalov closed D108596: [NFC][AMDGPU] Reduce includes dependencies..
Aug 25 2021, 2:02 AM · Restricted Project
dfukalov updated the diff for D108596: [NFC][AMDGPU] Reduce includes dependencies..

Fixed clang-tidy errors.

Aug 25 2021, 12:58 AM · Restricted Project

Aug 24 2021

dfukalov added a comment to D108596: [NFC][AMDGPU] Reduce includes dependencies..

No objections from me, seems like a good cleanup. Do you plan to do more of this? What's the end goal?

Yes, I'm going to try additional NFC split out of parts like R600DAGToDAGISel, R600MCInstLower etc.

Aug 24 2021, 4:00 AM · Restricted Project
dfukalov updated the diff for D108596: [NFC][AMDGPU] Reduce includes dependencies..

Removed no new line messages.

Aug 24 2021, 3:59 AM · Restricted Project

Aug 23 2021

dfukalov requested review of D108596: [NFC][AMDGPU] Reduce includes dependencies..
Aug 23 2021, 3:51 PM · Restricted Project

Aug 20 2021

dfukalov added a comment to D108473: [cmake] Fix native tooling when cross-compiling on Linux.

Thanks!

Aug 20 2021, 1:59 PM · Restricted Project
dfukalov added a comment to D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..

This is breaking our cross-compilation from Linux to Windows. It doesn't seem like the CMake Linux platform files (at least on 3.20.3) define these variables explicitly (I guess they're just relying on them being implicitly empty), so we still see .exe as our CMAKE_EXECUTABLE_SUFFIX, which breaks running tblgen.

Not sure what the best solution is for that.

Can you please provide cmake config parameters (and possible toolchain description) to reproduce the issue?

Aug 20 2021, 3:03 AM · Restricted Project

Aug 18 2021

dfukalov added a comment to D108285: [NFC][AMDGPU] Cleanup attributor' util functions and table..

Conflicts with my D108285 stack

Did you mean the stack based on D108158?

Aug 18 2021, 3:36 PM · Restricted Project
dfukalov requested review of D108285: [NFC][AMDGPU] Cleanup attributor' util functions and table..
Aug 18 2021, 3:21 AM · Restricted Project
dfukalov committed rG25ec252537bc: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual… (authored by dfukalov).
[CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual…
Aug 18 2021, 12:25 AM
dfukalov closed D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..
Aug 18 2021, 12:25 AM · Restricted Project

Aug 17 2021

dfukalov added inline comments to D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..
Aug 17 2021, 12:24 AM · Restricted Project
dfukalov updated the diff for D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..

Fix typo.

Aug 17 2021, 12:22 AM · Restricted Project

Aug 16 2021

dfukalov updated the diff for D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..

Using introduced LLVM_HOST_EXECUTABLE_SUFFIX variable to add the extension for native binary.

Aug 16 2021, 2:15 AM · Restricted Project

Aug 13 2021

dfukalov added a comment to D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..

Here's a little terrible blurb of CMake that should actually be a very portable solution to this:
...
If you add this blurb into llvm's config-ix.cmake, you can use LLVM_HOST_EXECUTABLE_SUFFIX the same way you just updated the patch to use CMAKE_EXECUTABLE_SUFFIX, and it should be portable for cross-compilation too.

Aug 13 2021, 1:27 AM · Restricted Project

Aug 12 2021

dfukalov updated the diff for D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..

Using CMAKE_EXECUTABLE_SUFFIX, removed condition.

Aug 12 2021, 6:20 AM · Restricted Project
dfukalov added inline comments to D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..
Aug 12 2021, 5:40 AM · Restricted Project

Aug 11 2021

dfukalov requested review of D107898: [CMake] Fix recompile all .inc files with LLVM_OPTIMIZED_TABLEGEN in Visual Studio..
Aug 11 2021, 5:54 AM · Restricted Project

Jun 29 2021

dfukalov added inline comments to D104874: [AMDGPU] Add S_MOV_B64_IMM_PSEUDO for wide constants.
Jun 29 2021, 4:15 PM · Restricted Project
dfukalov added inline comments to D105104: [AMDGPU] PHI node cost should not be counted for the size and latency..
Jun 29 2021, 3:51 PM · Restricted Project
dfukalov added inline comments to D105104: [AMDGPU] PHI node cost should not be counted for the size and latency..
Jun 29 2021, 7:26 AM · Restricted Project

Jun 23 2021

dfukalov added a comment to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.

AMDGPU tests LGTM, thanks!

Jun 23 2021, 6:23 AM · Restricted Project

Jun 15 2021

dfukalov added a comment to D104247: [DAGCombine] reassoc flag shouldn't enable contract.

Changes in AMDGPU tests LGTM, thanks!

Jun 15 2021, 5:09 AM · Restricted Project

Jun 11 2021

dfukalov committed rG79ffbc9c9f5f: [NFC][CostModel] Fixed comment that comparisons work regardless of the state. (authored by dfukalov).
[NFC][CostModel] Fixed comment that comparisons work regardless of the state.
Jun 11 2021, 1:49 PM
dfukalov closed D104068: [NFC][CostModel] Fixed comment that comparisons work regardless of the state..
Jun 11 2021, 1:49 PM · Restricted Project

Jun 10 2021

dfukalov requested review of D104068: [NFC][CostModel] Fixed comment that comparisons work regardless of the state..
Jun 10 2021, 3:24 PM · Restricted Project

Jun 4 2021

dfukalov added inline comments to D102515: [CostModel] Return an invalid cost for memory ops with unsupported types.
Jun 4 2021, 12:58 PM · Restricted Project

Jun 3 2021

dfukalov added inline comments to D102515: [CostModel] Return an invalid cost for memory ops with unsupported types.
Jun 3 2021, 10:50 AM · Restricted Project
dfukalov added inline comments to D102515: [CostModel] Return an invalid cost for memory ops with unsupported types.
Jun 3 2021, 2:25 AM · Restricted Project

Jun 2 2021

dfukalov added a comment to D103407: [TTI] NFC: Change getNumberOfParts to return InstructionCost..

Yes, using InstructionCost as number of parts may be confusing, but

  1. The function is also used in line 7245 of LoopVectorize.cpp so "Transforms/LoopVectorize/AArch64/scalable-vf-hint.ll" test starts to assert in @test_no_sve just after getTypeLegalizationCost() returns invalid cost.
  2. The same logic was used for getRegUsageForType() in D102541 for number of registers so I decided to repeat it here.
Jun 2 2021, 6:35 AM · Restricted Project
dfukalov committed rG0195e594fecc: [TTI] NFC: Change getIntImmCodeSizeCost to return InstructionCost. (authored by dfukalov).
[TTI] NFC: Change getIntImmCodeSizeCost to return InstructionCost.
Jun 2 2021, 6:04 AM
dfukalov closed D102915: [TTI] NFC: Change getIntImmCodeSizeCost to return InstructionCost..
Jun 2 2021, 6:04 AM · Restricted Project
dfukalov updated the diff for D103406: [TTI] NFC: Reduce InstructionCost::getValue() usage....

Do not call expectedCost(VF) second time just for assert.

Jun 2 2021, 3:14 AM · Restricted Project
dfukalov committed rG0b34acdab718: [NFC] Fix 'Load' name masking. (authored by dfukalov).
[NFC] Fix 'Load' name masking.
Jun 2 2021, 1:10 AM
dfukalov closed D103456: [NFC] Fix 'Load' name masking..
Jun 2 2021, 1:10 AM · Restricted Project
dfukalov added inline comments to D102515: [CostModel] Return an invalid cost for memory ops with unsupported types.
Jun 2 2021, 1:04 AM · Restricted Project

Jun 1 2021

dfukalov requested review of D103456: [NFC] Fix 'Load' name masking..
Jun 1 2021, 6:09 AM · Restricted Project

May 31 2021

dfukalov committed rGe853d3b27447: [NFC] MemoryDependenceAnalysis cleanup. (authored by dfukalov).
[NFC] MemoryDependenceAnalysis cleanup.
May 31 2021, 8:08 AM
dfukalov added a comment to D102358: [NFC] MemoryDependenceAnalysis cleanup..

It's already approved? ^^

Ooops, sorry for pinging.

May 31 2021, 8:08 AM · Restricted Project
dfukalov closed D102358: [NFC] MemoryDependenceAnalysis cleanup..
May 31 2021, 8:08 AM · Restricted Project
dfukalov requested review of D103407: [TTI] NFC: Change getNumberOfParts to return InstructionCost..
May 31 2021, 6:39 AM · Restricted Project
dfukalov requested review of D103406: [TTI] NFC: Reduce InstructionCost::getValue() usage....
May 31 2021, 6:38 AM · Restricted Project
dfukalov updated the diff for D102358: [NFC] MemoryDependenceAnalysis cleanup..

Rebased, ping.

May 31 2021, 1:21 AM · Restricted Project

May 21 2021

dfukalov requested review of D102915: [TTI] NFC: Change getIntImmCodeSizeCost to return InstructionCost..
May 21 2021, 5:20 AM · Restricted Project
dfukalov committed rGe1cb98be2d25: [TTI] NFC: Change getCostOfKeepingLiveOverCall to return InstructionCost. (authored by dfukalov).
[TTI] NFC: Change getCostOfKeepingLiveOverCall to return InstructionCost.
May 21 2021, 5:18 AM
dfukalov closed D102831: [TTI] NFC: Change getCostOfKeepingLiveOverCall to return InstructionCost..
May 21 2021, 5:18 AM · Restricted Project
dfukalov committed rGe8e88c335390: [TTI] NFC: Change getRegUsageForType to return InstructionCost. (authored by dfukalov).
[TTI] NFC: Change getRegUsageForType to return InstructionCost.
May 21 2021, 5:18 AM
dfukalov closed D102541: [TTI] NFC: Change getRegUsageForType to return InstructionCost..
May 21 2021, 5:17 AM · Restricted Project

May 20 2021

dfukalov requested review of D102831: [TTI] NFC: Change getCostOfKeepingLiveOverCall to return InstructionCost..
May 20 2021, 2:09 AM · Restricted Project

May 19 2021

dfukalov added a comment to D102358: [NFC] MemoryDependenceAnalysis cleanup..

Gentle ping...

May 19 2021, 3:03 AM · Restricted Project
dfukalov added a reviewer for D102358: [NFC] MemoryDependenceAnalysis cleanup.: nikic.
May 19 2021, 3:02 AM · Restricted Project

May 14 2021

dfukalov added a comment to D102541: [TTI] NFC: Change getRegUsageForType to return InstructionCost..

@sdesmalen this is needed to return from getTypeLegalizationCost() invalid costs, so at some point invalid legalization should be processed to a reg usage value, instead of asserting in Optional<>::getValue().
What do you think, should it be processed explicitly in LV or yet in BasicTTIImplBase<>::getRegUsageForType?
In latter case, what reg usage value should it return for invalid (e.g. scalable vectors) legalization cost?

May 14 2021, 4:53 PM · Restricted Project
dfukalov requested review of D102541: [TTI] NFC: Change getRegUsageForType to return InstructionCost..
May 14 2021, 4:45 PM · Restricted Project
dfukalov added a comment to D95543: [GVN] Clobber partially aliased loads..

Yes, I thought about packing offset to MemDepResult, but it is already a packed pointer with other info and it seems to be overkill to double its size for a quite rare offset value.

May 14 2021, 1:22 AM · Restricted Project
dfukalov committed rGfdae3fc8b3e9: [GVN] Clobber partially aliased loads. (authored by dfukalov).
[GVN] Clobber partially aliased loads.
May 14 2021, 1:17 AM
dfukalov closed D95543: [GVN] Clobber partially aliased loads..
May 14 2021, 1:17 AM · Restricted Project

May 13 2021

dfukalov added a comment to D95543: [GVN] Clobber partially aliased loads..

getDependency() call is just a start of processing in GVN, and MemoryDependenceResults contains a number of a load' dependencies. One of them was NonLocal clobbering dependency between %tmp4.1 = load i8... and %tmp6.1 = load atomic i8... since latter is atomic (e.g. MemoryDependenceAnalysis.cpp$494-500). And GVN got this clobbering dependency not from getDependency().

May 13 2021, 12:58 PM · Restricted Project

May 12 2021

dfukalov requested review of D102358: [NFC] MemoryDependenceAnalysis cleanup..
May 12 2021, 12:49 PM · Restricted Project
dfukalov requested review of D95543: [GVN] Clobber partially aliased loads..
May 12 2021, 5:57 AM · Restricted Project