Displaying 20 results from an estimated 30000 matches similar to: "[LLVMdev] Dumping profile information at an arbitrary point in time"
2008 Sep 20
0
[LLVMdev] Run-time optimization using profile data
On Sat, Sep 20, 2008 at 12:12 PM, madiyaan <ahmadsharif at hotmail.com> wrote:
> Hello:
>
> I am new to llvm. I am looking for an example somewhere, or a
> walkthrough/guide on how to do runtime optimization using llvm. Ideally, I
> would like to:
>
> 1. Compile the program from C to LLVM or native with LLVM information
> embedded in the binary.
> 2. Run the binary
2010 Feb 25
3
[LLVMdev] Using Profile Information
Hi,
How can I use profile information into my pass for performing some analysis.
I tried something like:
PassManager PassMgr = PassManager();
cl::opt<std::string> ProfileDataFile(cl::Positional,
cl::desc("<llvmprof.out file>"),
cl::Optional, cl::init("llvmprof.out"));
PassMgr.add(createProfileLoaderPass(ProfileDataFile));
2010 Feb 26
1
[LLVMdev] Using Profile Information
I have not made a separate pass. I have done it in single pass ie added
ProfileLoaderPass , got information in PI and now I am planning to
perform the analysis here itself.
I was trying to print information using ProfileInfoPrinter pass but was
unable to do it.
namespace {
class MyAna : public ModulePass {
ProfileInfo *PI;
public:
static char ID; // Class identification, replacement
2008 Sep 20
2
[LLVMdev] Run-time optimization using profile data
Hello:
I am new to llvm. I am looking for an example somewhere, or a
walkthrough/guide on how to do runtime optimization using llvm. Ideally, I
would like to:
1. Compile the program from C to LLVM or native with LLVM information
embedded in the binary.
2. Run the binary under LLVM's interpreter, and profile the data. I hope
LLVM has support for all this, and I don't have to insert my own
2016 Dec 31
0
Dumping compiled module as LLVM IR bitcode after certain optimization passes
Hi,
Usually we disable the llvm optimizations (clang -mllvm disable-llvm-optzns ) and then use opt to run the passes till the point of interest. I don’t know of a shortcut in clang (the new PassManager will make it possible to pass an arbitrary pipeline with a string, but not there yet).
—
Mehdi
> On Dec 31, 2016, at 11:43 AM, Alex Susu via llvm-dev <llvm-dev at lists.llvm.org> wrote:
2008 Oct 08
1
[LLVMdev] Getting target machine specific information at run-time
Hi David,
----- Ursprüngliche Mail ----
> Von: David Greene <dag at cray.com>
> An: llvmdev at cs.uiuc.edu
> Gesendet: Dienstag, den 7. Oktober 2008, 18:14:45 Uhr
> Betreff: Re: [LLVMdev] Getting target machine specific information at run-time
>
> On Tuesday 07 October 2008 06:57, Roman Levenstein wrote:
> > Hi,
> >
> > I'm playing with some
2012 Sep 26
0
[LLVMdev] Error while loading profile information
Hi all,
I am trying to load a profile information (llvmprof.out) which has been
separately created, to get the execution count of each basic block and use
it to estimate the execution count of machine basic blocks for getting how
many times any instruction gets executed, for ARM specifically. The error
on running the code comes as:
clang: PassManager.cpp:601: void
2010 Oct 08
0
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
On 10/8/10 3:15 PM, Owen Anderson wrote:
>
> On Oct 8, 2010, at 1:05 PM, John Criswell wrote:
>
>> On 10/8/10 1:29 PM, Owen Anderson wrote:
>>> Hello fellow LLVM-ers,
>>>
>>> As those of you who follow llvm-commits have probably noticed, I've
>>> been hard at work reworking our pass infrastructure to perform pass
>>>
2018 Jan 17
2
Dumping debug information from BC files
Hello LLVM-World,
I have a question about dumping debug information.
1.) I have compiled an object file with visual studio and debug
information. Then I used "llvm-readobj -codeview" and dumped the debug
information into a file.
This is working great
2.) I used clang-cl for the same task and finally dumped it again with
"llvm-readobj".
Worked great too.
3.) Then I used
2010 Feb 25
0
[LLVMdev] Using Profile Information
Ah BTW...
On 25.02.2010, at 17:33, ambika wrote:
> ProfileInfo *PI;
> PI = &getAnalysis<ProfileInfo>();
If this _in_ your pass, then you have to register the usage of this in
the getAnalysisUsage() method:
void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<ProfileInfo>();
}
Also you have to ensure that the pass you are using is executed right
2018 Jan 18
0
Dumping debug information from BC files
Thank you for your reply.
When I'm running "llvm-readobj" on an .obj file I get a result like shown
in my attachment. This is very easy to read. I don't know if this is the
codeview format. I would like to get this kind of debug information form a
.bc file too, because I JIT them and wanted to try to build a debugger.
With the file from "llvm-readobj" I see no
2010 Mar 04
6
[LLVMdev] [PATCH] Before/After IR Dumps
On Thursday 04 March 2010 01:54:55 Chris Lattner wrote:
> On Mar 2, 2010, at 1:45 PM, David Greene wrote:
> > This set of patches adds support for dumping IR before or after specified
> > Passes. It adds the following command-line options:
> >
> > -print-before=<pass-option>
> > -print-after=<pass-option>
> > -print-before-all
> >
2009 Jul 27
2
[LLVMdev] Pass Scheduling Information without using opt
Daniel Dunbar wrote:
> Ah, in this case llvm_shutdown isn't what you are looking for. I've
> never looked at the Statistic implementation so I can't be any help
> here, but if you poke around starting with "llvm/ADT/Statistic.h" you
> may find a way to do what you want.
I looked into that already, but Statistic.h only gives me the
possibility to implement tracking
2018 Jan 17
0
Dumping debug information from BC files
>
> 3.) Then I used clang-cl to generate a .bc file - but now I'm not able to
> use "llvm-readobj" anymore. Is there any tool available which can dump this
> debug information too?
>
.bc is LLVM bitcode [1], not the usual object file. `llvm-readobj` should
works only on the latter.
[1] https://llvm.org/docs/BitCodeFormat.html
--
Wei-Ren Chen (陳韋任)
Homepage:
2019 Aug 16
2
[ORC] [mlir] Dump assembly from OrcJit
+ MLIR dev mailing list since that’s where the OrcJit I’m using is.
Thanks for all the details, Lang! What you described is exactly what I’m looking for!
Please, MLIR dev, let me know if this debug feature and the solution that Lang describes below is interesting for MLIR. I’ll dig more into the details then but it doesn’t seem too complicated.
Thanks,
Diego
From: Lang Hames [mailto:lhames at
2009 Jul 27
0
[LLVMdev] Pass Scheduling Information without using opt
On Mon, Jul 27, 2009 at 1:43 AM, Ralf Karrenberg<Chareos at gmx.de> wrote:
> Here is some example code that describes what I am doing:
>
> MyPass : ModulePass {
>
> bool runOnModule(mod) {
>
> for some Functions f in mod {
> (do some stuff)
>
> ExistingModuleProvider mp(mod);
> FunctionPassManager* fpm =
> new FunctionPassManager(&mp);
I think
2010 Mar 05
0
[LLVMdev] [PATCH] Before/After IR Dumps
On Mar 4, 2010, at 7:28 AM, David Greene wrote:
> On Thursday 04 March 2010 01:54:55 Chris Lattner wrote:
>> On Mar 2, 2010, at 1:45 PM, David Greene wrote:
>>> This set of patches adds support for dumping IR before or after specified
>>> Passes. It adds the following command-line options:
>>>
>>> -print-before=<pass-option>
>>>
2018 Jan 17
2
Dumping debug information from BC files
The debug information is actually still in a different format in the .bc
file, it is LLVM metadata. I think the best reference for it is here:
https://llvm.org/docs/SourceLevelDebugging.html#ccxx-frontend
You can dump it just by disassembling the .bc file to textual IR using
llvm-dis and examining the !DI* metadata nodes. You will have to run the
file through llc to generate an object file to
2010 Oct 08
2
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
On Oct 8, 2010, at 1:05 PM, John Criswell wrote:
> On 10/8/10 1:29 PM, Owen Anderson wrote:
>> Hello fellow LLVM-ers,
>>
>> As those of you who follow llvm-commits have probably noticed, I've been hard at work reworking our pass infrastructure to perform pass initialization/registration without static constructors. This is a boon for clients of the LLVM libraries, as
2010 Oct 11
0
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
John,
On Oct 8, 2010, at 1:05 PM, John Criswell wrote:
>> These initialization routines must be invoked before the PassManager will be able to resolve pipelines involving your pass. For convenience, LLVM now exposes per-library batch initialization routines, i.e. initializeScalarOpts(), which initialize all the passes within a given library in a single go.
>
> From an ease of