Skip to content

Commit 41f775b

Browse files
azabaznosys_zuul
authored and
sys_zuul
committed
Added missing wrappers
Change-Id: Id2e89d42cb5231669d790801e77523b4db2f0498
1 parent b6abc58 commit 41f775b

File tree

2 files changed

+52
-0
lines changed

2 files changed

+52
-0
lines changed

IGC/WrapperLLVM/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ set(IGC_WrapperLLVM_HDR
6363
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/Transforms/Scalar/InstSimplifyPass.h"
6464
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/BinaryFormat/Dwarf.h"
6565
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/MC/MCAsmBackend.h"
66+
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/Analysis/CallGraph.h"
6667
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/Analysis/InlineCost.h"
6768
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/Analysis/MemoryLocation.h"
6869
"${CMAKE_CURRENT_SOURCE_DIR}/include/llvmWrapper/Analysis/TargetLibraryInfo.h"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/*===================== begin_copyright_notice ==================================
2+
3+
Copyright (c) 2017 Intel Corporation
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a
6+
copy of this software and associated documentation files (the
7+
"Software"), to deal in the Software without restriction, including
8+
without limitation the rights to use, copy, modify, merge, publish,
9+
distribute, sublicense, and/or sell copies of the Software, and to
10+
permit persons to whom the Software is furnished to do so, subject to
11+
the following conditions:
12+
13+
The above copyright notice and this permission notice shall be included
14+
in all copies or substantial portions of the Software.
15+
16+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22+
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23+
24+
25+
======================= end_copyright_notice ==================================*/
26+
27+
#ifndef IGCLLVM_CALL_GRAPH_H
28+
#define IGCLLVM_CALL_GRAPH_H
29+
30+
#include <llvm/Analysis/CallGraph.h>
31+
#include <llvm/IR/CallSite.h>
32+
33+
namespace IGCLLVM
34+
{
35+
#if LLVM_VERSION_MAJOR < 9
36+
using CallGraphNode = llvm::CallGraphNode;
37+
#else
38+
class CallGraphNode : public llvm::CallGraphNode
39+
{
40+
public:
41+
inline void replaceCallEdge(llvm::CallSite CS, llvm::CallSite NewCS, llvm::CallGraphNode *NewNode)
42+
{
43+
llvm::CallGraphNode::replaceCallEdge(*llvm::cast<llvm::CallBase>(CS.getInstruction()),
44+
*llvm::cast<llvm::CallBase>(NewCS.getInstruction()),
45+
NewNode);
46+
}
47+
};
48+
#endif
49+
}
50+
51+
#endif

0 commit comments

Comments
 (0)