Add backend dignostic printer for unsupported features
authorOliver Stannard <oliver.stannard@arm.com>
Thu, 28 Jan 2016 10:07:27 +0000 (10:07 +0000)
committerOliver Stannard <oliver.stannard@arm.com>
Thu, 28 Jan 2016 10:07:27 +0000 (10:07 +0000)
commitb4b092ea1bf6b41012f0d9b98f8d519e9384c109
tree251170034b8d4bcf080b61d8cb2e09194009b083
parentd3b78430d1112dec60dfe13b349bb629bc960874
Add backend dignostic printer for unsupported features

Re-commit of r258951 after fixing layering violation.

The related LLVM patch adds a backend diagnostic type for reporting
unsupported features, this adds a printer for them to clang.

In the case where debug location information is not available, I've
changed the printer to report the location as the first line of the
function, rather than the closing brace, as the latter does not give the
user any information. This also affects optimisation remarks.

Differential Revision: http://reviews.llvm.org/D16590

llvm-svn: 259035
22 files changed:
llvm/include/llvm/CodeGen/DiagnosticInfoCodeGen.h [new file with mode: 0644]
llvm/include/llvm/IR/DiagnosticInfo.h
llvm/lib/CodeGen/CMakeLists.txt
llvm/lib/CodeGen/DiagnosticInfoCodeGen.cpp [new file with mode: 0644]
llvm/lib/IR/DiagnosticInfo.cpp
llvm/lib/Target/AMDGPU/AMDGPUDiagnosticInfoUnsupported.cpp [deleted file]
llvm/lib/Target/AMDGPU/AMDGPUDiagnosticInfoUnsupported.h [deleted file]
llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
llvm/lib/Target/AMDGPU/CMakeLists.txt
llvm/lib/Target/AMDGPU/SIISelLowering.cpp
llvm/lib/Target/BPF/BPFISelLowering.cpp
llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
llvm/test/CodeGen/AMDGPU/addrspacecast.ll
llvm/test/CodeGen/AMDGPU/call.ll
llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
llvm/test/CodeGen/AMDGPU/global-zero-initializer.ll
llvm/test/CodeGen/AMDGPU/lds-initializer.ll
llvm/test/CodeGen/AMDGPU/lds-zero-initializer.ll
llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.ptr.ll
llvm/test/CodeGen/AMDGPU/no-hsa-graphics-shaders.ll
llvm/test/CodeGen/AMDGPU/promote-alloca-bitcast-function.ll