search for: createverifierpass

Displaying 20 results from an estimated 32 matches for "createverifierpass".

2015 Sep 16
3
RFC: LTO should use -disable-llvm-verifier
...t based on NDEBUG for lto.cpp, but in llvm-lto it always defaults to false. Is that intentional? - You mentioned that the verifier was currently being run 3 times: (1) after parsing, (2) at the beginning of the optimization pipeline, and (3) at the end of it. It looks to me like (1) is done via the createVerifierPass() added in LTOCodeGenerator::applyScopeRestrictions(). However, gold does not use LTOCodeGenerator, and I don't see it explicitly adding an initial createVerifierPass. So it looks like for gold it is only being called twice (beginning of optimization pipeline and at the end). So I think for gol...
2013 Jan 24
2
[LLVMdev] What would cause instructions to NOT make it into the module?
> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] > On Behalf Of Sean Silva > Subject: Re: [LLVMdev] What would cause instructions to NOT make it into the module? > It is a pass that can be run like any other pass. See createVerifierPass(). You can also just call verifyModule() with the appropriate parameters; it's defined in include/llvm/Analysis/Verifier.h. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in...
2015 Sep 16
5
RFC: LTO should use -disable-llvm-verifier
...IRE: noassert” though. — Mehdi > > Teresa > >> - You mentioned that the verifier was currently being run 3 times: (1) >> after parsing, (2) at the beginning of the optimization pipeline, and >> (3) at the end of it. It looks to me like (1) is done via the >> createVerifierPass() added in >> LTOCodeGenerator::applyScopeRestrictions(). However, gold does not use >> LTOCodeGenerator, and I don't see it explicitly adding an initial >> createVerifierPass. So it looks like for gold it is only being called >> twice (beginning of optimization pipeline...
2010 Jun 05
0
[LLVMdev] Inserting a function call into bitcode
...e is a function verifyAnalysis() in Pass but it is empty. > So do you suggest implementing that function? If it is the case, what should > I look while implementing that function? Or something else altogether? I'm assuming you have a PassManager PM, in which case it would be 'PM.add(createVerifierPass());' which is equivalent to 'opt -verify foo.bc'. Please let me know what that turns up; even if it finds no problems that fact is still useful information. The webpage is http://llvm.org/docs/Passes.html#verify . Nick > > Thanks, > Nehal. > > -----Original Message--...
2010 Jun 04
3
[LLVMdev] Inserting a function call into bitcode
Hi Nick I am not quite sure what you meant by verifier. I checked online documents and found that there is a function verifyAnalysis() in Pass but it is empty. So do you suggest implementing that function? If it is the case, what should I look while implementing that function? Or something else altogether? Thanks, Nehal. -----Original Message----- From: Nick Lewycky [mailto:nicholas at mxc.ca]
2013 Jan 24
2
[LLVMdev] What would cause instructions to NOT make it into the module?
On Jan 23, 2013, at 21:47 , Sean Silva <silvas at purdue.edu> wrote: > Try running the verifier pass (the one that is invoked by `opt -verify`). I'm not sure how to do this. I'm writing a Cocoa app that calls the LLVM API directly; I don't use any of the command-line tools. Is there a way to verify via API? I think I've actually done this for individual types, dunno
2013 Jan 24
0
[LLVMdev] What would cause instructions to NOT make it into the module?
It is a pass that can be run like any other pass. See createVerifierPass(). -- Sean Silva On Thu, Jan 24, 2013 at 12:50 AM, Rick Mann <rmann at latencyzero.com> wrote: > > On Jan 23, 2013, at 21:47 , Sean Silva <silvas at purdue.edu> wrote: > >> Try running the verifier pass (the one that is invoked by `opt -verify`). > > I'm not s...
2007 Jul 13
0
[LLVMdev] llvm-gcc-4-2 development branch is open
...;llvm/CodeGen/Passes.h" +#include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/Streams.h" /// dummy_function - This is used when linking the LLVM libraries into a dynamic @@ -40,8 +41,10 @@ void dummy_function() { new llvm::ExistingModuleProvider(0); llvm::createVerifierPass(); - llvm::WriteBitcodeToFile(0, llvm::cout); + llvm::CreateBitcodeWriterPass(*llvm::cout); + llvm::WriteBitcodeToFile(0, *llvm::cout); llvm::ParseBitcodeFile(NULL); + llvm::MemoryBuffer::getNewMemBuffer(0); llvm::createInstructionCombiningPass(); llvm::createScalarReplAggregatesPass(...
2007 Jul 14
0
[LLVMdev] llvm-gcc-4-2 development branch is open
...There was a change to the mirror in May 07, but it was just changing Bytecode -> Bitcode. My guess is the Evan's change didn't reach the mirror. Here is the function as it exists in the llvm-gcc-4.0 mirror today: void dummy_function() { new llvm::ExistingModuleProvider(0); llvm::createVerifierPass(); llvm::WriteBitcodeToFile(0, llvm::cout); llvm::ParseBitcodeFile(NULL); ... and in llvm-gcc-4.2: void dummy_function() { new llvm::ExistingModuleProvider(0); llvm::createVerifierPass(); llvm::CreateBitcodeWriterPass(*llvm::cout); llvm::WriteBitcodeToFile(0, *llvm::cout); llvm::Pars...
2008 Jan 25
1
[LLVMdev] Something about the andersens pass
...unction. 4) I run the following pass: { PassManager PM; PM.add(new TargetData(*EE->getTargetData())); PM.add(createInstructionCombiningPass()); PM.run(*qModule); } I then run another pass: PassManager PM; PM.add(new TargetData(*EE->getTargetData())); PM.add(createVerifierPass()); //PM.add(createAndersensPass()); // Seems to break dynamic casts in combo with load value numbering PM.add(createLoadValueNumberingPass()); PM.add(createGCSEPass()); PM.add(createAggressiveDCEPass()); PM.add(createDeadInstEliminationPass()); PM.run(*qModule); Next, I call...
2007 Jul 13
2
[LLVMdev] llvm-gcc-4-2 development branch is open
On Jul 13, 2007, at 9:28 AM, Duncan Sands wrote: > Hi Chris, > >> This is probably a patch that got checked into llvm-gcc4 after devang >> started work on 4.2. Please feel free to update 4.2 to the version >> in >> 4.0. > > no, it doesn't exist in 4.0. hmm. that can not be true. It was applied by Evan on May 07, 2007 to unbreak Apple style builds. -
2005 Jun 04
1
[LLVMdev] "Value in symtab but has no slot number!!"
...rify" method in the Module class, but just for the records, I did this: --------------- PassManager Passes; // Add an appropriate TargetData instance for this module... Passes.add(new TargetData("save", ModuleToSave)); // Make sure the input LLVM is well formed. Passes.add(createVerifierPass()); Passes.run(*ModuleToSave); --------------- I got stuck in another problem. I suppose it's very simple but I do not really know what is happening. I have a module like this: ------------------------------------ %binary_tree__0 = type { int, %binary_tree__0*, %binary_tree__0* } ... %Ne...
2010 May 17
0
[LLVMdev] Passes ordering
Hi LLVM, I have a question about how to ensure one pass runs exactly after another pass. In the implementation of opt.cpp, if the VerifyEach is set, a Verifier from llvm::createVerifierPass() is added after each pass. Is this verifier called after the verified pass immediately? The interfaces of PassManager only allows us to specify which passes the current pass replies on, and if the the current pass breaks any existing passes. PassManager will schedule the pass at the right time w....
2007 Jul 13
2
[LLVMdev] llvm-gcc-4-2 development branch is open
...+#include "llvm/Support/MemoryBuffer.h" > #include "llvm/Support/Streams.h" > > /// dummy_function - This is used when linking the LLVM libraries into a dynamic > @@ -40,8 +41,10 @@ > void dummy_function() { > new llvm::ExistingModuleProvider(0); > llvm::createVerifierPass(); > - llvm::WriteBitcodeToFile(0, llvm::cout); > + llvm::CreateBitcodeWriterPass(*llvm::cout); > + llvm::WriteBitcodeToFile(0, *llvm::cout); > llvm::ParseBitcodeFile(NULL); > + llvm::MemoryBuffer::getNewMemBuffer(0); > > llvm::createInstructionCombiningPass(); > l...
2007 Nov 08
3
[LLVMdev] Newbie JITter
...;; return 1; } TargetMachine* target = MArch->CtorFn(*M, ""); assert(target && "Could not allocate target machine!"); FunctionPassManager Passes(new ExistingModuleProvider(M)); Passes.add(new TargetData(*target->getTargetData())); Passes.add(createVerifierPass()); switch (target->addPassesToEmitFile(Passes, std::cout, TargetMachine::AssemblyFile, false)) { default: assert(0 && "Invalid file model!"); return 1; case FileModel::MachOFile: case FileModel::ElfFile: case FileModel::Error: std::cerr <<...
2015 Sep 03
4
RFC: LTO should use -disable-llvm-verifier
On Thu, Sep 03, 2015 at 01:10:42AM +0000, Eric Christopher wrote: > On Tue, Sep 1, 2015 at 10:43 AM Duncan P. N. Exon Smith < > dexonsmith at apple.com> wrote: > > > > > > On 2015-Aug-31, at 18:09, Eric Christopher <echristo at gmail.com> wrote: > > > > > > > > > > > > On Mon, Aug 31, 2015 at 5:50 PM Duncan P. N. Exon Smith
2013 Jul 28
0
[LLVMdev] IR Passes and TargetTransformInfo: Straw Man
...anagerBuilder().populateIPOPassManager(passes, + /*Internalize=*/false, + !DisableInline); + PassManagerBuilder().populatePostIPOPM(passes); + } // Make sure everything is still good. passes.add(createVerifierPass()); Index: tools/opt/opt.cpp =================================================================== --- tools/opt/opt.cpp (revision 187135) +++ tools/opt/opt.cpp (working copy) @@ -104,6 +104,11 @@ cl::desc("Include the standard compile time optimizations")); static cl...
2005 Jun 04
0
[LLVMdev] "Value in symtab but has no slot number!!"
Hi Ricardo, Yes, its because you have an invalid module. You should run Module::verify before attempting to write the bytecode. This will pinpoint the problem for you. However, I think I know what's going on: you've left an object (a Value not a Type) in the symbol table that is not in the Module. Not quite sure how you do that, but I suppose its possible if you manipulated the symbol
2007 Jul 11
12
[LLVMdev] llvm-gcc-4-2 development branch is open
Hi All, llvm-gcc-4-2 development branch is now open for development at llvm.org/svn/llvm-project/llvm-gcc-4-2 It is not yet ready, it can not even bootstrap. I welcome LLVM developers to test and apply fixes! However, first take a note of ground rules : 1) LLVM developers, use your write access as judiciously as you use it for LLVM development and follow same check-in procedure. 2)
2005 Jun 04
3
[LLVMdev] "Value in symtab but has no slot number!!"
Hello, I am receiving this error: assert(Slot != -1 && "Value in symtab but has no slot number!!"); While trying to generate a module at run time using LLVM classes. Specifically with an instance of StoreInst class. After I generate all the instructions, I try to save the Module to bytecode, but I receive that error in the method 'outputSymbolTable' Does anyone