Hello everyone, I'm trying to load and run a pass on Cygwin target: opt -load=mypass.dll -mypass There is an LLVM example - Hello, however lib/Transforms/Makefile says # No support for plugins on windows targets and then excludes Hello from build ifeq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW Minix)) PARALLEL_DIRS := $(filter-out Hello, $(PARALLEL_DIRS)) endif On the other hand, I found old suggestions to use configure --enable-shared --disable-embed-stdcxx and then link a pass to LLVM dynamic library, using the following Makefile for the pass: ... LOADABLE_MODULE=1 include $(LEVEL)/Makefile.common LIBS+=-Lpath-to-LLVM -lcygLLVM-3.4svn I'm able to build the mypass.dll which is linked against cygLLVM-3.4svn.dll. However, opt load still fails (has no effect). Are opt plugins still supported for Cygwin target? Kind Regards, Sergey Yakushkin -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130611/b0e24866/attachment.html>
Hi Sergey, > However, opt load still fails (has no effect). you also have to use -hello on the opt command line in order to actually run the pass. Ciao, Duncan.
Well, I was using command 'opt -load mypass.dll -mypass' with -mypass option enabling the pass. The actual problem was in my system env, then configure script wasn't working and build used mix of Win/MinGW/Cygwin tools because of $PATH in wrong order in some cases. I've fixed system PATHs and loading of shared libraries started working in opt. BTW, I'm using poolalloc project on cygwin. Project Makefile disables shared library target on Cygwin and MinGW. However, it seems to be working fine on Cygwin (maybe with a few minor fixes for certain gcc versions). What was the reason to disable poolalloc for Cygwin? On Wed, Jun 12, 2013 at 9:37 AM, Duncan Sands <baldrick at free.fr> wrote:> Hi Sergey, > > > > However, opt load still fails (has no effect). > > you also have to use -hello on the opt command line in order to actually > run the pass. > > Ciao, Duncan. > ______________________________**_________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/**mailman/listinfo/llvmdev<http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev> >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130615/f045597c/attachment.html>
Maybe Matching Threads
- [LLVMdev] how to opt -load on cygwin
- Compiling SAFECode poolalloc in cygwin create different libraries compared to linux.
- Compiling SAFECode poolalloc in cygwin create different libraries compared to linux.
- [LLVMdev] Changed: Build errors for poolalloc using MinGW/gcc 4.4.0
- [LLVMdev] How do I download the "poolalloc" module ?