Skip to content

Windows shared library #454

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
8a4f2c0
Shared library build ci
mcbarton Jan 16, 2025
ef71aad
Add shared build options to CppInterOp build
mcbarton Jan 16, 2025
0f21a3d
Fix git clone for draft PR
mcbarton Jan 16, 2025
5c9ef54
Add ASM compiler which works
mcbarton Jan 16, 2025
81402d1
LLVM_ENABLE_PLUGINS
mcbarton Jan 16, 2025
c81693a
Update Windows.yml
mcbarton Jan 16, 2025
68e253f
Update Windows.yml
mcbarton Jan 16, 2025
411ff89
Update Windows.yml
mcbarton Jan 16, 2025
2171d80
Update Windows.yml
mcbarton Jan 16, 2025
efcea6d
Temperory ignore removing of link to libLLVM.so on Windows(will revert)
mcbarton Jan 17, 2025
2351a07
Update Windows.yml
mcbarton Jan 17, 2025
0f132d0
Add assertions back into Windows llvm build
mcbarton Jan 17, 2025
aef60c8
Update Windows.yml
mcbarton Jan 17, 2025
5968551
Update Windows.yml
mcbarton Jan 17, 2025
a5a8ff6
Update support llvm to 20
mcbarton Jan 17, 2025
28929d3
Ouput link_libs (debug)
mcbarton Jan 17, 2025
8a177bc
Debug CMakeLists.txt
mcbarton Jan 18, 2025
c37cf90
Debug Windows.yml
mcbarton Jan 18, 2025
472bf56
Debug
mcbarton Jan 18, 2025
0c5362d
Update CMakeLists.txt
mcbarton Jan 18, 2025
32a6269
Debug CMakeLists.txt
mcbarton Jan 18, 2025
2accf5f
Remove clangedit transistive libs
mcbarton Jan 18, 2025
a7c23ce
Remove LLVM
mcbarton Jan 18, 2025
6729a8f
Remove clangAST
mcbarton Jan 18, 2025
015f495
remove version
mcbarton Jan 18, 2025
deaabaa
Update Windows.yml
mcbarton Jan 18, 2025
ae532b7
Update Windows.yml
mcbarton Jan 18, 2025
e983603
Try removing link to support and see what happens
mcbarton Jan 18, 2025
9bab8d1
Try solution
mcbarton Jan 18, 2025
cea847f
Update Windows.yml
mcbarton Jan 18, 2025
52f13e0
Update CMakeLists.txt
mcbarton Jan 18, 2025
aa731f0
Update CMakeLists.txt
mcbarton Jan 18, 2025
7696d73
Update CMakeLists.txt
mcbarton Jan 19, 2025
a061d6d
debug
mcbarton Jan 19, 2025
2498a08
Try workaround
mcbarton Jan 19, 2025
d2fec8c
Change to llvm_add_library
mcbarton Jan 19, 2025
399cece
Update Windows.yml
mcbarton Jan 19, 2025
8e85527
Update Windows.yml
mcbarton Jan 19, 2025
b555cba
Try setting LLVM_DYLIB_COMPONENTS
mcbarton Jan 19, 2025
c86cdcb
Update CMakeLists.txt
mcbarton Jan 19, 2025
591e7ac
Start adding libs back in
mcbarton Jan 19, 2025
f00492f
Merge branch 'main' into Windows-shared-library
mcbarton Jan 19, 2025
c376819
Update Windows.yml
mcbarton Jan 19, 2025
23f1b39
Update Windows.yml
mcbarton Jan 19, 2025
a56ed87
Update CMakeLists.txt
mcbarton Jan 19, 2025
749775b
Merge branch 'main' into Windows-shared-library
mcbarton Jan 19, 2025
a5250a7
Try allowing multiple definitions
mcbarton Jan 20, 2025
563f6c5
Try using ldflags to allow multiple definitions
mcbarton Jan 20, 2025
a054e0d
Update Windows.yml
mcbarton Jan 20, 2025
03f270a
Try to fix flag
mcbarton Jan 20, 2025
a56a3f2
Try different flag
mcbarton Jan 20, 2025
e734b4d
Update Windows.yml
mcbarton Jan 20, 2025
c743eca
Revert "Update Windows.yml"
mcbarton Jan 20, 2025
9a32988
Update Windows.yml
mcbarton Jan 20, 2025
2a9ddc1
Update CMakeLists.txt
mcbarton Jan 25, 2025
c0cc3a6
Update CMakeLists.txt
mcbarton Jan 25, 2025
cd0c392
Update CMakeLists.txt
mcbarton Jan 25, 2025
6b65ec3
Update CMakeLists.txt
mcbarton Jan 25, 2025
2b214f2
Update CMakeLists.txt
mcbarton Jan 25, 2025
4a3b4d3
Update CMakeLists.txt
mcbarton Jan 25, 2025
cc397df
Update CMakeLists.txt
mcbarton Jan 25, 2025
f71e757
Update Windows.yml
mcbarton Jan 25, 2025
38acf18
Update CMakeLists.txt
mcbarton Jan 25, 2025
5299680
Update CMakeLists.txt
mcbarton Jan 25, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 42 additions & 32 deletions .github/workflows/Windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ jobs:
fail-fast: false
matrix:
include:
- name: win2025-msvc-clang-repl-19
- name: win2025-shared-lib
os: windows-2025
compiler: msvc
clang-runtime: '19'
compiler: clang
clang-runtime: '18'
cling: Off
llvm_enable_projects: "clang"
llvm_targets_to_build: "host;NVPTX"
llvm_targets_to_build: "host"

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -73,7 +73,7 @@ jobs:
path: |
llvm-project
${{ matrix.cling=='On' && 'cling' || '' }}
key: ${{ env.CLING_HASH }}-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-clang-${{ matrix.clang-runtime }}.x-patch-${{ hashFiles(format('patches/llvm/clang{0}-*.patch', matrix.clang-runtime)) || 'none' }}
key: ${{ env.CLING_HASH }}-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-clang-${{ matrix.clang-runtime }}.x-patch-${{ hashFiles(format('patches/llvm/clang{0}-*.patch', matrix.clang-runtime)) || 'none' }}-shared-lib
lookup-only: true

