Displaying 3 results from an estimated 3 matches for "alldefsaredead".
2011 Nov 18
1
[LLVMdev] Greedy regalloc
...pred:0, pred:%noreg, %CCReg<imp-def>; mem:ST4[FixedStack93] aN32_0_7:%vreg301
KILL %vreg301, <fi#93>, 0, %noreg, %CCReg<imp-def>; mem:ST4[FixedStack93] aN32_0_7:%vreg301
%a0_32<def> = COPY %vreg301; aN32_0_7:%vreg301
This results in abort:
"Assertion `MI->allDefsAreDead() && "Def isn't really dead"' failed."
What is the purpose of having the KILL opcode there, and do you know what might be the cause for this error?
Are all the register allocators currently of high standard, or are one or more less mature, meaning things might break...
2019 Dec 18
2
Spilling to register for a given register class
...for instance that when trying to model this straight forwardly by
writing a vreg from spills and reading this from fills (not further
elaborated here), that the spiller can't handle vreg def-use pairs: there
are assertions making sure a spill does not have any uses , e.g. see
InlineSpiller.cpp, allDefsAreDead() calls. This made me wonder if this is
supported natively at all.
On Wed, Dec 18, 2019 at 12:02 PM Quentin Colombet <qcolombet at apple.com>
wrote:
> Hi Hendrik,
>
> This question is a recurring one. Check for instance
> https://lists.llvm.org/pipermail/llvm-dev/2016-February/0...
2019 Dec 17
2
Spilling to register for a given register class
Hello, for an architecture that doesn't have a good way to load/store a
given register class to memory, is it instead easy to spill/fill from
another register class instead?
e.g.
- storeRegToStack/loadRegFromStack use a pseudo instruction and add virtual
register operand is not supported (spill optimization doesn't seem to like
this).
- AMDGPU backend seems to do sth. similar?
The only