[lldb-dev] How to set argument -Xxm100M for an executable?

Enrico Granata egranata at apple.com
Mon Oct 7 16:48:12 PDT 2013


I apologize for not being able to help here, but I am unfortunately not in the position to comment on timelines
I am sure you understand

Enrico Granata
📩 egranata@.com
☎️ 27683

On Oct 7, 2013, at 4:42 PM, Yin Ma <yin at affinic.com> wrote:

> Hi Enrico,
>  
> This is quite complex implementation. So for this bug,
> I have reported this problem in bugzilla.
> I would like to know how likely or how long this bug could be fixed
> and released to the public? This bug is reported by our client who is using
> lldb with our GUI program. This problem is blocking his work.
> I would like to know more to reply him.
>  
> Thanks,
>  
> Yin
>  
> From: Enrico Granata [mailto:egranata at apple.com] 
> Sent: Monday, October 07, 2013 4:26 PM
> To: Yin Ma
> Cc: lldb-dev
> Subject: Re: [lldb-dev] How to set argument -Xxm100M for an executable?
>  
> Hi Yin,
> the problem with your approach is that you would not simply be able to do the API equivalent of “set args” and then return.
> If you are going down the SBLaunchInfo route, you will also need to launch through the API (what you do is make an SBLaunchInfo and then pass it to SBTarget::Launch, and get an SBProcess back)
> Once you are in the business of launching through the API, you might also want to start listening to process events for your launched inferior
> It seems like, pending a fix for the settings set bugzilla issue (thanks for filing, btw), going the API way might be your best bet, as I think others have pointed you at
>  
> A good example of how to do that is in examples/python/process_events.py, or the whole lldb-perf project if you’re more of a C++ developer
>  
> Enrico Granata
> 📩 egranata@.com
> ☎️ 27683
>  
> On Oct 7, 2013, at 4:03 PM, Yin Ma <yin at affinic.com> wrote:
> 
> 
> Hi Enrico,
>  
> Since there is no way to work around –Xxm100M problem, I know we can define
> our own command. I am wondering if it is possible to expend set command in llvm
> by importing a python file, like set args  xxx, it will call my python function
> to use API to do the job? If yes, could you provide me a simple example about how
> to do this?
>  
> Thanks,
>  
> Yin
>  
> From: Enrico Granata [mailto:egranata at apple.com] 
> Sent: Monday, October 07, 2013 2:55 PM
> To: Yin Ma
> Cc: lldb-dev
> Subject: Re: [lldb-dev] How to set argument -Xxm100M for an executable?
>  
> On Oct 7, 2013, at 2:27 PM, Yin Ma <yin at affinic.com> wrote:
> 
> 
> 
> Hi
>  
> To set up a run argument, based on the document, it should be
> Settings set target.run-args  , like gdb set args
>  
> However, no matter how, I cannot set my argument to –Xxm100M
> I tried
> Settings set target.run-args –Xxm100M
> Lldb: invalid option – X
>  
> I also tried
> Settings set target.run-args “-Xxm100M”
> Doesn’t work.
>  
>  
> Unfortunately you seem to be right. The only way I have been able to make this work is by saying:
> (lldb) sett set target.run-args -- --Xxm100M
> (lldb) r
> Process 5112 launched: '/private/tmp/args' (x86_64)
> argv[0] = args
> argv[1] = --
> argv[2] = --Xxm100M
>  
> but as you can see, this causes a spurious - - (double dash) to be passed down to your inferior process
> Seems worth of a bugzilla to me. With that said, while I have not tried it, I am kinda optimistic that SBLaunchInfo (the API class) would not be subject to the same bug, since this is more of a command-line issue than anything
> 
> 
> 
> Could somebody let me know how to correctly set an argument.
>  
> On gdb, if we run
> Set args
> This means no argument
> However, under lldb
> Settings set target.run-args
> It will report an error
>  
> Is this a good behavior?
>  
>  
> In LLDB, you would say 
> (lldb) sett set target.run-args ""
>  
> Since our settings set command is meant to set any kind of setting, it makes sense that we ask for an argument. If we were to allow setting set <foo> <end of command>, we would probably need a way to know which is the “default value” for any specific setting. Feel free to file an ER bugzilla for that too
>  
> Thanks,
>  
> Yin
> _______________________________________________
> lldb-dev mailing list
> lldb-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
>  
> Enrico Granata
> 📩 egranata@.com
> ☎️ 27683

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20131007/9cfb2b87/attachment.html>


More information about the lldb-dev mailing list