- name: Setup default Build Type on Windows
Expand All @@ -93,10 +93,10 @@ jobs:
choco install llvm --version=$ver --no-progress -my
clang --version
#
$env:CC="clang"
$env:CXX="clang++"
echo "CC=clang" >> $env:GITHUB_ENV
echo "CXX=clang++" >> $env:GITHUB_ENV
$env:CC="clang-cl"
$env:CXX="clang-cl"
echo "CC=clang-cl" >> $env:GITHUB_ENV
echo "CXX=clang-cl" >> $env:GITHUB_ENV
}
elseif ( "${{ matrix.compiler }}" -imatch "msvc" )
{
Expand Down Expand Up @@ -130,7 +130,7 @@ jobs:
}
else
{
git clone --depth=1 -b release/${{ matrix.clang-runtime }}.x https://github.com/llvm/llvm-project.git
git clone --depth=1 -b llvm-export-api-20.0 https://github.com/fsfod/llvm-project.git
}

cd llvm-project
Expand All @@ -139,20 +139,24 @@ jobs:
if ( "${{ matrix.cling }}" -imatch "On" )
{
cd build
cmake -DLLVM_ENABLE_PROJECTS="${{ matrix.llvm_enable_projects}}" `
cmake -G Ninja -DLLVM_ENABLE_PROJECTS="${{ matrix.llvm_enable_projects}}" `
-DLLVM_EXTERNAL_PROJECTS=cling `
-DLLVM_EXTERNAL_CLING_SOURCE_DIR="$env:CLING_DIR" `
-DLLVM_TARGETS_TO_BUILD="${{ matrix.llvm_targets_to_build }}" `
-DCMAKE_BUILD_TYPE=Release `
-DLLVM_ENABLE_ASSERTIONS=ON `
-DCLANG_ENABLE_STATIC_ANALYZER=OFF `
-DLLVM_ENABLE_PLUGINS=On `
-DCLANG_ENABLE_ARCMT=OFF `
-DCLANG_ENABLE_FORMAT=OFF `
-DCLANG_ENABLE_BOOTSTRAP=OFF `
-DLLVM_ENABLE_ZSTD=OFF `
-DLLVM_ENABLE_TERMINFO=OFF `
-DLLVM_ENABLE_LIBXML2=OFF `
..\llvm
-DLLVM_BUILD_LLVM_DYLIB_VIS=On `
-DLLVM_DYLIB_COMPONENTS="BinaryFormat;Core;Object;OrcJit;Support;FrontendDriver;OrcDebugging;Coverage;FrontendHLSL;LTO;clangCodeGen;clangStaticAnalyzerCore" `
-DLLVM_LINK_LLVM_DYLIB=On `
-DCLANG_LINK_CLANG_DYLIB=On -DCMAKE_ASM_MASM_COMPILER=llvm-ml -DCMAKE_ASM_MASM_FLAGS="-m64" ..\llvm
cmake --build . --config Release --target clang --parallel ${{ env.ncpus }}
cmake --build . --config Release --target cling --parallel ${{ env.ncpus }}
# Now build gtest.a and gtest_main for CppInterOp to run its tests.
Expand All @@ -174,18 +178,19 @@ jobs:
}
cd build
echo "Apply clang${{ matrix.clang-runtime }}-*.patch patches:"
cmake -DLLVM_ENABLE_PROJECTS="${{ matrix.llvm_enable_projects}}" `
cmake -G Ninja -DLLVM_ENABLE_PROJECTS="${{ matrix.llvm_enable_projects}}" `
-DLLVM_TARGETS_TO_BUILD="${{ matrix.llvm_targets_to_build }}" `
-DCMAKE_BUILD_TYPE=Release `
-DLLVM_ENABLE_ASSERTIONS=ON `
-DCMAKE_BUILD_TYPE=Release `
-DLLVM_ENABLE_ASSERTIONS=ON `
-DCMAKE_CXX_COMPILER=clang-cl `
-DCMAKE_C_COMPILER=clang-cl `
-DCLANG_ENABLE_STATIC_ANALYZER=OFF `
-DCLANG_ENABLE_ARCMT=OFF `
-DCLANG_ENABLE_FORMAT=OFF `
-DCLANG_ENABLE_BOOTSTRAP=OFF `
-DLLVM_ENABLE_ZSTD=OFF `
-DLLVM_ENABLE_TERMINFO=OFF `
-DLLVM_ENABLE_LIBXML2=OFF `
..\llvm
-DLLVM_ENABLE_PLUGINS=On `
-DLLVM_BUILD_LLVM_DYLIB_VIS=On `
-DLLVM_BUILD_LLVM_DYLIB=On `
-DLLVM_LINK_LLVM_DYLIB=On `
-DCLANG_LINK_CLANG_DYLIB=On -DCMAKE_ASM_MASM_COMPILER=llvm-ml -DCMAKE_ASM_MASM_FLAGS="-m64" ..\llvm
cmake --build . --config Release --target clang clangInterpreter clangStaticAnalyzerCore --parallel ${{ env.ncpus }}
}
cd ..\
Expand Down Expand Up @@ -224,10 +229,10 @@ jobs:
fail-fast: false
matrix:
include:
- name: win2025-msvc-clang-repl-19
- name: win2025-shared-lib
os: windows-2025
compiler: msvc
clang-runtime: '19'
compiler: clang
clang-runtime: '18'
cling: Off
cppyy: Off

Expand Down Expand Up @@ -283,10 +288,10 @@ jobs:
choco install llvm --version=$ver --no-progress -my
clang --version
#
$env:CC="clang"
$env:CXX="clang++"
echo "CC=clang" >> $env:GITHUB_ENV
echo "CXX=clang++" >> $env:GITHUB_ENV
$env:CC="clang-cl"
$env:CXX="clang-cl"
echo "CC=clang-cl" >> $env:GITHUB_ENV
echo "CXX=clang-cl" >> $env:GITHUB_ENV
}
elseif ( "${{ matrix.compiler }}" -imatch "msvc" )
{
Expand All @@ -304,7 +309,7 @@ jobs:
path: |
llvm-project
${{ matrix.cling=='On' && 'cling' || '' }}
key: ${{ env.CLING_HASH }}-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-clang-${{ matrix.clang-runtime }}.x-patch-${{ hashFiles(format('patches/llvm/clang{0}-*.patch', matrix.clang-runtime)) || 'none' }}
key: ${{ env.CLING_HASH }}-${{ runner.os }}-${{ matrix.os }}-${{ matrix.compiler }}-clang-${{ matrix.clang-runtime }}.x-patch-${{ hashFiles(format('patches/llvm/clang{0}-*.patch', matrix.clang-runtime)) || 'none' }}-shared-lib

- name: Build and Test/Install CppInterOp on Windows systems
run: |
Expand Down Expand Up @@ -356,23 +361,28 @@ jobs:
echo "CPPINTEROP_BUILD_DIR=$env:CPPINTEROP_BUILD_DIR" >> $env:GITHUB_ENV
if ( "${{ matrix.cling }}" -imatch "On" )
{
cmake -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} `
cmake -G Ninja -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} `
-DUSE_CLING=ON `
-DUSE_REPL=OFF `
-DBUILD_SHARED_LIBS=ON `
-DCling_DIR="$env:LLVM_BUILD_DIR\tools\cling" `
-DLLVM_DIR="$env:LLVM_BUILD_DIR" `
-DLLVM_ENABLE_WERROR=On `
-DLLVM_BUILD_LLVM_DYLIB_VIS=On -DLLVM_LINK_LLVM_DYLIB=On -DCLANG_LINK_CLANG_DYLIB=On -DDISABLE_LLVM_LINK_LLVM_DYLIB=On `
-DClang_DIR="$env:LLVM_BUILD_DIR" -DCODE_COVERAGE=${{ env.CODE_COVERAGE }} -DCMAKE_INSTALL_PREFIX="$env:CPPINTEROP_DIR" ..\
}
else
{
cmake -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} `
cmake -G Ninja -DCMAKE_BUILD_TYPE=${{ env.BUILD_TYPE }} `
-DLLVM_DIR="$env:LLVM_BUILD_DIR\lib\cmake\llvm" `
-DLLVM_ENABLE_WERROR=On `
-DBUILD_SHARED_LIBS=ON `
-DLLVM_LINK_LLVM_DYLIB=On `
-DCLANG_LINK_CLANG_DYLIB=On `
-DClang_DIR="$env:LLVM_BUILD_DIR\lib\cmake\clang" -DCODE_COVERAGE=${{ env.CODE_COVERAGE }} -DCMAKE_INSTALL_PREFIX="$env:CPPINTEROP_DIR" ..\
cmake --build . --config ${{ env.BUILD_TYPE }} --target googletest --parallel ${{ env.ncpus }}
}
cmake --build . --config ${{ env.BUILD_TYPE }} --target check-cppinterop --parallel ${{ env.ncpus }}
cmake --build . --config ${{ env.BUILD_TYPE }} --target check-cppinterop

