[AMDGPU] Wave and register controls
authorKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Tue, 6 Sep 2016 20:22:28 +0000 (20:22 +0000)
committerKonstantin Zhuravlyov <kzhuravl_dev@outlook.com>
Tue, 6 Sep 2016 20:22:28 +0000 (20:22 +0000)
commit1d65026ca6844f7401e3aa4a9f3f0d3e1ed9f406
tree45da483f298e8c48c9c8d6d94a342347cfcc446b
parentec73f5dacf1da07eb60321f843cd0d6bbbf9e1bc
[AMDGPU] Wave and register controls

- Implemented amdgpu-flat-work-group-size attribute
- Implemented amdgpu-num-active-waves-per-eu attribute
- Implemented amdgpu-num-sgpr attribute
- Implemented amdgpu-num-vgpr attribute
- Dynamic LDS constraints are in a separate patch

Patch by Tom Stellard and Konstantin Zhuravlyov

Differential Revision: https://reviews.llvm.org/D21562

llvm-svn: 280747
32 files changed:
llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
llvm/lib/Target/AMDGPU/SIRegisterInfo.h
llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
llvm/test/CodeGen/AMDGPU/array-ptr-calc-i32.ll
llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-sgpr.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/attr-amdgpu-num-vgpr.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/attr-unparseable.ll [new file with mode: 0644]
llvm/test/CodeGen/AMDGPU/indirect-private-64.ll
llvm/test/CodeGen/AMDGPU/large-work-group-promote-alloca.ll
llvm/test/CodeGen/AMDGPU/large-work-group-registers.ll [deleted file]
llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
llvm/test/CodeGen/AMDGPU/private-memory-r600.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-mem-intrinsics.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-no-opts.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-padding-size-estimate.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-icmp.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-phi.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-to-lds-select.ll
llvm/test/CodeGen/AMDGPU/target-cpu.ll