[all-commits] [llvm/llvm-project] 0fa3fe: NewPM/AMDGPU: Port AMDGPUPerfHintAnalysis to new p...
Matt Arsenault via All-commits
all-commits at lists.llvm.org
Sun Aug 11 01:31:27 PDT 2024
Branch: refs/heads/users/arsenm/newpm/port-amdgpu-perf-hint-analysis
Home: https://github.com/llvm/llvm-project
Commit: 0fa3fead38acc0dc3bca5d48c00be1090d4a16ad
https://github.com/llvm/llvm-project/commit/0fa3fead38acc0dc3bca5d48c00be1090d4a16ad
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2024-08-11 (Sun, 11 Aug 2024)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp
M llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/test/CodeGen/AMDGPU/perfhint.ll
Log Message:
-----------
NewPM/AMDGPU: Port AMDGPUPerfHintAnalysis to new pass manager
This was much more difficult than I anticipated. The pass is
not in a good state, with poor test coverage. The legacy PM
does seem to be relying on maintaining the map state between
different SCCs, which seems bad. The pass is going out of its
way to avoid putting the attributes it introduces onto non-callee
functions. If it just added them, we could use them directly
instead of relying on the map, I would think.
The NewPM path uses a ModulePass; I'm not sure if we should be
using CGSCC here but there seems to be some missing infrastructure
to support backend defined ones.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list