- name: Setup tmate session
if: ${{ failure() && runner.debug }}
Expand Down
12 changes: 6 additions & 6 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,14 @@ include(GNUInstallDirs)
## Define supported version of clang and llvm

set(CLANG_MIN_SUPPORTED 13.0)
set(CLANG_MAX_SUPPORTED "19.1.x")
set(CLANG_VERSION_UPPER_BOUND 20.0.0)
set(CLANG_MAX_SUPPORTED "20.1.x")
set(CLANG_VERSION_UPPER_BOUND 21.0.0)
set(LLD_MIN_SUPPORTED 13.0)
set(LLD_MAX_SUPPORTED "19.1.x")
set(LLD_VERSION_UPPER_BOUND 20.0.0)
set(LLD_MAX_SUPPORTED "20.1.x")
set(LLD_VERSION_UPPER_BOUND 21.0.0)
set(LLVM_MIN_SUPPORTED 13.0)
set(LLVM_MAX_SUPPORTED "19.1.x")
set(LLVM_VERSION_UPPER_BOUND 20.0.0)
set(LLVM_MAX_SUPPORTED "20.1.x")
set(LLVM_VERSION_UPPER_BOUND 21.0.0)

## Set Cmake packages search order

Expand Down
34 changes: 23 additions & 11 deletions lib/Interpreter/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,16 @@ if(EMSCRIPTEN)
PUBLIC "SHELL: -s WASM_BIGINT"
)
else()
set(LLVM_LINK_COMPONENTS
${LLVM_TARGETS_TO_BUILD}
BinaryFormat
Core
Object
OrcJit
Support
)
IF(NOT WIN32)
set(LLVM_LINK_COMPONENTS
${LLVM_TARGETS_TO_BUILD}
BinaryFormat
Core
Object
OrcJit
Support
)
endif()
# FIXME: Investigate why this needs to be conditionally included.
if ("LLVMFrontendDriver" IN_LIST LLVM_AVAILABLE_LIBS)
list(APPEND LLVM_LINK_COMPONENTS FrontendDriver)
Expand Down Expand Up @@ -77,7 +79,7 @@ else()
if(NOT WIN32)
list(APPEND link_libs dl)
endif()

