Displaying 20 results from an estimated 24 matches for "machinedomin".
Did you mean:
machineadmin
2013 Sep 06
5
[LLVMdev] Extracting libmachine from libcodegen (bug 1121)
...rting from the assumption that we'll be moving only the modules
that start with 'Machine' into the new library. These are:
- MachineBasicBlock
- MachineBlockFrequencyInfo
- MachineBlockPlacement
- MachineBranchProbabilityInfo
- MachineCodeEmitter
- MachineCopyPropagation
- MachineCSE
- MachineDominators
- MachineFunctionAnalysis
- MachineFunction
- MachineFunctionPass
- MachineFunctionPrinterPass
- MachineInstrBundle
- MachineInstr
- MachineLICM
- MachineLoopInfo
- MachineModuleInfo
- MachineModuleInfoImpls
- MachinePassRegistry
- MachinePostDominators
- MachineRegisterInfo
- MachineScheduler...
2010 Aug 11
1
[LLVMdev] Need advice on writing scheduling pass
...ch I am taking.
- Currently, I am running the passes in the following order.
(-debug-pass=Structure output)
Remove unreachable machine basic blocks
Live Variable Analysis
Eliminate PHI nodes for register allocation
Two-Address instruction pass
Process Implicit Definitions.
MachineDominator Tree Construction
Machine Natural Loop Construction
Modulo scheduing <== modulo scheduling pass inserted here
Slot index numbering
Live Interval Analysis
MachineDominator Tree Construction
Machine Natural Loop Construction
Simple Register Coalescing
Calculate...
2013 Sep 11
0
[LLVMdev] Extracting libmachine from libcodegen (bug 1121)
...only the modules
> that start with 'Machine' into the new library. These are:
>
> - MachineBasicBlock
> - MachineBlockFrequencyInfo
> - MachineBlockPlacement
> - MachineBranchProbabilityInfo
> - MachineCodeEmitter
> - MachineCopyPropagation
> - MachineCSE
> - MachineDominators
> - MachineFunctionAnalysis
> - MachineFunction
> - MachineFunctionPass
> - MachineFunctionPrinterPass
> - MachineInstrBundle
> - MachineInstr
> - MachineLICM
> - MachineLoopInfo
> - MachineModuleInfo
> - MachineModuleInfoImpls
> - MachinePassRegistry
> - Ma...
2012 Nov 20
3
[LLVMdev] Possible bug in LLC at -O1
...olution Analysis
+ Loop Pass Manager
+ Canonicalize natural loops
+ Induction Variable Users
+ Loop Strength Reduction
+ Optimize for code generation
+ Natural Loop Information
+ Branch Probability Analysis
X86 DAG->DAG Instruction Selection
+ MachineDominator Tree Construction
+ Local Dynamic TLS Access Clean-up
+ Tail Duplication
+ Optimize machine instruction PHIs
+ Remove dead machine instructions
+ MachineDominator Tree Construction
+ Machine Natural Loop Construction
+ Machine Loop Invariant Code Motion
+...
2012 Apr 25
2
[LLVMdev] CriticalAntiDepBreaker rewrites a register operand of a call instruction
...) is run.
Post RA top-down list latency scheduler
Verify generated machine code
Analyze Machine Code For Garbage Collection
Machine Block Frequency Analysis
Branch Probability Basic Block Placement
Verify generated machine code
Mips Delay Slot Filler
MachineDominator Tree Construction
Machine Natural Loop Construction
Mips Assembly Printer
Delete Garbage Collector Information
On Tue, Apr 24, 2012 at 11:36 PM, Anton Korobeynikov <
anton at korobeynikov.info> wrote:
> Hi Akira,
>
> > When I add -verify-machineinstrs, it c...
2013 Apr 25
0
[LLVMdev] How to know if an instruction is "usable"
On 4/25/2013 12:06 PM, Giacomo Tagliabue wrote:
> Thanks,
> So, how do I check if a block dominates another one?
In IR use analysis DominatorTree from
"include/llvm/Analysis/Dominators.h". For machine instructions, use
MachineDominatorTree
from "include/llvm/CodeGen/MachineDominators.h".
Both of them implement function "dominates" that takes two blocks
(BasicBlock* or MachineBasicBlock*) and returns a boolean value
indicating whether one dominates the other. A block will always
dominate itself, so thi...
2013 Apr 25
2
[LLVMdev] How to know if an instruction is "usable"
Thanks,
So, how do I check if a block dominates another one?
On 25 April 2013 11:59, Krzysztof Parzyszek <kparzysz at codeaurora.org> wrote:
> On 4/25/2013 11:52 AM, Giacomo Tagliabue wrote:
>
>> Is there an easy way to know if, at a certain instruction, a certain
>> value is usable or not? i.e., I am sure that if i use that value i don't
>> to get the error
2012 Apr 25
0
[LLVMdev] CriticalAntiDepBreaker rewrites a register operand of a call instruction
...ist latency scheduler
> Verify generated machine code
> Analyze Machine Code For Garbage Collection
> Machine Block Frequency Analysis
> Branch Probability Basic Block Placement
> Verify generated machine code
> Mips Delay Slot Filler
> MachineDominator Tree Construction
> Machine Natural Loop Construction
> Mips Assembly Printer
> Delete Garbage Collector Information
>
>
> On Tue, Apr 24, 2012 at 11:36 PM, Anton Korobeynikov <
> anton at korobeynikov.info> wrote:
>
>> Hi Akira,
>>
&g...
2009 May 05
0
[LLVMdev] unable to schedule pass message
...but perhaps someone has seen this before and can
answer. I am trying to add a new register allocator to my target, and would
like to use the Strong Phi Elimination pass. I am doing the following in my
allocator
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequiredID(MachineDominatorsID);
AU.addRequiredID(StrongPHIEliminationID); // Eliminate PHI
nodes
AU.addRequired<LiveStacks>();
AU.addPreserved<LiveStacks>();
AU.addRequired<MachineLoopInfo>();
AU.addPreserved<MachineLoopInfo>();
MachineFunctionPass::ge...
2012 Apr 25
0
[LLVMdev] CriticalAntiDepBreaker rewrites a register operand of a call instruction
Hi Akira,
> When I add -verify-machineinstrs, it complains that there are instructions
> after terminator instructions.
Yes, -verify-machineinstrs and -verify-coalescing are your friends here :)
--
With best regards, Anton Korobeynikov
Faculty of Mathematics and Mechanics, Saint Petersburg State University
2013 Apr 25
1
[LLVMdev] How to know if an instruction is "usable"
...ora.org> wrote:
> On 4/25/2013 12:06 PM, Giacomo Tagliabue wrote:
>
>> Thanks,
>> So, how do I check if a block dominates another one?
>>
>
> In IR use analysis DominatorTree from "include/llvm/Analysis/**Dominators.h".
> For machine instructions, use MachineDominatorTree
> from "include/llvm/CodeGen/**MachineDominators.h".
>
> Both of them implement function "dominates" that takes two blocks
> (BasicBlock* or MachineBasicBlock*) and returns a boolean value indicating
> whether one dominates the other. A block will always...
2007 Dec 10
1
[LLVMdev] MachineDominatorTree
Hi, guys,
what is the interface for finding the immediate dominator of a machine
basic block in LLVM 2.1? I found some methods to check if a node dominates
other in llvm::MachineDominatorTree, but I was looking for something like:
MachineBasicBlock * mbb = ...
MachineBasicBlock * iDom = XXX->getImmediateDominator(mbb);
is there something similar?
best,
Fernando
2012 Nov 23
2
[LLVMdev] [cfe-dev] costing optimisations
On 23.11.2012, at 15:12, john skaller <skaller at users.sourceforge.net> wrote:
>
> On 23/11/2012, at 5:46 PM, Sean Silva wrote:
>
>> Adding LLVMdev, since this is intimately related to the optimization passes.
>>
>>> I think this is roughly because some function level optimisations are
>>> worse than O(N) in the number of instructions.
>>
2013 Sep 12
2
[LLVMdev] Extracting libmachine from libcodegen (bug 1121)
...some core analysis passes. The “Machine” modules you listed above include machine code analysis or transform passes that you probably don’t want. Pruning the list to basic IR support:
>
>> - MachineBasicBlock
>> - MachineBranchProbabilityInfo
>> - MachineCodeEmitter
>> - MachineDominators
>> - MachineFunctionAnalysis
>> - MachineFunction
>> - MachineFunctionPass
>> - MachineFunctionPrinterPass
>> - MachineInstrBundle
>> - MachineInstr
>> - MachineLoopInfo
>> - MachineModuleInfo
>> - MachineModuleInfoImpls
>> - MachineP...
2012 Apr 25
2
[LLVMdev] CriticalAntiDepBreaker rewrites a register operand of a call instruction
Hi Anton,
Thanks for the suggestions.
I compiled the .ll file with llc with command line options
-verify-dom-info, -verify-regalloc and -verify-loop-info.
I didn't see any diagnostic messages.
When I add -verify-machineinstrs, it complains that there are instructions
after terminator instructions.
It seems that these error messages are printed because the verifier does
not understand that
2011 May 24
4
[LLVMdev] Need advice on writing scheduling pass
...ow?
Thanks
Jonas
On Aug 11, 2010, at 12:14 PM, Akira Hatanaka wrote:
> Remove unreachable machine basic blocks
> Live Variable Analysis
> Eliminate PHI nodes for register allocation
> Two-Address instruction pass
> Process Implicit Definitions.
> MachineDominator Tree Construction
> Machine Natural Loop Construction
> Modulo scheduing <== modulo scheduling pass inserted here
> Slot index numbering
> Live Interval Analysis
> MachineDominator Tree Construction
> Machine Natural Loop Construction
> Simpl...
2012 Mar 29
2
[LLVMdev] VLIWPacketizerList: failing to schedule terminators
...lass in order to do pre-RA scheduling.
Thanks,
Tom
-------------- next part --------------
#include "AMDGPU.h"
#include "llvm/PassRegistry.h"
#include "llvm/CodeGen/DFAPacketizer.h"
#include "llvm/CodeGen/LiveIntervalAnalysis.h"
#include "llvm/CodeGen/MachineDominators.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineLoopInfo.h"
using namespace llvm;
namespace {
class R600Packetizer : public VLIWPacketizerList {
public:
R600Packetizer(MachineFunction &MF, MachineLoopInfo &MLI,...
2008 Jan 29
4
[LLVMdev] PassManager Mysteries
On Monday 28 January 2008 09:31:11 pm Owen Anderson wrote:
> From experience, an important point that is often forgotten is that
> the order of declaration of dependencies matter. If you declare that
> you require pass A, and then pass B, and B doesn't preserve A, you'll
> get an error like this.
>
> Just some advice from having had similar problems in the past.
2010 Oct 01
2
[LLVMdev] CMake "sudo make install" & headers
...neBasicBlock.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineCodeEmitter.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineCodeInfo.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineConstantPool.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineDominators.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineFrameInfo.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineFunction.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/MachineFunctionAnalysis.h
-- Installing: /usr/local/llvm-2.8/include/llvm/CodeGen/Machi...
2012 Jul 16
3
[LLVMdev] RFC: LLVM incubation, or requirements for committing new backends
...;
> +#include "llvm/ADT/SCCIterator.h"
> +#include "llvm/ADT/SmallVector.h"
> +#include "llvm/ADT/Statistic.h"
> +#include "llvm/Analysis/DominatorInternals.h"
> +#include "llvm/Analysis/Dominators.h"
> +#include "llvm/CodeGen/MachineDominators.h"
> +#include "llvm/CodeGen/MachineDominators.h"
> +#include "llvm/CodeGen/MachineFunction.h"
> +#include "llvm/CodeGen/MachineFunctionAnalysis.h"
> +#include "llvm/CodeGen/MachineFunctionPass.h"
> +#include "llvm/CodeGen/Machin...