Author: Anubhab Ghosh Date: 2023-04-26T09:11:09+05:30 New Revision: 7f96ce5e133be54891af177adbf8952d413e0f85
URL: https://github.com/llvm/llvm-project/commit/7f96ce5e133be54891af177adbf8952d413e0f85 DIFF: https://github.com/llvm/llvm-project/commit/7f96ce5e133be54891af177adbf8952d413e0f85.diff LOG: [clang-repl] Fix dynamic library test to avoid cstdio and linker Some platforms do not have a working linker present. The goal is to only test the loading of a shared library in clang-repl. A precompiled library is used instead. The cstdio header may also not be present. We only need printf. Related discussion in D141824 Differential Revision: https://reviews.llvm.org/D148992 Added: clang/test/Interpreter/Inputs/libdynamic-library-test.so Modified: clang/test/Interpreter/dynamic-library.cpp Removed: clang/test/Interpreter/Inputs/dynamic-library-test.cpp ################################################################################ diff --git a/clang/test/Interpreter/Inputs/dynamic-library-test.cpp b/clang/test/Interpreter/Inputs/dynamic-library-test.cpp deleted file mode 100644 index 1f143ba040cb6..0000000000000 --- a/clang/test/Interpreter/Inputs/dynamic-library-test.cpp +++ /dev/null @@ -1,6 +0,0 @@ -int ultimate_answer = 0; - -int calculate_answer() { - ultimate_answer = 42; - return 5; -} diff --git a/clang/test/Interpreter/Inputs/libdynamic-library-test.so b/clang/test/Interpreter/Inputs/libdynamic-library-test.so new file mode 100755 index 0000000000000..bb7c7b5a54317 Binary files /dev/null and b/clang/test/Interpreter/Inputs/libdynamic-library-test.so diff er diff --git a/clang/test/Interpreter/dynamic-library.cpp b/clang/test/Interpreter/dynamic-library.cpp index 145c58bc2ae26..e2bfc81a383a7 100644 --- a/clang/test/Interpreter/dynamic-library.cpp +++ b/clang/test/Interpreter/dynamic-library.cpp @@ -1,13 +1,25 @@ // REQUIRES: host-supports-jit, system-linux -// UNSUPPORTED: target={{.*-(ps4|ps5)}} -// RUN: %clang -xc++ -o %T/libdynamic-library-test.so -fPIC -shared -DLIBRARY %S/Inputs/dynamic-library-test.cpp -// RUN: cat %s | env LD_LIBRARY_PATH=%T:$LD_LIBRARY_PATH clang-repl | FileCheck %s +// To generate libdynamic-library-test.so : +// clang -xc++ -o libdynamic-library-test.so -fPIC -shared +// +// extern "C" { +// +// int ultimate_answer = 0; +// +// int calculate_answer() { +// ultimate_answer = 42; +// return 5; +// } +// +// } -#include <cstdio> +// RUN: cat %s | env LD_LIBRARY_PATH=%S/Inputs:$LD_LIBRARY_PATH clang-repl | FileCheck %s -extern int ultimate_answer; -int calculate_answer(); +extern "C" int printf(const char* format, ...); + +extern "C" int ultimate_answer; +extern "C" int calculate_answer(); %lib libdynamic-library-test.so _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits