[LLVMdev] Passing command line arguments to optimization passes
Jim Grosbach
grosbach at apple.com
Fri Jan 28 13:13:03 PST 2011
Yep. The ARM, X86 and PPC backends do this, for example. To find some examples, in <llvm>/lib/Target, run: grep -R "extern cl::opt" *
-Jim
On Jan 27, 2011, at 11:50 PM, Arnaud Allard de Grandmaison wrote:
> You could make the cl:opt object visible outside one of your passes, and use it in your other passes : in other words, it is a global variable shared between several files.
>
> Best regards,
> --
> Arnaud de Grandmaison
>
> -----Original Message-----
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of guyadini
> Sent: Thursday, January 27, 2011 12:38 PM
> To: llvmdev at cs.uiuc.edu
> Subject: Re: [LLVMdev] Passing command line arguments to optimization passes
>
>
> A follow-up question:
> Is there a way to make different passes accept one command line option that
> will affect all of them?
>
> For example, I'd like to have a -optStrength parameter, that can be given to
> all of my passes simultaneously.
>
> Thanks a lot,
> Guy
>
>
> Arnaud Allard de Grandmaison wrote:
>>
>> Hi Harel,
>>
>> Several existing passes can take command line arguments. Have a look at
>> lib/Transforms/Scalar/LoopUnrollPass.cpp for example. Its command line
>> arguments are defined using the cl::opt objects.
>>
>> Best regards,
>> --
>> Arnaud de Grandmaison
>> ________________________________
>> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On
>> Behalf Of Harel Cain
>> Sent: Thursday, January 27, 2011 10:05 AM
>> To: llvmdev at cs.uiuc.edu
>> Subject: [LLVMdev] Passing command line arguments to optimization passes
>>
>> Hi all,
>>
>> I was wondering if there's any way to pass command line arguments to LLVM
>> optimization passes when run through the opt tool.
>>
>> For example, suppose I register called MyPass, then I want to run
>>
>> opt -load libMyPass.so -MyPass 3 < input.bc
>>
>> and have "3" be available to MyPass as a kind of argv argumnet through
>> some method.
>>
>>
>> Or does it take a major rewrite of the opt tool command line parsing?
>>
>>
>> Thanks!
>>
>> Harel Cain
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>>
>
> --
> View this message in context: http://old.nabble.com/Passing-command-line-arguments-to-optimization-passes-tp30775359p30776468.html
> Sent from the LLVM - Dev mailing list archive at Nabble.com.
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
More information about the llvm-dev
mailing list