clayborg added a comment. In D96637#2567269 <https://reviews.llvm.org/D96637#2567269>, @aadsm wrote:
>> We should have a test for this. > > how do you recommend doing this? I spent a couple of hours on this but got no > where. From what I understood we should prefer lit tests, so I was thinking > of creating a binary that dlopens a module. However, I wasn't able to create > a binary that I can start and capture its pid address so that I can attach > to. Here's what I've tried so far: > > // RUN: cp %s %s.cpp > // RUN: %clang -g -O0 --target=x86_64-linux-gnu %s.cpp -o %s.out > // RUN: PID=$(%s.out) > // RUN: %lldb -p $PID -b -o 'target list' | FileCheck %s > // RUN: kill -9 $PID > // CHECK: foo > > #include <stdio.h> > #include <unistd.h> > > int main() { > pid_t pid = fork(); > if (pid > 0) { > // parent process, print child pid > printf("%d", pid); > return 0; > } else if (pid < 0) { > printf("Unable to fork\n"); > return -1; > } > // child process > pause(); > } > > The lit test get stuck on `// RUN: PID=$(%s.out)`. Not sure why, the parent > process shouldn't wait on its children.. I would do an end to end test for this. We have many attach tests that should be easy to modify and pause() and then try to load a local dylib that is dlopen'ed. Unless Pavel has a differing opinion? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D96637/new/ https://reviews.llvm.org/D96637 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits