Displaying 20 results from an estimated 183 matches for "liveintervalanalysi".
Did you mean:
liveintervalanalysis
2006 Nov 03
3
[LLVMdev] Build failure due to -pedantic?
The build is failing with;
LiveIntervalAnalysis.cpp:218: error: floating constant exceeds range
of 'double'
LiveIntervalAnalysis.cpp:253: error: floating constant exceeds range
of 'double'
LiveIntervalAnalysis.cpp:328: error: floating constant exceeds range
of 'double'
LiveIntervalAnalysis.cpp:1350: error: floating...
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 i...
2008 Feb 11
0
[LLVMdev] Some questions about live intervals
Thanks. One question though. Should getMBBFromIndex() assert if given
an index out of the range or simply returns a NULL pointer? I would
think the later makes it a bit more friendly.
Evan
On Feb 8, 2008, at 8:59 AM, Roman Levenstein wrote:
> 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 LiveIntervalA...
2008 Feb 11
2
[LLVMdev] Some questions about live intervals
...nter? I would
> think the later makes it a bit more friendly.
Yes. It would be more friendly, probably. I can submit such a patch, if
you think it suits better.
On the other hand I want to mention the following pros:
- assert-based approach follows the style of all other getNNN
functions in LiveIntervalAnalysis.h. They all assert in out-of-range
cases.
- What does it mean, if you have a situation where you ask for the MBB
of an instruction index, which is out of range for any MBB? How can
this happen? If you know the index, then instruction should have been
already registered before, it's number is...
2008 Jan 09
1
[LLVMdev] icing on LiveIntervalAnalysis
On darwin x86, I'm seeing:
$ make ENABLE_OPTIMIZED=1
llvm[2]: Compiling LiveIntervalAnalysis.cpp for Release build
Assertion failed: (MVT::isInteger(LVT)), function
MeetsMaxMemopRequirement, file /Volumes/mrs5/net/llvm/llvm/lib/CodeGen/
SelectionDAG/SelectionDAGISel.cpp, line 4230.
/Volumes/mrs5/net/llvm/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp:1466:
internal compiler error: Abort t...
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;
f...
2006 Nov 03
0
[LLVMdev] Build failure due to -pedantic?
Chris said something about Xcode fixing this ? It doesn't happen with
the GCC 3.4.6 compiler on Linux so that's why I missed it, but I thought
Chris had fixed it.
Reid.
On Fri, 2006-11-03 at 08:48 -0400, Jim Laskey wrote:
> The build is failing with;
>
> LiveIntervalAnalysis.cpp:218: error: floating constant exceeds range
> of 'double'
> LiveIntervalAnalysis.cpp:253: error: floating constant exceeds range
> of 'double'
> LiveIntervalAnalysis.cpp:328: error: floating constant exceeds range
> of 'double'
> LiveIntervalAnal...
2008 Feb 12
0
[LLVMdev] Some questions about live intervals
...kes it a bit more friendly.
>
> Yes. It would be more friendly, probably. I can submit such a patch,
> if
> you think it suits better.
>
> On the other hand I want to mention the following pros:
> - assert-based approach follows the style of all other getNNN
> functions in LiveIntervalAnalysis.h. They all assert in out-of-range
> cases.
> - What does it mean, if you have a situation where you ask for the MBB
> of an instruction index, which is out of range for any MBB? How can
> this happen? If you know the index, then instruction should have been
> already registered bef...
2008 Apr 16
0
[LLVMdev] Possible bug in LiveIntervalAnalysis?
...plementation). Idx2MBBMap has two elements in it, both
of which have a .first of 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) {
>...
2008 Apr 18
1
[LLVMdev] Possible bug in LiveIntervalAnalysis?
...it, both
> of which have a .first of 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...
2012 May 18
1
[LLVMdev] LiveIntervalAnalysis
I'm debugging a problem with a custom pass and I was surprised to
discover that LiveIntervalAnalysis depends on PHIElimination. Why is
that so? Intervals could be useful for all sorts of things beyond
register allocation.
Just curious. Is there something about the design of LiveIntervals that
it needs the out-of-SSA conversion?
-Dave
2007 Jun 22
0
[LLVMdev] df_ext_iterator in LiveIntervalAnalysis
On Thu, 21 Jun 2007, Fernando Magno Quintao Pereira wrote:
> I would like to make a suggestion. In the LiveIntervalAnalysis class,
> instead of numbering the instructions in the order in which basic blocks
> are stored in the machine function, use the df_ext_iterator. It will order
> the instruction according to the dominance tree (or it seems to be doing
> so). There are many advantages in doing this. One...
2007 Jun 22
4
[LLVMdev] df_ext_iterator in LiveIntervalAnalysis
I would like to make a suggestion. In the LiveIntervalAnalysis class,
instead of numbering the instructions in the order in which basic blocks
are stored in the machine function, use the df_ext_iterator. It will order
the instruction according to the dominance tree (or it seems to be doing
so). There are many advantages in doing this. One of them is that,...
2007 Jun 22
0
[LLVMdev] df_ext_iterator in LiveIntervalAnalysis
...ly hurt compile time in case of large
basic block numbers.
Is there a way to dynamically adjust "SmallSize" based on number of
basic blocks in the function?
Evan
On Jun 21, 2007, at 10:20 PM, Fernando Magno Quintao Pereira wrote:
>
> I would like to make a suggestion. In the LiveIntervalAnalysis class,
> instead of numbering the instructions in the order in which basic
> blocks
> are stored in the machine function, use the df_ext_iterator. It
> will order
> the instruction according to the dominance tree (or it seems to be
> doing
> so). There are many advantage...
2009 May 15
3
[LLVMdev] SSI in LLVM
...s u(v2) or vice-versa.
I would like to discuss my approach with you guys, so that you can
redirect me if I am going through a bad path, so I am listing some
points below:
1) I want to implement a very modular design. In this way, I will have
an analysis that receives the intervals produced by
LiveIntervalAnalysis, plus a list of variables, and creates a new set of
intervals, so that each interval designates a new virtual variable, that
is visible only inside my analysis. These variables have the SSI
property. In this way, it is possible to map constraints such as (a >
10) to an interval.
2) Each cl...
2004 Aug 27
2
[LLVMdev] Register allocator assert
Hello,
I'm getting an assertion in register allocator, specifically in
LiveIntervalAnalysis.h, method LiveIntervals::getInstructionIndex:
unsigned getInstructionIndex(MachineInstr* instr) const {
Mi2IndexMap::const_iterator it = mi2iMap_.find(instr);
assert(it != mi2iMap_.end() && "Invalid instruction!");
return it->second;
}
The crash happen...
2005 Sep 20
2
[LLVMdev] Requiring LiveIntervals
One of my pass requires LiveIntervals to build the interference graph,
because LiveVariables do not provide an interface to iterate through
all viritual registers. But LiveIntervalAnalysis.h is not in
"include/llvm/CodeGen", so I have to either include it by:
#include "../../llvm/lib/CodeGen/LiveIntervalAnalysis.h"
or point my project include path to "llvm/lib/CodeGen" (I use Visual Studio).
Why LiveIntervalAnalysis.h is not in "include/llvm/C...
2007 Jun 22
2
[LLVMdev] df_ext_iterator in LiveIntervalAnalysis
...ased on the loop nesting
levels, etc. There was no clear winner though.
But let's see the numbers anyway. May be it really brings some improvements.
-Roman
Chris Lattner wrote:
> On Thu, 21 Jun 2007, Fernando Magno Quintao Pereira wrote:
>> I would like to make a suggestion. In the LiveIntervalAnalysis class,
>> instead of numbering the instructions in the order in which basic blocks
>> are stored in the machine function, use the df_ext_iterator. It will order
>> the instruction according to the dominance tree (or it seems to be doing
>> so). There are many advantages in...
2008 Jan 31
7
[LLVMdev] Some questions about live intervals
...so 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 some special iterator
function...
2012 Aug 17
0
[LLVMdev] Assert in LiveInterval update
...eFrom (this=0x46e99a0, LR=...,
From=0x46ee4b0) at lib/CodeGen/LiveInterval.cpp:266
#4 in llvm::LiveInterval::addRange (this=0x46e99a0, LR=...) at
include/llvm/CodeGen/LiveInterval.h:384
#5 in llvm::LiveIntervals::HMEditor::moveInternalFrom (this=0x7fffffff8010,
OldIdx=..., P=...) at lib/CodeGen/LiveIntervalAnalysis.cpp:1220
#6 in llvm::LiveIntervals::HMEditor::moveAllInternalFrom
(this=0x7fffffff8010, OldIdx=..., Internal=...) at
lib/CodeGen/LiveIntervalAnalysis.cpp:1226
#7 in llvm::LiveIntervals::HMEditor::moveAllRangesFrom
(this=0x7fffffff8010, MI=0x462ab80, OldIdx=...) at
lib/CodeGen/LiveIntervalAnaly...