"git@repo.hca.bsc.es:rferrer/llvm-epi-0.8.git" did not exist on "7be573f05a3612a7d9230b4ff7be59dc87740d76"
- Sep 24, 2011
-
-
Jakob Stoklund Olesen authored
This exposes a -segmented-stacks bug. llvm-svn: 140429
-
- Sep 21, 2011
-
-
Andrew Trick authored
This is still a hack until we can teach tblgen to generate the optional CPSR operand rather than an implicit CPSR def. But the strangeness is now limited to the selection DAG. ADD/SUB MI's no longer have implicit CPSR defs, nor do we allow flag setting variants of these opcodes in machine code. There are several corner cases to consider, and getting one wrong would previously lead to nasty miscompilation. It's not the first time I've debugged one, so this time I added enough verification to ensure it won't happen again. llvm-svn: 140228
-
- Sep 15, 2011
-
-
Jakob Stoklund Olesen authored
There is only one legitimate use remaining, in addIntervalsForSpills(). All other calls to hasPHIKill() are only used to update PHIKill flags. The addIntervalsForSpills() function is part of the old spilling framework, only used by linearscan. llvm-svn: 139783
-
- Jul 30, 2011
-
-
Jakob Stoklund Olesen authored
The ARM target depends on CPSR liveness being tracked after register allocation. llvm-svn: 136548
-
Jakob Stoklund Olesen authored
This includes registers like EFLAGS and ST0-ST7. We don't check for liveness issues in the verifier and scavenger because registers will never be allocated from these classes. While in SSA form, we do care about the liveness of unallocatable unreserved registers. Liveness of EFLAGS and ST0 neds to be correct for MachineDCE and MachineSinking. llvm-svn: 136541
-
Jakob Stoklund Olesen authored
llvm-svn: 136535
-
- Jun 28, 2011
-
-
Evan Cheng authored
sink them into MC layer. - Added MCInstrInfo, which captures the tablegen generated static data. Chang TargetInstrInfo so it's based off MCInstrInfo. llvm-svn: 134021
-
- Jun 27, 2011
-
-
Evan Cheng authored
llvm-svn: 133944
-
- Jun 02, 2011
-
-
Jakob Stoklund Olesen authored
No functional change. llvm-svn: 132455
-
- May 19, 2011
-
-
Cameron Zwarich authored
on CodeGen/X86/2007-05-07-InvokeSRet.ll. There is probably a bug here that was fixed by r128961, but since there is no test or reference to a source file I have to revert it. llvm-svn: 131618
-
- May 05, 2011
-
-
Bill Wendling authored
landing pad as its successor. SjLj exception handling jumps to the correct landing pad via a switch statement that's generated right before code-gen. Loosen the constraint in the machine instruction verifier to allow for this. Note, this isn't the most rigorous check since we cannot determine where that switch statement came from. But it's marginally better than turning this check off when SjLj exceptions are used. <rdar://problem/9187612> llvm-svn: 130881
-
- Apr 06, 2011
-
-
Jakob Stoklund Olesen authored
Treat the landing pad as a normal successor when that happens. llvm-svn: 128961
-
- Mar 31, 2011
-
-
Jakob Stoklund Olesen authored
llvm-svn: 128643
-
Jakob Stoklund Olesen authored
This way, shrinkToUses() will ignore the instruction that is about to be deleted, and we avoid leaving invalid live ranges that SplitKit doesn't like. Fix a misunderstanding in MachineVerifier about <def,undef> operands. The <undef> flag is valid on def operands where it has the same meaning as <undef> on a use operand. It only applies to sub-register defines which also read the full register. llvm-svn: 128642
-
- Feb 04, 2011
-
-
Jakob Stoklund Olesen authored
Allow a live range to end with a kill flag, but don't allow a kill flag that doesn't end the live range. This makes the machine code verifier more useful during register allocation when kill flag computation is deferred. llvm-svn: 124838
-
- Jan 12, 2011
-
-
Jakob Stoklund Olesen authored
The slot indexes must be monotonically increasing through the function. llvm-svn: 123324
-
Jakob Stoklund Olesen authored
llvm-svn: 123322
-
- Jan 09, 2011
-
-
Jakob Stoklund Olesen authored
Print virtual registers numbered from 0 instead of the arbitrary FirstVirtualRegister. The first virtual register is printed as %vreg0. TRI::NoRegister is printed as %noreg. llvm-svn: 123107
-
Jakob Stoklund Olesen authored
virtual registers. llvm-svn: 123100
-
- Dec 29, 2010
-
-
Cameron Zwarich authored
in the most obvious way. llvm-svn: 122610
-
- Dec 27, 2010
-
-
Cameron Zwarich authored
valno verification. The "Different value live out of predecessor" check is incorrect in the case of phi-def valnos, so just skip that check for phi-def valnos and instead check that all of the valnos for predecessors have phi-kill. Fixes PR8863. llvm-svn: 122581
-
- Dec 20, 2010
-
-
Cameron Zwarich authored
out-edges. Fixes PR8824. llvm-svn: 122228
-
Cameron Zwarich authored
begin at DEF slots. Fixes the second half of PR8813. llvm-svn: 122225
-
Cameron Zwarich authored
llvm-svn: 122224
-
Cameron Zwarich authored
the register; it may be a dead def instead. Fixes PR8820. llvm-svn: 122218
-
Cameron Zwarich authored
PR8822. llvm-svn: 122207
-
Cameron Zwarich authored
half of PR8813. llvm-svn: 122205
-
- Dec 19, 2010
-
-
Cameron Zwarich authored
llvm-svn: 122199
-
- Dec 18, 2010
-
-
Jakob Stoklund Olesen authored
createMachineVerifierPass and MachineFunction::verify. The banner is printed before the machine code dump, just like the printer pass. llvm-svn: 122113
-
- Dec 17, 2010
-
-
Jakob Stoklund Olesen authored
the operand uses the same register as a tied operand: %r1 = add %r1, %r1 If add were a three-address instruction, kill flags would be required on at least one of the uses. Since it is a two-address instruction, the tied use operand must not have a kill flag. This change makes the kill flag on the untied use operand optional. llvm-svn: 122082
-
- Nov 17, 2010
-
-
Eric Christopher authored
operands in a variadic instruction. llvm-svn: 119446
-
- Nov 16, 2010
-
-
Eric Christopher authored
(and likely) wrong about anyhow. llvm-svn: 119320
-
- Nov 02, 2010
-
-
Jakob Stoklund Olesen authored
It is legal for an instruction to have two operands using the same register, only one a kill. This is interpreted as a kill. llvm-svn: 117981
-
- Nov 01, 2010
-
-
Jakob Stoklund Olesen authored
At least X86FloatingPoint requires correct kill flags after register allocation, and targets using register scavenging benefit. Conservative kill flags are not enough. llvm-svn: 117960
-
Jakob Stoklund Olesen authored
When an instruction refers to a spill slot with a LiveStacks entry, check that the spill slot is live at the instruction. llvm-svn: 117944
-
- Oct 30, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 117762
-
- Oct 29, 2010
-
-
Jakob Stoklund Olesen authored
multiplicity. llvm-svn: 117630
-
- Oct 28, 2010
-
-
Jakob Stoklund Olesen authored
llvm-svn: 117602
-
- Oct 27, 2010
-
-
Jakob Stoklund Olesen authored
Only virtuals should be requires to be connected. llvm-svn: 117422
-
Jakob Stoklund Olesen authored
components, each should get its own virtual register. llvm-svn: 117407
-