[clang] [llvm] [Clang-Repl] Add support for out-of-process execution. (PR #110418)
LLVM Continuous Integration via cfe-commits
cfe-commits at lists.llvm.org
Tue Nov 12 01:35:45 PST 2024
llvm-ci wrote:
LLVM Buildbot has detected a new failure on builder `llvm-clang-x86_64-sie-win` running on `sie-win-worker` while building `clang` at step 7 "test-build-unified-tree-check-all".
Full details are available at: https://lab.llvm.org/buildbot/#/builders/46/builds/7740
<details>
<summary>Here is the relevant piece of the build log for the reference</summary>
```
Step 7 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'Clang :: Interpreter/out-of-process.cpp' FAILED ********************
Exit Code: 2
Command Output (stdout):
--
# RUN: at line 3
cat Z:\b\llvm-clang-x86_64-sie-win\llvm-project\clang\test\Interpreter\out-of-process.cpp | z:\b\llvm-clang-x86_64-sie-win\build\bin\clang-repl.exe -oop-executor -orc-runtime | z:\b\llvm-clang-x86_64-sie-win\build\bin\filecheck.exe Z:\b\llvm-clang-x86_64-sie-win\llvm-project\clang\test\Interpreter\out-of-process.cpp
# executed command: cat 'Z:\b\llvm-clang-x86_64-sie-win\llvm-project\clang\test\Interpreter\out-of-process.cpp'
# .---command stdout------------
# | // REQUIRES: host-supports-jit
# |
# | // RUN: cat %s | clang-repl -oop-executor -orc-runtime | FileCheck %s
# |
# | extern "C" int printf(const char *, ...);
# |
# | int intVar = 0;
# | double doubleVar = 3.14;
# | %undo
# | double doubleVar = 2.71;
# |
# | auto r1 = printf("intVar = %d\n", intVar);
# | // CHECK: intVar = 0
# | auto r2 = printf("doubleVar = %.2f\n", doubleVar);
# | // CHECK: doubleVar = 2.71
# |
# | // Test redefinition with inline and static functions.
# | int add(int a, int b, int c) { return a + b + c; }
# | %undo // Revert to the initial version of add
# | inline int add(int a, int b) { return a + b; }
# |
# | auto r3 = printf("add(1, 2) = %d\n", add(1, 2));
# | // CHECK-NEXT: add(1, 2) = 3
# |
# | // Test inline and lambda functions with variations.
# | inline int square(int x) { return x * x; }
# | auto lambdaSquare = [](int x) { return x * x; };
# | auto lambdaMult = [](int a, int b) { return a * b; };
# |
# | auto r4 = printf("square(4) = %d\n", square(4));
# | // CHECK-NEXT: square(4) = 16
# | auto lambda_r1 = printf("lambdaSquare(5) = %d\n", lambdaSquare(5));
# | // CHECK-NEXT: lambdaSquare(5) = 25
# | auto lambda_r2 = printf("lambdaMult(2, 3) = %d\n", lambdaMult(2, 3));
# | // CHECK-NEXT: lambdaMult(2, 3) = 6
# |
# | %undo // Undo previous lambda assignments
# | auto lambda_r3 = lambdaMult(3, 4); // Should fail or revert to the original lambda
# |
# | // Test weak and strong symbol linkage.
# | int __attribute__((weak)) weakFunc() { return 42; }
...
```
</details>
https://github.com/llvm/llvm-project/pull/110418
More information about the cfe-commits
mailing list