argentite created this revision. Herald added a project: All. argentite added reviewers: bcain, zhuhan0, sgraenitz, v.g.vassilev. argentite published this revision for review. Herald added a project: clang. Herald added a subscriber: cfe-commits.
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 <https://reviews.llvm.org/D141824> Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D148992 Files: clang/test/Interpreter/Inputs/dynamic-library-test.cpp clang/test/Interpreter/Inputs/libdynamic-library-test.so clang/test/Interpreter/dynamic-library.cpp Index: clang/test/Interpreter/dynamic-library.cpp =================================================================== --- clang/test/Interpreter/dynamic-library.cpp +++ clang/test/Interpreter/dynamic-library.cpp @@ -1,10 +1,19 @@ // 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 +// +// 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 "C" int printf(const char* format, ...); extern int ultimate_answer; int calculate_answer(); Index: clang/test/Interpreter/Inputs/dynamic-library-test.cpp =================================================================== --- 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; -}
Index: clang/test/Interpreter/dynamic-library.cpp =================================================================== --- clang/test/Interpreter/dynamic-library.cpp +++ clang/test/Interpreter/dynamic-library.cpp @@ -1,10 +1,19 @@ // 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 +// +// 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 "C" int printf(const char* format, ...); extern int ultimate_answer; int calculate_answer(); Index: clang/test/Interpreter/Inputs/dynamic-library-test.cpp =================================================================== --- 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; -}
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits