search for: islegaltoprunedepend

Displaying 7 results from an estimated 7 matches for "islegaltoprunedepend".

2015 Nov 20
2
Hexagon, DFAPacketzier and dependency pruning
DFAPacketizer has a virtual method isLegalToPruneDependencies(). I looked at the Hexagon code and but wasn't unable to understand the details (unfortunately as of now, I'm not well versed in the Hexagon architecture). Would anyone be able to shed light on what is dependency pruning and how it should be used? Any help is appreciated. -- R ---...
2012 Mar 29
2
[LLVMdev] VLIWPacketizerList: failing to schedule terminators
...; namespace { class R600Packetizer : public VLIWPacketizerList { public: R600Packetizer(MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT, LiveIntervals * LIS); virtual bool isLegalToPacketizeTogether(SUnit *SUI, SUnit * SUJ); virtual bool isLegalToPruneDependencies(SUnit *SUI, SUnit * SUJ); }; R600Packetizer::R600Packetizer(MachineFunction &MF, MachineLoopInfo &MLI, MachineDominatorTree &MDT, LiveIntervals * LIS) : VLIWPacketizerList(MF, MLI, MDT, false /* isPostRA */, LIS) { } bool R600Packetizer::isLegalT...
2012 Jun 08
3
[LLVMdev] Instruction bundles before RA: Rematerialization
...)/ > MoveMIAfterBundle(MI, BundleHeader). Calling this repeatedly should > achieve desired effect -- remove what could be removed, and live what > needs to remain bundled intact. The move utility can change > instruction properly for each target./* > That's explains the hook isLegalToPruneDependencies() in the packetizer :-). I don't see why that case cannot be handled by the existent model and needs that kind of API's. For example, if 'add' needs to be rematted, it's possible as long as all its operands are available at the remat position. The same holds for 'c...
2012 Jun 08
0
[LLVMdev] Instruction bundles before RA: Rematerialization
...undle(MI, BundleHeader). Calling this repeatedly should >> achieve desired effect – remove what could be removed, and live what >> needs to remain bundled intact. The move utility can change >> instruction properly for each target./* >> > > That's explains the hook isLegalToPruneDependencies() in the packetizer :-). > > I don't see why that case cannot be handled by the existent model and > needs that kind of API's. For example, if 'add' needs to be rematted, > it's possible as long as all its operands are available at the remat > position. The...
2012 Jun 07
0
[LLVMdev] Instruction bundles before RA: Rematerialization
Jakob, Please see my comments below. Hope this helps. Sergei -- Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum. From: Jakob Stoklund Olesen [mailto:stoklund at 2pi.dk] Sent: Thursday, June 07, 2012 1:02 PM To: Sergei Larin Cc: 'Ivan Llopard'; 'LLVM Developers Mailing List' Subject: Re: [LLVMdev] Instruction bundles before RA: Rematerialization
2012 Jun 07
2
[LLVMdev] Instruction bundles before RA: Rematerialization
On Jun 7, 2012, at 10:25 AM, "Sergei Larin" <slarin at codeaurora.org> wrote: > Generally as far as I concern, there is no way “generic” (platform independent) code can add instructions to bundles optimally I agree, there are too many ways of modeling stuff with bundles. That is why I took the philosophical stance of treating bundles as black boxes during RA. I think the
2012 Apr 19
0
[LLVMdev] Target Dependent Hexagon Packetizer patch
...lf is a packet. >> + virtual bool isSoloInstruction(MachineInstr *MI) { >> + return true; >> + } >> >> // isLegalToPacketizeTogether - Is it legal to packetize SUI and SUJ >> // together. >> @@ -141,6 +160,7 @@ public: >> virtual bool isLegalToPruneDependencies(SUnit *SUI, SUnit *SUJ) { >> return false; >> } >> + >> }; >> } >> >> diff --git a/lib/CodeGen/DFAPacketizer.cpp b/lib/CodeGen/DFAPacketizer.cpp >> index 5ff641c..bfbe779 100644 >> --- a/lib/CodeGen/DFAPacketizer.cpp >>...