| # REQUIRES: target-x86_64 |
| # https://github.com/llvm/llvm-project/issues/56085 |
| # XFAIL: system-freebsd |
| # XFAIL: system-windows |
| |
| # RuntimeDyld can be used to link and load emitted code for both, MCJIT and Orc. |
| # |
| # RUN: %clang -g -S -emit-llvm --target=x86_64-unknown-unknown-elf \ |
| # RUN: -o %t.ll %p/Inputs/jitbp.cpp |
| # |
| # RUN: %lldb -b -o 'settings set plugin.jit-loader.gdb.enable on' -o 'b jitbp' \ |
| # RUN: -o 'run --jit-kind=mcjit %t.ll' lli | FileCheck %s |
| # |
| # RUN: %lldb -b -o 'settings set plugin.jit-loader.gdb.enable on' -o 'b jitbp' \ |
| # RUN: -o 'run --jit-linker=rtdyld %t.ll' lli | FileCheck %s |
| |
| # CHECK: Breakpoint 1: no locations (pending). |
| # CHECK: (lldb) run {{.*}} |
| # CHECK: Process {{.*}} stopped |
| # CHECK: JIT(0x{{.*}})`jitbp() at jitbp.cpp:1:15 |
| # CHECK: -> 1 int jitbp() { return 0; } |
| # CHECK: ^ |
| # CHECK: 2 int main() { return jitbp(); } |
| # CHECK: Process {{.*}} launched: {{.*}} |