search for: mbb2idxmap

Displaying 10 results from an estimated 10 matches for "mbb2idxmap".

2008 Apr 16
3
[LLVMdev] Possible bug in LiveIntervalAnalysis?
Hi, In the LiveIntervalAnalysis::runOnMachineFunction, there is a code to compute the MBB2IdxMap, by remembering for each MBB its start and end instruction numbers: unsigned MIIndex = 0; for (MachineFunction::iterator MBB = mf_->begin(), E = mf_->end(); MBB != E; ++MBB) { unsigned StartIdx = MIIndex; for (MachineBasicBlock::iterator I = MBB->begin(), E = MBB->e...
2008 Apr 16
0
[LLVMdev] Possible bug in LiveIntervalAnalysis?
...0. (I believe because of an empty MBB in the function below, so StartIndex doesn't advance). scott On Wed, Apr 16, 2008 at 2:52 AM, Roman Levenstein <romixlev at yahoo.com> wrote: > Hi, > > In the LiveIntervalAnalysis::runOnMachineFunction, there is a code to > compute the MBB2IdxMap, by remembering for each MBB its start and end > instruction numbers: > > unsigned MIIndex = 0; > for (MachineFunction::iterator MBB = mf_->begin(), E = mf_->end(); > MBB != E; ++MBB) { > unsigned StartIdx = MIIndex; > > for (MachineBasicBlock::iter...
2008 Apr 18
1
[LLVMdev] Possible bug in LiveIntervalAnalysis?
...> function below, so StartIndex doesn't advance). > > scott > > On Wed, Apr 16, 2008 at 2:52 AM, Roman Levenstein > <romixlev at yahoo.com> wrote: >> Hi, >> >> In the LiveIntervalAnalysis::runOnMachineFunction, there is a code to >> compute the MBB2IdxMap, by remembering for each MBB its start and end >> instruction numbers: >> >> unsigned MIIndex = 0; >> for (MachineFunction::iterator MBB = mf_->begin(), E = mf_->end(); >> MBB != E; ++MBB) { >> unsigned StartIdx = MIIndex; >> >> fo...
2008 Feb 08
2
[LLVMdev] Some questions about live intervals
Hi Evan, Here is a patch for the LiveIntervalAnalysis that we discussed. --- Evan Cheng <evan.cheng at apple.com> schrieb: > > 1) What is the easiest way to understand which MBB a given > instruction index belongs to? All the required information is > available in the > > MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful > to add a small function getMBBFromIndex() to this class? > > Sure there is a reverse map (actually just a vector) Idx2MBBMap. > Justadd a query. Done. Please find a patch attached to this mail. > > As for (1) and (2),...
2008 Feb 11
0
[LLVMdev] Some questions about live intervals
...tch for the LiveIntervalAnalysis that we discussed. > > --- Evan Cheng <evan.cheng at apple.com> schrieb: >>> 1) What is the easiest way to understand which MBB a given >> instruction index belongs to? All the required information is >> available in the >>> MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful >> to add a small function getMBBFromIndex() to this class? >> >> Sure there is a reverse map (actually just a vector) Idx2MBBMap. >> Justadd a query. > > Done. Please find a patch attached to this mail. > >&...
2008 Jan 31
7
[LLVMdev] Some questions about live intervals
...egallocs and is also much faster (15x to 68x). I already started work on the implementation of this algorithm and have a few hopefully rather simple questions: 1) What is the easiest way to understand which MBB a given instruction index belongs to? All the required information is available in the MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful to add a small function getMBBFromIndex() to this class? 2) Is there any simple way to iterate over all instructions, where a given live interval is live? This functionality is required by many register allocation algorithms. I think having som...
2008 Feb 11
2
[LLVMdev] Some questions about live intervals
...is that we discussed. > > > > --- Evan Cheng <evan.cheng at apple.com> schrieb: > >>> 1) What is the easiest way to understand which MBB a given > >> instruction index belongs to? All the required information is > >> available in the > >>> MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful > >> to add a small function getMBBFromIndex() to this class? > >> > >> Sure there is a reverse map (actually just a vector) Idx2MBBMap. > >> Justadd a query. > > > > Done. Please find a patch att...
2008 Jan 31
0
[LLVMdev] Some questions about live intervals
Hi Roman, > I already started work on the implementation of this algorithm and have > a few hopefully rather simple questions: > > 1) What is the easiest way to understand which MBB a given instruction > index belongs to? All the required information is available in the > MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful to add > a small function getMBBFromIndex() to this class? > The MachineInstr class has a pointer to its MachineBasicBlock (at least in top-of-tree). Call "getParent()" on the MachineInstr. -bw
2008 Feb 12
0
[LLVMdev] Some questions about live intervals
...ed. >>> >>> --- Evan Cheng <evan.cheng at apple.com> schrieb: >>>>> 1) What is the easiest way to understand which MBB a given >>>> instruction index belongs to? All the required information is >>>> available in the >>>>> MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful >>>> to add a small function getMBBFromIndex() to this class? >>>> >>>> Sure there is a reverse map (actually just a vector) Idx2MBBMap. >>>> Justadd a query. >>> >>> Done. Pleas...
2008 Feb 01
0
[LLVMdev] Some questions about live intervals
...68x). > > I already started work on the implementation of this algorithm and > have > a few hopefully rather simple questions: > > 1) What is the easiest way to understand which MBB a given instruction > index belongs to? All the required information is available in the > MBB2IdxMap of the LiveIntervalAnalysis class. Would it be useful to > add > a small function getMBBFromIndex() to this class? Sure there is a reverse map (actually just a vector) Idx2MBBMap. Just add a query. > > > 2) Is there any simple way to iterate over all instructions, where a >...