# Get rid of libLLVM-X.so which is appended to the list of static libraries.
if (LLVM_LINK_LLVM_DYLIB)
set(new_libs ${link_libs})
Expand All @@ -89,8 +91,10 @@ else()
if (NOT transitive_libs)
continue()
endif()
string(REPLACE "version;" "" transitive_libs "${transitive_libs}")
foreach(transitive_lib ${transitive_libs})
get_target_property(lib_type ${transitive_lib} TYPE)
message(STATUS "lib_type ${lib_type}")
if("${lib_type}" STREQUAL "STATIC_LIBRARY")
list(APPEND static_transitive_libs ${transitive_lib})
else()
Expand Down Expand Up @@ -124,15 +128,23 @@ else()
clangStaticAnalyzerCore
)
endif(LLVM_LINK_LLVM_DYLIB)

add_llvm_library(clangCppInterOp
if(NOT WIN32)
llvm_add_library(clangCppInterOp
DISABLE_LLVM_LINK_LLVM_DYLIB
CppInterOp.cpp
CXCppInterOp.cpp
${DLM}
LINK_LIBS
${link_libs}
)
else()
llvm_add_library(clangCppInterOp
DISABLE_LLVM_LINK_LLVM_DYLIB
CppInterOp.cpp
CXCppInterOp.cpp
${DLM}
)
endif()
endif()

string(REPLACE ";" "\;" _VER CPPINTEROP_VERSION)
Expand Down
9 changes: 0 additions & 9 deletions unittests/CppInterOp/CUDATest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -46,18 +46,12 @@ TEST(DISABLED_CUDATest, Sanity) {
#else
TEST(CUDATest, Sanity) {
#endif // CLANG_VERSION_MAJOR < 16
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
if (!HasCudaSDK())
GTEST_SKIP() << "Skipping CUDA tests as CUDA SDK not found";
EXPECT_TRUE(Cpp::CreateInterpreter({}, {"--cuda"}));
}

TEST(CUDATest, CUDAH) {
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
if (!HasCudaSDK())
GTEST_SKIP() << "Skipping CUDA tests as CUDA SDK not found";

Expand All @@ -67,9 +61,6 @@ TEST(CUDATest, CUDAH) {
}

TEST(CUDATest, CUDARuntime) {
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
if (!HasCudaRuntime())
GTEST_SKIP() << "Skipping CUDA tests as CUDA runtime not found";

Expand Down
10 changes: 0 additions & 10 deletions unittests/CppInterOp/FunctionReflectionTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -800,9 +800,6 @@ TEST(FunctionReflectionTest, IsStaticMethod) {
TEST(FunctionReflectionTest, GetFunctionAddress) {
if (llvm::sys::RunningOnValgrind())
GTEST_SKIP() << "XFAIL due to Valgrind report";
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
std::vector<Decl*> Decls, SubDecls;
std::string code = "int f1(int i) { return i * i; }";

Expand Down Expand Up @@ -1129,9 +1126,6 @@ TEST(FunctionReflectionTest, GetFunctionArgDefault) {
TEST(FunctionReflectionTest, Construct) {
if (llvm::sys::RunningOnValgrind())
GTEST_SKIP() << "XFAIL due to Valgrind report";
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif

Cpp::CreateInterpreter();

Expand Down Expand Up @@ -1170,10 +1164,6 @@ TEST(FunctionReflectionTest, Destruct) {
if (llvm::sys::RunningOnValgrind())
GTEST_SKIP() << "XFAIL due to Valgrind report";

#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif

Cpp::CreateInterpreter();

Interp->declare(R"(
Expand Down
12 changes: 0 additions & 12 deletions unittests/CppInterOp/InterpreterTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,6 @@ TEST(InterpreterTest, DebugFlag) {
}

TEST(InterpreterTest, Evaluate) {
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
if (llvm::sys::RunningOnValgrind())
GTEST_SKIP() << "XFAIL due to Valgrind report";
// EXPECT_TRUE(Cpp::Evaluate(I, "") == 0);
Expand All @@ -76,9 +73,6 @@ TEST(InterpreterTest, Evaluate) {
}

TEST(InterpreterTest, Process) {
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
if (llvm::sys::RunningOnValgrind())
GTEST_SKIP() << "XFAIL due to Valgrind report";
Cpp::CreateInterpreter();
Expand Down Expand Up @@ -128,9 +122,6 @@ TEST(InterpreterTest, DetectResourceDir) {
#else
TEST(InterpreterTest, DISABLED_DetectResourceDir) {
#endif // LLVM_BINARY_DIR
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
Cpp::CreateInterpreter();
EXPECT_STRNE(Cpp::DetectResourceDir().c_str(), Cpp::GetResourceDir());
llvm::SmallString<256> Clang(LLVM_BINARY_DIR);
Expand All @@ -140,9 +131,6 @@ TEST(InterpreterTest, DISABLED_DetectResourceDir) {
}

TEST(InterpreterTest, DetectSystemCompilerIncludePaths) {
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
std::vector<std::string> includes;
Cpp::DetectSystemCompilerIncludePaths(includes);
EXPECT_FALSE(includes.empty());
Expand Down
3 changes: 0 additions & 3 deletions unittests/CppInterOp/JitTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,6 @@ static int printf_jit(const char* format, ...) {
TEST(JitTest, InsertOrReplaceJitSymbol) {
if (llvm::sys::RunningOnValgrind())
GTEST_SKIP() << "XFAIL due to Valgrind report";
#ifdef _WIN32
GTEST_SKIP() << "Disabled on Windows. Needs fixing.";
#endif
std::vector<Decl*> Decls;
std::string code = R"(
extern "C" int printf(const char*,...);
Expand Down
Loading